From 1b52eaccbd03cca34acd80bb0227e6acea08c8fd Mon Sep 17 00:00:00 2001
From: Stuart Buchanan <stuart_d_buchanan@yahoo.co.uk>
Date: Mon, 16 Apr 2018 19:43:36 +0100
Subject: [PATCH] FG1000 : Nearest Frequencies page.

---
 .../FG1000/MFDPages/NearestFrequencies.svg    | 730 ++++++++++++++++++
 .../Nasal/Interfaces/NavDataInterface.nas     |  80 +-
 .../Instruments-3d/FG1000/Nasal/MFDPage.nas   |   4 +-
 .../FG1000/Nasal/MFDPageController.nas        |  19 +-
 .../NearestFrequencies/NearestFrequencies.nas | 151 +++-
 .../NearestFrequenciesController.nas          | 104 ++-
 6 files changed, 1071 insertions(+), 17 deletions(-)
 create mode 100644 Aircraft/Instruments-3d/FG1000/MFDPages/NearestFrequencies.svg

diff --git a/Aircraft/Instruments-3d/FG1000/MFDPages/NearestFrequencies.svg b/Aircraft/Instruments-3d/FG1000/MFDPages/NearestFrequencies.svg
new file mode 100644
index 000000000..94e5fe412
--- /dev/null
+++ b/Aircraft/Instruments-3d/FG1000/MFDPages/NearestFrequencies.svg
@@ -0,0 +1,730 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="1024px"
+   height="768px"
+   viewBox="0 0 1024 768"
+   version="1.1"
+   id="SVGRoot"
+   inkscape:version="0.91 r13725"
+   sodipodi:docname="NearestFrequencies.svg">
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#ffffff"
+     borderopacity="0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.8191103"
+     inkscape:cx="750.12697"
+     inkscape:cy="356.88191"
+     inkscape:document-units="px"
+     inkscape:current-layer="NearestFrequenciesGroup"
+     showgrid="true"
+     inkscape:window-width="2495"
+     inkscape:window-height="1416"
+     inkscape:window-x="65"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:snap-global="true"
+     inkscape:snap-grids="true"
+     inkscape:snap-bbox="true"
+     inkscape:snap-others="true"
+     inkscape:snap-to-guides="true"
+     inkscape:bbox-paths="false"
+     inkscape:snap-nodes="true"
+     inkscape:snap-page="true"
+     inkscape:bbox-nodes="true"
+     showguides="false">
+    <inkscape:grid
+       type="xygrid"
+       id="grid4269" />
+  </sodipodi:namedview>
+  <defs
+     id="defs7962" />
+  <metadata
+     id="metadata7965">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:groupmode="layer"
+     id="layer3"
+     inkscape:label="NearestFrequenciesLayer">
+    <g
+       inkscape:label="#g4237"
+       id="NearestFrequenciesGroup">
+      <rect
+         inkscape:label="#rect8921"
+         y="53.505371"
+         x="724.50537"
+         height="688.98926"
+         width="309.98926"
+         id="Background"
+         style="opacity:1;fill:#1a3030;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.01074231;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         y="446.43808"
+         x="730.68347"
+         height="195.30661"
+         width="288.63293"
+         id="rect9743"
+         style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.39907384;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         y="436.15332"
+         x="745.3988"
+         height="20.202429"
+         width="84.190727"
+         id="rect9753"
+         style="opacity:1;fill:#1a3030;fill-opacity:1;fill-rule:nonzero;stroke:#fffcfa;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         sodipodi:linespacing="125%"
+         id="text9749"
+         y="437.1423"
+         x="774.57446"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.51583004px;line-height:125%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#fffcfa;stroke-width:0.967722px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="437.1423"
+           x="774.57446"
+           sodipodi:role="line"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';stroke-width:0.967722px"
+           id="tspan4958">NEAREST WX</tspan><tspan
+           y="455.28708"
+           x="774.57446"
+           sodipodi:role="line"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';stroke-width:0.967722px"
+           id="tspan4878" /></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXID0"
+         y="460.33344"
+         x="763.41437"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="460.33344"
+           x="763.41437"
+           id="tspan4242"
+           sodipodi:role="line">KSFO</tspan></text>
+      <text
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="857.7981"
+         y="460.33344"
+         id="NearestFrequenciesWXType0"
+         sodipodi:linespacing="125%"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           sodipodi:role="line"
+           id="tspan4253"
+           x="857.7981"
+           y="460.33344">359</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXFreq0"
+         y="461.13727"
+         x="1000.7977"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="461.13727"
+           x="1000.7977"
+           id="tspan4257"
+           sodipodi:role="line">200nm</tspan></text>
+      <rect
+         y="85.447723"
+         x="730.41907"
+         height="153.58096"
+         width="289.10455"
+         id="rect4331"
+         style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <rect
+         y="73.5"
+         x="745.47131"
+         height="20.52869"
+         width="104.52869"
+         id="rect4333"
+         style="opacity:1;fill:#1a3030;fill-opacity:1;fill-rule:nonzero;stroke:#fffcfa;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         sodipodi:linespacing="125%"
+         id="text4335"
+         y="86.46434"
+         x="775.02869"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:14.51583004px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#fffcfa;stroke-width:0.967722px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="86.46434"
+           x="775.02869"
+           id="tspan4337"
+           sodipodi:role="line"
+           style="stroke-width:0.967722px">NEAREST ARTCC</tspan></text>
+      <text
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.35444069px;line-height:125%;font-family:Sans;-inkscape-font-specification:Sans;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="753.573"
+         y="249.65851"
+         id="text4355"
+         sodipodi:linespacing="125%"
+         transform="scale(0.96767669,1.033403)"><tspan
+           sodipodi:role="line"
+           id="tspan4357"
+           x="753.573"
+           y="249.65851" /></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="778.9151"
+         y="172.24083"
+         id="NearestFrequenciesARTCCFreq0"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4948"
+           x="778.9151"
+           y="172.24083">N 56 45.29</tspan></text>
+      <rect
+         style="opacity:1;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:#c0c0c0;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="NearestFrequenciesScrollTrough"
+         width="5"
+         height="180"
+         x="1010"
+         y="451.74469"
+         inkscape:label="#rect4231" />
+      <rect
+         inkscape:label="#rect4231"
+         y="451.74469"
+         x="1010"
+         height="115"
+         width="5"
+         id="NearestFrequenciesScrollThumb"
+         style="opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:#808080;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <flowRoot
+         xml:space="preserve"
+         id="flowRoot5077"
+         style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Sans;font-style:normal;font-weight:normal;font-size:20px;line-height:125%;letter-spacing:0px;word-spacing:0px;-inkscape-font-specification:Sans;font-stretch:normal;font-variant:normal;text-anchor:start;text-align:start;writing-mode:lr"><flowRegion
+           id="flowRegion5079"><rect
+             id="rect5081"
+             width="365"
+             height="275"
+             x="695"
+             y="93" /></flowRegion><flowPara
+           id="flowPara5083" /></flowRoot>      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="763.41437"
+         y="481.70447"
+         id="NearestFrequenciesWXID1"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5087"
+           x="763.41437"
+           y="481.70447">KSFO</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXType1"
+         y="481.70447"
+         x="857.7981"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"><tspan
+           y="481.70447"
+           x="857.7981"
+           id="tspan5091"
+           sodipodi:role="line">359</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="1000.7977"
+         y="482.50833"
+         id="NearestFrequenciesWXFreq1"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5095"
+           x="1000.7977"
+           y="482.50833">200nm</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXID2"
+         y="503.07553"
+         x="763.41437"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="503.07553"
+           x="763.41437"
+           id="tspan5101"
+           sodipodi:role="line">KSFO</tspan></text>
+      <text
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="857.7981"
+         y="503.07553"
+         id="NearestFrequenciesWXType2"
+         sodipodi:linespacing="125%"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           sodipodi:role="line"
+           id="tspan5105"
+           x="857.7981"
+           y="503.07553">359</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXFreq2"
+         y="503.8793"
+         x="1000.7977"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="503.8793"
+           x="1000.7977"
+           id="tspan5109"
+           sodipodi:role="line">200nm</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="763.41437"
+         y="524.44653"
+         id="NearestFrequenciesWXID3"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5115"
+           x="763.41437"
+           y="524.44653">KSFO</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXType3"
+         y="524.44653"
+         x="857.7981"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"><tspan
+           y="524.44653"
+           x="857.7981"
+           id="tspan5119"
+           sodipodi:role="line">359</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="1000.7977"
+         y="525.25037"
+         id="NearestFrequenciesWXFreq3"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5123"
+           x="1000.7977"
+           y="525.25037">200nm</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXID4"
+         y="545.81763"
+         x="764.09247"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="545.81763"
+           x="764.09247"
+           id="tspan5129"
+           sodipodi:role="line">KSFO</tspan></text>
+      <text
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="858.4762"
+         y="545.81763"
+         id="NearestFrequenciesWXType4"
+         sodipodi:linespacing="125%"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           sodipodi:role="line"
+           id="tspan5133"
+           x="858.4762"
+           y="545.81763">359</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXFreq4"
+         y="546.62146"
+         x="1001.4758"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="546.62146"
+           x="1001.4758"
+           id="tspan5137"
+           sodipodi:role="line">200nm</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="764.09247"
+         y="567.18866"
+         id="NearestFrequenciesWXID5"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5143"
+           x="764.09247"
+           y="567.18866">KSFO</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXType5"
+         y="567.18866"
+         x="858.4762"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"><tspan
+           y="567.18866"
+           x="858.4762"
+           id="tspan5147"
+           sodipodi:role="line">359</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="1001.4758"
+         y="567.99249"
+         id="NearestFrequenciesWXFreq5"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5151"
+           x="1001.4758"
+           y="567.99249">200nm</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXID6"
+         y="588.55969"
+         x="764.09247"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="588.55969"
+           x="764.09247"
+           id="tspan5157"
+           sodipodi:role="line">KSFO</tspan></text>
+      <text
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="858.4762"
+         y="588.55969"
+         id="NearestFrequenciesWXType6"
+         sodipodi:linespacing="125%"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           sodipodi:role="line"
+           id="tspan5161"
+           x="858.4762"
+           y="588.55969">359</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXFreq6"
+         y="589.36346"
+         x="1001.4758"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767632,1.0334034)"><tspan
+           y="589.36346"
+           x="1001.4758"
+           id="tspan5165"
+           sodipodi:role="line">200nm</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="764.09247"
+         y="609.93073"
+         id="NearestFrequenciesWXID7"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5171"
+           x="764.09247"
+           y="609.93073">KSFO</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesWXType7"
+         y="609.93073"
+         x="858.4762"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"><tspan
+           y="609.93073"
+           x="858.4762"
+           id="tspan5175"
+           sodipodi:role="line">359</tspan></text>
+      <text
+         transform="scale(0.96767632,1.0334034)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:20.26409912px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="1001.4758"
+         y="610.7345"
+         id="NearestFrequenciesWXFreq7"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5179"
+           x="1001.4758"
+           y="610.7345">200nm</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="760.83887"
+         y="110.1539"
+         id="NearestFrequenciesARTCCName"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan5285"
+           x="760.83887"
+           y="110.1539">ARTCC NAME</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="778.9151"
+         y="143.21053"
+         id="text4882"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4884"
+           x="778.9151"
+           y="143.21053"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:15px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:start;writing-mode:lr-tb;text-anchor:start">BRG</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesARTCCBRG"
+         y="143.21053"
+         x="820.95056"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="143.21053"
+           x="820.95056"
+           id="tspan4888"
+           sodipodi:role="line">356</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="text4890"
+         y="143.21053"
+         x="919.0459"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="143.21053"
+           x="919.0459"
+           id="tspan4892"
+           sodipodi:role="line"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:15px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:start;writing-mode:lr-tb;text-anchor:start">DIS</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="961.08136"
+         y="143.21053"
+         id="NearestFrequenciesARTCCDIS"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4896"
+           x="961.08136"
+           y="143.21053">356</tspan></text>
+      <rect
+         style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect4898"
+         width="289.10455"
+         height="153.58096"
+         x="730.41907"
+         y="266.28693" />
+      <rect
+         style="opacity:1;fill:#1a3030;fill-opacity:1;fill-rule:nonzero;stroke:#fffcfa;stroke-width:1;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect4900"
+         width="89.528687"
+         height="20.528702"
+         x="745.47131"
+         y="254.33919" />
+      <text
+         transform="scale(0.96767669,1.033403)"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:14.51583004px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#fffcfa;stroke-width:0.967722px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="775.02869"
+         y="261.45819"
+         id="text4902"
+         sodipodi:linespacing="125%"><tspan
+           style="stroke-width:0.967722px"
+           sodipodi:role="line"
+           id="tspan4904"
+           x="775.02869"
+           y="261.45819">NEAREST FSS</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="778.9151"
+         y="347.23468"
+         id="NearestFrequenciesFSSFreq0"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4908"
+           x="778.9151"
+           y="347.23468">N 56 45.29</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesFSSName"
+         y="285.14777"
+         x="760.83887"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="285.14777"
+           x="760.83887"
+           id="tspan4912"
+           sodipodi:role="line">FSS NAME</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="text4914"
+         y="318.20438"
+         x="778.9151"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:15px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:start;writing-mode:lr-tb;text-anchor:start"
+           y="318.20438"
+           x="778.9151"
+           id="tspan4916"
+           sodipodi:role="line">BRG</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="820.95056"
+         y="318.20438"
+         id="NearestFrequenciesFSSBRG"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4920"
+           x="820.95056"
+           y="318.20438">356</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="919.0459"
+         y="318.20438"
+         id="text4922"
+         sodipodi:linespacing="125%"><tspan
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:15px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow, Condensed';text-align:start;writing-mode:lr-tb;text-anchor:start"
+           sodipodi:role="line"
+           id="tspan4924"
+           x="919.0459"
+           y="318.20438">DIS</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesFSSDIS"
+         y="318.20438"
+         x="961.08136"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="318.20438"
+           x="961.08136"
+           id="tspan4928"
+           sodipodi:role="line">356</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="778.9151"
+         y="191.59436"
+         id="NearestFrequenciesARTCCFreq1"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4932"
+           x="778.9151"
+           y="191.59436">N 56 45.29</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesARTCCFreq2"
+         y="211.75995"
+         x="778.9151"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="211.75995"
+           x="778.9151"
+           id="tspan4936"
+           sodipodi:role="line">N 56 45.29</tspan></text>
+      <text
+         sodipodi:linespacing="125%"
+         id="NearestFrequenciesFSSFreq1"
+         y="366.58823"
+         x="778.9151"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         xml:space="preserve"
+         inkscape:label="#text4232"
+         transform="scale(0.96767669,1.033403)"><tspan
+           y="366.58823"
+           x="778.9151"
+           id="tspan4940"
+           sodipodi:role="line">N 56 45.29</tspan></text>
+      <text
+         transform="scale(0.96767669,1.033403)"
+         inkscape:label="#text4232"
+         xml:space="preserve"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:condensed;font-size:19.35444069px;line-height:125%;font-family:'Liberation Sans Narrow';-inkscape-font-specification:'Liberation Sans Narrow Condensed';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#80ffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         x="778.9151"
+         y="385.94177"
+         id="NearestFrequenciesFSSFreq2"
+         sodipodi:linespacing="125%"><tspan
+           sodipodi:role="line"
+           id="tspan4944"
+           x="778.9151"
+           y="385.94177">N 56 45.29</tspan></text>
+    </g>
+  </g>
+</svg>
diff --git a/Aircraft/Instruments-3d/FG1000/Nasal/Interfaces/NavDataInterface.nas b/Aircraft/Instruments-3d/FG1000/Nasal/Interfaces/NavDataInterface.nas
index 8b4721e7c..7502f84ac 100644
--- a/Aircraft/Instruments-3d/FG1000/Nasal/Interfaces/NavDataInterface.nas
+++ b/Aircraft/Instruments-3d/FG1000/Nasal/Interfaces/NavDataInterface.nas
@@ -366,6 +366,72 @@ setDefaultDTO : func(id)
   me._defaultDTO = id;
 },
 
+
+# Find the nearest Air Route Traffic Control Center or equivalent.
+# As we don't have that data right now, we simply return some placeholder
+getNearestATRCC : func()
+{
+  var atrcc = {};
+  atrcc.name = "NONE AVAILABLE";
+  atrcc.lat = 0;
+  atrcc.lon = 0;
+  atrcc.brg = nil;
+  atrcc.dis = nil;
+  atrcc.freqs = [];  # an array of frequencies for the ATRCC
+  return atrcc;
+},
+
+# Find the nearest Flight Service Station
+# As we don't have that data right now, we simply return some placeholder
+getNearestFSS : func()
+{
+  var fss = {};
+  fss.name = "NONE AVAILABLE";
+  fss.lat = nil;
+  fss.lon = nil;
+  fss.brg = nil;
+  fss.dis = nil;
+  fss.freqs = [];  # an array of frequencies for the ATRCC
+  return fss;
+},
+
+# Find the nearest weather information.  We do this simply by picking up
+# appropriate frequencies from the airports frequencies within 200nm.
+getNearestWX : func()
+{
+  # To make this more efficient for areas with a high density of airports, we'll try
+  # a small radius first and expand until we have reached 200nm or have 25 frequencies.
+  var radius = 0;
+  var freqs = [];
+
+  while ((radius <= 200) and (size(freqs) < 25)) {
+    freqs = [];
+    radius = radius + 50;
+    apts = findAirportsWithinRange(radius);
+    foreach (var apt; apts) {
+      var apt_comms = apt.comms();
+      if (size(apt_comms) > 0) {
+        # Airport has one or more frequencies assigned to it.
+        foreach (var c; apt_comms) {
+          if ((c.ident == "ATIS") or (c.ident == "ASOS")) {
+            var freq = {
+              id: apt.id,
+              type : c.ident,
+              freq: c.frequency,
+              lat : apt.lat,
+              lon : apt.lon,
+            };
+
+            append(freqs, freq);
+          }
+        }
+      }
+    }
+  }
+
+  return freqs;
+},
+
 RegisterWithEmesary : func()
 {
   if (me._recipient == nil){
@@ -447,6 +513,18 @@ RegisterWithEmesary : func()
           notification.EventParameter.Value = controller.getChecklists();
           return emesary.Transmitter.ReceiptStatus_Finished;
         }
+        if (id == "GetNearestATRCC") {
+          notification.EventParameter.Value = controller.getNearestATRCC();
+          return emesary.Transmitter.ReceiptStatus_Finished;
+        }
+        if (id == "GetNearestFSS") {
+          notification.EventParameter.Value = controller.getNearestFSS();
+          return emesary.Transmitter.ReceiptStatus_Finished;
+        }
+        if (id == "GetNearestWX") {
+          notification.EventParameter.Value = controller.getNearestWX();
+          return emesary.Transmitter.ReceiptStatus_Finished;
+        }
       }
       return emesary.Transmitter.ReceiptStatus_NotProcessed;
     };
@@ -471,6 +549,4 @@ stop : func() {
   me.DeRegisterWithEmesary();
 },
 
-
-
 };
diff --git a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPage.nas b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPage.nas
index a0f044623..d885673cd 100644
--- a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPage.nas
+++ b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPage.nas
@@ -190,7 +190,7 @@ setTextElementNavFreq : func(symbolName, freq) {
   if ((freq == nil) or (freq == "")) {
     me.setTextElement(symbolName, "___.__");
   } else {
-    me.setTextElement(symbolName, sprintf("%.2f", freq));
+    me.setTextElement(symbolName, sprintf("%0.02f", freq));
   }
 },
 
@@ -199,7 +199,7 @@ setTextElementComFreq : func(symbolName, freq) {
     me.setTextElement(symbolName, "___.___");
   } else {
     # 8.33Hz spacing
-    me.setTextElement(symbolName, sprintf("%.3f", freq));
+    me.setTextElement(symbolName, sprintf("%0.03f", freq));
   }
 },
 
diff --git a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPageController.nas b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPageController.nas
index 4d9497f2c..6eafb9e4c 100644
--- a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPageController.nas
+++ b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPageController.nas
@@ -1,4 +1,4 @@
-# Copyright 2018 Stuart Buchanan
+## Copyright 2018 Stuart Buchanan
 # This file is part of FlightGear.
 #
 # Foobar is free software: you can redistribute it and/or modify
@@ -212,5 +212,22 @@ getDeviceID : func() {
     return me._page.mfd.getDeviceID();
 },
 
+# Simply query of the NavDataInterface
+getNavData : func(queryID, value=nil) {
+  # Use Emesary to get the requested data
+  var notification = notifications.PFDEventNotification.new(
+    "MFD",
+    me.getDeviceID(),
+    notifications.PFDEventNotification.NavData,
+    {Id: queryID, Value: value});
+
+  var response = me._transmitter.NotifyAll(notification);
+
+  if (! me._transmitter.IsFailed(response)) {
+    return notification.EventParameter.Value;
+  } else {
+    return nil;
+  }
+},
 
 };
diff --git a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequencies.nas b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequencies.nas
index c1d8e9876..0638a4452 100644
--- a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequencies.nas
+++ b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequencies.nas
@@ -26,32 +26,167 @@ var NearestFrequencies =
       ],
     };
 
+    var textElements = ["ARTCCName", "ARTCCBRG", "ARTCCDIS", "FSSName", "FSSBRG", "FSSDIS"];
+
+    obj.addTextElements(textElements);
+
+    obj.artccSelect = PFD.GroupElement.new(
+      obj.pageName,
+      svg,
+      ["ARTCCFreq"],
+      3,
+      "ARTCCFreq",
+      0,
+    );
+
+    obj.fssSelect = PFD.GroupElement.new(
+      obj.pageName,
+      svg,
+      ["FSSFreq"],
+      3,
+      "FSSFreq",
+      0,
+    );
+
+    obj.wxSelect = PFD.GroupElement.new(
+      obj.pageName,
+      svg,
+      ["WXID", "WXType", "WXFreq"],
+      8,
+      "WXFreq",
+      0,
+      "ScrollTrough",
+      "ScrollThumb",
+      (181 - 116)
+    );
+
     obj.topMenu(device, obj, nil);
 
     obj.setController(fg1000.NearestFrequenciesController.new(obj, svg));
 
     return obj;
   },
+
+  # Clear any cursor, highlights.  Used when exiting from CRSR mode
+  resetCRSR : func() {
+    me.artccSelect.hideCRSR();
+    me.fssSelect.hideCRSR();
+    me.wxSelect.hideCRSR();
+    me.resetMenuColors();
+  },
+
+
+  updateARTCC : func(artcc) {
+    if (artcc != nil) {
+      me.setTextElement("ARTCCName", artcc.name);
+      me.setTextElementBearing("ARTCCBRG", artcc.brg);
+      me.setTextElementDistance("ARTCCDIS", artcc.dis);
+      me.artccSelect.setValues(artcc.freqs);
+    } else {
+      me.setTextElement("ARTCCName", "");
+      me.setTextElementBearing("ARTCCBRG", nil);
+      me.setTextElementDistance("ARTCCDIS", nil);
+      me.artccSelect.setValues([]);
+    }
+
+  },
+
+  updateFSS : func(fss) {
+    if (fss != nil) {
+      me.setTextElement("FSSName", fss.name);
+      me.setTextElementBearing("FSSBRG", fss.brg);
+      me.setTextElementDistance("FSSDIS", fss.dis);
+      me.fssSelect.setValues(fss.freqs);
+    } else {
+      me.setTextElement("FSSName", "");
+      me.setTextElementBearing("FSSBRG", nil);
+      me.setTextElementDistance("FSSDIS", nil);
+      me.fssSelect.setValues([]);
+    }
+  },
+
+  updateWX : func(freqs) {
+    var values = [];
+
+    if (freqs != nil) {
+      foreach (var f; freqs) {
+        append(values, { WXID: f.id, WXType: f.type, WXFreq: sprintf("%0.03f", f.freq) } );
+      }
+    }
+
+    me.wxSelect.setValues(values);
+  },
+
+  getSelectedARTCC : func() {
+    return me.artccSelect.getValue();
+  },
+  getSelectedFSS : func() {
+    return me.fssSelect.getValue();
+  },
+  getSelectedWX : func() {
+    return me.wxSelect.getValue();
+  },
+
+  # Function to highlight the ARTCC softkey - used when CRSR is pressed to indicate
+  # that we're editing the ARTCC selection.
+  selectARTCC : func() {
+    me.resetMenuColors();
+    var bg_name = sprintf("SoftKey%d-bg",5);
+    var tname = sprintf("SoftKey%d",5);
+    me.device.svg.getElementById(bg_name).setColorFill(0.5,0.5,0.5);
+    me.device.svg.getElementById(tname).setColor(0.0,0.0,0.0);
+  },
+
   offdisplay : func() {
     me._group.setVisible(0);
-
-    # Reset the menu colours.  Shouldn't have to do this here, but
-    # there's not currently an obvious other location to do so.
-    for(var i = 0; i < 12; i +=1) {
-      var name = sprintf("SoftKey%d",i);
-      me.device.svg.getElementById(name ~ "-bg").setColorFill(0.0,0.0,0.0);
-      me.device.svg.getElementById(name).setColor(1.0,1.0,1.0);
-    }
+    # The Nearest... pages use the underlying navigation map.
+    me.mfd.NavigationMap.offdisplayPartial();
+    me.resetMenuColors();
     me.getController().offdisplay();
   },
   ondisplay : func() {
     me._group.setVisible(1);
     me.mfd.setPageTitle(me.title);
+
+    # The Nearest... pages use the underlying navigation map.
+    me.mfd.NavigationMap.ondisplayPartial();
+
     me.getController().ondisplay();
   },
+
+  # Indicate which group is selected by colour of the softkeys
+  display_toggle : func(device, svg, mi, group) {
+    var bg_name = sprintf("SoftKey%d-bg",mi.menu_id);
+    if (me.getController().getSelectedGroup() == group) {
+      device.svg.getElementById(bg_name).setColorFill(0.5,0.5,0.5);
+      svg.setColor(0.0,0.0,0.0);
+    } else {
+      device.svg.getElementById(bg_name).setColorFill(0.0,0.0,0.0);
+      svg.setColor(1.0,1.0,1.0);
+    }
+    svg.setText(mi.title);
+    svg.setVisible(1); # display function
+  },
+
   topMenu : func(device, pg, menuitem) {
     pg.clearMenu();
     pg.resetMenuColors();
+
+    pg.addMenuItem(0, "ENGINE", pg, pg.mfd.EIS.engineMenu);
+    pg.addMenuItem(2, "MAP", pg, pg.mfd.NavigationMap.mapMenu);
+    pg.addMenuItem(5, "ARTCC", pg,
+      func(dev, pg, mi) { pg.getController().selectARTCC(); device.updateMenus(); }, # callback
+      func(svg, mi) { pg.display_toggle(device, svg, mi, NearestFrequenciesController.UIGROUP.ARTCC); }
+    );
+    pg.addMenuItem(6, "FSS", pg,
+      func(dev, pg, mi) { pg.getController().selectFSS(); device.updateMenus(); }, # callback
+      func(svg, mi) { pg.display_toggle(device, svg, mi, NearestFrequenciesController.UIGROUP.FSS); }
+    );
+    pg.addMenuItem(7, "WX", pg,
+      func(dev, pg, mi) { pg.getController().selectWX(); device.updateMenus(); }, # callback
+      func(svg, mi) { pg.display_toggle(device, svg, mi, NearestFrequenciesController.UIGROUP.WX); }
+    );
+
     device.updateMenus();
   },
 
diff --git a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequenciesController.nas b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequenciesController.nas
index 01b07297d..27c4fe7a9 100644
--- a/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequenciesController.nas
+++ b/Aircraft/Instruments-3d/FG1000/Nasal/MFDPages/NearestFrequencies/NearestFrequenciesController.nas
@@ -17,6 +17,13 @@
 # NearestFrequencies Controller
 var NearestFrequenciesController =
 {
+  UIGROUP : {
+    NONE   : 0, # No group currently selected,
+    ARTCC  : 1,
+    FSS    : 2,
+    WX     : 3,
+  },
+
   new : func (page, svg)
   {
     var obj = {
@@ -24,51 +31,140 @@ var NearestFrequenciesController =
       _crsrToggle : 0,
       _recipient : nil,
       _page : page,
+      _atrcc_data: nil,
+      _fss_data : nil,
+      _wx_data : nil,
     };
 
+    obj._currentGroup = NearestFrequenciesController.UIGROUP.NONE;
+
+    obj._page.updateARTCC(nil,[]);
+    obj._page.updateFSS(nil,[]);
+    obj._page.updateWX([]);
+
     return obj;
   },
 
 
+  selectARTCC : func() {
+    me.selectGroup(NearestFrequenciesController.UIGROUP.ARTCC)
+  },
+  selectFSS : func() {
+    me.selectGroup(NearestFrequenciesController.UIGROUP.FSS);
+  },
+  selectWX : func() {
+    me.selectGroup(NearestFrequenciesController.UIGROUP.WX);
+  },
+  getSelectedGroup : func() {
+    return me._currentGroup;
+  },
+  selectGroup : func(grp) {
+    me._currentGroup = grp;
+    if (grp == NearestFrequenciesController.UIGROUP.ARTCC)  me._page.artccSelect.showCRSR() else me._page.artccSelect.hideCRSR();
+    if (grp == NearestFrequenciesController.UIGROUP.FSS)    me._page.fssSelect.showCRSR()   else me._page.fssSelect.hideCRSR();
+    if (grp == NearestFrequenciesController.UIGROUP.WX)     me._page.wxSelect.showCRSR()    else me._page.wxSelect.hideCRSR();
+    me._crsrToggle = 1;
+  },
+
+  updateFrequencies : func() {
+    me._atrcc_data = me.getNavData("GetNearestATRCC");
+    me._fss_data = me.getNavData("GetNearestFSS");
+    me._wx_data = me.getNavData("GetNearestWX");
+    me._page.updateARTCC(me._atrcc_data);
+    me._page.updateFSS(me._fss_data);
+    me._page.updateWX(me._wx_data);
+    
+    # Display the DTO line to the airport
+    var apt_idx = me._page.wxSelect.getCRSR();
+    var freq_data= me._wx_data[apt_idx];
+    if (freq_data != nil) {
+      me._page.mfd.NavigationMap.getController().setDTOLineTarget(freq_data.lat, freq_data.lon);
+    }
+  },
+
   # Input Handling
   handleCRSR : func() {
     me._crsrToggle = (! me._crsrToggle);
     if (me._crsrToggle) {
+      me._page.selectARTCC();
+      me._page.topMenu(me._page.device, me._page, nil);
+      #me.selectAirports();
     } else {
-      me._page.hideCRSR();
+      # Hide the cursor and reset any highlighting
+      me._page.resetCRSR();
     }
     return emesary.Transmitter.ReceiptStatus_Finished;
   },
+
   handleFMSInner : func(value) {
     if (me._crsrToggle == 1) {
-      # Scroll through whatever is the current list
+      # Scroll through whatever is in the current list
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.ARTCC) me._page.artccSelect.incrSmall(value);
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.FSS) me._page.fssSelect.incrSmall(value);
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.WX) {
+        me._page.wxSelect.incrSmall(value);
+
+        # Display the DTO line to the airport
+        var apt_idx = me._page.wxSelect.getCRSR();
+        var freq_data= me._wx_data[apt_idx];
+        if (freq_data != nil) {
+          me._page.mfd.NavigationMap.getController().setDTOLineTarget(freq_data.lat, freq_data.lon);
+        }
+      }
+
       return emesary.Transmitter.ReceiptStatus_Finished;
     } else {
-      # Pass to the page group controller to display and scroll through the page group menu
       return me._page.mfd.SurroundController.handleFMSInner(value);
     }
   },
+
   handleFMSOuter : func(value) {
     if (me._crsrToggle == 1) {
+      # Scroll through whatever is in the current list.  Unclear if this should
+      # scroll between windows instead?
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.ARTCC) me._page.artccSelect.incrSmall(value);
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.FSS) me._page.fssSelect.incrSmall(value);
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.WX) me._page.wxSelect.incrSmall(value);
+
       return emesary.Transmitter.ReceiptStatus_Finished;
     } else {
-      # Pass to the page group controller to display and scroll through the page group menu
       return me._page.mfd.SurroundController.handleFMSOuter(value);
     }
   },
+
   handleEnter : func(value) {
     if (me._crsrToggle == 1) {
+      var select = nil;
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.ARTCC) select = me._page.artccSelect;
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.FSS) select = me._page.fssSelect;
+      if (me._currentGroup == NearestFrequenciesController.UIGROUP.WX) select = me._page.wxSelect;
+
+      assert(select != nil, "Failed to determine currently selected group.");
+
+      var freq = select.getValue();
+      if (freq != nil) {
+        me._page.mfd.SurroundController.setStandbyNavComFreq(freq);
+      }
       return emesary.Transmitter.ReceiptStatus_Finished;
     } else {
       return emesary.Transmitter.ReceiptStatus_NotProcessed;
     }
   },
 
+  handleRange : func(val)
+  {
+    # Pass any range entries to the NavMapController
+    me._page.mfd.NavigationMap.getController().handleRange(val);
+  },
+
   # Reset controller if required when the page is displayed or hidden
   ondisplay : func() {
     me.RegisterWithEmesary();
+    me.updateFrequencies();
+    me._page.mfd.NavigationMap.getController().enableDTO(1);
   },
   offdisplay : func() {
+    me._page.mfd.NavigationMap.getController().enableDTO(0);
     me.DeRegisterWithEmesary();
   },