ws4kp/dist/resources/ws.min.js
2020-09-05 20:01:13 -05:00

2 lines
605 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */
!function(t,e){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=t.document?e(t,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return e(t)}:e(t)}("undefined"!=typeof window?window:this,(function(t,e){"use strict";var i=[],a=Object.getPrototypeOf,n=i.slice,o=i.flat?function(t){return i.flat.call(t)}:function(t){return i.concat.apply([],t)},d=i.push,u=i.indexOf,S={},r=S.toString,L=S.hasOwnProperty,C=L.toString,s=C.call(Object),g={},l=function(t){return"function"==typeof t&&"number"!=typeof t.nodeType},K=function(t){return null!=t&&t===t.window},y=t.document,I={type:!0,src:!0,nonce:!0,noModule:!0};function c(t,e,i){var a,n,o=(i=i||y).createElement("script");if(o.text=t,e)for(a in I)(n=e[a]||e.getAttribute&&e.getAttribute(a))&&o.setAttribute(a,n);i.head.appendChild(o).parentNode.removeChild(o)}function h(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?S[r.call(t)]||"object":typeof t}var A="3.5.1",f=function(t,e){return new f.fn.init(t,e)};function p(t){var e=!!t&&"length"in t&&t.length,i=h(t);return!l(t)&&!K(t)&&("array"===i||0===e||"number"==typeof e&&0<e&&e-1 in t)}f.fn=f.prototype={jquery:A,constructor:f,length:0,toArray:function(){return n.call(this)},get:function(t){return null==t?n.call(this):t<0?this[t+this.length]:this[t]},pushStack:function(t){var e=f.merge(this.constructor(),t);return e.prevObject=this,e},each:function(t){return f.each(this,t)},map:function(t){return this.pushStack(f.map(this,(function(e,i){return t.call(e,i,e)})))},slice:function(){return this.pushStack(n.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(f.grep(this,(function(t,e){return(e+1)%2})))},odd:function(){return this.pushStack(f.grep(this,(function(t,e){return e%2})))},eq:function(t){var e=this.length,i=+t+(t<0?e:0);return this.pushStack(0<=i&&i<e?[this[i]]:[])},end:function(){return this.prevObject||this.constructor()},push:d,sort:i.sort,splice:i.splice},f.extend=f.fn.extend=function(){var t,e,i,a,n,o,d=arguments[0]||{},u=1,S=arguments.length,r=!1;for("boolean"==typeof d&&(r=d,d=arguments[u]||{},u++),"object"==typeof d||l(d)||(d={}),u===S&&(d=this,u--);u<S;u++)if(null!=(t=arguments[u]))for(e in t)a=t[e],"__proto__"!==e&&d!==a&&(r&&a&&(f.isPlainObject(a)||(n=Array.isArray(a)))?(i=d[e],o=n&&!Array.isArray(i)?[]:n||f.isPlainObject(i)?i:{},n=!1,d[e]=f.extend(r,o,a)):void 0!==a&&(d[e]=a));return d},f.extend({expando:"jQuery"+(A+Math.random()).replace(/\D/g,""),isReady:!0,error:function(t){throw new Error(t)},noop:function(){},isPlainObject:function(t){var e,i;return!(!t||"[object Object]"!==r.call(t)||(e=a(t))&&("function"!=typeof(i=L.call(e,"constructor")&&e.constructor)||C.call(i)!==s))},isEmptyObject:function(t){var e;for(e in t)return!1;return!0},globalEval:function(t,e,i){c(t,{nonce:e&&e.nonce},i)},each:function(t,e){var i,a=0;if(p(t))for(i=t.length;a<i&&!1!==e.call(t[a],a,t[a]);a++);else for(a in t)if(!1===e.call(t[a],a,t[a]))break;return t},makeArray:function(t,e){var i=e||[];return null!=t&&(p(Object(t))?f.merge(i,"string"==typeof t?[t]:t):d.call(i,t)),i},inArray:function(t,e,i){return null==e?-1:u.call(e,t,i)},merge:function(t,e){for(var i=+e.length,a=0,n=t.length;a<i;a++)t[n++]=e[a];return t.length=n,t},grep:function(t,e,i){for(var a=[],n=0,o=t.length,d=!i;n<o;n++)!e(t[n],n)!==d&&a.push(t[n]);return a},map:function(t,e,i){var a,n,d=0,u=[];if(p(t))for(a=t.length;d<a;d++)null!=(n=e(t[d],d,i))&&u.push(n);else for(d in t)null!=(n=e(t[d],d,i))&&u.push(n);return o(u)},guid:1,support:g}),"function"==typeof Symbol&&(f.fn[Symbol.iterator]=i[Symbol.iterator]),f.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),(function(t,e){S["[object "+e+"]"]=e.toLowerCase()}));var m=function(t){var e,i,a,n,o,d,u,S,r,L,C,s,g,l,K,y,I,c,h,A="sizzle"+1*new Date,f=t.document,p=0,m=0,M=St(),N=St(),T=St(),v=St(),W=function(t,e){return t===e&&(C=!0),0},P={}.hasOwnProperty,D=[],B=D.pop,F=D.push,O=D.push,R=D.slice,w=function(t,e){for(var i=0,a=t.length;i<a;i++)if(t[i]===e)return i;return-1},E="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",H="[\\x20\\t\\r\\n\\f]",X="(?:\\\\[\\da-fA-F]{1,6}"+H+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",b="\\["+H+"*("+X+")(?:"+H+"*([*^$|!~]?=)"+H+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+X+"))|)"+H+"*\\]",Y=":("+X+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+b+")*)|.*)\\)|)",k=new RegExp(H+"+","g"),G=new RegExp("^"+H+"+|((?:^|[^\\\\])(?:\\\\.)*)"+H+"+$","g"),V=new RegExp("^"+H+"*,"+H+"*"),x=new RegExp("^"+H+"*([>+~]|"+H+")"+H+"*"),U=new RegExp(H+"|>"),Q=new RegExp(Y),Z=new RegExp("^"+X+"$"),J={ID:new RegExp("^#("+X+")"),CLASS:new RegExp("^\\.("+X+")"),TAG:new RegExp("^("+X+"|[*])"),ATTR:new RegExp("^"+b),PSEUDO:new RegExp("^"+Y),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+H+"*(even|odd|(([+-]|)(\\d*)n|)"+H+"*(?:([+-]|)"+H+"*(\\d+)|))"+H+"*\\)|)","i"),bool:new RegExp("^(?:"+E+")$","i"),needsContext:new RegExp("^"+H+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+H+"*((?:-\\d)?\\d*)"+H+"*\\)|)(?=[^-]|$)","i")},j=/HTML$/i,_=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tt=/[+~]/,et=new RegExp("\\\\[\\da-fA-F]{1,6}"+H+"?|\\\\([^\\r\\n\\f])","g"),it=function(t,e){var i="0x"+t.slice(1)-65536;return e||(i<0?String.fromCharCode(i+65536):String.fromCharCode(i>>10|55296,1023&i|56320))},at=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,nt=function(t,e){return e?"\0"===t?"<22>":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},ot=function(){s()},dt=At((function(t){return!0===t.disabled&&"fieldset"===t.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{O.apply(D=R.call(f.childNodes),f.childNodes),D[f.childNodes.length].nodeType}catch(e){O={apply:D.length?function(t,e){F.apply(t,R.call(e))}:function(t,e){for(var i=t.length,a=0;t[i++]=e[a++];);t.length=i-1}}}function ut(t,e,a,n){var o,u,r,L,C,l,I,c=e&&e.ownerDocument,f=e?e.nodeType:9;if(a=a||[],"string"!=typeof t||!t||1!==f&&9!==f&&11!==f)return a;if(!n&&(s(e),e=e||g,K)){if(11!==f&&(C=$.exec(t)))if(o=C[1]){if(9===f){if(!(r=e.getElementById(o)))return a;if(r.id===o)return a.push(r),a}else if(c&&(r=c.getElementById(o))&&h(e,r)&&r.id===o)return a.push(r),a}else{if(C[2])return O.apply(a,e.getElementsByTagName(t)),a;if((o=C[3])&&i.getElementsByClassName&&e.getElementsByClassName)return O.apply(a,e.getElementsByClassName(o)),a}if(i.qsa&&!v[t+" "]&&(!y||!y.test(t))&&(1!==f||"object"!==e.nodeName.toLowerCase())){if(I=t,c=e,1===f&&(U.test(t)||x.test(t))){for((c=tt.test(t)&&It(e.parentNode)||e)===e&&i.scope||((L=e.getAttribute("id"))?L=L.replace(at,nt):e.setAttribute("id",L=A)),u=(l=d(t)).length;u--;)l[u]=(L?"#"+L:":scope")+" "+ht(l[u]);I=l.join(",")}try{return O.apply(a,c.querySelectorAll(I)),a}catch(e){v(t,!0)}finally{L===A&&e.removeAttribute("id")}}}return S(t.replace(G,"$1"),e,a,n)}function St(){var t=[];return function e(i,n){return t.push(i+" ")>a.cacheLength&&delete e[t.shift()],e[i+" "]=n}}function rt(t){return t[A]=!0,t}function Lt(t){var e=g.createElement("fieldset");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function Ct(t,e){for(var i=t.split("|"),n=i.length;n--;)a.attrHandle[i[n]]=e}function st(t,e){var i=e&&t,a=i&&1===t.nodeType&&1===e.nodeType&&t.sourceIndex-e.sourceIndex;if(a)return a;if(i)for(;i=i.nextSibling;)if(i===e)return-1;return t?1:-1}function gt(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function lt(t){return function(e){var i=e.nodeName.toLowerCase();return("input"===i||"button"===i)&&e.type===t}}function Kt(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&dt(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function yt(t){return rt((function(e){return e=+e,rt((function(i,a){for(var n,o=t([],i.length,e),d=o.length;d--;)i[n=o[d]]&&(i[n]=!(a[n]=i[n]))}))}))}function It(t){return t&&void 0!==t.getElementsByTagName&&t}for(e in i=ut.support={},o=ut.isXML=function(t){var e=t.namespaceURI,i=(t.ownerDocument||t).documentElement;return!j.test(e||i&&i.nodeName||"HTML")},s=ut.setDocument=function(t){var e,n,d=t?t.ownerDocument||t:f;return d!=g&&9===d.nodeType&&d.documentElement&&(l=(g=d).documentElement,K=!o(g),f!=g&&(n=g.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",ot,!1):n.attachEvent&&n.attachEvent("onunload",ot)),i.scope=Lt((function(t){return l.appendChild(t).appendChild(g.createElement("div")),void 0!==t.querySelectorAll&&!t.querySelectorAll(":scope fieldset div").length})),i.attributes=Lt((function(t){return t.className="i",!t.getAttribute("className")})),i.getElementsByTagName=Lt((function(t){return t.appendChild(g.createComment("")),!t.getElementsByTagName("*").length})),i.getElementsByClassName=z.test(g.getElementsByClassName),i.getById=Lt((function(t){return l.appendChild(t).id=A,!g.getElementsByName||!g.getElementsByName(A).length})),i.getById?(a.filter.ID=function(t){var e=t.replace(et,it);return function(t){return t.getAttribute("id")===e}},a.find.ID=function(t,e){if(void 0!==e.getElementById&&K){var i=e.getElementById(t);return i?[i]:[]}}):(a.filter.ID=function(t){var e=t.replace(et,it);return function(t){var i=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return i&&i.value===e}},a.find.ID=function(t,e){if(void 0!==e.getElementById&&K){var i,a,n,o=e.getElementById(t);if(o){if((i=o.getAttributeNode("id"))&&i.value===t)return[o];for(n=e.getElementsByName(t),a=0;o=n[a++];)if((i=o.getAttributeNode("id"))&&i.value===t)return[o]}return[]}}),a.find.TAG=i.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):i.qsa?e.querySelectorAll(t):void 0}:function(t,e){var i,a=[],n=0,o=e.getElementsByTagName(t);if("*"===t){for(;i=o[n++];)1===i.nodeType&&a.push(i);return a}return o},a.find.CLASS=i.getElementsByClassName&&function(t,e){if(void 0!==e.getElementsByClassName&&K)return e.getElementsByClassName(t)},I=[],y=[],(i.qsa=z.test(g.querySelectorAll))&&(Lt((function(t){var e;l.appendChild(t).innerHTML="<a id='"+A+"'></a><select id='"+A+"-\r\\' msallowcapture=''><option selected=''></option></select>",t.querySelectorAll("[msallowcapture^='']").length&&y.push("[*^$]="+H+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||y.push("\\["+H+"*(?:value|"+E+")"),t.querySelectorAll("[id~="+A+"-]").length||y.push("~="),(e=g.createElement("input")).setAttribute("name",""),t.appendChild(e),t.querySelectorAll("[name='']").length||y.push("\\["+H+"*name"+H+"*="+H+"*(?:''|\"\")"),t.querySelectorAll(":checked").length||y.push(":checked"),t.querySelectorAll("a#"+A+"+*").length||y.push(".#.+[+~]"),t.querySelectorAll("\\\f"),y.push("[\\r\\n\\f]")})),Lt((function(t){t.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var e=g.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&y.push("name"+H+"*[*^$|!~]?="),2!==t.querySelectorAll(":enabled").length&&y.push(":enabled",":disabled"),l.appendChild(t).disabled=!0,2!==t.querySelectorAll(":disabled").length&&y.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),y.push(",.*:")}))),(i.matchesSelector=z.test(c=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&Lt((function(t){i.disconnectedMatch=c.call(t,"*"),c.call(t,"[s!='']:x"),I.push("!=",Y)})),y=y.length&&new RegExp(y.join("|")),I=I.length&&new RegExp(I.join("|")),e=z.test(l.compareDocumentPosition),h=e||z.test(l.contains)?function(t,e){var i=9===t.nodeType?t.documentElement:t,a=e&&e.parentNode;return t===a||!(!a||1!==a.nodeType||!(i.contains?i.contains(a):t.compareDocumentPosition&&16&t.compareDocumentPosition(a)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},W=e?function(t,e){if(t===e)return C=!0,0;var a=!t.compareDocumentPosition-!e.compareDocumentPosition;return a||(1&(a=(t.ownerDocument||t)==(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!i.sortDetached&&e.compareDocumentPosition(t)===a?t==g||t.ownerDocument==f&&h(f,t)?-1:e==g||e.ownerDocument==f&&h(f,e)?1:L?w(L,t)-w(L,e):0:4&a?-1:1)}:function(t,e){if(t===e)return C=!0,0;var i,a=0,n=t.parentNode,o=e.parentNode,d=[t],u=[e];if(!n||!o)return t==g?-1:e==g?1:n?-1:o?1:L?w(L,t)-w(L,e):0;if(n===o)return st(t,e);for(i=t;i=i.parentNode;)d.unshift(i);for(i=e;i=i.parentNode;)u.unshift(i);for(;d[a]===u[a];)a++;return a?st(d[a],u[a]):d[a]==f?-1:u[a]==f?1:0}),g},ut.matches=function(t,e){return ut(t,null,null,e)},ut.matchesSelector=function(t,e){if(s(t),i.matchesSelector&&K&&!v[e+" "]&&(!I||!I.test(e))&&(!y||!y.test(e)))try{var a=c.call(t,e);if(a||i.disconnectedMatch||t.document&&11!==t.document.nodeType)return a}catch(t){v(e,!0)}return 0<ut(e,g,null,[t]).length},ut.contains=function(t,e){return(t.ownerDocument||t)!=g&&s(t),h(t,e)},ut.attr=function(t,e){(t.ownerDocument||t)!=g&&s(t);var n=a.attrHandle[e.toLowerCase()],o=n&&P.call(a.attrHandle,e.toLowerCase())?n(t,e,!K):void 0;return void 0!==o?o:i.attributes||!K?t.getAttribute(e):(o=t.getAttributeNode(e))&&o.specified?o.value:null},ut.escape=function(t){return(t+"").replace(at,nt)},ut.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},ut.uniqueSort=function(t){var e,a=[],n=0,o=0;if(C=!i.detectDuplicates,L=!i.sortStable&&t.slice(0),t.sort(W),C){for(;e=t[o++];)e===t[o]&&(n=a.push(o));for(;n--;)t.splice(a[n],1)}return L=null,t},n=ut.getText=function(t){var e,i="",a=0,o=t.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)i+=n(t)}else if(3===o||4===o)return t.nodeValue}else for(;e=t[a++];)i+=n(e);return i},(a=ut.selectors={cacheLength:50,createPseudo:rt,match:J,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(et,it),t[3]=(t[3]||t[4]||t[5]||"").replace(et,it),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||ut.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&ut.error(t[0]),t},PSEUDO:function(t){var e,i=!t[6]&&t[2];return J.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":i&&Q.test(i)&&(e=d(i,!0))&&(e=i.indexOf(")",i.length-e)-i.length)&&(t[0]=t[0].slice(0,e),t[2]=i.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(et,it).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=M[t+" "];return e||(e=new RegExp("(^|"+H+")"+t+"("+H+"|$)"))&&M(t,(function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")}))},ATTR:function(t,e,i){return function(a){var n=ut.attr(a,t);return null==n?"!="===e:!e||(n+="","="===e?n===i:"!="===e?n!==i:"^="===e?i&&0===n.indexOf(i):"*="===e?i&&-1<n.indexOf(i):"$="===e?i&&n.slice(-i.length)===i:"~="===e?-1<(" "+n.replace(k," ")+" ").indexOf(i):"|="===e&&(n===i||n.slice(0,i.length+1)===i+"-"))}},CHILD:function(t,e,i,a,n){var o="nth"!==t.slice(0,3),d="last"!==t.slice(-4),u="of-type"===e;return 1===a&&0===n?function(t){return!!t.parentNode}:function(e,i,S){var r,L,C,s,g,l,K=o!==d?"nextSibling":"previousSibling",y=e.parentNode,I=u&&e.nodeName.toLowerCase(),c=!S&&!u,h=!1;if(y){if(o){for(;K;){for(s=e;s=s[K];)if(u?s.nodeName.toLowerCase()===I:1===s.nodeType)return!1;l=K="only"===t&&!l&&"nextSibling"}return!0}if(l=[d?y.firstChild:y.lastChild],d&&c){for(h=(g=(r=(L=(C=(s=y)[A]||(s[A]={}))[s.uniqueID]||(C[s.uniqueID]={}))[t]||[])[0]===p&&r[1])&&r[2],s=g&&y.childNodes[g];s=++g&&s&&s[K]||(h=g=0)||l.pop();)if(1===s.nodeType&&++h&&s===e){L[t]=[p,g,h];break}}else if(c&&(h=g=(r=(L=(C=(s=e)[A]||(s[A]={}))[s.uniqueID]||(C[s.uniqueID]={}))[t]||[])[0]===p&&r[1]),!1===h)for(;(s=++g&&s&&s[K]||(h=g=0)||l.pop())&&((u?s.nodeName.toLowerCase()!==I:1!==s.nodeType)||!++h||(c&&((L=(C=s[A]||(s[A]={}))[s.uniqueID]||(C[s.uniqueID]={}))[t]=[p,h]),s!==e)););return(h-=n)===a||h%a==0&&0<=h/a}}},PSEUDO:function(t,e){var i,n=a.pseudos[t]||a.setFilters[t.toLowerCase()]||ut.error("unsupported pseudo: "+t);return n[A]?n(e):1<n.length?(i=[t,t,"",e],a.setFilters.hasOwnProperty(t.toLowerCase())?rt((function(t,i){for(var a,o=n(t,e),d=o.length;d--;)t[a=w(t,o[d])]=!(i[a]=o[d])})):function(t){return n(t,0,i)}):n}},pseudos:{not:rt((function(t){var e=[],i=[],a=u(t.replace(G,"$1"));return a[A]?rt((function(t,e,i,n){for(var o,d=a(t,null,n,[]),u=t.length;u--;)(o=d[u])&&(t[u]=!(e[u]=o))})):function(t,n,o){return e[0]=t,a(e,null,o,i),e[0]=null,!i.pop()}})),has:rt((function(t){return function(e){return 0<ut(t,e).length}})),contains:rt((function(t){return t=t.replace(et,it),function(e){return-1<(e.textContent||n(e)).indexOf(t)}})),lang:rt((function(t){return Z.test(t||"")||ut.error("unsupported lang: "+t),t=t.replace(et,it).toLowerCase(),function(e){var i;do{if(i=K?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(i=i.toLowerCase())===t||0===i.indexOf(t+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}})),target:function(e){var i=t.location&&t.location.hash;return i&&i.slice(1)===e.id},root:function(t){return t===l},focus:function(t){return t===g.activeElement&&(!g.hasFocus||g.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:Kt(!1),disabled:Kt(!0),checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!a.pseudos.empty(t)},header:function(t){return q.test(t.nodeName)},input:function(t){return _.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:yt((function(){return[0]})),last:yt((function(t,e){return[e-1]})),eq:yt((function(t,e,i){return[i<0?i+e:i]})),even:yt((function(t,e){for(var i=0;i<e;i+=2)t.push(i);return t})),odd:yt((function(t,e){for(var i=1;i<e;i+=2)t.push(i);return t})),lt:yt((function(t,e,i){for(var a=i<0?i+e:e<i?e:i;0<=--a;)t.push(a);return t})),gt:yt((function(t,e,i){for(var a=i<0?i+e:i;++a<e;)t.push(a);return t}))}}).pseudos.nth=a.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})a.pseudos[e]=gt(e);for(e in{submit:!0,reset:!0})a.pseudos[e]=lt(e);function ct(){}function ht(t){for(var e=0,i=t.length,a="";e<i;e++)a+=t[e].value;return a}function At(t,e,i){var a=e.dir,n=e.next,o=n||a,d=i&&"parentNode"===o,u=m++;return e.first?function(e,i,n){for(;e=e[a];)if(1===e.nodeType||d)return t(e,i,n);return!1}:function(e,i,S){var r,L,C,s=[p,u];if(S){for(;e=e[a];)if((1===e.nodeType||d)&&t(e,i,S))return!0}else for(;e=e[a];)if(1===e.nodeType||d)if(L=(C=e[A]||(e[A]={}))[e.uniqueID]||(C[e.uniqueID]={}),n&&n===e.nodeName.toLowerCase())e=e[a]||e;else{if((r=L[o])&&r[0]===p&&r[1]===u)return s[2]=r[2];if((L[o]=s)[2]=t(e,i,S))return!0}return!1}}function ft(t){return 1<t.length?function(e,i,a){for(var n=t.length;n--;)if(!t[n](e,i,a))return!1;return!0}:t[0]}function pt(t,e,i,a,n){for(var o,d=[],u=0,S=t.length,r=null!=e;u<S;u++)(o=t[u])&&(i&&!i(o,a,n)||(d.push(o),r&&e.push(u)));return d}function mt(t,e,i,a,n,o){return a&&!a[A]&&(a=mt(a)),n&&!n[A]&&(n=mt(n,o)),rt((function(o,d,u,S){var r,L,C,s=[],g=[],l=d.length,K=o||function(t,e,i){for(var a=0,n=e.length;a<n;a++)ut(t,e[a],i);return i}(e||"*",u.nodeType?[u]:u,[]),y=!t||!o&&e?K:pt(K,s,t,u,S),I=i?n||(o?t:l||a)?[]:d:y;if(i&&i(y,I,u,S),a)for(r=pt(I,g),a(r,[],u,S),L=r.length;L--;)(C=r[L])&&(I[g[L]]=!(y[g[L]]=C));if(o){if(n||t){if(n){for(r=[],L=I.length;L--;)(C=I[L])&&r.push(y[L]=C);n(null,I=[],r,S)}for(L=I.length;L--;)(C=I[L])&&-1<(r=n?w(o,C):s[L])&&(o[r]=!(d[r]=C))}}else I=pt(I===d?I.splice(l,I.length):I),n?n(null,d,I,S):O.apply(d,I)}))}function Mt(t){for(var e,i,n,o=t.length,d=a.relative[t[0].type],u=d||a.relative[" "],S=d?1:0,L=At((function(t){return t===e}),u,!0),C=At((function(t){return-1<w(e,t)}),u,!0),s=[function(t,i,a){var n=!d&&(a||i!==r)||((e=i).nodeType?L(t,i,a):C(t,i,a));return e=null,n}];S<o;S++)if(i=a.relative[t[S].type])s=[At(ft(s),i)];else{if((i=a.filter[t[S].type].apply(null,t[S].matches))[A]){for(n=++S;n<o&&!a.relative[t[n].type];n++);return mt(1<S&&ft(s),1<S&&ht(t.slice(0,S-1).concat({value:" "===t[S-2].type?"*":""})).replace(G,"$1"),i,S<n&&Mt(t.slice(S,n)),n<o&&Mt(t=t.slice(n)),n<o&&ht(t))}s.push(i)}return ft(s)}return ct.prototype=a.filters=a.pseudos,a.setFilters=new ct,d=ut.tokenize=function(t,e){var i,n,o,d,u,S,r,L=N[t+" "];if(L)return e?0:L.slice(0);for(u=t,S=[],r=a.preFilter;u;){for(d in i&&!(n=V.exec(u))||(n&&(u=u.slice(n[0].length)||u),S.push(o=[])),i=!1,(n=x.exec(u))&&(i=n.shift(),o.push({value:i,type:n[0].replace(G," ")}),u=u.slice(i.length)),a.filter)!(n=J[d].exec(u))||r[d]&&!(n=r[d](n))||(i=n.shift(),o.push({value:i,type:d,matches:n}),u=u.slice(i.length));if(!i)break}return e?u.length:u?ut.error(t):N(t,S).slice(0)},u=ut.compile=function(t,e){var i,n,o,u,S,L,C=[],l=[],y=T[t+" "];if(!y){for(e||(e=d(t)),i=e.length;i--;)(y=Mt(e[i]))[A]?C.push(y):l.push(y);(y=T(t,(n=l,u=0<(o=C).length,S=0<n.length,L=function(t,e,i,d,L){var C,l,y,I=0,c="0",h=t&&[],A=[],f=r,m=t||S&&a.find.TAG("*",L),M=p+=null==f?1:Math.random()||.1,N=m.length;for(L&&(r=e==g||e||L);c!==N&&null!=(C=m[c]);c++){if(S&&C){for(l=0,e||C.ownerDocument==g||(s(C),i=!K);y=n[l++];)if(y(C,e||g,i)){d.push(C);break}L&&(p=M)}u&&((C=!y&&C)&&I--,t&&h.push(C))}if(I+=c,u&&c!==I){for(l=0;y=o[l++];)y(h,A,e,i);if(t){if(0<I)for(;c--;)h[c]||A[c]||(A[c]=B.call(d));A=pt(A)}O.apply(d,A),L&&!t&&0<A.length&&1<I+o.length&&ut.uniqueSort(d)}return L&&(p=M,r=f),h},u?rt(L):L))).selector=t}return y},S=ut.select=function(t,e,i,n){var o,S,r,L,C,s="function"==typeof t&&t,g=!n&&d(t=s.selector||t);if(i=i||[],1===g.length){if(2<(S=g[0]=g[0].slice(0)).length&&"ID"===(r=S[0]).type&&9===e.nodeType&&K&&a.relative[S[1].type]){if(!(e=(a.find.ID(r.matches[0].replace(et,it),e)||[])[0]))return i;s&&(e=e.parentNode),t=t.slice(S.shift().value.length)}for(o=J.needsContext.test(t)?0:S.length;o--&&(r=S[o],!a.relative[L=r.type]);)if((C=a.find[L])&&(n=C(r.matches[0].replace(et,it),tt.test(S[0].type)&&It(e.parentNode)||e))){if(S.splice(o,1),!(t=n.length&&ht(S)))return O.apply(i,n),i;break}}return(s||u(t,g))(n,e,!K,i,!e||tt.test(t)&&It(e.parentNode)||e),i},i.sortStable=A.split("").sort(W).join("")===A,i.detectDuplicates=!!C,s(),i.sortDetached=Lt((function(t){return 1&t.compareDocumentPosition(g.createElement("fieldset"))})),Lt((function(t){return t.innerHTML="<a href='#'></a>","#"===t.firstChild.getAttribute("href")}))||Ct("type|href|height|width",(function(t,e,i){if(!i)return t.getAttribute(e,"type"===e.toLowerCase()?1:2)})),i.attributes&&Lt((function(t){return t.innerHTML="<input/>",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")}))||Ct("value",(function(t,e,i){if(!i&&"input"===t.nodeName.toLowerCase())return t.defaultValue})),Lt((function(t){return null==t.getAttribute("disabled")}))||Ct(E,(function(t,e,i){var a;if(!i)return!0===t[e]?e.toLowerCase():(a=t.getAttributeNode(e))&&a.specified?a.value:null})),ut}(t);f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.pseudos,f.uniqueSort=f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains,f.escapeSelector=m.escape;var M=function(t,e,i){for(var a=[],n=void 0!==i;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(n&&f(t).is(i))break;a.push(t)}return a},N=function(t,e){for(var i=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&i.push(t);return i},T=f.expr.match.needsContext;function v(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()}var W=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function P(t,e,i){return l(e)?f.grep(t,(function(t,a){return!!e.call(t,a,t)!==i})):e.nodeType?f.grep(t,(function(t){return t===e!==i})):"string"!=typeof e?f.grep(t,(function(t){return-1<u.call(e,t)!==i})):f.filter(e,t,i)}f.filter=function(t,e,i){var a=e[0];return i&&(t=":not("+t+")"),1===e.length&&1===a.nodeType?f.find.matchesSelector(a,t)?[a]:[]:f.find.matches(t,f.grep(e,(function(t){return 1===t.nodeType})))},f.fn.extend({find:function(t){var e,i,a=this.length,n=this;if("string"!=typeof t)return this.pushStack(f(t).filter((function(){for(e=0;e<a;e++)if(f.contains(n[e],this))return!0})));for(i=this.pushStack([]),e=0;e<a;e++)f.find(t,n[e],i);return 1<a?f.uniqueSort(i):i},filter:function(t){return this.pushStack(P(this,t||[],!1))},not:function(t){return this.pushStack(P(this,t||[],!0))},is:function(t){return!!P(this,"string"==typeof t&&T.test(t)?f(t):t||[],!1).length}});var D,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(f.fn.init=function(t,e,i){var a,n;if(!t)return this;if(i=i||D,"string"==typeof t){if(!(a="<"===t[0]&&">"===t[t.length-1]&&3<=t.length?[null,t,null]:B.exec(t))||!a[1]&&e)return!e||e.jquery?(e||i).find(t):this.constructor(e).find(t);if(a[1]){if(e=e instanceof f?e[0]:e,f.merge(this,f.parseHTML(a[1],e&&e.nodeType?e.ownerDocument||e:y,!0)),W.test(a[1])&&f.isPlainObject(e))for(a in e)l(this[a])?this[a](e[a]):this.attr(a,e[a]);return this}return(n=y.getElementById(a[2]))&&(this[0]=n,this.length=1),this}return t.nodeType?(this[0]=t,this.length=1,this):l(t)?void 0!==i.ready?i.ready(t):t(f):f.makeArray(t,this)}).prototype=f.fn,D=f(y);var F=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function R(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}f.fn.extend({has:function(t){var e=f(t,this),i=e.length;return this.filter((function(){for(var t=0;t<i;t++)if(f.contains(this,e[t]))return!0}))},closest:function(t,e){var i,a=0,n=this.length,o=[],d="string"!=typeof t&&f(t);if(!T.test(t))for(;a<n;a++)for(i=this[a];i&&i!==e;i=i.parentNode)if(i.nodeType<11&&(d?-1<d.index(i):1===i.nodeType&&f.find.matchesSelector(i,t))){o.push(i);break}return this.pushStack(1<o.length?f.uniqueSort(o):o)},index:function(t){return t?"string"==typeof t?u.call(f(t),this[0]):u.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(f.uniqueSort(f.merge(this.get(),f(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),f.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return M(t,"parentNode")},parentsUntil:function(t,e,i){return M(t,"parentNode",i)},next:function(t){return R(t,"nextSibling")},prev:function(t){return R(t,"previousSibling")},nextAll:function(t){return M(t,"nextSibling")},prevAll:function(t){return M(t,"previousSibling")},nextUntil:function(t,e,i){return M(t,"nextSibling",i)},prevUntil:function(t,e,i){return M(t,"previousSibling",i)},siblings:function(t){return N((t.parentNode||{}).firstChild,t)},children:function(t){return N(t.firstChild)},contents:function(t){return null!=t.contentDocument&&a(t.contentDocument)?t.contentDocument:(v(t,"template")&&(t=t.content||t),f.merge([],t.childNodes))}},(function(t,e){f.fn[t]=function(i,a){var n=f.map(this,e,i);return"Until"!==t.slice(-5)&&(a=i),a&&"string"==typeof a&&(n=f.filter(a,n)),1<this.length&&(O[t]||f.uniqueSort(n),F.test(t)&&n.reverse()),this.pushStack(n)}}));var w=/[^\x20\t\r\n\f]+/g;function E(t){return t}function H(t){throw t}function X(t,e,i,a){var n;try{t&&l(n=t.promise)?n.call(t).done(e).fail(i):t&&l(n=t.then)?n.call(t,e,i):e.apply(void 0,[t].slice(a))}catch(t){i.apply(void 0,[t])}}f.Callbacks=function(t){var e,i;t="string"==typeof t?(e=t,i={},f.each(e.match(w)||[],(function(t,e){i[e]=!0})),i):f.extend({},t);var a,n,o,d,u=[],S=[],r=-1,L=function(){for(d=d||t.once,o=a=!0;S.length;r=-1)for(n=S.shift();++r<u.length;)!1===u[r].apply(n[0],n[1])&&t.stopOnFalse&&(r=u.length,n=!1);t.memory||(n=!1),a=!1,d&&(u=n?[]:"")},C={add:function(){return u&&(n&&!a&&(r=u.length-1,S.push(n)),function e(i){f.each(i,(function(i,a){l(a)?t.unique&&C.has(a)||u.push(a):a&&a.length&&"string"!==h(a)&&e(a)}))}(arguments),n&&!a&&L()),this},remove:function(){return f.each(arguments,(function(t,e){for(var i;-1<(i=f.inArray(e,u,i));)u.splice(i,1),i<=r&&r--})),this},has:function(t){return t?-1<f.inArray(t,u):0<u.length},empty:function(){return u&&(u=[]),this},disable:function(){return d=S=[],u=n="",this},disabled:function(){return!u},lock:function(){return d=S=[],n||a||(u=n=""),this},locked:function(){return!!d},fireWith:function(t,e){return d||(e=[t,(e=e||[]).slice?e.slice():e],S.push(e),a||L()),this},fire:function(){return C.fireWith(this,arguments),this},fired:function(){return!!o}};return C},f.extend({Deferred:function(e){var i=[["notify","progress",f.Callbacks("memory"),f.Callbacks("memory"),2],["resolve","done",f.Callbacks("once memory"),f.Callbacks("once memory"),0,"resolved"],["reject","fail",f.Callbacks("once memory"),f.Callbacks("once memory"),1,"rejected"]],a="pending",n={state:function(){return a},always:function(){return o.done(arguments).fail(arguments),this},catch:function(t){return n.then(null,t)},pipe:function(){var t=arguments;return f.Deferred((function(e){f.each(i,(function(i,a){var n=l(t[a[4]])&&t[a[4]];o[a[1]]((function(){var t=n&&n.apply(this,arguments);t&&l(t.promise)?t.promise().progress(e.notify).done(e.resolve).fail(e.reject):e[a[0]+"With"](this,n?[t]:arguments)}))})),t=null})).promise()},then:function(e,a,n){var o=0;function d(e,i,a,n){return function(){var u=this,S=arguments,r=function(){var t,r;if(!(e<o)){if((t=a.apply(u,S))===i.promise())throw new TypeError("Thenable self-resolution");r=t&&("object"==typeof t||"function"==typeof t)&&t.then,l(r)?n?r.call(t,d(o,i,E,n),d(o,i,H,n)):(o++,r.call(t,d(o,i,E,n),d(o,i,H,n),d(o,i,E,i.notifyWith))):(a!==E&&(u=void 0,S=[t]),(n||i.resolveWith)(u,S))}},L=n?r:function(){try{r()}catch(t){f.Deferred.exceptionHook&&f.Deferred.exceptionHook(t,L.stackTrace),o<=e+1&&(a!==H&&(u=void 0,S=[t]),i.rejectWith(u,S))}};e?L():(f.Deferred.getStackHook&&(L.stackTrace=f.Deferred.getStackHook()),t.setTimeout(L))}}return f.Deferred((function(t){i[0][3].add(d(0,t,l(n)?n:E,t.notifyWith)),i[1][3].add(d(0,t,l(e)?e:E)),i[2][3].add(d(0,t,l(a)?a:H))})).promise()},promise:function(t){return null!=t?f.extend(t,n):n}},o={};return f.each(i,(function(t,e){var d=e[2],u=e[5];n[e[1]]=d.add,u&&d.add((function(){a=u}),i[3-t][2].disable,i[3-t][3].disable,i[0][2].lock,i[0][3].lock),d.add(e[3].fire),o[e[0]]=function(){return o[e[0]+"With"](this===o?void 0:this,arguments),this},o[e[0]+"With"]=d.fireWith})),n.promise(o),e&&e.call(o,o),o},when:function(t){var e=arguments.length,i=e,a=Array(i),o=n.call(arguments),d=f.Deferred(),u=function(t){return function(i){a[t]=this,o[t]=1<arguments.length?n.call(arguments):i,--e||d.resolveWith(a,o)}};if(e<=1&&(X(t,d.done(u(i)).resolve,d.reject,!e),"pending"===d.state()||l(o[i]&&o[i].then)))return d.then();for(;i--;)X(o[i],u(i),d.reject);return d.promise()}});var b=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;f.Deferred.exceptionHook=function(e,i){t.console&&t.console.warn&&e&&b.test(e.name)&&t.console.warn("jQuery.Deferred exception: "+e.message,e.stack,i)},f.readyException=function(e){t.setTimeout((function(){throw e}))};var Y=f.Deferred();function k(){y.removeEventListener("DOMContentLoaded",k),t.removeEventListener("load",k),f.ready()}f.fn.ready=function(t){return Y.then(t).catch((function(t){f.readyException(t)})),this},f.extend({isReady:!1,readyWait:1,ready:function(t){(!0===t?--f.readyWait:f.isReady)||(f.isReady=!0)!==t&&0<--f.readyWait||Y.resolveWith(y,[f])}}),f.ready.then=Y.then,"complete"===y.readyState||"loading"!==y.readyState&&!y.documentElement.doScroll?t.setTimeout(f.ready):(y.addEventListener("DOMContentLoaded",k),t.addEventListener("load",k));var G=function(t,e,i,a,n,o,d){var u=0,S=t.length,r=null==i;if("object"===h(i))for(u in n=!0,i)G(t,e,u,i[u],!0,o,d);else if(void 0!==a&&(n=!0,l(a)||(d=!0),r&&(d?(e.call(t,a),e=null):(r=e,e=function(t,e,i){return r.call(f(t),i)})),e))for(;u<S;u++)e(t[u],i,d?a:a.call(t[u],u,e(t[u],i)));return n?t:r?e.call(t):S?e(t[0],i):o},V=/^-ms-/,x=/-([a-z])/g;function U(t,e){return e.toUpperCase()}function Q(t){return t.replace(V,"ms-").replace(x,U)}var Z=function(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType};function J(){this.expando=f.expando+J.uid++}J.uid=1,J.prototype={cache:function(t){var e=t[this.expando];return e||(e={},Z(t)&&(t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,configurable:!0}))),e},set:function(t,e,i){var a,n=this.cache(t);if("string"==typeof e)n[Q(e)]=i;else for(a in e)n[Q(a)]=e[a];return n},get:function(t,e){return void 0===e?this.cache(t):t[this.expando]&&t[this.expando][Q(e)]},access:function(t,e,i){return void 0===e||e&&"string"==typeof e&&void 0===i?this.get(t,e):(this.set(t,e,i),void 0!==i?i:e)},remove:function(t,e){var i,a=t[this.expando];if(void 0!==a){if(void 0!==e){i=(e=Array.isArray(e)?e.map(Q):(e=Q(e))in a?[e]:e.match(w)||[]).length;for(;i--;)delete a[e[i]]}(void 0===e||f.isEmptyObject(a))&&(t.nodeType?t[this.expando]=void 0:delete t[this.expando])}},hasData:function(t){var e=t[this.expando];return void 0!==e&&!f.isEmptyObject(e)}};var j=new J,_=new J,q=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,z=/[A-Z]/g;function $(t,e,i){var a,n;if(void 0===i&&1===t.nodeType)if(a="data-"+e.replace(z,"-$&").toLowerCase(),"string"==typeof(i=t.getAttribute(a))){try{i="true"===(n=i)||"false"!==n&&("null"===n?null:n===+n+""?+n:q.test(n)?JSON.parse(n):n)}catch(t){}_.set(t,e,i)}else i=void 0;return i}f.extend({hasData:function(t){return _.hasData(t)||j.hasData(t)},data:function(t,e,i){return _.access(t,e,i)},removeData:function(t,e){_.remove(t,e)},_data:function(t,e,i){return j.access(t,e,i)},_removeData:function(t,e){j.remove(t,e)}}),f.fn.extend({data:function(t,e){var i,a,n,o=this[0],d=o&&o.attributes;if(void 0===t){if(this.length&&(n=_.get(o),1===o.nodeType&&!j.get(o,"hasDataAttrs"))){for(i=d.length;i--;)d[i]&&0===(a=d[i].name).indexOf("data-")&&(a=Q(a.slice(5)),$(o,a,n[a]));j.set(o,"hasDataAttrs",!0)}return n}return"object"==typeof t?this.each((function(){_.set(this,t)})):G(this,(function(e){var i;if(o&&void 0===e)return void 0!==(i=_.get(o,t))||void 0!==(i=$(o,t))?i:void 0;this.each((function(){_.set(this,t,e)}))}),null,e,1<arguments.length,null,!0)},removeData:function(t){return this.each((function(){_.remove(this,t)}))}}),f.extend({queue:function(t,e,i){var a;if(t)return e=(e||"fx")+"queue",a=j.get(t,e),i&&(!a||Array.isArray(i)?a=j.access(t,e,f.makeArray(i)):a.push(i)),a||[]},dequeue:function(t,e){e=e||"fx";var i=f.queue(t,e),a=i.length,n=i.shift(),o=f._queueHooks(t,e);"inprogress"===n&&(n=i.shift(),a--),n&&("fx"===e&&i.unshift("inprogress"),delete o.stop,n.call(t,(function(){f.dequeue(t,e)}),o)),!a&&o&&o.empty.fire()},_queueHooks:function(t,e){var i=e+"queueHooks";return j.get(t,i)||j.access(t,i,{empty:f.Callbacks("once memory").add((function(){j.remove(t,[e+"queue",i])}))})}}),f.fn.extend({queue:function(t,e){var i=2;return"string"!=typeof t&&(e=t,t="fx",i--),arguments.length<i?f.queue(this[0],t):void 0===e?this:this.each((function(){var i=f.queue(this,t,e);f._queueHooks(this,t),"fx"===t&&"inprogress"!==i[0]&&f.dequeue(this,t)}))},dequeue:function(t){return this.each((function(){f.dequeue(this,t)}))},clearQueue:function(t){return this.queue(t||"fx",[])},promise:function(t,e){var i,a=1,n=f.Deferred(),o=this,d=this.length,u=function(){--a||n.resolveWith(o,[o])};for("string"!=typeof t&&(e=t,t=void 0),t=t||"fx";d--;)(i=j.get(o[d],t+"queueHooks"))&&i.empty&&(a++,i.empty.add(u));return u(),n.promise(e)}});var tt=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,et=new RegExp("^(?:([+-])=|)("+tt+")([a-z%]*)$","i"),it=["Top","Right","Bottom","Left"],at=y.documentElement,nt=function(t){return f.contains(t.ownerDocument,t)},ot={composed:!0};at.getRootNode&&(nt=function(t){return f.contains(t.ownerDocument,t)||t.getRootNode(ot)===t.ownerDocument});var dt=function(t,e){return"none"===(t=e||t).style.display||""===t.style.display&&nt(t)&&"none"===f.css(t,"display")};function ut(t,e,i,a){var n,o,d=20,u=a?function(){return a.cur()}:function(){return f.css(t,e,"")},S=u(),r=i&&i[3]||(f.cssNumber[e]?"":"px"),L=t.nodeType&&(f.cssNumber[e]||"px"!==r&&+S)&&et.exec(f.css(t,e));if(L&&L[3]!==r){for(S/=2,r=r||L[3],L=+S||1;d--;)f.style(t,e,L+r),(1-o)*(1-(o=u()/S||.5))<=0&&(d=0),L/=o;L*=2,f.style(t,e,L+r),i=i||[]}return i&&(L=+L||+S||0,n=i[1]?L+(i[1]+1)*i[2]:+i[2],a&&(a.unit=r,a.start=L,a.end=n)),n}var St={};function rt(t,e){for(var i,a,n,o,d,u,S,r=[],L=0,C=t.length;L<C;L++)(a=t[L]).style&&(i=a.style.display,e?("none"===i&&(r[L]=j.get(a,"display")||null,r[L]||(a.style.display="")),""===a.style.display&&dt(a)&&(r[L]=(S=d=o=void 0,d=(n=a).ownerDocument,u=n.nodeName,(S=St[u])||(o=d.body.appendChild(d.createElement(u)),S=f.css(o,"display"),o.parentNode.removeChild(o),"none"===S&&(S="block"),St[u]=S)))):"none"!==i&&(r[L]="none",j.set(a,"display",i)));for(L=0;L<C;L++)null!=r[L]&&(t[L].style.display=r[L]);return t}f.fn.extend({show:function(){return rt(this,!0)},hide:function(){return rt(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each((function(){dt(this)?f(this).show():f(this).hide()}))}});var Lt,Ct,st=/^(?:checkbox|radio)$/i,gt=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,lt=/^$|^module$|\/(?:java|ecma)script/i;Lt=y.createDocumentFragment().appendChild(y.createElement("div")),(Ct=y.createElement("input")).setAttribute("type","radio"),Ct.setAttribute("checked","checked"),Ct.setAttribute("name","t"),Lt.appendChild(Ct),g.checkClone=Lt.cloneNode(!0).cloneNode(!0).lastChild.checked,Lt.innerHTML="<textarea>x</textarea>",g.noCloneChecked=!!Lt.cloneNode(!0).lastChild.defaultValue,Lt.innerHTML="<option></option>",g.option=!!Lt.lastChild;var Kt={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function yt(t,e){var i;return i=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[],void 0===e||e&&v(t,e)?f.merge([t],i):i}function It(t,e){for(var i=0,a=t.length;i<a;i++)j.set(t[i],"globalEval",!e||j.get(e[i],"globalEval"))}Kt.tbody=Kt.tfoot=Kt.colgroup=Kt.caption=Kt.thead,Kt.th=Kt.td,g.option||(Kt.optgroup=Kt.option=[1,"<select multiple='multiple'>","</select>"]);var ct=/<|&#?\w+;/;function ht(t,e,i,a,n){for(var o,d,u,S,r,L,C=e.createDocumentFragment(),s=[],g=0,l=t.length;g<l;g++)if((o=t[g])||0===o)if("object"===h(o))f.merge(s,o.nodeType?[o]:o);else if(ct.test(o)){for(d=d||C.appendChild(e.createElement("div")),u=(gt.exec(o)||["",""])[1].toLowerCase(),S=Kt[u]||Kt._default,d.innerHTML=S[1]+f.htmlPrefilter(o)+S[2],L=S[0];L--;)d=d.lastChild;f.merge(s,d.childNodes),(d=C.firstChild).textContent=""}else s.push(e.createTextNode(o));for(C.textContent="",g=0;o=s[g++];)if(a&&-1<f.inArray(o,a))n&&n.push(o);else if(r=nt(o),d=yt(C.appendChild(o),"script"),r&&It(d),i)for(L=0;o=d[L++];)lt.test(o.type||"")&&i.push(o);return C}var At=/^key/,ft=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,pt=/^([^.]*)(?:\.(.+)|)/;function mt(){return!0}function Mt(){return!1}function Nt(t,e){return t===function(){try{return y.activeElement}catch(t){}}()==("focus"===e)}function Tt(t,e,i,a,n,o){var d,u;if("object"==typeof e){for(u in"string"!=typeof i&&(a=a||i,i=void 0),e)Tt(t,u,i,a,e[u],o);return t}if(null==a&&null==n?(n=i,a=i=void 0):null==n&&("string"==typeof i?(n=a,a=void 0):(n=a,a=i,i=void 0)),!1===n)n=Mt;else if(!n)return t;return 1===o&&(d=n,(n=function(t){return f().off(t),d.apply(this,arguments)}).guid=d.guid||(d.guid=f.guid++)),t.each((function(){f.event.add(this,e,n,a,i)}))}function vt(t,e,i){i?(j.set(t,e,!1),f.event.add(t,e,{namespace:!1,handler:function(t){var a,o,d=j.get(this,e);if(1&t.isTrigger&&this[e]){if(d.length)(f.event.special[e]||{}).delegateType&&t.stopPropagation();else if(d=n.call(arguments),j.set(this,e,d),a=i(this,e),this[e](),d!==(o=j.get(this,e))||a?j.set(this,e,!1):o={},d!==o)return t.stopImmediatePropagation(),t.preventDefault(),o.value}else d.length&&(j.set(this,e,{value:f.event.trigger(f.extend(d[0],f.Event.prototype),d.slice(1),this)}),t.stopImmediatePropagation())}})):void 0===j.get(t,e)&&f.event.add(t,e,mt)}f.event={global:{},add:function(t,e,i,a,n){var o,d,u,S,r,L,C,s,g,l,K,y=j.get(t);if(Z(t))for(i.handler&&(i=(o=i).handler,n=o.selector),n&&f.find.matchesSelector(at,n),i.guid||(i.guid=f.guid++),(S=y.events)||(S=y.events=Object.create(null)),(d=y.handle)||(d=y.handle=function(e){return void 0!==f&&f.event.triggered!==e.type?f.event.dispatch.apply(t,arguments):void 0}),r=(e=(e||"").match(w)||[""]).length;r--;)g=K=(u=pt.exec(e[r])||[])[1],l=(u[2]||"").split(".").sort(),g&&(C=f.event.special[g]||{},g=(n?C.delegateType:C.bindType)||g,C=f.event.special[g]||{},L=f.extend({type:g,origType:K,data:a,handler:i,guid:i.guid,selector:n,needsContext:n&&f.expr.match.needsContext.test(n),namespace:l.join(".")},o),(s=S[g])||((s=S[g]=[]).delegateCount=0,C.setup&&!1!==C.setup.call(t,a,l,d)||t.addEventListener&&t.addEventListener(g,d)),C.add&&(C.add.call(t,L),L.handler.guid||(L.handler.guid=i.guid)),n?s.splice(s.delegateCount++,0,L):s.push(L),f.event.global[g]=!0)},remove:function(t,e,i,a,n){var o,d,u,S,r,L,C,s,g,l,K,y=j.hasData(t)&&j.get(t);if(y&&(S=y.events)){for(r=(e=(e||"").match(w)||[""]).length;r--;)if(g=K=(u=pt.exec(e[r])||[])[1],l=(u[2]||"").split(".").sort(),g){for(C=f.event.special[g]||{},s=S[g=(a?C.delegateType:C.bindType)||g]||[],u=u[2]&&new RegExp("(^|\\.)"+l.join("\\.(?:.*\\.|)")+"(\\.|$)"),d=o=s.length;o--;)L=s[o],!n&&K!==L.origType||i&&i.guid!==L.guid||u&&!u.test(L.namespace)||a&&a!==L.selector&&("**"!==a||!L.selector)||(s.splice(o,1),L.selector&&s.delegateCount--,C.remove&&C.remove.call(t,L));d&&!s.length&&(C.teardown&&!1!==C.teardown.call(t,l,y.handle)||f.removeEvent(t,g,y.handle),delete S[g])}else for(g in S)f.event.remove(t,g+e[r],i,a,!0);f.isEmptyObject(S)&&j.remove(t,"handle events")}},dispatch:function(t){var e,i,a,n,o,d,u=new Array(arguments.length),S=f.event.fix(t),r=(j.get(this,"events")||Object.create(null))[S.type]||[],L=f.event.special[S.type]||{};for(u[0]=S,e=1;e<arguments.length;e++)u[e]=arguments[e];if(S.delegateTarget=this,!L.preDispatch||!1!==L.preDispatch.call(this,S)){for(d=f.event.handlers.call(this,S,r),e=0;(n=d[e++])&&!S.isPropagationStopped();)for(S.currentTarget=n.elem,i=0;(o=n.handlers[i++])&&!S.isImmediatePropagationStopped();)S.rnamespace&&!1!==o.namespace&&!S.rnamespace.test(o.namespace)||(S.handleObj=o,S.data=o.data,void 0!==(a=((f.event.special[o.origType]||{}).handle||o.handler).apply(n.elem,u))&&!1===(S.result=a)&&(S.preventDefault(),S.stopPropagation()));return L.postDispatch&&L.postDispatch.call(this,S),S.result}},handlers:function(t,e){var i,a,n,o,d,u=[],S=e.delegateCount,r=t.target;if(S&&r.nodeType&&!("click"===t.type&&1<=t.button))for(;r!==this;r=r.parentNode||this)if(1===r.nodeType&&("click"!==t.type||!0!==r.disabled)){for(o=[],d={},i=0;i<S;i++)void 0===d[n=(a=e[i]).selector+" "]&&(d[n]=a.needsContext?-1<f(n,this).index(r):f.find(n,this,null,[r]).length),d[n]&&o.push(a);o.length&&u.push({elem:r,handlers:o})}return r=this,S<e.length&&u.push({elem:r,handlers:e.slice(S)}),u},addProp:function(t,e){Object.defineProperty(f.Event.prototype,t,{enumerable:!0,configurable:!0,get:l(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(t){return t[f.expando]?t:new f.Event(t)},special:{load:{noBubble:!0},click:{setup:function(t){var e=this||t;return st.test(e.type)&&e.click&&v(e,"input")&&vt(e,"click",mt),!1},trigger:function(t){var e=this||t;return st.test(e.type)&&e.click&&v(e,"input")&&vt(e,"click"),!0},_default:function(t){var e=t.target;return st.test(e.type)&&e.click&&v(e,"input")&&j.get(e,"click")||v(e,"a")}},beforeunload:{postDispatch:function(t){void 0!==t.result&&t.originalEvent&&(t.originalEvent.returnValue=t.result)}}}},f.removeEvent=function(t,e,i){t.removeEventListener&&t.removeEventListener(e,i)},f.Event=function(t,e){if(!(this instanceof f.Event))return new f.Event(t,e);t&&t.type?(this.originalEvent=t,this.type=t.type,this.isDefaultPrevented=t.defaultPrevented||void 0===t.defaultPrevented&&!1===t.returnValue?mt:Mt,this.target=t.target&&3===t.target.nodeType?t.target.parentNode:t.target,this.currentTarget=t.currentTarget,this.relatedTarget=t.relatedTarget):this.type=t,e&&f.extend(this,e),this.timeStamp=t&&t.timeStamp||Date.now(),this[f.expando]=!0},f.Event.prototype={constructor:f.Event,isDefaultPrevented:Mt,isPropagationStopped:Mt,isImmediatePropagationStopped:Mt,isSimulated:!1,preventDefault:function(){var t=this.originalEvent;this.isDefaultPrevented=mt,t&&!this.isSimulated&&t.preventDefault()},stopPropagation:function(){var t=this.originalEvent;this.isPropagationStopped=mt,t&&!this.isSimulated&&t.stopPropagation()},stopImmediatePropagation:function(){var t=this.originalEvent;this.isImmediatePropagationStopped=mt,t&&!this.isSimulated&&t.stopImmediatePropagation(),this.stopPropagation()}},f.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(t){var e=t.button;return null==t.which&&At.test(t.type)?null!=t.charCode?t.charCode:t.keyCode:!t.which&&void 0!==e&&ft.test(t.type)?1&e?1:2&e?3:4&e?2:0:t.which}},f.event.addProp),f.each({focus:"focusin",blur:"focusout"},(function(t,e){f.event.special[t]={setup:function(){return vt(this,t,Nt),!1},trigger:function(){return vt(this,t),!0},delegateType:e}})),f.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},(function(t,e){f.event.special[t]={delegateType:e,bindType:e,handle:function(t){var i,a=t.relatedTarget,n=t.handleObj;return a&&(a===this||f.contains(this,a))||(t.type=n.origType,i=n.handler.apply(this,arguments),t.type=e),i}}})),f.fn.extend({on:function(t,e,i,a){return Tt(this,t,e,i,a)},one:function(t,e,i,a){return Tt(this,t,e,i,a,1)},off:function(t,e,i){var a,n;if(t&&t.preventDefault&&t.handleObj)return a=t.handleObj,f(t.delegateTarget).off(a.namespace?a.origType+"."+a.namespace:a.origType,a.selector,a.handler),this;if("object"==typeof t){for(n in t)this.off(n,e,t[n]);return this}return!1!==e&&"function"!=typeof e||(i=e,e=void 0),!1===i&&(i=Mt),this.each((function(){f.event.remove(this,t,i,e)}))}});var Wt=/<script|<style|<link/i,Pt=/checked\s*(?:[^=]|=\s*.checked.)/i,Dt=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Bt(t,e){return v(t,"table")&&v(11!==e.nodeType?e:e.firstChild,"tr")&&f(t).children("tbody")[0]||t}function Ft(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function Ot(t){return"true/"===(t.type||"").slice(0,5)?t.type=t.type.slice(5):t.removeAttribute("type"),t}function Rt(t,e){var i,a,n,o,d,u;if(1===e.nodeType){if(j.hasData(t)&&(u=j.get(t).events))for(n in j.remove(e,"handle events"),u)for(i=0,a=u[n].length;i<a;i++)f.event.add(e,n,u[n][i]);_.hasData(t)&&(o=_.access(t),d=f.extend({},o),_.set(e,d))}}function wt(t,e,i,a){e=o(e);var n,d,u,S,r,L,C=0,s=t.length,K=s-1,y=e[0],I=l(y);if(I||1<s&&"string"==typeof y&&!g.checkClone&&Pt.test(y))return t.each((function(n){var o=t.eq(n);I&&(e[0]=y.call(this,n,o.html())),wt(o,e,i,a)}));if(s&&(d=(n=ht(e,t[0].ownerDocument,!1,t,a)).firstChild,1===n.childNodes.length&&(n=d),d||a)){for(S=(u=f.map(yt(n,"script"),Ft)).length;C<s;C++)r=n,C!==K&&(r=f.clone(r,!0,!0),S&&f.merge(u,yt(r,"script"))),i.call(t[C],r,C);if(S)for(L=u[u.length-1].ownerDocument,f.map(u,Ot),C=0;C<S;C++)r=u[C],lt.test(r.type||"")&&!j.access(r,"globalEval")&&f.contains(L,r)&&(r.src&&"module"!==(r.type||"").toLowerCase()?f._evalUrl&&!r.noModule&&f._evalUrl(r.src,{nonce:r.nonce||r.getAttribute("nonce")},L):c(r.textContent.replace(Dt,""),r,L))}return t}function Et(t,e,i){for(var a,n=e?f.filter(e,t):t,o=0;null!=(a=n[o]);o++)i||1!==a.nodeType||f.cleanData(yt(a)),a.parentNode&&(i&&nt(a)&&It(yt(a,"script")),a.parentNode.removeChild(a));return t}f.extend({htmlPrefilter:function(t){return t},clone:function(t,e,i){var a,n,o,d,u,S,r,L=t.cloneNode(!0),C=nt(t);if(!(g.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||f.isXMLDoc(t)))for(d=yt(L),a=0,n=(o=yt(t)).length;a<n;a++)u=o[a],"input"===(r=(S=d[a]).nodeName.toLowerCase())&&st.test(u.type)?S.checked=u.checked:"input"!==r&&"textarea"!==r||(S.defaultValue=u.defaultValue);if(e)if(i)for(o=o||yt(t),d=d||yt(L),a=0,n=o.length;a<n;a++)Rt(o[a],d[a]);else Rt(t,L);return 0<(d=yt(L,"script")).length&&It(d,!C&&yt(t,"script")),L},cleanData:function(t){for(var e,i,a,n=f.event.special,o=0;void 0!==(i=t[o]);o++)if(Z(i)){if(e=i[j.expando]){if(e.events)for(a in e.events)n[a]?f.event.remove(i,a):f.removeEvent(i,a,e.handle);i[j.expando]=void 0}i[_.expando]&&(i[_.expando]=void 0)}}}),f.fn.extend({detach:function(t){return Et(this,t,!0)},remove:function(t){return Et(this,t)},text:function(t){return G(this,(function(t){return void 0===t?f.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)}))}),null,t,arguments.length)},append:function(){return wt(this,arguments,(function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Bt(this,t).appendChild(t)}))},prepend:function(){return wt(this,arguments,(function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=Bt(this,t);e.insertBefore(t,e.firstChild)}}))},before:function(){return wt(this,arguments,(function(t){this.parentNode&&this.parentNode.insertBefore(t,this)}))},after:function(){return wt(this,arguments,(function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)}))},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(f.cleanData(yt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map((function(){return f.clone(this,t,e)}))},html:function(t){return G(this,(function(t){var e=this[0]||{},i=0,a=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!Wt.test(t)&&!Kt[(gt.exec(t)||["",""])[1].toLowerCase()]){t=f.htmlPrefilter(t);try{for(;i<a;i++)1===(e=this[i]||{}).nodeType&&(f.cleanData(yt(e,!1)),e.innerHTML=t);e=0}catch(t){}}e&&this.empty().append(t)}),null,t,arguments.length)},replaceWith:function(){var t=[];return wt(this,arguments,(function(e){var i=this.parentNode;f.inArray(this,t)<0&&(f.cleanData(yt(this)),i&&i.replaceChild(e,this))}),t)}}),f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},(function(t,e){f.fn[t]=function(t){for(var i,a=[],n=f(t),o=n.length-1,u=0;u<=o;u++)i=u===o?this:this.clone(!0),f(n[u])[e](i),d.apply(a,i.get());return this.pushStack(a)}}));var Ht=new RegExp("^("+tt+")(?!px)[a-z%]+$","i"),Xt=function(e){var i=e.ownerDocument.defaultView;return i&&i.opener||(i=t),i.getComputedStyle(e)},bt=function(t,e,i){var a,n,o={};for(n in e)o[n]=t.style[n],t.style[n]=e[n];for(n in a=i.call(t),e)t.style[n]=o[n];return a},Yt=new RegExp(it.join("|"),"i");function kt(t,e,i){var a,n,o,d,u=t.style;return(i=i||Xt(t))&&(""!==(d=i.getPropertyValue(e)||i[e])||nt(t)||(d=f.style(t,e)),!g.pixelBoxStyles()&&Ht.test(d)&&Yt.test(e)&&(a=u.width,n=u.minWidth,o=u.maxWidth,u.minWidth=u.maxWidth=u.width=d,d=i.width,u.width=a,u.minWidth=n,u.maxWidth=o)),void 0!==d?d+"":d}function Gt(t,e){return{get:function(){if(!t())return(this.get=e).apply(this,arguments);delete this.get}}}!function(){function e(){if(L){r.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",L.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",at.appendChild(r).appendChild(L);var e=t.getComputedStyle(L);a="1%"!==e.top,S=12===i(e.marginLeft),L.style.right="60%",d=36===i(e.right),n=36===i(e.width),L.style.position="absolute",o=12===i(L.offsetWidth/3),at.removeChild(r),L=null}}function i(t){return Math.round(parseFloat(t))}var a,n,o,d,u,S,r=y.createElement("div"),L=y.createElement("div");L.style&&(L.style.backgroundClip="content-box",L.cloneNode(!0).style.backgroundClip="",g.clearCloneStyle="content-box"===L.style.backgroundClip,f.extend(g,{boxSizingReliable:function(){return e(),n},pixelBoxStyles:function(){return e(),d},pixelPosition:function(){return e(),a},reliableMarginLeft:function(){return e(),S},scrollboxSize:function(){return e(),o},reliableTrDimensions:function(){var e,i,a,n;return null==u&&(e=y.createElement("table"),i=y.createElement("tr"),a=y.createElement("div"),e.style.cssText="position:absolute;left:-11111px",i.style.height="1px",a.style.height="9px",at.appendChild(e).appendChild(i).appendChild(a),n=t.getComputedStyle(i),u=3<parseInt(n.height),at.removeChild(e)),u}}))}();var Vt=["Webkit","Moz","ms"],xt=y.createElement("div").style,Ut={};function Qt(t){return f.cssProps[t]||Ut[t]||(t in xt?t:Ut[t]=function(t){for(var e=t[0].toUpperCase()+t.slice(1),i=Vt.length;i--;)if((t=Vt[i]+e)in xt)return t}(t)||t)}var Zt=/^(none|table(?!-c[ea]).+)/,Jt=/^--/,jt={position:"absolute",visibility:"hidden",display:"block"},_t={letterSpacing:"0",fontWeight:"400"};function qt(t,e,i){var a=et.exec(e);return a?Math.max(0,a[2]-(i||0))+(a[3]||"px"):e}function zt(t,e,i,a,n,o){var d="width"===e?1:0,u=0,S=0;if(i===(a?"border":"content"))return 0;for(;d<4;d+=2)"margin"===i&&(S+=f.css(t,i+it[d],!0,n)),a?("content"===i&&(S-=f.css(t,"padding"+it[d],!0,n)),"margin"!==i&&(S-=f.css(t,"border"+it[d]+"Width",!0,n))):(S+=f.css(t,"padding"+it[d],!0,n),"padding"!==i?S+=f.css(t,"border"+it[d]+"Width",!0,n):u+=f.css(t,"border"+it[d]+"Width",!0,n));return!a&&0<=o&&(S+=Math.max(0,Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-o-S-u-.5))||0),S}function $t(t,e,i){var a=Xt(t),n=(!g.boxSizingReliable()||i)&&"border-box"===f.css(t,"boxSizing",!1,a),o=n,d=kt(t,e,a),u="offset"+e[0].toUpperCase()+e.slice(1);if(Ht.test(d)){if(!i)return d;d="auto"}return(!g.boxSizingReliable()&&n||!g.reliableTrDimensions()&&v(t,"tr")||"auto"===d||!parseFloat(d)&&"inline"===f.css(t,"display",!1,a))&&t.getClientRects().length&&(n="border-box"===f.css(t,"boxSizing",!1,a),(o=u in t)&&(d=t[u])),(d=parseFloat(d)||0)+zt(t,e,i||(n?"border":"content"),o,a,d)+"px"}function te(t,e,i,a,n){return new te.prototype.init(t,e,i,a,n)}f.extend({cssHooks:{opacity:{get:function(t,e){if(e){var i=kt(t,"opacity");return""===i?"1":i}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(t,e,i,a){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var n,o,d,u=Q(e),S=Jt.test(e),r=t.style;if(S||(e=Qt(u)),d=f.cssHooks[e]||f.cssHooks[u],void 0===i)return d&&"get"in d&&void 0!==(n=d.get(t,!1,a))?n:r[e];"string"==(o=typeof i)&&(n=et.exec(i))&&n[1]&&(i=ut(t,e,n),o="number"),null!=i&&i==i&&("number"!==o||S||(i+=n&&n[3]||(f.cssNumber[u]?"":"px")),g.clearCloneStyle||""!==i||0!==e.indexOf("background")||(r[e]="inherit"),d&&"set"in d&&void 0===(i=d.set(t,i,a))||(S?r.setProperty(e,i):r[e]=i))}},css:function(t,e,i,a){var n,o,d,u=Q(e);return Jt.test(e)||(e=Qt(u)),(d=f.cssHooks[e]||f.cssHooks[u])&&"get"in d&&(n=d.get(t,!0,i)),void 0===n&&(n=kt(t,e,a)),"normal"===n&&e in _t&&(n=_t[e]),""===i||i?(o=parseFloat(n),!0===i||isFinite(o)?o||0:n):n}}),f.each(["height","width"],(function(t,e){f.cssHooks[e]={get:function(t,i,a){if(i)return!Zt.test(f.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?$t(t,e,a):bt(t,jt,(function(){return $t(t,e,a)}))},set:function(t,i,a){var n,o=Xt(t),d=!g.scrollboxSize()&&"absolute"===o.position,u=(d||a)&&"border-box"===f.css(t,"boxSizing",!1,o),S=a?zt(t,e,a,u,o):0;return u&&d&&(S-=Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-parseFloat(o[e])-zt(t,e,"border",!1,o)-.5)),S&&(n=et.exec(i))&&"px"!==(n[3]||"px")&&(t.style[e]=i,i=f.css(t,e)),qt(0,i,S)}}})),f.cssHooks.marginLeft=Gt(g.reliableMarginLeft,(function(t,e){if(e)return(parseFloat(kt(t,"marginLeft"))||t.getBoundingClientRect().left-bt(t,{marginLeft:0},(function(){return t.getBoundingClientRect().left})))+"px"})),f.each({margin:"",padding:"",border:"Width"},(function(t,e){f.cssHooks[t+e]={expand:function(i){for(var a=0,n={},o="string"==typeof i?i.split(" "):[i];a<4;a++)n[t+it[a]+e]=o[a]||o[a-2]||o[0];return n}},"margin"!==t&&(f.cssHooks[t+e].set=qt)})),f.fn.extend({css:function(t,e){return G(this,(function(t,e,i){var a,n,o={},d=0;if(Array.isArray(e)){for(a=Xt(t),n=e.length;d<n;d++)o[e[d]]=f.css(t,e[d],!1,a);return o}return void 0!==i?f.style(t,e,i):f.css(t,e)}),t,e,1<arguments.length)}}),((f.Tween=te).prototype={constructor:te,init:function(t,e,i,a,n,o){this.elem=t,this.prop=i,this.easing=n||f.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=a,this.unit=o||(f.cssNumber[i]?"":"px")},cur:function(){var t=te.propHooks[this.prop];return t&&t.get?t.get(this):te.propHooks._default.get(this)},run:function(t){var e,i=te.propHooks[this.prop];return this.options.duration?this.pos=e=f.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),i&&i.set?i.set(this):te.propHooks._default.set(this),this}}).init.prototype=te.prototype,(te.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=f.css(t.elem,t.prop,""))&&"auto"!==e?e:0},set:function(t){f.fx.step[t.prop]?f.fx.step[t.prop](t):1!==t.elem.nodeType||!f.cssHooks[t.prop]&&null==t.elem.style[Qt(t.prop)]?t.elem[t.prop]=t.now:f.style(t.elem,t.prop,t.now+t.unit)}}}).scrollTop=te.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},f.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},f.fx=te.prototype.init,f.fx.step={};var ee,ie,ae,ne,oe=/^(?:toggle|show|hide)$/,de=/queueHooks$/;function ue(){ie&&(!1===y.hidden&&t.requestAnimationFrame?t.requestAnimationFrame(ue):t.setTimeout(ue,f.fx.interval),f.fx.tick())}function Se(){return t.setTimeout((function(){ee=void 0})),ee=Date.now()}function re(t,e){var i,a=0,n={height:t};for(e=e?1:0;a<4;a+=2-e)n["margin"+(i=it[a])]=n["padding"+i]=t;return e&&(n.opacity=n.width=t),n}function Le(t,e,i){for(var a,n=(Ce.tweeners[e]||[]).concat(Ce.tweeners["*"]),o=0,d=n.length;o<d;o++)if(a=n[o].call(i,e,t))return a}function Ce(t,e,i){var a,n,o=0,d=Ce.prefilters.length,u=f.Deferred().always((function(){delete S.elem})),S=function(){if(n)return!1;for(var e=ee||Se(),i=Math.max(0,r.startTime+r.duration-e),a=1-(i/r.duration||0),o=0,d=r.tweens.length;o<d;o++)r.tweens[o].run(a);return u.notifyWith(t,[r,a,i]),a<1&&d?i:(d||u.notifyWith(t,[r,1,0]),u.resolveWith(t,[r]),!1)},r=u.promise({elem:t,props:f.extend({},e),opts:f.extend(!0,{specialEasing:{},easing:f.easing._default},i),originalProperties:e,originalOptions:i,startTime:ee||Se(),duration:i.duration,tweens:[],createTween:function(e,i){var a=f.Tween(t,r.opts,e,i,r.opts.specialEasing[e]||r.opts.easing);return r.tweens.push(a),a},stop:function(e){var i=0,a=e?r.tweens.length:0;if(n)return this;for(n=!0;i<a;i++)r.tweens[i].run(1);return e?(u.notifyWith(t,[r,1,0]),u.resolveWith(t,[r,e])):u.rejectWith(t,[r,e]),this}}),L=r.props;for(function(t,e){var i,a,n,o,d;for(i in t)if(n=e[a=Q(i)],o=t[i],Array.isArray(o)&&(n=o[1],o=t[i]=o[0]),i!==a&&(t[a]=o,delete t[i]),(d=f.cssHooks[a])&&"expand"in d)for(i in o=d.expand(o),delete t[a],o)i in t||(t[i]=o[i],e[i]=n);else e[a]=n}(L,r.opts.specialEasing);o<d;o++)if(a=Ce.prefilters[o].call(r,t,L,r.opts))return l(a.stop)&&(f._queueHooks(r.elem,r.opts.queue).stop=a.stop.bind(a)),a;return f.map(L,Le,r),l(r.opts.start)&&r.opts.start.call(t,r),r.progress(r.opts.progress).done(r.opts.done,r.opts.complete).fail(r.opts.fail).always(r.opts.always),f.fx.timer(f.extend(S,{elem:t,anim:r,queue:r.opts.queue})),r}f.Animation=f.extend(Ce,{tweeners:{"*":[function(t,e){var i=this.createTween(t,e);return ut(i.elem,t,et.exec(e),i),i}]},tweener:function(t,e){l(t)?(e=t,t=["*"]):t=t.match(w);for(var i,a=0,n=t.length;a<n;a++)i=t[a],Ce.tweeners[i]=Ce.tweeners[i]||[],Ce.tweeners[i].unshift(e)},prefilters:[function(t,e,i){var a,n,o,d,u,S,r,L,C="width"in e||"height"in e,s=this,g={},l=t.style,K=t.nodeType&&dt(t),y=j.get(t,"fxshow");for(a in i.queue||(null==(d=f._queueHooks(t,"fx")).unqueued&&(d.unqueued=0,u=d.empty.fire,d.empty.fire=function(){d.unqueued||u()}),d.unqueued++,s.always((function(){s.always((function(){d.unqueued--,f.queue(t,"fx").length||d.empty.fire()}))}))),e)if(n=e[a],oe.test(n)){if(delete e[a],o=o||"toggle"===n,n===(K?"hide":"show")){if("show"!==n||!y||void 0===y[a])continue;K=!0}g[a]=y&&y[a]||f.style(t,a)}if((S=!f.isEmptyObject(e))||!f.isEmptyObject(g))for(a in C&&1===t.nodeType&&(i.overflow=[l.overflow,l.overflowX,l.overflowY],null==(r=y&&y.display)&&(r=j.get(t,"display")),"none"===(L=f.css(t,"display"))&&(r?L=r:(rt([t],!0),r=t.style.display||r,L=f.css(t,"display"),rt([t]))),("inline"===L||"inline-block"===L&&null!=r)&&"none"===f.css(t,"float")&&(S||(s.done((function(){l.display=r})),null==r&&(L=l.display,r="none"===L?"":L)),l.display="inline-block")),i.overflow&&(l.overflow="hidden",s.always((function(){l.overflow=i.overflow[0],l.overflowX=i.overflow[1],l.overflowY=i.overflow[2]}))),S=!1,g)S||(y?"hidden"in y&&(K=y.hidden):y=j.access(t,"fxshow",{display:r}),o&&(y.hidden=!K),K&&rt([t],!0),s.done((function(){for(a in K||rt([t]),j.remove(t,"fxshow"),g)f.style(t,a,g[a])}))),S=Le(K?y[a]:0,a,s),a in y||(y[a]=S.start,K&&(S.end=S.start,S.start=0))}],prefilter:function(t,e){e?Ce.prefilters.unshift(t):Ce.prefilters.push(t)}}),f.speed=function(t,e,i){var a=t&&"object"==typeof t?f.extend({},t):{complete:i||!i&&e||l(t)&&t,duration:t,easing:i&&e||e&&!l(e)&&e};return f.fx.off?a.duration=0:"number"!=typeof a.duration&&(a.duration in f.fx.speeds?a.duration=f.fx.speeds[a.duration]:a.duration=f.fx.speeds._default),null!=a.queue&&!0!==a.queue||(a.queue="fx"),a.old=a.complete,a.complete=function(){l(a.old)&&a.old.call(this),a.queue&&f.dequeue(this,a.queue)},a},f.fn.extend({fadeTo:function(t,e,i,a){return this.filter(dt).css("opacity",0).show().end().animate({opacity:e},t,i,a)},animate:function(t,e,i,a){var n=f.isEmptyObject(t),o=f.speed(e,i,a),d=function(){var e=Ce(this,f.extend({},t),o);(n||j.get(this,"finish"))&&e.stop(!0)};return d.finish=d,n||!1===o.queue?this.each(d):this.queue(o.queue,d)},stop:function(t,e,i){var a=function(t){var e=t.stop;delete t.stop,e(i)};return"string"!=typeof t&&(i=e,e=t,t=void 0),e&&this.queue(t||"fx",[]),this.each((function(){var e=!0,n=null!=t&&t+"queueHooks",o=f.timers,d=j.get(this);if(n)d[n]&&d[n].stop&&a(d[n]);else for(n in d)d[n]&&d[n].stop&&de.test(n)&&a(d[n]);for(n=o.length;n--;)o[n].elem!==this||null!=t&&o[n].queue!==t||(o[n].anim.stop(i),e=!1,o.splice(n,1));!e&&i||f.dequeue(this,t)}))},finish:function(t){return!1!==t&&(t=t||"fx"),this.each((function(){var e,i=j.get(this),a=i[t+"queue"],n=i[t+"queueHooks"],o=f.timers,d=a?a.length:0;for(i.finish=!0,f.queue(this,t,[]),n&&n.stop&&n.stop.call(this,!0),e=o.length;e--;)o[e].elem===this&&o[e].queue===t&&(o[e].anim.stop(!0),o.splice(e,1));for(e=0;e<d;e++)a[e]&&a[e].finish&&a[e].finish.call(this);delete i.finish}))}}),f.each(["toggle","show","hide"],(function(t,e){var i=f.fn[e];f.fn[e]=function(t,a,n){return null==t||"boolean"==typeof t?i.apply(this,arguments):this.animate(re(e,!0),t,a,n)}})),f.each({slideDown:re("show"),slideUp:re("hide"),slideToggle:re("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},(function(t,e){f.fn[t]=function(t,i,a){return this.animate(e,t,i,a)}})),f.timers=[],f.fx.tick=function(){var t,e=0,i=f.timers;for(ee=Date.now();e<i.length;e++)(t=i[e])()||i[e]!==t||i.splice(e--,1);i.length||f.fx.stop(),ee=void 0},f.fx.timer=function(t){f.timers.push(t),f.fx.start()},f.fx.interval=13,f.fx.start=function(){ie||(ie=!0,ue())},f.fx.stop=function(){ie=null},f.fx.speeds={slow:600,fast:200,_default:400},f.fn.delay=function(e,i){return e=f.fx&&f.fx.speeds[e]||e,i=i||"fx",this.queue(i,(function(i,a){var n=t.setTimeout(i,e);a.stop=function(){t.clearTimeout(n)}}))},ae=y.createElement("input"),ne=y.createElement("select").appendChild(y.createElement("option")),ae.type="checkbox",g.checkOn=""!==ae.value,g.optSelected=ne.selected,(ae=y.createElement("input")).value="t",ae.type="radio",g.radioValue="t"===ae.value;var se,ge=f.expr.attrHandle;f.fn.extend({attr:function(t,e){return G(this,f.attr,t,e,1<arguments.length)},removeAttr:function(t){return this.each((function(){f.removeAttr(this,t)}))}}),f.extend({attr:function(t,e,i){var a,n,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?f.prop(t,e,i):(1===o&&f.isXMLDoc(t)||(n=f.attrHooks[e.toLowerCase()]||(f.expr.match.bool.test(e)?se:void 0)),void 0!==i?null===i?void f.removeAttr(t,e):n&&"set"in n&&void 0!==(a=n.set(t,i,e))?a:(t.setAttribute(e,i+""),i):n&&"get"in n&&null!==(a=n.get(t,e))?a:null==(a=f.find.attr(t,e))?void 0:a)},attrHooks:{type:{set:function(t,e){if(!g.radioValue&&"radio"===e&&v(t,"input")){var i=t.value;return t.setAttribute("type",e),i&&(t.value=i),e}}}},removeAttr:function(t,e){var i,a=0,n=e&&e.match(w);if(n&&1===t.nodeType)for(;i=n[a++];)t.removeAttribute(i)}}),se={set:function(t,e,i){return!1===e?f.removeAttr(t,i):t.setAttribute(i,i),i}},f.each(f.expr.match.bool.source.match(/\w+/g),(function(t,e){var i=ge[e]||f.find.attr;ge[e]=function(t,e,a){var n,o,d=e.toLowerCase();return a||(o=ge[d],ge[d]=n,n=null!=i(t,e,a)?d:null,ge[d]=o),n}}));var le=/^(?:input|select|textarea|button)$/i,Ke=/^(?:a|area)$/i;function ye(t){return(t.match(w)||[]).join(" ")}function Ie(t){return t.getAttribute&&t.getAttribute("class")||""}function ce(t){return Array.isArray(t)?t:"string"==typeof t&&t.match(w)||[]}f.fn.extend({prop:function(t,e){return G(this,f.prop,t,e,1<arguments.length)},removeProp:function(t){return this.each((function(){delete this[f.propFix[t]||t]}))}}),f.extend({prop:function(t,e,i){var a,n,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&f.isXMLDoc(t)||(e=f.propFix[e]||e,n=f.propHooks[e]),void 0!==i?n&&"set"in n&&void 0!==(a=n.set(t,i,e))?a:t[e]=i:n&&"get"in n&&null!==(a=n.get(t,e))?a:t[e]},propHooks:{tabIndex:{get:function(t){var e=f.find.attr(t,"tabindex");return e?parseInt(e,10):le.test(t.nodeName)||Ke.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),g.optSelected||(f.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),f.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){f.propFix[this.toLowerCase()]=this})),f.fn.extend({addClass:function(t){var e,i,a,n,o,d,u,S=0;if(l(t))return this.each((function(e){f(this).addClass(t.call(this,e,Ie(this)))}));if((e=ce(t)).length)for(;i=this[S++];)if(n=Ie(i),a=1===i.nodeType&&" "+ye(n)+" "){for(d=0;o=e[d++];)a.indexOf(" "+o+" ")<0&&(a+=o+" ");n!==(u=ye(a))&&i.setAttribute("class",u)}return this},removeClass:function(t){var e,i,a,n,o,d,u,S=0;if(l(t))return this.each((function(e){f(this).removeClass(t.call(this,e,Ie(this)))}));if(!arguments.length)return this.attr("class","");if((e=ce(t)).length)for(;i=this[S++];)if(n=Ie(i),a=1===i.nodeType&&" "+ye(n)+" "){for(d=0;o=e[d++];)for(;-1<a.indexOf(" "+o+" ");)a=a.replace(" "+o+" "," ");n!==(u=ye(a))&&i.setAttribute("class",u)}return this},toggleClass:function(t,e){var i=typeof t,a="string"===i||Array.isArray(t);return"boolean"==typeof e&&a?e?this.addClass(t):this.removeClass(t):l(t)?this.each((function(i){f(this).toggleClass(t.call(this,i,Ie(this),e),e)})):this.each((function(){var e,n,o,d;if(a)for(n=0,o=f(this),d=ce(t);e=d[n++];)o.hasClass(e)?o.removeClass(e):o.addClass(e);else void 0!==t&&"boolean"!==i||((e=Ie(this))&&j.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===t?"":j.get(this,"__className__")||""))}))},hasClass:function(t){var e,i,a=0;for(e=" "+t+" ";i=this[a++];)if(1===i.nodeType&&-1<(" "+ye(Ie(i))+" ").indexOf(e))return!0;return!1}});var he=/\r/g;f.fn.extend({val:function(t){var e,i,a,n=this[0];return arguments.length?(a=l(t),this.each((function(i){var n;1===this.nodeType&&(null==(n=a?t.call(this,i,f(this).val()):t)?n="":"number"==typeof n?n+="":Array.isArray(n)&&(n=f.map(n,(function(t){return null==t?"":t+""}))),(e=f.valHooks[this.type]||f.valHooks[this.nodeName.toLowerCase()])&&"set"in e&&void 0!==e.set(this,n,"value")||(this.value=n))}))):n?(e=f.valHooks[n.type]||f.valHooks[n.nodeName.toLowerCase()])&&"get"in e&&void 0!==(i=e.get(n,"value"))?i:"string"==typeof(i=n.value)?i.replace(he,""):null==i?"":i:void 0}}),f.extend({valHooks:{option:{get:function(t){var e=f.find.attr(t,"value");return null!=e?e:ye(f.text(t))}},select:{get:function(t){var e,i,a,n=t.options,o=t.selectedIndex,d="select-one"===t.type,u=d?null:[],S=d?o+1:n.length;for(a=o<0?S:d?o:0;a<S;a++)if(((i=n[a]).selected||a===o)&&!i.disabled&&(!i.parentNode.disabled||!v(i.parentNode,"optgroup"))){if(e=f(i).val(),d)return e;u.push(e)}return u},set:function(t,e){for(var i,a,n=t.options,o=f.makeArray(e),d=n.length;d--;)((a=n[d]).selected=-1<f.inArray(f.valHooks.option.get(a),o))&&(i=!0);return i||(t.selectedIndex=-1),o}}}}),f.each(["radio","checkbox"],(function(){f.valHooks[this]={set:function(t,e){if(Array.isArray(e))return t.checked=-1<f.inArray(f(t).val(),e)}},g.checkOn||(f.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})})),g.focusin="onfocusin"in t;var Ae=/^(?:focusinfocus|focusoutblur)$/,fe=function(t){t.stopPropagation()};f.extend(f.event,{trigger:function(e,i,a,n){var o,d,u,S,r,C,s,g,I=[a||y],c=L.call(e,"type")?e.type:e,h=L.call(e,"namespace")?e.namespace.split("."):[];if(d=g=u=a=a||y,3!==a.nodeType&&8!==a.nodeType&&!Ae.test(c+f.event.triggered)&&(-1<c.indexOf(".")&&(c=(h=c.split(".")).shift(),h.sort()),r=c.indexOf(":")<0&&"on"+c,(e=e[f.expando]?e:new f.Event(c,"object"==typeof e&&e)).isTrigger=n?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=a),i=null==i?[e]:f.makeArray(i,[e]),s=f.event.special[c]||{},n||!s.trigger||!1!==s.trigger.apply(a,i))){if(!n&&!s.noBubble&&!K(a)){for(S=s.delegateType||c,Ae.test(S+c)||(d=d.parentNode);d;d=d.parentNode)I.push(d),u=d;u===(a.ownerDocument||y)&&I.push(u.defaultView||u.parentWindow||t)}for(o=0;(d=I[o++])&&!e.isPropagationStopped();)g=d,e.type=1<o?S:s.bindType||c,(C=(j.get(d,"events")||Object.create(null))[e.type]&&j.get(d,"handle"))&&C.apply(d,i),(C=r&&d[r])&&C.apply&&Z(d)&&(e.result=C.apply(d,i),!1===e.result&&e.preventDefault());return e.type=c,n||e.isDefaultPrevented()||s._default&&!1!==s._default.apply(I.pop(),i)||!Z(a)||r&&l(a[c])&&!K(a)&&((u=a[r])&&(a[r]=null),f.event.triggered=c,e.isPropagationStopped()&&g.addEventListener(c,fe),a[c](),e.isPropagationStopped()&&g.removeEventListener(c,fe),f.event.triggered=void 0,u&&(a[r]=u)),e.result}},simulate:function(t,e,i){var a=f.extend(new f.Event,i,{type:t,isSimulated:!0});f.event.trigger(a,null,e)}}),f.fn.extend({trigger:function(t,e){return this.each((function(){f.event.trigger(t,e,this)}))},triggerHandler:function(t,e){var i=this[0];if(i)return f.event.trigger(t,e,i,!0)}}),g.focusin||f.each({focus:"focusin",blur:"focusout"},(function(t,e){var i=function(t){f.event.simulate(e,t.target,f.event.fix(t))};f.event.special[e]={setup:function(){var a=this.ownerDocument||this.document||this,n=j.access(a,e);n||a.addEventListener(t,i,!0),j.access(a,e,(n||0)+1)},teardown:function(){var a=this.ownerDocument||this.document||this,n=j.access(a,e)-1;n?j.access(a,e,n):(a.removeEventListener(t,i,!0),j.remove(a,e))}}}));var pe=t.location,me={guid:Date.now()},Me=/\?/;f.parseXML=function(e){var i;if(!e||"string"!=typeof e)return null;try{i=(new t.DOMParser).parseFromString(e,"text/xml")}catch(e){i=void 0}return i&&!i.getElementsByTagName("parsererror").length||f.error("Invalid XML: "+e),i};var Ne=/\[\]$/,Te=/\r?\n/g,ve=/^(?:submit|button|image|reset|file)$/i,We=/^(?:input|select|textarea|keygen)/i;function Pe(t,e,i,a){var n;if(Array.isArray(e))f.each(e,(function(e,n){i||Ne.test(t)?a(t,n):Pe(t+"["+("object"==typeof n&&null!=n?e:"")+"]",n,i,a)}));else if(i||"object"!==h(e))a(t,e);else for(n in e)Pe(t+"["+n+"]",e[n],i,a)}f.param=function(t,e){var i,a=[],n=function(t,e){var i=l(e)?e():e;a[a.length]=encodeURIComponent(t)+"="+encodeURIComponent(null==i?"":i)};if(null==t)return"";if(Array.isArray(t)||t.jquery&&!f.isPlainObject(t))f.each(t,(function(){n(this.name,this.value)}));else for(i in t)Pe(i,t[i],e,n);return a.join("&")},f.fn.extend({serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var t=f.prop(this,"elements");return t?f.makeArray(t):this})).filter((function(){var t=this.type;return this.name&&!f(this).is(":disabled")&&We.test(this.nodeName)&&!ve.test(t)&&(this.checked||!st.test(t))})).map((function(t,e){var i=f(this).val();return null==i?null:Array.isArray(i)?f.map(i,(function(t){return{name:e.name,value:t.replace(Te,"\r\n")}})):{name:e.name,value:i.replace(Te,"\r\n")}})).get()}});var De=/%20/g,Be=/#.*$/,Fe=/([?&])_=[^&]*/,Oe=/^(.*?):[ \t]*([^\r\n]*)$/gm,Re=/^(?:GET|HEAD)$/,we=/^\/\//,Ee={},He={},Xe="*/".concat("*"),be=y.createElement("a");function Ye(t){return function(e,i){"string"!=typeof e&&(i=e,e="*");var a,n=0,o=e.toLowerCase().match(w)||[];if(l(i))for(;a=o[n++];)"+"===a[0]?(a=a.slice(1)||"*",(t[a]=t[a]||[]).unshift(i)):(t[a]=t[a]||[]).push(i)}}function ke(t,e,i,a){var n={},o=t===He;function d(u){var S;return n[u]=!0,f.each(t[u]||[],(function(t,u){var r=u(e,i,a);return"string"!=typeof r||o||n[r]?o?!(S=r):void 0:(e.dataTypes.unshift(r),d(r),!1)})),S}return d(e.dataTypes[0])||!n["*"]&&d("*")}function Ge(t,e){var i,a,n=f.ajaxSettings.flatOptions||{};for(i in e)void 0!==e[i]&&((n[i]?t:a||(a={}))[i]=e[i]);return a&&f.extend(!0,t,a),t}be.href=pe.href,f.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:pe.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(pe.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Xe,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":f.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?Ge(Ge(t,f.ajaxSettings),e):Ge(f.ajaxSettings,t)},ajaxPrefilter:Ye(Ee),ajaxTransport:Ye(He),ajax:function(e,i){"object"==typeof e&&(i=e,e=void 0),i=i||{};var a,n,o,d,u,S,r,L,C,s,g=f.ajaxSetup({},i),l=g.context||g,K=g.context&&(l.nodeType||l.jquery)?f(l):f.event,I=f.Deferred(),c=f.Callbacks("once memory"),h=g.statusCode||{},A={},p={},m="canceled",M={readyState:0,getResponseHeader:function(t){var e;if(r){if(!d)for(d={};e=Oe.exec(o);)d[e[1].toLowerCase()+" "]=(d[e[1].toLowerCase()+" "]||[]).concat(e[2]);e=d[t.toLowerCase()+" "]}return null==e?null:e.join(", ")},getAllResponseHeaders:function(){return r?o:null},setRequestHeader:function(t,e){return null==r&&(t=p[t.toLowerCase()]=p[t.toLowerCase()]||t,A[t]=e),this},overrideMimeType:function(t){return null==r&&(g.mimeType=t),this},statusCode:function(t){var e;if(t)if(r)M.always(t[M.status]);else for(e in t)h[e]=[h[e],t[e]];return this},abort:function(t){var e=t||m;return a&&a.abort(e),N(0,e),this}};if(I.promise(M),g.url=((e||g.url||pe.href)+"").replace(we,pe.protocol+"//"),g.type=i.method||i.type||g.method||g.type,g.dataTypes=(g.dataType||"*").toLowerCase().match(w)||[""],null==g.crossDomain){S=y.createElement("a");try{S.href=g.url,S.href=S.href,g.crossDomain=be.protocol+"//"+be.host!=S.protocol+"//"+S.host}catch(e){g.crossDomain=!0}}if(g.data&&g.processData&&"string"!=typeof g.data&&(g.data=f.param(g.data,g.traditional)),ke(Ee,g,i,M),r)return M;for(C in(L=f.event&&g.global)&&0==f.active++&&f.event.trigger("ajaxStart"),g.type=g.type.toUpperCase(),g.hasContent=!Re.test(g.type),n=g.url.replace(Be,""),g.hasContent?g.data&&g.processData&&0===(g.contentType||"").indexOf("application/x-www-form-urlencoded")&&(g.data=g.data.replace(De,"+")):(s=g.url.slice(n.length),g.data&&(g.processData||"string"==typeof g.data)&&(n+=(Me.test(n)?"&":"?")+g.data,delete g.data),!1===g.cache&&(n=n.replace(Fe,"$1"),s=(Me.test(n)?"&":"?")+"_="+me.guid+++s),g.url=n+s),g.ifModified&&(f.lastModified[n]&&M.setRequestHeader("If-Modified-Since",f.lastModified[n]),f.etag[n]&&M.setRequestHeader("If-None-Match",f.etag[n])),(g.data&&g.hasContent&&!1!==g.contentType||i.contentType)&&M.setRequestHeader("Content-Type",g.contentType),M.setRequestHeader("Accept",g.dataTypes[0]&&g.accepts[g.dataTypes[0]]?g.accepts[g.dataTypes[0]]+("*"!==g.dataTypes[0]?", "+Xe+"; q=0.01":""):g.accepts["*"]),g.headers)M.setRequestHeader(C,g.headers[C]);if(g.beforeSend&&(!1===g.beforeSend.call(l,M,g)||r))return M.abort();if(m="abort",c.add(g.complete),M.done(g.success),M.fail(g.error),a=ke(He,g,i,M)){if(M.readyState=1,L&&K.trigger("ajaxSend",[M,g]),r)return M;g.async&&0<g.timeout&&(u=t.setTimeout((function(){M.abort("timeout")}),g.timeout));try{r=!1,a.send(A,N)}catch(e){if(r)throw e;N(-1,e)}}else N(-1,"No Transport");function N(e,i,d,S){var C,s,y,A,p,m=i;r||(r=!0,u&&t.clearTimeout(u),a=void 0,o=S||"",M.readyState=0<e?4:0,C=200<=e&&e<300||304===e,d&&(A=function(t,e,i){for(var a,n,o,d,u=t.contents,S=t.dataTypes;"*"===S[0];)S.shift(),void 0===a&&(a=t.mimeType||e.getResponseHeader("Content-Type"));if(a)for(n in u)if(u[n]&&u[n].test(a)){S.unshift(n);break}if(S[0]in i)o=S[0];else{for(n in i){if(!S[0]||t.converters[n+" "+S[0]]){o=n;break}d||(d=n)}o=o||d}if(o)return o!==S[0]&&S.unshift(o),i[o]}(g,M,d)),!C&&-1<f.inArray("script",g.dataTypes)&&(g.converters["text script"]=function(){}),A=function(t,e,i,a){var n,o,d,u,S,r={},L=t.dataTypes.slice();if(L[1])for(d in t.converters)r[d.toLowerCase()]=t.converters[d];for(o=L.shift();o;)if(t.responseFields[o]&&(i[t.responseFields[o]]=e),!S&&a&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),S=o,o=L.shift())if("*"===o)o=S;else if("*"!==S&&S!==o){if(!(d=r[S+" "+o]||r["* "+o]))for(n in r)if((u=n.split(" "))[1]===o&&(d=r[S+" "+u[0]]||r["* "+u[0]])){!0===d?d=r[n]:!0!==r[n]&&(o=u[0],L.unshift(u[1]));break}if(!0!==d)if(d&&t.throws)e=d(e);else try{e=d(e)}catch(t){return{state:"parsererror",error:d?t:"No conversion from "+S+" to "+o}}}return{state:"success",data:e}}(g,A,M,C),C?(g.ifModified&&((p=M.getResponseHeader("Last-Modified"))&&(f.lastModified[n]=p),(p=M.getResponseHeader("etag"))&&(f.etag[n]=p)),204===e||"HEAD"===g.type?m="nocontent":304===e?m="notmodified":(m=A.state,s=A.data,C=!(y=A.error))):(y=m,!e&&m||(m="error",e<0&&(e=0))),M.status=e,M.statusText=(i||m)+"",C?I.resolveWith(l,[s,m,M]):I.rejectWith(l,[M,m,y]),M.statusCode(h),h=void 0,L&&K.trigger(C?"ajaxSuccess":"ajaxError",[M,g,C?s:y]),c.fireWith(l,[M,m]),L&&(K.trigger("ajaxComplete",[M,g]),--f.active||f.event.trigger("ajaxStop")))}return M},getJSON:function(t,e,i){return f.get(t,e,i,"json")},getScript:function(t,e){return f.get(t,void 0,e,"script")}}),f.each(["get","post"],(function(t,e){f[e]=function(t,i,a,n){return l(i)&&(n=n||a,a=i,i=void 0),f.ajax(f.extend({url:t,type:e,dataType:n,data:i,success:a},f.isPlainObject(t)&&t))}})),f.ajaxPrefilter((function(t){var e;for(e in t.headers)"content-type"===e.toLowerCase()&&(t.contentType=t.headers[e]||"")})),f._evalUrl=function(t,e,i){return f.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(t){f.globalEval(t,e,i)}})},f.fn.extend({wrapAll:function(t){var e;return this[0]&&(l(t)&&(t=t.call(this[0])),e=f(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map((function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t})).append(this)),this},wrapInner:function(t){return l(t)?this.each((function(e){f(this).wrapInner(t.call(this,e))})):this.each((function(){var e=f(this),i=e.contents();i.length?i.wrapAll(t):e.append(t)}))},wrap:function(t){var e=l(t);return this.each((function(i){f(this).wrapAll(e?t.call(this,i):t)}))},unwrap:function(t){return this.parent(t).not("body").each((function(){f(this).replaceWith(this.childNodes)})),this}}),f.expr.pseudos.hidden=function(t){return!f.expr.pseudos.visible(t)},f.expr.pseudos.visible=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},f.ajaxSettings.xhr=function(){try{return new t.XMLHttpRequest}catch(t){}};var Ve={0:200,1223:204},xe=f.ajaxSettings.xhr();g.cors=!!xe&&"withCredentials"in xe,g.ajax=xe=!!xe,f.ajaxTransport((function(e){var i,a;if(g.cors||xe&&!e.crossDomain)return{send:function(n,o){var d,u=e.xhr();if(u.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(d in e.xhrFields)u[d]=e.xhrFields[d];for(d in e.mimeType&&u.overrideMimeType&&u.overrideMimeType(e.mimeType),e.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest"),n)u.setRequestHeader(d,n[d]);i=function(t){return function(){i&&(i=a=u.onload=u.onerror=u.onabort=u.ontimeout=u.onreadystatechange=null,"abort"===t?u.abort():"error"===t?"number"!=typeof u.status?o(0,"error"):o(u.status,u.statusText):o(Ve[u.status]||u.status,u.statusText,"text"!==(u.responseType||"text")||"string"!=typeof u.responseText?{binary:u.response}:{text:u.responseText},u.getAllResponseHeaders()))}},u.onload=i(),a=u.onerror=u.ontimeout=i("error"),void 0!==u.onabort?u.onabort=a:u.onreadystatechange=function(){4===u.readyState&&t.setTimeout((function(){i&&a()}))},i=i("abort");try{u.send(e.hasContent&&e.data||null)}catch(n){if(i)throw n}},abort:function(){i&&i()}}})),f.ajaxPrefilter((function(t){t.crossDomain&&(t.contents.script=!1)})),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return f.globalEval(t),t}}}),f.ajaxPrefilter("script",(function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")})),f.ajaxTransport("script",(function(t){var e,i;if(t.crossDomain||t.scriptAttrs)return{send:function(a,n){e=f("<script>").attr(t.scriptAttrs||{}).prop({charset:t.scriptCharset,src:t.url}).on("load error",i=function(t){e.remove(),i=null,t&&n("error"===t.type?404:200,t.type)}),y.head.appendChild(e[0])},abort:function(){i&&i()}}}));var Ue,Qe=[],Ze=/(=)\?(?=&|$)|\?\?/;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=Qe.pop()||f.expando+"_"+me.guid++;return this[t]=!0,t}}),f.ajaxPrefilter("json jsonp",(function(e,i,a){var n,o,d,u=!1!==e.jsonp&&(Ze.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ze.test(e.data)&&"data");if(u||"jsonp"===e.dataTypes[0])return n=e.jsonpCallback=l(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,u?e[u]=e[u].replace(Ze,"$1"+n):!1!==e.jsonp&&(e.url+=(Me.test(e.url)?"&":"?")+e.jsonp+"="+n),e.converters["script json"]=function(){return d||f.error(n+" was not called"),d[0]},e.dataTypes[0]="json",o=t[n],t[n]=function(){d=arguments},a.always((function(){void 0===o?f(t).removeProp(n):t[n]=o,e[n]&&(e.jsonpCallback=i.jsonpCallback,Qe.push(n)),d&&l(o)&&o(d[0]),d=o=void 0})),"script"})),g.createHTMLDocument=((Ue=y.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ue.childNodes.length),f.parseHTML=function(t,e,i){return"string"!=typeof t?[]:("boolean"==typeof e&&(i=e,e=!1),e||(g.createHTMLDocument?((a=(e=y.implementation.createHTMLDocument("")).createElement("base")).href=y.location.href,e.head.appendChild(a)):e=y),o=!i&&[],(n=W.exec(t))?[e.createElement(n[1])]:(n=ht([t],e,o),o&&o.length&&f(o).remove(),f.merge([],n.childNodes)));var a,n,o},f.fn.load=function(t,e,i){var a,n,o,d=this,u=t.indexOf(" ");return-1<u&&(a=ye(t.slice(u)),t=t.slice(0,u)),l(e)?(i=e,e=void 0):e&&"object"==typeof e&&(n="POST"),0<d.length&&f.ajax({url:t,type:n||"GET",dataType:"html",data:e}).done((function(t){o=arguments,d.html(a?f("<div>").append(f.parseHTML(t)).find(a):t)})).always(i&&function(t,e){d.each((function(){i.apply(this,o||[t.responseText,e,t])}))}),this},f.expr.pseudos.animated=function(t){return f.grep(f.timers,(function(e){return t===e.elem})).length},f.offset={setOffset:function(t,e,i){var a,n,o,d,u,S,r=f.css(t,"position"),L=f(t),C={};"static"===r&&(t.style.position="relative"),u=L.offset(),o=f.css(t,"top"),S=f.css(t,"left"),("absolute"===r||"fixed"===r)&&-1<(o+S).indexOf("auto")?(d=(a=L.position()).top,n=a.left):(d=parseFloat(o)||0,n=parseFloat(S)||0),l(e)&&(e=e.call(t,i,f.extend({},u))),null!=e.top&&(C.top=e.top-u.top+d),null!=e.left&&(C.left=e.left-u.left+n),"using"in e?e.using.call(t,C):("number"==typeof C.top&&(C.top+="px"),"number"==typeof C.left&&(C.left+="px"),L.css(C))}},f.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each((function(e){f.offset.setOffset(this,t,e)}));var e,i,a=this[0];return a?a.getClientRects().length?(e=a.getBoundingClientRect(),i=a.ownerDocument.defaultView,{top:e.top+i.pageYOffset,left:e.left+i.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var t,e,i,a=this[0],n={top:0,left:0};if("fixed"===f.css(a,"position"))e=a.getBoundingClientRect();else{for(e=this.offset(),i=a.ownerDocument,t=a.offsetParent||i.documentElement;t&&(t===i.body||t===i.documentElement)&&"static"===f.css(t,"position");)t=t.parentNode;t&&t!==a&&1===t.nodeType&&((n=f(t).offset()).top+=f.css(t,"borderTopWidth",!0),n.left+=f.css(t,"borderLeftWidth",!0))}return{top:e.top-n.top-f.css(a,"marginTop",!0),left:e.left-n.left-f.css(a,"marginLeft",!0)}}},offsetParent:function(){return this.map((function(){for(var t=this.offsetParent;t&&"static"===f.css(t,"position");)t=t.offsetParent;return t||at}))}}),f.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},(function(t,e){var i="pageYOffset"===e;f.fn[t]=function(a){return G(this,(function(t,a,n){var o;if(K(t)?o=t:9===t.nodeType&&(o=t.defaultView),void 0===n)return o?o[e]:t[a];o?o.scrollTo(i?o.pageXOffset:n,i?n:o.pageYOffset):t[a]=n}),t,a,arguments.length)}})),f.each(["top","left"],(function(t,e){f.cssHooks[e]=Gt(g.pixelPosition,(function(t,i){if(i)return i=kt(t,e),Ht.test(i)?f(t).position()[e]+"px":i}))})),f.each({Height:"height",Width:"width"},(function(t,e){f.each({padding:"inner"+t,content:e,"":"outer"+t},(function(i,a){f.fn[a]=function(n,o){var d=arguments.length&&(i||"boolean"!=typeof n),u=i||(!0===n||!0===o?"margin":"border");return G(this,(function(e,i,n){var o;return K(e)?0===a.indexOf("outer")?e["inner"+t]:e.document.documentElement["client"+t]:9===e.nodeType?(o=e.documentElement,Math.max(e.body["scroll"+t],o["scroll"+t],e.body["offset"+t],o["offset"+t],o["client"+t])):void 0===n?f.css(e,i,u):f.style(e,i,n,u)}),e,d?n:void 0,d)}}))})),f.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],(function(t,e){f.fn[e]=function(t){return this.on(e,t)}})),f.fn.extend({bind:function(t,e,i){return this.on(t,null,e,i)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,i,a){return this.on(e,t,i,a)},undelegate:function(t,e,i){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",i)},hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)}}),f.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),(function(t,e){f.fn[e]=function(t,i){return 0<arguments.length?this.on(e,null,t,i):this.trigger(e)}}));var Je=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;f.proxy=function(t,e){var i,a,o;if("string"==typeof e&&(i=t[e],e=t,t=i),l(t))return a=n.call(arguments,2),(o=function(){return t.apply(e||this,a.concat(n.call(arguments)))}).guid=t.guid=t.guid||f.guid++,o},f.holdReady=function(t){t?f.readyWait++:f.ready(!0)},f.isArray=Array.isArray,f.parseJSON=JSON.parse,f.nodeName=v,f.isFunction=l,f.isWindow=K,f.camelCase=Q,f.type=h,f.now=Date.now,f.isNumeric=function(t){var e=f.type(t);return("number"===e||"string"===e)&&!isNaN(t-parseFloat(t))},f.trim=function(t){return null==t?"":(t+"").replace(Je,"")},"function"==typeof define&&define.amd&&define("jquery",[],(function(){return f}));var je=t.jQuery,_e=t.$;return f.noConflict=function(e){return t.$===f&&(t.$=_e),e&&t.jQuery===f&&(t.jQuery=je),f},void 0===e&&(t.jQuery=t.$=f),f})),function(t,e){"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?module.exports=e():t.SuperGif=e()}(this,(function(){var t=function(t){return t.reduce((function(t,e){return 2*t+e}),0)},e=function(t){for(var e=[],i=7;i>=0;i--)e.push(!!(t&1<<i));return e},i=function(t){this.data=t,this.len=this.data.length,this.pos=0,this.readByte=function(){if(this.pos>=this.data.length)throw new Error("Attempted to read past end of stream.");return t instanceof Uint8Array?t[this.pos++]:255&t.charCodeAt(this.pos++)},this.readBytes=function(t){for(var e=[],i=0;i<t;i++)e.push(this.readByte());return e},this.read=function(t){for(var e="",i=0;i<t;i++)e+=String.fromCharCode(this.readByte());return e},this.readUnsigned=function(){var t=this.readBytes(2);return(t[1]<<8)+t[0]}},a=function(i,a){a||(a={});var n=function(t){for(var e=[],a=0;a<t;a++)e.push(i.readBytes(3));return e},o=function(){var t,e;e="";do{t=i.readByte(),e+=i.read(t)}while(0!==t);return e},d=function(d){d.leftPos=i.readUnsigned(),d.topPos=i.readUnsigned(),d.width=i.readUnsigned(),d.height=i.readUnsigned();var u=e(i.readByte());d.lctFlag=u.shift(),d.interlaced=u.shift(),d.sorted=u.shift(),d.reserved=u.splice(0,2),d.lctSize=t(u.splice(0,3)),d.lctFlag&&(d.lct=n(1<<d.lctSize+1)),d.lzwMinCodeSize=i.readByte();var S=o();d.pixels=function(t,e){for(var i,a,n=0,o=function(t){for(var i=0,a=0;a<t;a++)e.charCodeAt(n>>3)&1<<(7&n)&&(i|=1<<a),n++;return i},d=[],u=1<<t,S=u+1,r=t+1,L=[],C=function(){L=[],r=t+1;for(var e=0;e<u;e++)L[e]=[e];L[u]=[],L[S]=null};;)if(a=i,(i=o(r))!==u){if(i===S)break;if(i<L.length)a!==u&&L.push(L[a].concat(L[i][0]));else{if(i!==L.length)throw new Error("Invalid LZW code.");L.push(L[a].concat(L[a][0]))}d.push.apply(d,L[i]),L.length===1<<r&&r<12&&r++}else C();return d}(d.lzwMinCodeSize,S),d.interlaced&&(d.pixels=function(t,e){for(var i=new Array(t.length),a=t.length/e,n=function(a,n){var o=t.slice(n*e,(n+1)*e);i.splice.apply(i,[a*e,e].concat(o))},o=[0,4,2,1],d=[8,8,4,2],u=0,S=0;S<4;S++)for(var r=o[S];r<a;r+=d[S])n(r,u),u++;return i}(d.pixels,d.width)),a.img&&a.img(d)},u=function(){var n={};switch(n.sentinel=i.readByte(),String.fromCharCode(n.sentinel)){case"!":n.type="ext",function(n){switch(n.label=i.readByte(),n.label){case 249:n.extType="gce",function(n){i.readByte();var o=e(i.readByte());n.reserved=o.splice(0,3),n.disposalMethod=t(o.splice(0,3)),n.userInput=o.shift(),n.transparencyGiven=o.shift(),n.delayTime=i.readUnsigned(),n.transparencyIndex=i.readByte(),n.terminator=i.readByte(),a.gce&&a.gce(n)}(n);break;case 254:n.extType="com",function(t){t.comment=o(),a.com&&a.com(t)}(n);break;case 1:n.extType="pte",function(t){i.readByte(),t.ptHeader=i.readBytes(12),t.ptData=o(),a.pte&&a.pte(t)}(n);break;case 255:n.extType="app",function(t){switch(i.readByte(),t.identifier=i.read(8),t.authCode=i.read(3),t.identifier){case"NETSCAPE":!function(t){i.readByte(),t.unknown=i.readByte(),t.iterations=i.readUnsigned(),t.terminator=i.readByte(),a.app&&a.app.NETSCAPE&&a.app.NETSCAPE(t)}(t);break;default:!function(t){t.appData=o(),a.app&&a.app[t.identifier]&&a.app[t.identifier](t)}(t)}}(n);break;default:n.extType="unknown",function(t){t.data=o(),a.unknown&&a.unknown(t)}(n)}}(n);break;case",":n.type="img",d(n);break;case";":n.type="eof",a.eof&&a.eof(n);break;default:throw new Error("Unknown block: 0x"+n.sentinel.toString(16))}"eof"!==n.type&&setTimeout(u,0)};!function(){var o={};if(o.sig=i.read(3),o.ver=i.read(3),"GIF"!==o.sig)throw new Error("Not a GIF file.");o.width=i.readUnsigned(),o.height=i.readUnsigned();var d=e(i.readByte());o.gctFlag=d.shift(),o.colorRes=t(d.splice(0,3)),o.sorted=d.shift(),o.gctSize=t(d.splice(0,3)),o.bgColor=i.readByte(),o.pixelAspectRatio=i.readByte(),o.gctFlag&&(o.gct=n(1<<o.gctSize+1)),a.hdr&&a.hdr(o)}(),setTimeout(u,0)};return function(t){var e,n,o={vp_l:0,vp_t:0,vp_w:null,vp_h:null,c_w:null,c_h:null};for(var d in t)o[d]=t[d];o.vp_w&&o.vp_h&&(o.is_vp=!0);var u=null,S=!1,r=null,L=null,C=null,s=null,g=null,l=null,K=null,y=!0,I=!1,c=[],h=[],A=o.src;o.gif||(o.gif=document.createElement("img"),o.gif.setAttribute("rel:animated_src",A),o.gif.src="");var f=o.gif;void 0===o.auto_play&&(o.auto_play=!f.getAttribute("rel:auto_play")||"1"==f.getAttribute("rel:auto_play"));var p,m,M,N,T=o.hasOwnProperty("on_end")?o.on_end:null,v=o.hasOwnProperty("loop_delay")?o.loop_delay:0,W=o.hasOwnProperty("loop_mode")?o.loop_mode:"auto",P=!o.hasOwnProperty("draw_while_loading")||o.draw_while_loading,D=!!P&&(!o.hasOwnProperty("show_progress_bar")||o.show_progress_bar),B=o.hasOwnProperty("progressbar_height")?o.progressbar_height:25,F=o.hasOwnProperty("progressbar_background_color")?o.progressbar_background_color:"rgba(255,255,255,0.4)",O=o.hasOwnProperty("progressbar_foreground_color")?o.progressbar_foreground_color:"rgba(255,0,22,.8)",R=function(){r=null,L=null,g=C,C=null,l=null},w=function(){try{a(e,x)}catch(t){X("parse")}},E=function(t,e){p.width=t*Q(),p.height=e*Q(),M.style.minWidth=t*Q()+"px",N.width=t,N.height=e,N.style.width=t+"px",N.style.height=e+"px",N.getContext("2d").setTransform(1,0,0,1,0,0)},H=function(t,e,i){if(i&&D){var a,n,d,u=B;if(o.is_vp)I?(n=(o.vp_t+o.vp_h-u)/Q(),u/=Q(),a=o.vp_l/Q()+t/e*(o.vp_w/Q()),d=p.width/Q()):(n=o.vp_t+o.vp_h-u,u=u,a=o.vp_l+t/e*o.vp_w,d=p.width);else n=(p.height-u)/(I?Q():1),a=t/e*p.width/(I?Q():1),d=p.width/(I?Q():1),u/=I?Q():1;m.fillStyle=F,m.fillRect(a,n,d-a,u),m.fillStyle=O,m.fillRect(0,n,a,u)}},X=function(t){u=t,n={width:f.width,height:f.height},c=[],m.fillStyle="black",m.fillRect(0,0,o.c_w?o.c_w:n.width,o.c_h?o.c_h:n.height),m.strokeStyle="red",m.lineWidth=3,m.moveTo(0,0),m.lineTo(o.c_w?o.c_w:n.width,o.c_h?o.c_h:n.height),m.moveTo(0,o.c_h?o.c_h:n.height),m.lineTo(o.c_w?o.c_w:n.width,0),m.stroke()},b=function(){l&&(c.push({data:l.getImageData(0,0,n.width,n.height),delay:L}),h.push({x:0,y:0}))},Y=function(){var t,e,i,a=-1,n=0,d=function(t){a+=t,r()},S=(t=!1,e=function(){null!==T&&T(f),n++,!1!==W||n<0?i():(t=!1,y=!1)},i=function(){if(t=y){d(1);var n=10*c[a].delay;n||(n=100),0==(a+1+c.length)%c.length?(n+=v,setTimeout(e,n)):setTimeout(i,n)}},function(){t||setTimeout(i,0)}),r=function(){var t;(a=parseInt(a,10))>c.length-1&&(a=0),a<0&&(a=0),t=h[a],N.getContext("2d").putImageData(c[a].data,t.x,t.y),m.globalCompositeOperation="copy",m.drawImage(N,0,0),o.canvas.getContext("2d").drawImage(p,o.x,o.y)};return{init:function(){u||(o.c_w&&o.c_h||m.scale(Q(),Q()),o.auto_play?S():(a=0,r()))},step:S,play:function(){y=!0,S()},pause:function(){y=!1},playing:y,move_relative:d,current_frame:function(){return a},length:function(){return c.length},move_to:function(t){a=t,r()}}}(),k=function(t){H(e.pos,e.data.length,t)},G=function(){},V=function(t,e){return function(i){t(i),k(e)}},x={hdr:V((function(t){E((n=t).width,n.height)})),gce:V((function(t){b(),R(),r=t.transparencyGiven?t.transparencyIndex:null,L=t.delayTime,C=t.disposalMethod})),com:V(G),app:{NETSCAPE:V(G)},img:V((function(t){l||(l=N.getContext("2d"));var e=c.length,i=t.lctFlag?t.lct:n.gct;e>0&&(3===g?null!==s?l.putImageData(c[s].data,0,0):l.clearRect(K.leftPos,K.topPos,K.width,K.height):s=e-1,2===g&&l.clearRect(K.leftPos,K.topPos,K.width,K.height));var a=l.getImageData(t.leftPos,t.topPos,t.width,t.height);t.pixels.forEach((function(t,e){t!==r&&(a.data[4*e+0]=i[t][0],a.data[4*e+1]=i[t][1],a.data[4*e+2]=i[t][2],a.data[4*e+3]=255)})),l.putImageData(a,t.leftPos,t.topPos),I||(m.scale(Q(),Q()),I=!0),P&&(m.drawImage(N,0,0),P=o.auto_play),K=t}),!0),eof:function(t){b(),k(!1),o.c_w&&o.c_h||(p.width=n.width*Q(),p.height=n.height*Q()),Y.init(),S=!1,J&&J(f)}},U=function(){var t=f.parentNode,e=document.createElement("div");p=document.createElement("canvas"),m=p.getContext("2d"),M=document.createElement("div"),N=document.createElement("canvas"),e.width=p.width=f.width,e.height=p.height=f.height,M.style.minWidth=f.width+"px",e.className="jsgif",M.className="jsgif_toolbar",e.style.display="none",e.appendChild(p),e.appendChild(M),t&&(t.insertBefore(e,f),t.removeChild(f)),o.c_w&&o.c_h&&E(o.c_w,o.c_h),Z=!0},Q=function(){return o.max_width&&n&&n.width>o.max_width?o.max_width/n.width:o.max_height&&n&&n.height>o.max_height?o.max_height/n.height:1},Z=!1,J=!1,j=function(t){return!S&&(J=t||!1,S=!0,c=[],R(),s=null,g=null,l=null,K=null,!0)};return{play:Y.play,pause:Y.pause,move_relative:Y.move_relative,move_to:Y.move_to,get_playing:function(){return y},get_canvas:function(){return p},get_canvas_scale:function(){return Q()},get_loading:function(){return S},get_auto_play:function(){return o.auto_play},get_length:function(){return Y.length()},get_current_frame:function(){return Y.current_frame()},load_url:function(t,a){if(j(a)){var n=new XMLHttpRequest;n.open("GET",t,!0),"overrideMimeType"in n?n.overrideMimeType("text/plain; charset=x-user-defined"):"responseType"in n?n.responseType="arraybuffer":n.setRequestHeader("Accept-Charset","x-user-defined"),n.onloadstart=function(){Z||U()},n.onload=function(t){200!=this.status&&X("xhr - response"),"response"in this||(this.response=new VBArray(this.responseText).toArray().map(String.fromCharCode).join(""));var a=this.response;a.toString().indexOf("ArrayBuffer")>0&&(a=new Uint8Array(a)),e=new i(a),setTimeout(w,0)},n.onprogress=function(t){t.lengthComputable&&H(t.loaded,t.total,!0)},n.onerror=function(){X("xhr")},n.send()}},load:function(t){this.load_url(f.getAttribute("rel:animated_src")||f.src,t)},load_raw:function(t,a){j(a)&&(Z||U(),e=new i(t),setTimeout(w,0))},set_frame_offset:function(t,e){h[t]?(void 0!==e.x&&(h[t].x=e.x),void 0!==e.y&&(h[t].y=e.y)):h[t]=e},getX:function(){return o.x},setX:function(t){o.x=t},getY:function(){return o.y},setY:function(t){o.y=t},setFirstTime:function(){!0}}}}));var luxon=function(t){"use strict";function e(t,e){for(var i=0;i<e.length;i++){var a=e[i];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}function i(t,i,a){return i&&e(t.prototype,i),a&&e(t,a),t}function a(t,e){t.prototype=Object.create(e.prototype),(t.prototype.constructor=t).__proto__=e}function n(t){return(n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function d(t,e,i){return(d=function(){if("undefined"!=typeof Reflect&&Reflect.construct&&!Reflect.construct.sham){if("function"==typeof Proxy)return 1;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),1}catch(t){return}}}()?Reflect.construct:function(t,e,i){var a=[null];a.push.apply(a,e);var n=new(Function.bind.apply(t,a));return i&&o(n,i.prototype),n}).apply(null,arguments)}function u(t){var e="function"==typeof Map?new Map:void 0;return(u=function(t){if(null===t||(i=t,-1===Function.toString.call(i).indexOf("[native code]")))return t;var i;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,a)}function a(){return d(t,arguments,n(this).constructor)}return a.prototype=Object.create(t.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),o(a,t)})(t)}function S(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,a=new Array(e);i<e;i++)a[i]=t[i];return a}function r(t){var e=0;if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator])return(e=t[Symbol.iterator]()).next.bind(e);if(Array.isArray(t)||(t=function(t,e){if(t){if("string"==typeof t)return S(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(i):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?S(t,e):void 0}}(t)))return function(){return e>=t.length?{done:!0}:{done:!1,value:t[e++]}};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var L=function(t){function e(){return t.apply(this,arguments)||this}return a(e,t),e}(u(Error)),C=function(t){function e(e){return t.call(this,"Invalid DateTime: "+e.toMessage())||this}return a(e,t),e}(L),s=function(t){function e(e){return t.call(this,"Invalid Interval: "+e.toMessage())||this}return a(e,t),e}(L),g=function(t){function e(e){return t.call(this,"Invalid Duration: "+e.toMessage())||this}return a(e,t),e}(L),l=function(t){function e(){return t.apply(this,arguments)||this}return a(e,t),e}(L),K=function(t){function e(e){return t.call(this,"Invalid unit "+e)||this}return a(e,t),e}(L),y=function(t){function e(){return t.apply(this,arguments)||this}return a(e,t),e}(L),I=function(t){function e(){return t.call(this,"Zone is an abstract class")||this}return a(e,t),e}(L),c="numeric",h="short",A="long",f={year:c,month:c,day:c},p={year:c,month:h,day:c},m={year:c,month:A,day:c},M={year:c,month:A,day:c,weekday:A},N={hour:c,minute:c},T={hour:c,minute:c,second:c},v={hour:c,minute:c,second:c,timeZoneName:h},W={hour:c,minute:c,second:c,timeZoneName:A},P={hour:c,minute:c,hour12:!1},D={hour:c,minute:c,second:c,hour12:!1},B={hour:c,minute:c,second:c,hour12:!1,timeZoneName:h},F={hour:c,minute:c,second:c,hour12:!1,timeZoneName:A},O={year:c,month:c,day:c,hour:c,minute:c},R={year:c,month:c,day:c,hour:c,minute:c,second:c},w={year:c,month:h,day:c,hour:c,minute:c},E={year:c,month:h,day:c,hour:c,minute:c,second:c},H={year:c,month:h,day:c,weekday:h,hour:c,minute:c},X={year:c,month:A,day:c,hour:c,minute:c,timeZoneName:h},b={year:c,month:A,day:c,hour:c,minute:c,second:c,timeZoneName:h},Y={year:c,month:A,day:c,weekday:A,hour:c,minute:c,timeZoneName:A},k={year:c,month:A,day:c,weekday:A,hour:c,minute:c,second:c,timeZoneName:A};function G(t){return void 0===t}function V(t){return"number"==typeof t}function x(t){return"number"==typeof t&&t%1==0}function U(){try{return"undefined"!=typeof Intl&&Intl.DateTimeFormat}catch(t){return!1}}function Q(){return!G(Intl.DateTimeFormat.prototype.formatToParts)}function Z(){try{return"undefined"!=typeof Intl&&!!Intl.RelativeTimeFormat}catch(t){return!1}}function J(t,e,i){if(0!==t.length)return t.reduce((function(t,a){var n=[e(a),a];return t&&i(t[0],n[0])===t[0]?t:n}),null)[1]}function j(t,e){return e.reduce((function(e,i){return e[i]=t[i],e}),{})}function _(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function q(t,e,i){return x(t)&&e<=t&&t<=i}function z(t,e){return void 0===e&&(e=2),t.toString().length<e?("0".repeat(e)+t).slice(-e):t.toString()}function $(t){return G(t)||null===t||""===t?void 0:parseInt(t,10)}function tt(t){if(!G(t)&&null!==t&&""!==t){var e=1e3*parseFloat("0."+t);return Math.floor(e)}}function et(t,e,i){void 0===i&&(i=!1);var a=Math.pow(10,e);return(i?Math.trunc:Math.round)(t*a)/a}function it(t){return t%4==0&&(t%100!=0||t%400==0)}function at(t){return it(t)?366:365}function nt(t,e){var i,a=(i=e-1)-12*Math.floor(i/12)+1;return 2==a?it(t+(e-a)/12)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][a-1]}function ot(t){var e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&0<=t.year&&(e=new Date(e)).setUTCFullYear(e.getUTCFullYear()-1900),+e}function dt(t){var e=(t+Math.floor(t/4)-Math.floor(t/100)+Math.floor(t/400))%7,i=t-1,a=(i+Math.floor(i/4)-Math.floor(i/100)+Math.floor(i/400))%7;return 4==e||3==a?53:52}function ut(t){return 99<t?t:60<t?1900+t:2e3+t}function St(t,e,i,a){void 0===a&&(a=null);var n=new Date(t),o={hour12:!1,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};a&&(o.timeZone=a);var d=Object.assign({timeZoneName:e},o),u=U();if(u&&Q()){var S=new Intl.DateTimeFormat(i,d).formatToParts(n).find((function(t){return"timezonename"===t.type.toLowerCase()}));return S?S.value:null}if(u){var r=new Intl.DateTimeFormat(i,o).format(n);return new Intl.DateTimeFormat(i,d).format(n).substring(r.length).replace(/^[, \u200e]+/,"")}return null}function rt(t,e){var i=parseInt(t,10);Number.isNaN(i)&&(i=0);var a=parseInt(e,10)||0;return 60*i+(i<0||Object.is(i,-0)?-a:a)}function Lt(t){var e=Number(t);if("boolean"==typeof t||""===t||Number.isNaN(e))throw new y("Invalid unit value "+t);return e}function Ct(t,e,i){var a={};for(var n in t)if(_(t,n)){if(0<=i.indexOf(n))continue;var o=t[n];if(null==o)continue;a[e(n)]=Lt(o)}return a}function st(t,e){var i=Math.trunc(t/60),a=Math.abs(t%60),n=0<=i&&!Object.is(i,-0)?"+":"-",o=n+Math.abs(i);switch(e){case"short":return n+z(Math.abs(i),2)+":"+z(a,2);case"narrow":return 0<a?o+":"+a:o;case"techie":return n+z(Math.abs(i),2)+z(a,2);default:throw new RangeError("Value format "+e+" is out of range for property format")}}function gt(t){return j(t,["hour","minute","second","millisecond"])}var lt=/[A-Za-z_+-]{1,256}(:?\/[A-Za-z_+-]{1,256}(\/[A-Za-z_+-]{1,256})?)?/;function Kt(t){return JSON.stringify(t,Object.keys(t).sort())}var yt=["January","February","March","April","May","June","July","August","September","October","November","December"],It=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],ct=["J","F","M","A","M","J","J","A","S","O","N","D"];function ht(t){switch(t){case"narrow":return ct;case"short":return It;case"long":return yt;case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var At=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],ft=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],pt=["M","T","W","T","F","S","S"];function mt(t){switch(t){case"narrow":return pt;case"short":return ft;case"long":return At;case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var Mt=["AM","PM"],Nt=["Before Christ","Anno Domini"],Tt=["BC","AD"],vt=["B","A"];function Wt(t){switch(t){case"narrow":return vt;case"short":return Tt;case"long":return Nt;default:return null}}function Pt(t,e){for(var i,a="",n=r(t);!(i=n()).done;){var o=i.value;o.literal?a+=o.val:a+=e(o.val)}return a}var Dt={D:f,DD:p,DDD:m,DDDD:M,t:N,tt:T,ttt:v,tttt:W,T:P,TT:D,TTT:B,TTTT:F,f:O,ff:w,fff:X,ffff:Y,F:R,FF:E,FFF:b,FFFF:k},Bt=function(){function t(t,e){this.opts=e,this.loc=t,this.systemLoc=null}t.create=function(e,i){return void 0===i&&(i={}),new t(e,i)},t.parseFormat=function(t){for(var e=null,i="",a=!1,n=[],o=0;o<t.length;o++){var d=t.charAt(o);"'"===d?(0<i.length&&n.push({literal:a,val:i}),e=null,i="",a=!a):a||d===e?i+=d:(0<i.length&&n.push({literal:!1,val:i}),e=i=d)}return 0<i.length&&n.push({literal:a,val:i}),n},t.macroTokenToFormatOpts=function(t){return Dt[t]};var e=t.prototype;return e.formatWithSystemDefault=function(t,e){return null===this.systemLoc&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(t,Object.assign({},this.opts,e)).format()},e.formatDateTime=function(t,e){return void 0===e&&(e={}),this.loc.dtFormatter(t,Object.assign({},this.opts,e)).format()},e.formatDateTimeParts=function(t,e){return void 0===e&&(e={}),this.loc.dtFormatter(t,Object.assign({},this.opts,e)).formatToParts()},e.resolvedOptions=function(t,e){return void 0===e&&(e={}),this.loc.dtFormatter(t,Object.assign({},this.opts,e)).resolvedOptions()},e.num=function(t,e){if(void 0===e&&(e=0),this.opts.forceSimple)return z(t,e);var i=Object.assign({},this.opts);return 0<e&&(i.padTo=e),this.loc.numberFormatter(i).format(t)},e.formatDateTimeFromString=function(e,i){function a(t,i){return S.loc.extract(e,t,i)}function n(t){return e.isOffsetFixed&&0===e.offset&&t.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,t.format):""}function o(t,i){return r?(n=e,ht(t)[n.month-1]):a(i?{month:t}:{month:t,day:"numeric"},"month");var n}function d(t,i){return r?(n=e,mt(t)[n.weekday-1]):a(i?{weekday:t}:{weekday:t,month:"long",day:"numeric"},"weekday");var n}function u(t){return r?(i=e,Wt(t)[i.year<0?0:1]):a({era:t},"era");var i}var S=this,r="en"===this.loc.listingMode(),L=this.loc.outputCalendar&&"gregory"!==this.loc.outputCalendar&&Q();return Pt(t.parseFormat(i),(function(i){switch(i){case"S":return S.num(e.millisecond);case"u":case"SSS":return S.num(e.millisecond,3);case"s":return S.num(e.second);case"ss":return S.num(e.second,2);case"m":return S.num(e.minute);case"mm":return S.num(e.minute,2);case"h":return S.num(e.hour%12==0?12:e.hour%12);case"hh":return S.num(e.hour%12==0?12:e.hour%12,2);case"H":return S.num(e.hour);case"HH":return S.num(e.hour,2);case"Z":return n({format:"narrow",allowZ:S.opts.allowZ});case"ZZ":return n({format:"short",allowZ:S.opts.allowZ});case"ZZZ":return n({format:"techie",allowZ:S.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:S.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:S.loc.locale});case"z":return e.zoneName;case"a":return r?Mt[e.hour<12?0:1]:a({hour:"numeric",hour12:!0},"dayperiod");case"d":return L?a({day:"numeric"},"day"):S.num(e.day);case"dd":return L?a({day:"2-digit"},"day"):S.num(e.day,2);case"c":return S.num(e.weekday);case"ccc":return d("short",!0);case"cccc":return d("long",!0);case"ccccc":return d("narrow",!0);case"E":return S.num(e.weekday);case"EEE":return d("short",!1);case"EEEE":return d("long",!1);case"EEEEE":return d("narrow",!1);case"L":return L?a({month:"numeric",day:"numeric"},"month"):S.num(e.month);case"LL":return L?a({month:"2-digit",day:"numeric"},"month"):S.num(e.month,2);case"LLL":return o("short",!0);case"LLLL":return o("long",!0);case"LLLLL":return o("narrow",!0);case"M":return L?a({month:"numeric"},"month"):S.num(e.month);case"MM":return L?a({month:"2-digit"},"month"):S.num(e.month,2);case"MMM":return o("short",!1);case"MMMM":return o("long",!1);case"MMMMM":return o("narrow",!1);case"y":return L?a({year:"numeric"},"year"):S.num(e.year);case"yy":return L?a({year:"2-digit"},"year"):S.num(e.year.toString().slice(-2),2);case"yyyy":return L?a({year:"numeric"},"year"):S.num(e.year,4);case"yyyyyy":return L?a({year:"numeric"},"year"):S.num(e.year,6);case"G":return u("short");case"GG":return u("long");case"GGGGG":return u("narrow");case"kk":return S.num(e.weekYear.toString().slice(-2),2);case"kkkk":return S.num(e.weekYear,4);case"W":return S.num(e.weekNumber);case"WW":return S.num(e.weekNumber,2);case"o":return S.num(e.ordinal);case"ooo":return S.num(e.ordinal,3);case"q":return S.num(e.quarter);case"qq":return S.num(e.quarter,2);case"X":return S.num(Math.floor(e.ts/1e3));case"x":return S.num(e.ts);default:return(s=t.macroTokenToFormatOpts(C=i))?S.formatWithSystemDefault(e,s):C}var C,s}))},e.formatDurationFromString=function(e,i){function a(t){switch(t[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"M":return"month";case"y":return"year";default:return null}}var n,o=this,d=t.parseFormat(i),u=d.reduce((function(t,e){var i=e.literal,a=e.val;return i?t:t.concat(a)}),[]),S=e.shiftTo.apply(e,u.map(a).filter((function(t){return t})));return Pt(d,(n=S,function(t){var e=a(t);return e?o.num(n.get(e),t.length):t}))},t}(),Ft=function(){function t(t,e){this.reason=t,this.explanation=e}return t.prototype.toMessage=function(){return this.explanation?this.reason+": "+this.explanation:this.reason},t}(),Ot=function(){function t(){}var e=t.prototype;return e.offsetName=function(){throw new I},e.formatOffset=function(){throw new I},e.offset=function(){throw new I},e.equals=function(){throw new I},i(t,[{key:"type",get:function(){throw new I}},{key:"name",get:function(){throw new I}},{key:"universal",get:function(){throw new I}},{key:"isValid",get:function(){throw new I}}]),t}(),Rt=null,wt=function(t){function e(){return t.apply(this,arguments)||this}a(e,t);var n=e.prototype;return n.offsetName=function(t,e){return St(t,e.format,e.locale)},n.formatOffset=function(t,e){return st(this.offset(t),e)},n.offset=function(t){return-new Date(t).getTimezoneOffset()},n.equals=function(t){return"local"===t.type},i(e,[{key:"type",get:function(){return"local"}},{key:"name",get:function(){return U()?(new Intl.DateTimeFormat).resolvedOptions().timeZone:"local"}},{key:"universal",get:function(){return!1}},{key:"isValid",get:function(){return!0}}],[{key:"instance",get:function(){return null===Rt&&(Rt=new e),Rt}}]),e}(Ot),Et=RegExp("^"+lt.source+"$"),Ht={},Xt={year:0,month:1,day:2,hour:3,minute:4,second:5},bt={},Yt=function(t){function e(i){var a;return(a=t.call(this)||this).zoneName=i,a.valid=e.isValidZone(i),a}a(e,t),e.create=function(t){return bt[t]||(bt[t]=new e(t)),bt[t]},e.resetCache=function(){bt={},Ht={}},e.isValidSpecifier=function(t){return!(!t||!t.match(Et))},e.isValidZone=function(t){try{return new Intl.DateTimeFormat("en-US",{timeZone:t}).format(),!0}catch(t){return!1}},e.parseGMTOffset=function(t){if(t){var e=t.match(/^Etc\/GMT([+-]\d{1,2})$/i);if(e)return-60*parseInt(e[1])}return null};var n=e.prototype;return n.offsetName=function(t,e){return St(t,e.format,e.locale,this.name)},n.formatOffset=function(t,e){return st(this.offset(t),e)},n.offset=function(t){var e,i,a,n,o,d,u=new Date(t),S=(d=this.name,Ht[d]||(Ht[d]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:d,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})),Ht[d]),r=S.formatToParts?function(t,e){for(var i=t.formatToParts(e),a=[],n=0;n<i.length;n++){var o=i[n],d=o.type,u=o.value,S=Xt[d];G(S)||(a[S]=parseInt(u,10))}return a}(S,u):(e=u,i=S.format(e).replace(/\u200E/g,""),n=(a=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(i))[1],o=a[2],[a[3],n,o,a[4],a[5],a[6]]),L=r[0],C=r[1],s=r[2],g=r[3],l=+u,K=l%1e3;return(ot({year:L,month:C,day:s,hour:24===g?0:g,minute:r[4],second:r[5],millisecond:0})-(l-=0<=K?K:1e3+K))/6e4},n.equals=function(t){return"iana"===t.type&&t.name===this.name},i(e,[{key:"type",get:function(){return"iana"}},{key:"name",get:function(){return this.zoneName}},{key:"universal",get:function(){return!1}},{key:"isValid",get:function(){return this.valid}}]),e}(Ot),kt=null,Gt=function(t){function e(e){var i;return(i=t.call(this)||this).fixed=e,i}a(e,t),e.instance=function(t){return 0===t?e.utcInstance:new e(t)},e.parseSpecifier=function(t){if(t){var i=t.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(i)return new e(rt(i[1],i[2]))}return null},i(e,null,[{key:"utcInstance",get:function(){return null===kt&&(kt=new e(0)),kt}}]);var n=e.prototype;return n.offsetName=function(){return this.name},n.formatOffset=function(t,e){return st(this.fixed,e)},n.offset=function(){return this.fixed},n.equals=function(t){return"fixed"===t.type&&t.fixed===this.fixed},i(e,[{key:"type",get:function(){return"fixed"}},{key:"name",get:function(){return 0===this.fixed?"UTC":"UTC"+st(this.fixed,"narrow")}},{key:"universal",get:function(){return!0}},{key:"isValid",get:function(){return!0}}]),e}(Ot),Vt=function(t){function e(e){var i;return(i=t.call(this)||this).zoneName=e,i}a(e,t);var n=e.prototype;return n.offsetName=function(){return null},n.formatOffset=function(){return""},n.offset=function(){return NaN},n.equals=function(){return!1},i(e,[{key:"type",get:function(){return"invalid"}},{key:"name",get:function(){return this.zoneName}},{key:"universal",get:function(){return!1}},{key:"isValid",get:function(){return!1}}]),e}(Ot);function xt(t,e){var i;if(G(t)||null===t)return e;if(t instanceof Ot)return t;if("string"!=typeof t)return V(t)?Gt.instance(t):"object"==typeof t&&t.offset&&"number"==typeof t.offset?t:new Vt(t);var a=t.toLowerCase();return"local"===a?e:"utc"===a||"gmt"===a?Gt.utcInstance:null!=(i=Yt.parseGMTOffset(t))?Gt.instance(i):Yt.isValidSpecifier(a)?Yt.create(t):Gt.parseSpecifier(a)||new Vt(t)}var Ut=function(){return Date.now()},Qt=null,Zt=null,Jt=null,jt=null,_t=!1,qt=function(){function t(){}return t.resetCaches=function(){ue.resetCache(),Yt.resetCache()},i(t,null,[{key:"now",get:function(){return Ut},set:function(t){Ut=t}},{key:"defaultZoneName",get:function(){return t.defaultZone.name},set:function(t){Qt=t?xt(t):null}},{key:"defaultZone",get:function(){return Qt||wt.instance}},{key:"defaultLocale",get:function(){return Zt},set:function(t){Zt=t}},{key:"defaultNumberingSystem",get:function(){return Jt},set:function(t){Jt=t}},{key:"defaultOutputCalendar",get:function(){return jt},set:function(t){jt=t}},{key:"throwOnInvalid",get:function(){return _t},set:function(t){_t=t}}]),t}(),zt={};function $t(t,e){void 0===e&&(e={});var i=JSON.stringify([t,e]),a=zt[i];return a||(a=new Intl.DateTimeFormat(t,e),zt[i]=a),a}var te={},ee={};var ie=null;function ae(t,e,i,a,n){var o=t.listingMode(i);return"error"===o?null:("en"===o?a:n)(e)}var ne=function(){function t(t,e,i){if(this.padTo=i.padTo||0,this.floor=i.floor||!1,!e&&U()){var a={useGrouping:!1};0<i.padTo&&(a.minimumIntegerDigits=i.padTo),this.inf=function(t,e){void 0===e&&(e={});var i=JSON.stringify([t,e]),a=te[i];return a||(a=new Intl.NumberFormat(t,e),te[i]=a),a}(t,a)}}return t.prototype.format=function(t){if(this.inf){var e=this.floor?Math.floor(t):t;return this.inf.format(e)}return z(this.floor?Math.floor(t):et(t,3),this.padTo)},t}(),oe=function(){function t(t,e,i){var a;if(this.opts=i,this.hasIntl=U(),t.zone.universal&&this.hasIntl?(a="UTC",i.timeZoneName?this.dt=t:this.dt=0===t.offset?t:ea.fromMillis(t.ts+60*t.offset*1e3)):"local"===t.zone.type?this.dt=t:a=(this.dt=t).zone.name,this.hasIntl){var n=Object.assign({},this.opts);a&&(n.timeZone=a),this.dtf=$t(e,n)}}var e=t.prototype;return e.format=function(){if(this.hasIntl)return this.dtf.format(this.dt.toJSDate());var t=function(t){var e="EEEE, LLLL d, yyyy, h:mm a";switch(Kt(j(t,["weekday","era","year","month","day","hour","minute","second","timeZoneName","hour12"]))){case Kt(f):return"M/d/yyyy";case Kt(p):return"LLL d, yyyy";case Kt(m):return"LLLL d, yyyy";case Kt(M):return"EEEE, LLLL d, yyyy";case Kt(N):return"h:mm a";case Kt(T):return"h:mm:ss a";case Kt(v):case Kt(W):return"h:mm a";case Kt(P):return"HH:mm";case Kt(D):return"HH:mm:ss";case Kt(B):case Kt(F):return"HH:mm";case Kt(O):return"M/d/yyyy, h:mm a";case Kt(w):return"LLL d, yyyy, h:mm a";case Kt(X):return"LLLL d, yyyy, h:mm a";case Kt(Y):return e;case Kt(R):return"M/d/yyyy, h:mm:ss a";case Kt(E):return"LLL d, yyyy, h:mm:ss a";case Kt(H):return"EEE, d LLL yyyy, h:mm a";case Kt(b):return"LLLL d, yyyy, h:mm:ss a";case Kt(k):return"EEEE, LLLL d, yyyy, h:mm:ss a";default:return e}}(this.opts),e=ue.create("en-US");return Bt.create(e).formatDateTimeFromString(this.dt,t)},e.formatToParts=function(){return this.hasIntl&&Q()?this.dtf.formatToParts(this.dt.toJSDate()):[]},e.resolvedOptions=function(){return this.hasIntl?this.dtf.resolvedOptions():{locale:"en-US",numberingSystem:"latn",outputCalendar:"gregory"}},t}(),de=function(){function t(t,e,i){this.opts=Object.assign({style:"long"},i),!e&&Z()&&(this.rtf=function(t,e){void 0===e&&(e={}),e.base;var i=function(t,e){if(null==t)return{};var i,a,n={},o=Object.keys(t);for(a=0;a<o.length;a++)i=o[a],0<=e.indexOf(i)||(n[i]=t[i]);return n}(e,["base"]),a=JSON.stringify([t,i]),n=ee[a];return n||(n=new Intl.RelativeTimeFormat(t,e),ee[a]=n),n}(t,i))}var e=t.prototype;return e.format=function(t,e){return this.rtf?this.rtf.format(t,e):function(t,e,i,a){void 0===i&&(i="always"),void 0===a&&(a=!1);var n={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},o=-1===["hours","minutes","seconds"].indexOf(t);if("auto"===i&&o){var d="days"===t;switch(e){case 1:return d?"tomorrow":"next "+n[t][0];case-1:return d?"yesterday":"last "+n[t][0];case 0:return d?"today":"this "+n[t][0]}}var u=Object.is(e,-0)||e<0,S=Math.abs(e),r=1===S,L=n[t],C=a?!r&&L[2]||L[1]:r?n[t][0]:t;return u?S+" "+C+" ago":"in "+S+" "+C}(e,t,this.opts.numeric,"long"!==this.opts.style)},e.formatToParts=function(t,e){return this.rtf?this.rtf.formatToParts(t,e):[]},t}(),ue=function(){function t(t,e,i,a){var n,o,d,u=function(t){var e=t.indexOf("-u-");if(-1===e)return[t];var i,a=t.substring(0,e);try{i=$t(t).resolvedOptions()}catch(t){i=$t(a).resolvedOptions()}return[a,i.numberingSystem,i.calendar]}(t),S=u[0],r=u[1],L=u[2];this.locale=S,this.numberingSystem=e||r||null,this.outputCalendar=i||L||null,this.intl=(n=this.locale,o=this.numberingSystem,d=this.outputCalendar,U()?((d||o)&&(n+="-u",d&&(n+="-ca-"+d),o&&(n+="-nu-"+o)),n):[]),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=a,this.fastNumbersCached=null}t.fromOpts=function(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.defaultToEN)},t.create=function(e,i,a,n){void 0===n&&(n=!1);var o=e||qt.defaultLocale;return new t(o||(n?"en-US":function(){if(ie)return ie;if(U()){var t=(new Intl.DateTimeFormat).resolvedOptions().locale;return ie=t&&"und"!==t?t:"en-US"}return ie="en-US"}()),i||qt.defaultNumberingSystem,a||qt.defaultOutputCalendar,o)},t.resetCache=function(){ie=null,zt={},te={},ee={}},t.fromObject=function(e){var i=void 0===e?{}:e,a=i.locale,n=i.numberingSystem,o=i.outputCalendar;return t.create(a,n,o)};var e=t.prototype;return e.listingMode=function(t){void 0===t&&(t=!0);var e=U()&&Q(),i=this.isEnglish(),a=!(null!==this.numberingSystem&&"latn"!==this.numberingSystem||null!==this.outputCalendar&&"gregory"!==this.outputCalendar);return e||i&&a||t?!e||i&&a?"en":"intl":"error"},e.clone=function(e){return e&&0!==Object.getOwnPropertyNames(e).length?t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,e.defaultToEN||!1):this},e.redefaultToEN=function(t){return void 0===t&&(t={}),this.clone(Object.assign({},t,{defaultToEN:!0}))},e.redefaultToSystem=function(t){return void 0===t&&(t={}),this.clone(Object.assign({},t,{defaultToEN:!1}))},e.months=function(t,e,i){var a=this;return void 0===e&&(e=!1),void 0===i&&(i=!0),ae(this,t,i,ht,(function(){var i=e?{month:t,day:"numeric"}:{month:t},n=e?"format":"standalone";return a.monthsCache[n][t]||(a.monthsCache[n][t]=function(t){for(var e=[],i=1;i<=12;i++){var a=ea.utc(2016,i,1);e.push(t(a))}return e}((function(t){return a.extract(t,i,"month")}))),a.monthsCache[n][t]}))},e.weekdays=function(t,e,i){var a=this;return void 0===e&&(e=!1),void 0===i&&(i=!0),ae(this,t,i,mt,(function(){var i=e?{weekday:t,year:"numeric",month:"long",day:"numeric"}:{weekday:t},n=e?"format":"standalone";return a.weekdaysCache[n][t]||(a.weekdaysCache[n][t]=function(t){for(var e=[],i=1;i<=7;i++){var a=ea.utc(2016,11,13+i);e.push(t(a))}return e}((function(t){return a.extract(t,i,"weekday")}))),a.weekdaysCache[n][t]}))},e.meridiems=function(t){var e=this;return void 0===t&&(t=!0),ae(this,void 0,t,(function(){return Mt}),(function(){if(!e.meridiemCache){var t={hour:"numeric",hour12:!0};e.meridiemCache=[ea.utc(2016,11,13,9),ea.utc(2016,11,13,19)].map((function(i){return e.extract(i,t,"dayperiod")}))}return e.meridiemCache}))},e.eras=function(t,e){var i=this;return void 0===e&&(e=!0),ae(this,t,e,Wt,(function(){var e={era:t};return i.eraCache[t]||(i.eraCache[t]=[ea.utc(-40,1,1),ea.utc(2017,1,1)].map((function(t){return i.extract(t,e,"era")}))),i.eraCache[t]}))},e.extract=function(t,e,i){var a=this.dtFormatter(t,e).formatToParts().find((function(t){return t.type.toLowerCase()===i}));return a?a.value:null},e.numberFormatter=function(t){return void 0===t&&(t={}),new ne(this.intl,t.forceSimple||this.fastNumbers,t)},e.dtFormatter=function(t,e){return void 0===e&&(e={}),new oe(t,this.intl,e)},e.relFormatter=function(t){return void 0===t&&(t={}),new de(this.intl,this.isEnglish(),t)},e.isEnglish=function(){return"en"===this.locale||"en-us"===this.locale.toLowerCase()||U()&&new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")},e.equals=function(t){return this.locale===t.locale&&this.numberingSystem===t.numberingSystem&&this.outputCalendar===t.outputCalendar},i(t,[{key:"fastNumbers",get:function(){var t;return null==this.fastNumbersCached&&(this.fastNumbersCached=(!(t=this).numberingSystem||"latn"===t.numberingSystem)&&("latn"===t.numberingSystem||!t.locale||t.locale.startsWith("en")||U()&&"latn"===new Intl.DateTimeFormat(t.intl).resolvedOptions().numberingSystem)),this.fastNumbersCached}}]),t}();function Se(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];var a=e.reduce((function(t,e){return t+e.source}),"");return RegExp("^"+a+"$")}function re(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return function(t){return e.reduce((function(e,i){var a=e[0],n=e[1],o=e[2],d=i(t,o),u=d[0],S=d[1],r=d[2];return[Object.assign(a,u),n||S,r]}),[{},null,1]).slice(0,2)}}function Le(t){if(null==t)return[null,null];for(var e=arguments.length,i=new Array(1<e?e-1:0),a=1;a<e;a++)i[a-1]=arguments[a];for(var n=0,o=i;n<o.length;n++){var d=o[n],u=d[0],S=d[1],r=u.exec(t);if(r)return S(r)}return[null,null]}function Ce(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return function(t,i){var a,n={};for(a=0;a<e.length;a++)n[e[a]]=$(t[i+a]);return[n,null,i+a]}}var se=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,ge=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,9}))?)?)?/,le=RegExp(""+ge.source+se.source+"?"),Ke=RegExp("(?:T"+le.source+")?"),ye=Ce("weekYear","weekNumber","weekDay"),Ie=Ce("year","ordinal"),ce=RegExp(ge.source+" ?(?:"+se.source+"|("+lt.source+"))?"),he=RegExp("(?: "+ce.source+")?");function Ae(t,e,i){var a=t[e];return G(a)?i:$(a)}function fe(t,e){return[{year:Ae(t,e),month:Ae(t,e+1,1),day:Ae(t,e+2,1)},null,e+3]}function pe(t,e){return[{hour:Ae(t,e,0),minute:Ae(t,e+1,0),second:Ae(t,e+2,0),millisecond:tt(t[e+3])},null,e+4]}function me(t,e){var i=!t[e]&&!t[e+1],a=rt(t[e+1],t[e+2]);return[{},i?null:Gt.instance(a),e+3]}function Me(t,e){return[{},t[e]?Yt.create(t[e]):null,e+1]}var Ne=/^-?P(?:(?:(-?\d{1,9})Y)?(?:(-?\d{1,9})M)?(?:(-?\d{1,9})W)?(?:(-?\d{1,9})D)?(?:T(?:(-?\d{1,9})H)?(?:(-?\d{1,9})M)?(?:(-?\d{1,9})(?:[.,](-?\d{1,9}))?S)?)?)$/;function Te(t){function e(t){return t&&C?-t:t}var i=t[0],a=t[1],n=t[2],o=t[3],d=t[4],u=t[5],S=t[6],r=t[7],L=t[8],C="-"===i[0];return[{years:e($(a)),months:e($(n)),weeks:e($(o)),days:e($(d)),hours:e($(u)),minutes:e($(S)),seconds:e($(r)),milliseconds:e(tt(L))}]}var ve={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function We(t,e,i,a,n,o,d){var u={year:2===e.length?ut($(e)):$(e),month:It.indexOf(i)+1,day:$(a),hour:$(n),minute:$(o)};return d&&(u.second=$(d)),t&&(u.weekday=3<t.length?At.indexOf(t)+1:ft.indexOf(t)+1),u}var Pe=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function De(t){var e,i=t[1],a=t[2],n=t[3],o=t[4],d=t[5],u=t[6],S=t[7],r=t[8],L=t[9],C=t[10],s=t[11],g=We(i,o,n,a,d,u,S);return e=r?ve[r]:L?0:rt(C,s),[g,new Gt(e)]}var Be=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,Fe=/^(Monday|Tuesday|Wedsday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Oe=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Re(t){var e=t[1],i=t[2],a=t[3];return[We(e,t[4],a,i,t[5],t[6],t[7]),Gt.utcInstance]}function we(t){var e=t[1],i=t[2],a=t[3],n=t[4],o=t[5],d=t[6];return[We(e,t[7],i,a,n,o,d),Gt.utcInstance]}var Ee=Se(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,Ke),He=Se(/(\d{4})-?W(\d\d)(?:-?(\d))?/,Ke),Xe=Se(/(\d{4})-?(\d{3})/,Ke),be=Se(le),Ye=re(fe,pe,me),ke=re(ye,pe,me),Ge=re(Ie,pe),Ve=re(pe,me),xe=Se(/(\d{4})-(\d\d)-(\d\d)/,he),Ue=Se(ce),Qe=re(fe,pe,me,Me),Ze=re(pe,me,Me),Je={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:6048e5},days:{hours:24,minutes:1440,seconds:86400,milliseconds:864e5},hours:{minutes:60,seconds:3600,milliseconds:36e5},minutes:{seconds:60,milliseconds:6e4},seconds:{milliseconds:1e3}},je=Object.assign({years:{months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536e3,milliseconds:31536e6},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,milliseconds:78624e5},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592e3,milliseconds:2592e6}},Je),_e=365.2425,qe=30.436875,ze=Object.assign({years:{months:12,weeks:_e/7,days:_e,hours:24*_e,minutes:525949.2,seconds:525949.2*60,milliseconds:525949.2*60*1e3},quarters:{months:3,weeks:_e/28,days:_e/4,hours:24*_e/4,minutes:131487.3,seconds:525949.2*60/4,milliseconds:7889237999.999999},months:{weeks:qe/7,days:qe,hours:24*qe,minutes:43829.1,seconds:2629746,milliseconds:2629746e3}},Je),$e=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],ti=$e.slice(0).reverse();function ei(t,e,i){void 0===i&&(i=!1);var a={values:i?e.values:Object.assign({},t.values,e.values||{}),loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy};return new ni(a)}function ii(t,e,i,a,n){var o,d=t[n][i],u=e[i]/d,S=Math.sign(u)!==Math.sign(a[n])&&0!==a[n]&&Math.abs(u)<=1?(o=u)<0?Math.floor(o):Math.ceil(o):Math.trunc(u);a[n]+=S,e[i]-=S*d}function ai(t,e){ti.reduce((function(i,a){return G(e[a])?i:(i&&ii(t,e,i,e,a),a)}),null)}var ni=function(){function t(t){var e="longterm"===t.conversionAccuracy||!1;this.values=t.values,this.loc=t.loc||ue.create(),this.conversionAccuracy=e?"longterm":"casual",this.invalid=t.invalid||null,this.matrix=e?ze:je,this.isLuxonDuration=!0}t.fromMillis=function(e,i){return t.fromObject(Object.assign({milliseconds:e},i))},t.fromObject=function(e){if(null==e||"object"!=typeof e)throw new y("Duration.fromObject: argument expected to be an object, got "+(null===e?"null":typeof e));return new t({values:Ct(e,t.normalizeUnit,["locale","numberingSystem","conversionAccuracy","zone"]),loc:ue.fromObject(e),conversionAccuracy:e.conversionAccuracy})},t.fromISO=function(e,i){var a=Le(e,[Ne,Te])[0];if(a){var n=Object.assign(a,i);return t.fromObject(n)}return t.invalid("unparsable",'the input "'+e+"\" can't be parsed as ISO 8601")},t.invalid=function(e,i){if(void 0===i&&(i=null),!e)throw new y("need to specify a reason the Duration is invalid");var a=e instanceof Ft?e:new Ft(e,i);if(qt.throwOnInvalid)throw new g(a);return new t({invalid:a})},t.normalizeUnit=function(t){var e={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[t?t.toLowerCase():t];if(!e)throw new K(t);return e},t.isDuration=function(t){return t&&t.isLuxonDuration||!1};var e=t.prototype;return e.toFormat=function(t,e){void 0===e&&(e={});var i=Object.assign({},e,{floor:!1!==e.round&&!1!==e.floor});return this.isValid?Bt.create(this.loc,i).formatDurationFromString(this,t):"Invalid Duration"},e.toObject=function(t){if(void 0===t&&(t={}),!this.isValid)return{};var e=Object.assign({},this.values);return t.includeConfig&&(e.conversionAccuracy=this.conversionAccuracy,e.numberingSystem=this.loc.numberingSystem,e.locale=this.loc.locale),e},e.toISO=function(){if(!this.isValid)return null;var t="P";return 0!==this.years&&(t+=this.years+"Y"),0===this.months&&0===this.quarters||(t+=this.months+3*this.quarters+"M"),0!==this.weeks&&(t+=this.weeks+"W"),0!==this.days&&(t+=this.days+"D"),0===this.hours&&0===this.minutes&&0===this.seconds&&0===this.milliseconds||(t+="T"),0!==this.hours&&(t+=this.hours+"H"),0!==this.minutes&&(t+=this.minutes+"M"),0===this.seconds&&0===this.milliseconds||(t+=et(this.seconds+this.milliseconds/1e3,3)+"S"),"P"===t&&(t+="T0S"),t},e.toJSON=function(){return this.toISO()},e.toString=function(){return this.toISO()},e.valueOf=function(){return this.as("milliseconds")},e.plus=function(t){if(!this.isValid)return this;for(var e,i=oi(t),a={},n=r($e);!(e=n()).done;){var o=e.value;(_(i.values,o)||_(this.values,o))&&(a[o]=i.get(o)+this.get(o))}return ei(this,{values:a},!0)},e.minus=function(t){if(!this.isValid)return this;var e=oi(t);return this.plus(e.negate())},e.mapUnits=function(t){if(!this.isValid)return this;for(var e={},i=0,a=Object.keys(this.values);i<a.length;i++){var n=a[i];e[n]=Lt(t(this.values[n],n))}return ei(this,{values:e},!0)},e.get=function(e){return this[t.normalizeUnit(e)]},e.set=function(e){return this.isValid?ei(this,{values:Object.assign(this.values,Ct(e,t.normalizeUnit,[]))}):this},e.reconfigure=function(t){var e=void 0===t?{}:t,i=e.locale,a=e.numberingSystem,n=e.conversionAccuracy,o={loc:this.loc.clone({locale:i,numberingSystem:a})};return n&&(o.conversionAccuracy=n),ei(this,o)},e.as=function(t){return this.isValid?this.shiftTo(t).get(t):NaN},e.normalize=function(){if(!this.isValid)return this;var t=this.toObject();return ai(this.matrix,t),ei(this,{values:t},!0)},e.shiftTo=function(){for(var e=arguments.length,i=new Array(e),a=0;a<e;a++)i[a]=arguments[a];if(!this.isValid)return this;if(0===i.length)return this;i=i.map((function(e){return t.normalizeUnit(e)}));var n,o={},d={},u=this.toObject();ai(this.matrix,u);for(var S,L=r($e);!(S=L()).done;){var C=S.value;if(0<=i.indexOf(C)){n=C;var s=0;for(var g in d)s+=this.matrix[g][C]*d[g],d[g]=0;V(u[C])&&(s+=u[C]);var l=Math.trunc(s);for(var K in o[C]=l,d[C]=s-l,u)$e.indexOf(K)>$e.indexOf(C)&&ii(this.matrix,u,K,o,C)}else V(u[C])&&(d[C]=u[C])}for(var y in d)0!==d[y]&&(o[n]+=y===n?d[y]:d[y]/this.matrix[n][y]);return ei(this,{values:o},!0).normalize()},e.negate=function(){if(!this.isValid)return this;for(var t={},e=0,i=Object.keys(this.values);e<i.length;e++){var a=i[e];t[a]=-this.values[a]}return ei(this,{values:t},!0)},e.equals=function(t){if(!this.isValid||!t.isValid)return!1;if(!this.loc.equals(t.loc))return!1;for(var e,i=r($e);!(e=i()).done;){var a=e.value;if(this.values[a]!==t.values[a])return!1}return!0},i(t,[{key:"locale",get:function(){return this.isValid?this.loc.locale:null}},{key:"numberingSystem",get:function(){return this.isValid?this.loc.numberingSystem:null}},{key:"years",get:function(){return this.isValid?this.values.years||0:NaN}},{key:"quarters",get:function(){return this.isValid?this.values.quarters||0:NaN}},{key:"months",get:function(){return this.isValid?this.values.months||0:NaN}},{key:"weeks",get:function(){return this.isValid?this.values.weeks||0:NaN}},{key:"days",get:function(){return this.isValid?this.values.days||0:NaN}},{key:"hours",get:function(){return this.isValid?this.values.hours||0:NaN}},{key:"minutes",get:function(){return this.isValid?this.values.minutes||0:NaN}},{key:"seconds",get:function(){return this.isValid?this.values.seconds||0:NaN}},{key:"milliseconds",get:function(){return this.isValid?this.values.milliseconds||0:NaN}},{key:"isValid",get:function(){return null===this.invalid}},{key:"invalidReason",get:function(){return this.invalid?this.invalid.reason:null}},{key:"invalidExplanation",get:function(){return this.invalid?this.invalid.explanation:null}}]),t}();function oi(t){if(V(t))return ni.fromMillis(t);if(ni.isDuration(t))return t;if("object"==typeof t)return ni.fromObject(t);throw new y("Unknown duration argument "+t+" of type "+typeof t)}var di="Invalid Interval",ui=function(){function t(t){this.s=t.start,this.e=t.end,this.invalid=t.invalid||null,this.isLuxonInterval=!0}t.invalid=function(e,i){if(void 0===i&&(i=null),!e)throw new y("need to specify a reason the Interval is invalid");var a=e instanceof Ft?e:new Ft(e,i);if(qt.throwOnInvalid)throw new s(a);return new t({invalid:a})},t.fromDateTimes=function(e,i){var a,n,o=ia(e),d=ia(i),u=(n=d,(a=o)&&a.isValid?n&&n.isValid?n<a?ui.invalid("end before start","The end of an interval must be after its start, but you had start="+a.toISO()+" and end="+n.toISO()):null:ui.invalid("missing or invalid end"):ui.invalid("missing or invalid start"));return null==u?new t({start:o,end:d}):u},t.after=function(e,i){var a=oi(i),n=ia(e);return t.fromDateTimes(n,n.plus(a))},t.before=function(e,i){var a=oi(i),n=ia(e);return t.fromDateTimes(n.minus(a),n)},t.fromISO=function(e,i){var a=(e||"").split("/",2),n=a[0],o=a[1];if(n&&o){var d=ea.fromISO(n,i),u=ea.fromISO(o,i);if(d.isValid&&u.isValid)return t.fromDateTimes(d,u);if(d.isValid){var S=ni.fromISO(o,i);if(S.isValid)return t.after(d,S)}else if(u.isValid){var r=ni.fromISO(n,i);if(r.isValid)return t.before(u,r)}}return t.invalid("unparsable",'the input "'+e+"\" can't be parsed as ISO 8601")},t.isInterval=function(t){return t&&t.isLuxonInterval||!1};var e=t.prototype;return e.length=function(t){return void 0===t&&(t="milliseconds"),this.isValid?this.toDuration.apply(this,[t]).get(t):NaN},e.count=function(t){if(void 0===t&&(t="milliseconds"),!this.isValid)return NaN;var e=this.start.startOf(t),i=this.end.startOf(t);return Math.floor(i.diff(e,t).get(t))+1},e.hasSame=function(t){return!!this.isValid&&this.e.minus(1).hasSame(this.s,t)},e.isEmpty=function(){return this.s.valueOf()===this.e.valueOf()},e.isAfter=function(t){return!!this.isValid&&this.s>t},e.isBefore=function(t){return!!this.isValid&&this.e<=t},e.contains=function(t){return!!this.isValid&&this.s<=t&&this.e>t},e.set=function(e){var i=void 0===e?{}:e,a=i.start,n=i.end;return this.isValid?t.fromDateTimes(a||this.s,n||this.e):this},e.splitAt=function(){var e=this;if(!this.isValid)return[];for(var i=arguments.length,a=new Array(i),n=0;n<i;n++)a[n]=arguments[n];for(var o=a.map(ia).filter((function(t){return e.contains(t)})).sort(),d=[],u=this.s,S=0;u<this.e;){var r=o[S]||this.e,L=+r>+this.e?this.e:r;d.push(t.fromDateTimes(u,L)),u=L,S+=1}return d},e.splitBy=function(e){var i=oi(e);if(!this.isValid||!i.isValid||0===i.as("milliseconds"))return[];for(var a,n,o=this.s,d=[];o<this.e;)n=+(a=o.plus(i))>+this.e?this.e:a,d.push(t.fromDateTimes(o,n)),o=n;return d},e.divideEqually=function(t){return this.isValid?this.splitBy(this.length()/t).slice(0,t):[]},e.overlaps=function(t){return this.e>t.s&&this.s<t.e},e.abutsStart=function(t){return!!this.isValid&&+this.e==+t.s},e.abutsEnd=function(t){return!!this.isValid&&+t.e==+this.s},e.engulfs=function(t){return!!this.isValid&&this.s<=t.s&&this.e>=t.e},e.equals=function(t){return!(!this.isValid||!t.isValid)&&this.s.equals(t.s)&&this.e.equals(t.e)},e.intersection=function(e){if(!this.isValid)return this;var i=this.s>e.s?this.s:e.s,a=this.e<e.e?this.e:e.e;return a<i?null:t.fromDateTimes(i,a)},e.union=function(e){if(!this.isValid)return this;var i=this.s<e.s?this.s:e.s,a=this.e>e.e?this.e:e.e;return t.fromDateTimes(i,a)},t.merge=function(t){var e=t.sort((function(t,e){return t.s-e.s})).reduce((function(t,e){var i=t[0],a=t[1];return a?a.overlaps(e)||a.abutsStart(e)?[i,a.union(e)]:[i.concat([a]),e]:[i,e]}),[[],null]),i=e[0],a=e[1];return a&&i.push(a),i},t.xor=function(e){for(var i,a,n=null,o=0,d=[],u=e.map((function(t){return[{time:t.s,type:"s"},{time:t.e,type:"e"}]})),S=r((i=Array.prototype).concat.apply(i,u).sort((function(t,e){return t.time-e.time})));!(a=S()).done;){var L=a.value;n=1===(o+="s"===L.type?1:-1)?L.time:(n&&+n!=+L.time&&d.push(t.fromDateTimes(n,L.time)),null)}return t.merge(d)},e.difference=function(){for(var e=this,i=arguments.length,a=new Array(i),n=0;n<i;n++)a[n]=arguments[n];return t.xor([this].concat(a)).map((function(t){return e.intersection(t)})).filter((function(t){return t&&!t.isEmpty()}))},e.toString=function(){return this.isValid?"["+this.s.toISO()+" "+this.e.toISO()+")":di},e.toISO=function(t){return this.isValid?this.s.toISO(t)+"/"+this.e.toISO(t):di},e.toISODate=function(){return this.isValid?this.s.toISODate()+"/"+this.e.toISODate():di},e.toISOTime=function(t){return this.isValid?this.s.toISOTime(t)+"/"+this.e.toISOTime(t):di},e.toFormat=function(t,e){var i=(void 0===e?{}:e).separator,a=void 0===i?" ":i;return this.isValid?""+this.s.toFormat(t)+a+this.e.toFormat(t):di},e.toDuration=function(t,e){return this.isValid?this.e.diff(this.s,t,e):ni.invalid(this.invalidReason)},e.mapEndpoints=function(e){return t.fromDateTimes(e(this.s),e(this.e))},i(t,[{key:"start",get:function(){return this.isValid?this.s:null}},{key:"end",get:function(){return this.isValid?this.e:null}},{key:"isValid",get:function(){return null===this.invalidReason}},{key:"invalidReason",get:function(){return this.invalid?this.invalid.reason:null}},{key:"invalidExplanation",get:function(){return this.invalid?this.invalid.explanation:null}}]),t}(),Si=function(){function t(){}return t.hasDST=function(t){void 0===t&&(t=qt.defaultZone);var e=ea.local().setZone(t).set({month:12});return!t.universal&&e.offset!==e.set({month:6}).offset},t.isValidIANAZone=function(t){return Yt.isValidSpecifier(t)&&Yt.isValidZone(t)},t.normalizeZone=function(t){return xt(t,qt.defaultZone)},t.months=function(t,e){void 0===t&&(t="long");var i=void 0===e?{}:e,a=i.locale,n=void 0===a?null:a,o=i.numberingSystem,d=void 0===o?null:o,u=i.outputCalendar,S=void 0===u?"gregory":u;return ue.create(n,d,S).months(t)},t.monthsFormat=function(t,e){void 0===t&&(t="long");var i=void 0===e?{}:e,a=i.locale,n=void 0===a?null:a,o=i.numberingSystem,d=void 0===o?null:o,u=i.outputCalendar,S=void 0===u?"gregory":u;return ue.create(n,d,S).months(t,!0)},t.weekdays=function(t,e){void 0===t&&(t="long");var i=void 0===e?{}:e,a=i.locale,n=void 0===a?null:a,o=i.numberingSystem,d=void 0===o?null:o;return ue.create(n,d,null).weekdays(t)},t.weekdaysFormat=function(t,e){void 0===t&&(t="long");var i=void 0===e?{}:e,a=i.locale,n=void 0===a?null:a,o=i.numberingSystem,d=void 0===o?null:o;return ue.create(n,d,null).weekdays(t,!0)},t.meridiems=function(t){var e=(void 0===t?{}:t).locale,i=void 0===e?null:e;return ue.create(i).meridiems()},t.eras=function(t,e){void 0===t&&(t="short");var i=(void 0===e?{}:e).locale,a=void 0===i?null:i;return ue.create(a,null,"gregory").eras(t)},t.features=function(){var t=!1,e=!1,i=!1,a=!1;if(U()){t=!0,e=Q(),a=Z();try{i="America/New_York"===new Intl.DateTimeFormat("en",{timeZone:"America/New_York"}).resolvedOptions().timeZone}catch(t){i=!1}}return{intl:t,intlTokens:e,zones:i,relative:a}},t}();function ri(t,e){function i(t){return t.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf()}var a=i(e)-i(t);return Math.floor(ni.fromMillis(a).as("days"))}var Li={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[-৯]",deva:"[-९]",fullwide:"[-]",gujr:"[-૯]",hanidec:"[|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[-೯]",laoo:"[-໙]",limb:"[᥆-᥏]",mlym:"[-൯]",mong:"[᠐-᠙]",mymr:"[-၉]",orya:"[-୯]",tamldec:"[-௯]",telu:"[-౯]",thai:"[-๙]",tibt:"[༠-༩]",latn:"\\d"},Ci={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},si=Li.hanidec.replace(/[\[|\]]/g,"").split("");function gi(t,e){var i=t.numberingSystem;return void 0===e&&(e=""),new RegExp(""+Li[i||"latn"]+e)}function li(t,e){return void 0===e&&(e=function(t){return t}),{regex:t,deser:function(t){var i=t[0];return e(function(t){var e=parseInt(t,10);if(isNaN(e)){e="";for(var i=0;i<t.length;i++){var a=t.charCodeAt(i);if(-1!==t[i].search(Li.hanidec))e+=si.indexOf(t[i]);else for(var n in Ci){var o=Ci[n],d=o[0],u=o[1];d<=a&&a<=u&&(e+=a-d)}}return parseInt(e,10)}return e}(i))}}}function Ki(t){return t.replace(/\./,"\\.?")}function yi(t){return t.replace(/\./,"").toLowerCase()}function Ii(t,e){return null===t?null:{regex:RegExp(t.map(Ki).join("|")),deser:function(i){var a=i[0];return t.findIndex((function(t){return yi(a)===yi(t)}))+e}}}function ci(t,e){return{regex:t,deser:function(t){return rt(t[1],t[2])},groups:e}}function hi(t){return{regex:t,deser:function(t){return t[0]}}}var Ai={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour:{numeric:"h","2-digit":"hh"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"}},fi=null;function pi(t,e,i){var a,n,o,d=(a=Bt.parseFormat(i),n=t,(o=Array.prototype).concat.apply(o,a.map((function(t){return function(t,e){if(t.literal)return t;var i=Bt.macroTokenToFormatOpts(t.val);if(!i)return t;var a=Bt.create(e,i).formatDateTimeParts(fi=fi||ea.fromMillis(1555555555555)).map((function(t){return function(t,e){var i=t.type,a=t.value;if("literal"===i)return{literal:!0,val:a};var n=e[i],o=Ai[i];return"object"==typeof o&&(o=o[n]),o?{literal:!1,val:o}:void 0}(t,i)}));return a.includes(void 0)?t:a}(t,n)})))),u=d.map((function(e){return function(t,e){function i(t){return{regex:RegExp(t.val.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")),deser:function(t){return t[0]},literal:!0}}var a=gi(e),n=gi(e,"{2}"),o=gi(e,"{3}"),d=gi(e,"{4}"),u=gi(e,"{6}"),S=gi(e,"{1,2}"),r=gi(e,"{1,3}"),L=gi(e,"{1,6}"),C=gi(e,"{1,9}"),s=gi(e,"{2,4}"),g=gi(e,"{4,6}"),l=function(l){if(t.literal)return i(l);switch(l.val){case"G":return Ii(e.eras("short",!1),0);case"GG":return Ii(e.eras("long",!1),0);case"y":return li(L);case"yy":return li(s,ut);case"yyyy":return li(d);case"yyyyy":return li(g);case"yyyyyy":return li(u);case"M":return li(S);case"MM":return li(n);case"MMM":return Ii(e.months("short",!0,!1),1);case"MMMM":return Ii(e.months("long",!0,!1),1);case"L":return li(S);case"LL":return li(n);case"LLL":return Ii(e.months("short",!1,!1),1);case"LLLL":return Ii(e.months("long",!1,!1),1);case"d":return li(S);case"dd":return li(n);case"o":return li(r);case"ooo":return li(o);case"HH":return li(n);case"H":return li(S);case"hh":return li(n);case"h":return li(S);case"mm":return li(n);case"m":case"q":return li(S);case"qq":return li(n);case"s":return li(S);case"ss":return li(n);case"S":return li(r);case"SSS":return li(o);case"u":return hi(C);case"a":return Ii(e.meridiems(),0);case"kkkk":return li(d);case"kk":return li(s,ut);case"W":return li(S);case"WW":return li(n);case"E":case"c":return li(a);case"EEE":return Ii(e.weekdays("short",!1,!1),1);case"EEEE":return Ii(e.weekdays("long",!1,!1),1);case"ccc":return Ii(e.weekdays("short",!0,!1),1);case"cccc":return Ii(e.weekdays("long",!0,!1),1);case"Z":case"ZZ":return ci(new RegExp("([+-]"+S.source+")(?::("+n.source+"))?"),2);case"ZZZ":return ci(new RegExp("([+-]"+S.source+")("+n.source+")?"),2);case"z":return hi(/[a-z_+-/]{1,256}?/i);default:return i(l)}}(t)||{invalidReason:"missing Intl.DateTimeFormat.formatToParts support"};return l.token=t,l}(e,t)})),S=u.find((function(t){return t.invalidReason}));if(S)return{input:e,tokens:d,invalidReason:S.invalidReason};var r,L,C,s=["^"+(C=u).map((function(t){return t.regex})).reduce((function(t,e){return t+"("+e.source+")"}),"")+"$",C],g=s[1],K=RegExp(s[0],"i"),y=function(t,e,i){var a=t.match(e);if(a){var n={},o=1;for(var d in i)if(_(i,d)){var u=i[d],S=u.groups?u.groups+1:1;!u.literal&&u.token&&(n[u.token.val[0]]=u.deser(a.slice(o,o+S))),o+=S}return[a,n]}return[a,{}]}(e,K,g),I=y[0],c=y[1],h=c?(L=G((r=c).Z)?G(r.z)?null:Yt.create(r.z):new Gt(r.Z),G(r.q)||(r.M=3*(r.q-1)+1),G(r.h)||(r.h<12&&1===r.a?r.h+=12:12===r.h&&0===r.a&&(r.h=0)),0===r.G&&r.y&&(r.y=-r.y),G(r.u)||(r.S=tt(r.u)),[Object.keys(r).reduce((function(t,e){var i=function(t){switch(t){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}}(e);return i&&(t[i]=r[e]),t}),{}),L]):[null,null],A=h[0],f=h[1];if(_(c,"a")&&_(c,"H"))throw new l("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:d,regex:K,rawMatches:I,matches:c,result:A,zone:f}}var mi=[0,31,59,90,120,151,181,212,243,273,304,334],Mi=[0,31,60,91,121,152,182,213,244,274,305,335];function Ni(t,e){return new Ft("unit out of range","you specified "+e+" (of type "+typeof e+") as a "+t+", which is invalid")}function Ti(t,e,i){var a=new Date(Date.UTC(t,e-1,i)).getUTCDay();return 0===a?7:a}function vi(t,e,i){return i+(it(t)?Mi:mi)[e-1]}function Wi(t,e){var i=it(t)?Mi:mi,a=i.findIndex((function(t){return t<e}));return{month:a+1,day:e-i[a]}}function Pi(t){var e,i=t.year,a=t.month,n=t.day,o=vi(i,a,n),d=Ti(i,a,n),u=Math.floor((o-d+10)/7);return u<1?u=dt(e=i-1):u>dt(i)?(e=i+1,u=1):e=i,Object.assign({weekYear:e,weekNumber:u,weekday:d},gt(t))}function Di(t){var e,i=t.weekYear,a=t.weekNumber,n=t.weekday,o=Ti(i,1,4),d=at(i),u=7*a+n-o-3;u<1?u+=at(e=i-1):d<u?(e=i+1,u-=at(i)):e=i;var S=Wi(e,u),r=S.month,L=S.day;return Object.assign({year:e,month:r,day:L},gt(t))}function Bi(t){var e=t.year,i=vi(e,t.month,t.day);return Object.assign({year:e,ordinal:i},gt(t))}function Fi(t){var e=t.year,i=Wi(e,t.ordinal),a=i.month,n=i.day;return Object.assign({year:e,month:a,day:n},gt(t))}function Oi(t){var e=x(t.year),i=q(t.month,1,12),a=q(t.day,1,nt(t.year,t.month));return e?i?!a&&Ni("day",t.day):Ni("month",t.month):Ni("year",t.year)}function Ri(t){var e=t.hour,i=t.minute,a=t.second,n=t.millisecond,o=q(e,0,23)||24===e&&0===i&&0===a&&0===n,d=q(i,0,59),u=q(a,0,59),S=q(n,0,999);return o?d?u?!S&&Ni("millisecond",n):Ni("second",a):Ni("minute",i):Ni("hour",e)}var wi="Invalid DateTime";function Ei(t){return new Ft("unsupported zone",'the zone "'+t.name+'" is not supported')}function Hi(t){return null===t.weekData&&(t.weekData=Pi(t.c)),t.weekData}function Xi(t,e){var i={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new ea(Object.assign({},i,e,{old:i}))}function bi(t,e,i){var a=t-60*e*1e3,n=i.offset(a);if(e===n)return[a,e];a-=60*(n-e)*1e3;var o=i.offset(a);return n===o?[a,n]:[t-60*Math.min(n,o)*1e3,Math.max(n,o)]}function Yi(t,e){var i=new Date(t+=60*e*1e3);return{year:i.getUTCFullYear(),month:i.getUTCMonth()+1,day:i.getUTCDate(),hour:i.getUTCHours(),minute:i.getUTCMinutes(),second:i.getUTCSeconds(),millisecond:i.getUTCMilliseconds()}}function ki(t,e,i){return bi(ot(t),e,i)}function Gi(t,e){var i=Object.keys(e.values);-1===i.indexOf("milliseconds")&&i.push("milliseconds"),e=e.shiftTo.apply(e,i);var a=t.o,n=t.c.year+e.years,o=t.c.month+e.months+3*e.quarters,d=Object.assign({},t.c,{year:n,month:o,day:Math.min(t.c.day,nt(n,o))+e.days+7*e.weeks}),u=ni.fromObject({hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),S=bi(ot(d),a,t.zone),r=S[0],L=S[1];return 0!==u&&(r+=u,L=t.zone.offset(r)),{ts:r,o:L}}function Vi(t,e,i,a,n){var o=i.setZone,d=i.zone;if(t&&0!==Object.keys(t).length){var u=e||d,S=ea.fromObject(Object.assign(t,i,{zone:u,setZone:void 0}));return o?S:S.setZone(d)}return ea.invalid(new Ft("unparsable",'the input "'+n+"\" can't be parsed as "+a))}function xi(t,e,i){return void 0===i&&(i=!0),t.isValid?Bt.create(ue.create("en-US"),{allowZ:i,forceSimple:!0}).formatDateTimeFromString(t,e):null}function Ui(t,e){var i=e.suppressSeconds,a=void 0!==i&&i,n=e.suppressMilliseconds,o=void 0!==n&&n,d=e.includeOffset,u=e.includeZone,S=void 0!==u&&u,r=e.spaceZone,L=void 0!==r&&r,C=e.format,s=void 0===C?"extended":C,g="basic"===s?"HHmm":"HH:mm";return a&&0===t.second&&0===t.millisecond||(g+="basic"===s?"ss":":ss",o&&0===t.millisecond||(g+=".SSS")),(S||d)&&L&&(g+=" "),S?g+="z":d&&(g+="basic"===s?"ZZZ":"ZZ"),xi(t,g)}var Qi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Zi={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Ji={ordinal:1,hour:0,minute:0,second:0,millisecond:0},ji=["year","month","day","hour","minute","second","millisecond"],_i=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],qi=["year","ordinal","hour","minute","second","millisecond"];function zi(t){var e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new K(t);return e}function $i(t,e){for(var i,a=r(ji);!(i=a()).done;){var n=i.value;G(t[n])&&(t[n]=Qi[n])}var o=Oi(t)||Ri(t);if(o)return ea.invalid(o);var d=qt.now(),u=ki(t,e.offset(d),e),S=u[0],L=u[1];return new ea({ts:S,zone:e,o:L})}function ta(t,e,i){function a(t,a){return t=et(t,o||i.calendary?0:2,!0),e.loc.clone(i).relFormatter(i).format(t,a)}function n(a){return i.calendary?e.hasSame(t,a)?0:e.startOf(a).diff(t.startOf(a),a).get(a):e.diff(t,a).get(a)}var o=!!G(i.round)||i.round;if(i.unit)return a(n(i.unit),i.unit);for(var d,u=r(i.units);!(d=u()).done;){var S=d.value,L=n(S);if(1<=Math.abs(L))return a(L,S)}return a(0,i.units[i.units.length-1])}var ea=function(){function t(t){var e=t.zone||qt.defaultZone,i=t.invalid||(Number.isNaN(t.ts)?new Ft("invalid input"):null)||(e.isValid?null:Ei(e));this.ts=G(t.ts)?qt.now():t.ts;var a=null,n=null;if(!i)if(t.old&&t.old.ts===this.ts&&t.old.zone.equals(e)){var o=[t.old.c,t.old.o];a=o[0],n=o[1]}else{var d=e.offset(this.ts);a=Yi(this.ts,d),a=(i=Number.isNaN(a.year)?new Ft("invalid input"):null)?null:a,n=i?null:d}this._zone=e,this.loc=t.loc||ue.create(),this.invalid=i,this.weekData=null,this.c=a,this.o=n,this.isLuxonDateTime=!0}t.local=function(e,i,a,n,o,d,u){return G(e)?new t({ts:qt.now()}):$i({year:e,month:i,day:a,hour:n,minute:o,second:d,millisecond:u},qt.defaultZone)},t.utc=function(e,i,a,n,o,d,u){return G(e)?new t({ts:qt.now(),zone:Gt.utcInstance}):$i({year:e,month:i,day:a,hour:n,minute:o,second:d,millisecond:u},Gt.utcInstance)},t.fromJSDate=function(e,i){void 0===i&&(i={});var a,n=(a=e,"[object Date]"===Object.prototype.toString.call(a)?e.valueOf():NaN);if(Number.isNaN(n))return t.invalid("invalid input");var o=xt(i.zone,qt.defaultZone);return o.isValid?new t({ts:n,zone:o,loc:ue.fromObject(i)}):t.invalid(Ei(o))},t.fromMillis=function(e,i){if(void 0===i&&(i={}),V(e))return e<-864e13||864e13<e?t.invalid("Timestamp out of range"):new t({ts:e,zone:xt(i.zone,qt.defaultZone),loc:ue.fromObject(i)});throw new y("fromMillis requires a numerical input, but received a "+typeof e+" with value "+e)},t.fromSeconds=function(e,i){if(void 0===i&&(i={}),V(e))return new t({ts:1e3*e,zone:xt(i.zone,qt.defaultZone),loc:ue.fromObject(i)});throw new y("fromSeconds requires a numerical input")},t.fromObject=function(e){var i=xt(e.zone,qt.defaultZone);if(!i.isValid)return t.invalid(Ei(i));var a=qt.now(),n=i.offset(a),o=Ct(e,zi,["zone","locale","outputCalendar","numberingSystem"]),d=!G(o.ordinal),u=!G(o.year),S=!G(o.month)||!G(o.day),L=u||S,C=o.weekYear||o.weekNumber,s=ue.fromObject(e);if((L||d)&&C)throw new l("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(S&&d)throw new l("Can't mix ordinal dates with month/day");var g,K,y=C||o.weekday&&!L,I=Yi(a,n);y?(g=_i,K=Zi,I=Pi(I)):d?(g=qi,K=Ji,I=Bi(I)):(g=ji,K=Qi);for(var c,h=!1,A=r(g);!(c=A()).done;){var f=c.value;G(o[f])?o[f]=h?K[f]:I[f]:h=!0}var p,m,M,N,T,v,W,P=(y?(T=x((N=o).weekYear),v=q(N.weekNumber,1,dt(N.weekYear)),W=q(N.weekday,1,7),T?v?!W&&Ni("weekday",N.weekday):Ni("week",N.week):Ni("weekYear",N.weekYear)):d?(m=x((p=o).year),M=q(p.ordinal,1,at(p.year)),m?!M&&Ni("ordinal",p.ordinal):Ni("year",p.year)):Oi(o))||Ri(o);if(P)return t.invalid(P);var D=ki(y?Di(o):d?Fi(o):o,n,i),B=new t({ts:D[0],zone:i,o:D[1],loc:s});return o.weekday&&L&&e.weekday!==B.weekday?t.invalid("mismatched weekday","you can't specify both a weekday of "+o.weekday+" and a date of "+B.toISO()):B},t.fromISO=function(t,e){void 0===e&&(e={});var i=Le(t,[Ee,Ye],[He,ke],[Xe,Ge],[be,Ve]);return Vi(i[0],i[1],e,"ISO 8601",t)},t.fromRFC2822=function(t,e){void 0===e&&(e={});var i=Le(t.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim(),[Pe,De]);return Vi(i[0],i[1],e,"RFC 2822",t)},t.fromHTTP=function(t,e){void 0===e&&(e={});var i=Le(t,[Be,Re],[Fe,Re],[Oe,we]);return Vi(i[0],i[1],e,"HTTP",e)},t.fromFormat=function(e,i,a){if(void 0===a&&(a={}),G(e)||G(i))throw new y("fromFormat requires an input string and a format");var n,o=a.locale,d=void 0===o?null:o,u=a.numberingSystem,S=void 0===u?null:u,r=[(n=pi(ue.fromOpts({locale:d,numberingSystem:S,defaultToEN:!0}),e,i)).result,n.zone,n.invalidReason],L=r[0],C=r[1],s=r[2];return s?t.invalid(s):Vi(L,C,a,"format "+i,e)},t.fromString=function(e,i,a){return void 0===a&&(a={}),t.fromFormat(e,i,a)},t.fromSQL=function(t,e){void 0===e&&(e={});var i=Le(t,[xe,Qe],[Ue,Ze]);return Vi(i[0],i[1],e,"SQL",t)},t.invalid=function(e,i){if(void 0===i&&(i=null),!e)throw new y("need to specify a reason the DateTime is invalid");var a=e instanceof Ft?e:new Ft(e,i);if(qt.throwOnInvalid)throw new C(a);return new t({invalid:a})},t.isDateTime=function(t){return t&&t.isLuxonDateTime||!1};var e=t.prototype;return e.get=function(t){return this[t]},e.resolvedLocaleOpts=function(t){void 0===t&&(t={});var e=Bt.create(this.loc.clone(t),t).resolvedOptions(this);return{locale:e.locale,numberingSystem:e.numberingSystem,outputCalendar:e.calendar}},e.toUTC=function(t,e){return void 0===t&&(t=0),void 0===e&&(e={}),this.setZone(Gt.instance(t),e)},e.toLocal=function(){return this.setZone(qt.defaultZone)},e.setZone=function(e,i){var a=void 0===i?{}:i,n=a.keepLocalTime,o=void 0!==n&&n,d=a.keepCalendarTime,u=void 0!==d&&d;if((e=xt(e,qt.defaultZone)).equals(this.zone))return this;if(e.isValid){var S=this.ts;if(o||u){var r=e.offset(this.ts);S=ki(this.toObject(),r,e)[0]}return Xi(this,{ts:S,zone:e})}return t.invalid(Ei(e))},e.reconfigure=function(t){var e=void 0===t?{}:t,i=e.locale,a=e.numberingSystem,n=e.outputCalendar;return Xi(this,{loc:this.loc.clone({locale:i,numberingSystem:a,outputCalendar:n})})},e.setLocale=function(t){return this.reconfigure({locale:t})},e.set=function(t){if(!this.isValid)return this;var e,i=Ct(t,zi,[]);G(i.weekYear)&&G(i.weekNumber)&&G(i.weekday)?G(i.ordinal)?(e=Object.assign(this.toObject(),i),G(i.day)&&(e.day=Math.min(nt(e.year,e.month),e.day))):e=Fi(Object.assign(Bi(this.c),i)):e=Di(Object.assign(Pi(this.c),i));var a=ki(e,this.o,this.zone);return Xi(this,{ts:a[0],o:a[1]})},e.plus=function(t){return this.isValid?Xi(this,Gi(this,oi(t))):this},e.minus=function(t){return this.isValid?Xi(this,Gi(this,oi(t).negate())):this},e.startOf=function(t){if(!this.isValid)return this;var e={},i=ni.normalizeUnit(t);switch(i){case"years":e.month=1;case"quarters":case"months":e.day=1;case"weeks":case"days":e.hour=0;case"hours":e.minute=0;case"minutes":e.second=0;case"seconds":e.millisecond=0}if("weeks"===i&&(e.weekday=1),"quarters"===i){var a=Math.ceil(this.month/3);e.month=3*(a-1)+1}return this.set(e)},e.endOf=function(t){var e;return this.isValid?this.plus(((e={})[t]=1,e)).startOf(t).minus(1):this},e.toFormat=function(t,e){return void 0===e&&(e={}),this.isValid?Bt.create(this.loc.redefaultToEN(e)).formatDateTimeFromString(this,t):wi},e.toLocaleString=function(t){return void 0===t&&(t=f),this.isValid?Bt.create(this.loc.clone(t),t).formatDateTime(this):wi},e.toLocaleParts=function(t){return void 0===t&&(t={}),this.isValid?Bt.create(this.loc.clone(t),t).formatDateTimeParts(this):[]},e.toISO=function(t){return void 0===t&&(t={}),this.isValid?this.toISODate(t)+"T"+this.toISOTime(t):null},e.toISODate=function(t){var e=(void 0===t?{}:t).format,i="basic"===(void 0===e?"extended":e)?"yyyyMMdd":"yyyy-MM-dd";return 9999<this.year&&(i="+"+i),xi(this,i)},e.toISOWeekDate=function(){return xi(this,"kkkk-'W'WW-c")},e.toISOTime=function(t){var e=void 0===t?{}:t,i=e.suppressMilliseconds,a=void 0!==i&&i,n=e.suppressSeconds,o=void 0!==n&&n,d=e.includeOffset,u=void 0===d||d,S=e.format;return Ui(this,{suppressSeconds:o,suppressMilliseconds:a,includeOffset:u,format:void 0===S?"extended":S})},e.toRFC2822=function(){return xi(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)},e.toHTTP=function(){return xi(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")},e.toSQLDate=function(){return xi(this,"yyyy-MM-dd")},e.toSQLTime=function(t){var e=void 0===t?{}:t,i=e.includeOffset,a=void 0===i||i,n=e.includeZone;return Ui(this,{includeOffset:a,includeZone:void 0!==n&&n,spaceZone:!0})},e.toSQL=function(t){return void 0===t&&(t={}),this.isValid?this.toSQLDate()+" "+this.toSQLTime(t):null},e.toString=function(){return this.isValid?this.toISO():wi},e.valueOf=function(){return this.toMillis()},e.toMillis=function(){return this.isValid?this.ts:NaN},e.toSeconds=function(){return this.isValid?this.ts/1e3:NaN},e.toJSON=function(){return this.toISO()},e.toBSON=function(){return this.toJSDate()},e.toObject=function(t){if(void 0===t&&(t={}),!this.isValid)return{};var e=Object.assign({},this.c);return t.includeConfig&&(e.outputCalendar=this.outputCalendar,e.numberingSystem=this.loc.numberingSystem,e.locale=this.loc.locale),e},e.toJSDate=function(){return new Date(this.isValid?this.ts:NaN)},e.diff=function(t,e,i){if(void 0===e&&(e="milliseconds"),void 0===i&&(i={}),!this.isValid||!t.isValid)return ni.invalid(this.invalid||t.invalid,"created by diffing an invalid DateTime");var a,n=Object.assign({locale:this.locale,numberingSystem:this.numberingSystem},i),o=(a=e,(Array.isArray(a)?a:[a]).map(ni.normalizeUnit)),d=t.valueOf()>this.valueOf(),u=function(t,e,i,a){var n,o=function(t,e,i){for(var a,n,o={},d=0,u=[["years",function(t,e){return e.year-t.year}],["months",function(t,e){return e.month-t.month+12*(e.year-t.year)}],["weeks",function(t,e){var i=ri(t,e);return(i-i%7)/7}],["days",ri]];d<u.length;d++){var S=u[d],r=S[0],L=S[1];if(0<=i.indexOf(r)){var C;a=r;var s,g=L(t,e);e<(n=t.plus(((C={})[r]=g,C)))?(t=t.plus(((s={})[r]=g-1,s)),--g):t=n,o[r]=g}}return[t,o,n,a]}(t,e,i),d=o[0],u=o[1],S=o[2],r=o[3],L=e-d,C=i.filter((function(t){return 0<=["hours","minutes","seconds","milliseconds"].indexOf(t)}));0===C.length&&(S<e&&(S=d.plus(((n={})[r]=1,n))),S!==d&&(u[r]=(u[r]||0)+L/(S-d)));var s,g=ni.fromObject(Object.assign(u,a));return 0<C.length?(s=ni.fromMillis(L,a)).shiftTo.apply(s,C).plus(g):g}(d?this:t,d?t:this,o,n);return d?u.negate():u},e.diffNow=function(e,i){return void 0===e&&(e="milliseconds"),void 0===i&&(i={}),this.diff(t.local(),e,i)},e.until=function(t){return this.isValid?ui.fromDateTimes(this,t):this},e.hasSame=function(t,e){if(!this.isValid)return!1;if("millisecond"===e)return this.valueOf()===t.valueOf();var i=t.valueOf();return this.startOf(e)<=i&&i<=this.endOf(e)},e.equals=function(t){return this.isValid&&t.isValid&&this.valueOf()===t.valueOf()&&this.zone.equals(t.zone)&&this.loc.equals(t.loc)},e.toRelative=function(e){if(void 0===e&&(e={}),!this.isValid)return null;var i=e.base||t.fromObject({zone:this.zone}),a=e.padding?this<i?-e.padding:e.padding:0;return ta(i,this.plus(a),Object.assign(e,{numeric:"always",units:["years","months","days","hours","minutes","seconds"]}))},e.toRelativeCalendar=function(e){return void 0===e&&(e={}),this.isValid?ta(e.base||t.fromObject({zone:this.zone}),this,Object.assign(e,{numeric:"auto",units:["years","months","days"],calendary:!0})):null},t.min=function(){for(var e=arguments.length,i=new Array(e),a=0;a<e;a++)i[a]=arguments[a];if(!i.every(t.isDateTime))throw new y("min requires all arguments be DateTimes");return J(i,(function(t){return t.valueOf()}),Math.min)},t.max=function(){for(var e=arguments.length,i=new Array(e),a=0;a<e;a++)i[a]=arguments[a];if(!i.every(t.isDateTime))throw new y("max requires all arguments be DateTimes");return J(i,(function(t){return t.valueOf()}),Math.max)},t.fromFormatExplain=function(t,e,i){void 0===i&&(i={});var a=i.locale,n=void 0===a?null:a,o=i.numberingSystem,d=void 0===o?null:o;return pi(ue.fromOpts({locale:n,numberingSystem:d,defaultToEN:!0}),t,e)},t.fromStringExplain=function(e,i,a){return void 0===a&&(a={}),t.fromFormatExplain(e,i,a)},i(t,[{key:"isValid",get:function(){return null===this.invalid}},{key:"invalidReason",get:function(){return this.invalid?this.invalid.reason:null}},{key:"invalidExplanation",get:function(){return this.invalid?this.invalid.explanation:null}},{key:"locale",get:function(){return this.isValid?this.loc.locale:null}},{key:"numberingSystem",get:function(){return this.isValid?this.loc.numberingSystem:null}},{key:"outputCalendar",get:function(){return this.isValid?this.loc.outputCalendar:null}},{key:"zone",get:function(){return this._zone}},{key:"zoneName",get:function(){return this.isValid?this.zone.name:null}},{key:"year",get:function(){return this.isValid?this.c.year:NaN}},{key:"quarter",get:function(){return this.isValid?Math.ceil(this.c.month/3):NaN}},{key:"month",get:function(){return this.isValid?this.c.month:NaN}},{key:"day",get:function(){return this.isValid?this.c.day:NaN}},{key:"hour",get:function(){return this.isValid?this.c.hour:NaN}},{key:"minute",get:function(){return this.isValid?this.c.minute:NaN}},{key:"second",get:function(){return this.isValid?this.c.second:NaN}},{key:"millisecond",get:function(){return this.isValid?this.c.millisecond:NaN}},{key:"weekYear",get:function(){return this.isValid?Hi(this).weekYear:NaN}},{key:"weekNumber",get:function(){return this.isValid?Hi(this).weekNumber:NaN}},{key:"weekday",get:function(){return this.isValid?Hi(this).weekday:NaN}},{key:"ordinal",get:function(){return this.isValid?Bi(this.c).ordinal:NaN}},{key:"monthShort",get:function(){return this.isValid?Si.months("short",{locale:this.locale})[this.month-1]:null}},{key:"monthLong",get:function(){return this.isValid?Si.months("long",{locale:this.locale})[this.month-1]:null}},{key:"weekdayShort",get:function(){return this.isValid?Si.weekdays("short",{locale:this.locale})[this.weekday-1]:null}},{key:"weekdayLong",get:function(){return this.isValid?Si.weekdays("long",{locale:this.locale})[this.weekday-1]:null}},{key:"offset",get:function(){return this.isValid?+this.o:NaN}},{key:"offsetNameShort",get:function(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}},{key:"offsetNameLong",get:function(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}},{key:"isOffsetFixed",get:function(){return this.isValid?this.zone.universal:null}},{key:"isInDST",get:function(){return!this.isOffsetFixed&&(this.offset>this.set({month:1}).offset||this.offset>this.set({month:5}).offset)}},{key:"isInLeapYear",get:function(){return it(this.year)}},{key:"daysInMonth",get:function(){return nt(this.year,this.month)}},{key:"daysInYear",get:function(){return this.isValid?at(this.year):NaN}},{key:"weeksInWeekYear",get:function(){return this.isValid?dt(this.weekYear):NaN}}],[{key:"DATE_SHORT",get:function(){return f}},{key:"DATE_MED",get:function(){return p}},{key:"DATE_FULL",get:function(){return m}},{key:"DATE_HUGE",get:function(){return M}},{key:"TIME_SIMPLE",get:function(){return N}},{key:"TIME_WITH_SECONDS",get:function(){return T}},{key:"TIME_WITH_SHORT_OFFSET",get:function(){return v}},{key:"TIME_WITH_LONG_OFFSET",get:function(){return W}},{key:"TIME_24_SIMPLE",get:function(){return P}},{key:"TIME_24_WITH_SECONDS",get:function(){return D}},{key:"TIME_24_WITH_SHORT_OFFSET",get:function(){return B}},{key:"TIME_24_WITH_LONG_OFFSET",get:function(){return F}},{key:"DATETIME_SHORT",get:function(){return O}},{key:"DATETIME_SHORT_WITH_SECONDS",get:function(){return R}},{key:"DATETIME_MED",get:function(){return w}},{key:"DATETIME_MED_WITH_SECONDS",get:function(){return E}},{key:"DATETIME_MED_WITH_WEEKDAY",get:function(){return H}},{key:"DATETIME_FULL",get:function(){return X}},{key:"DATETIME_FULL_WITH_SECONDS",get:function(){return b}},{key:"DATETIME_HUGE",get:function(){return Y}},{key:"DATETIME_HUGE_WITH_SECONDS",get:function(){return k}}]),t}();function ia(t){if(ea.isDateTime(t))return t;if(t&&t.valueOf&&V(t.valueOf()))return ea.fromJSDate(t);if(t&&"object"==typeof t)return ea.fromObject(t);throw new y("Unknown datetime argument: "+t+", of type "+typeof t)}return t.DateTime=ea,t.Duration=ni,t.FixedOffsetZone=Gt,t.IANAZone=Yt,t.Info=Si,t.Interval=ui,t.InvalidZone=Vt,t.LocalZone=wt,t.Settings=qt,t.Zone=Ot,t}({});!function(){"use strict";var t=Math.PI,e=Math.sin,i=Math.cos,a=Math.tan,n=Math.asin,o=Math.atan2,d=Math.acos,u=t/180,S=864e5,r=2440588,L=2451545;function C(t){return new Date((t+.5-r)*S)}function s(t){return function(t){return t.valueOf()/S-.5+r}(t)-L}var g=23.4397*u;function l(t,n){return o(e(t)*i(g)-a(n)*e(g),i(t))}function K(t,a){return n(e(a)*i(g)+i(a)*e(g)*e(t))}function y(t,n,d){return o(e(t),i(t)*e(n)-a(d)*i(n))}function I(t,a,o){return n(e(a)*e(o)+i(a)*i(o)*i(t))}function c(t,e){return u*(280.16+360.9856235*t)-e}function h(t){return u*(357.5291+.98560028*t)}function A(i){return i+u*(1.9148*e(i)+.02*e(2*i)+3e-4*e(3*i))+102.9372*u+t}function f(t){var e=A(h(t));return{dec:K(e,0),ra:l(e,0)}}var p={getPosition:function(t,e,i){var a=u*-i,n=u*e,o=s(t),d=f(o),S=c(o,a)-d.ra;return{azimuth:y(S,n,d.dec),altitude:I(S,n,d.dec)}}},m=p.times=[[-.833,"sunrise","sunset"],[-.3,"sunriseEnd","sunsetStart"],[-6,"dawn","dusk"],[-12,"nauticalDawn","nauticalDusk"],[-18,"nightEnd","night"],[6,"goldenHourEnd","goldenHour"]];p.addTime=function(t,e,i){m.push([t,e,i])};var M=9e-4;function N(e,i,a){return M+(e+i)/(2*t)+a}function T(t,i,a){return L+t+.0053*e(i)-.0069*e(2*a)}function v(t,a,n,o,u,S,r){return T(N(function(t,a,n){return d((e(t)-e(a)*e(n))/(i(a)*i(n)))}(t,n,o),a,u),S,r)}function W(t){var a=u*(134.963+13.064993*t),n=u*(93.272+13.22935*t),o=u*(218.316+13.176396*t)+6.289*u*e(a),d=5.128*u*e(n),S=385001-20905*i(a);return{ra:l(o,d),dec:K(o,d),dist:S}}function P(t,e){return new Date(t.valueOf()+e*S/24)}p.getTimes=function(e,i,a,n){var o,d,S,r,L,g=u*-a,l=u*i,y=function(t){return-2.076*Math.sqrt(t)/60}(n=n||0),I=function(e,i){return Math.round(e-M-i/(2*t))}(s(e),g),c=N(0,g,I),f=h(c),p=A(f),W=K(p,0),P=T(c,f,p),D={solarNoon:C(P),nadir:C(P-.5)};for(o=0,d=m.length;o<d;o+=1)L=P-((r=v(((S=m[o])[0]+y)*u,g,l,W,I,f,p))-P),D[S[1]]=C(L),D[S[2]]=C(r);return D},p.getMoonPosition=function(t,n,d){var S=u*-d,r=u*n,L=s(t),C=W(L),g=c(L,S)-C.ra,l=I(g,r,C.dec),K=o(e(g),a(r)*i(C.dec)-e(C.dec)*i(g));return l+=function(t){return t<0&&(t=0),2967e-7/Math.tan(t+.00312536/(t+.08901179))}(l),{azimuth:y(g,r,C.dec),altitude:l,distance:C.dist,parallacticAngle:K}},p.getMoonIllumination=function(t){var a=s(t||new Date),n=f(a),u=W(a),S=149598e3,r=d(e(n.dec)*e(u.dec)+i(n.dec)*i(u.dec)*i(n.ra-u.ra)),L=o(S*e(r),u.dist-S*i(r)),C=o(i(n.dec)*e(n.ra-u.ra),e(n.dec)*i(u.dec)-i(n.dec)*e(u.dec)*i(n.ra-u.ra));return{fraction:(1+i(L))/2,phase:.5+.5*L*(C<0?-1:1)/Math.PI,angle:C}},p.getMoonTimes=function(t,e,i,a){var n=new Date(t);a?n.setUTCHours(0,0,0,0):n.setHours(0,0,0,0);for(var o,d,S,r,L,C,s,g,l,K,y,I,c,h=.133*u,A=p.getMoonPosition(n,e,i).altitude-h,f=1;f<=24&&(o=p.getMoonPosition(P(n,f),e,i).altitude-h,g=((L=(A+(d=p.getMoonPosition(P(n,f+1),e,i).altitude-h))/2-o)*(s=-(C=(d-A)/2)/(2*L))+C)*s+o,K=0,(l=C*C-4*L*o)>=0&&(y=s-(c=Math.sqrt(l)/(2*Math.abs(L))),I=s+c,Math.abs(y)<=1&&K++,Math.abs(I)<=1&&K++,y<-1&&(y=I)),1===K?A<0?S=f+y:r=f+y:2===K&&(S=f+(g<0?I:y),r=f+(g<0?y:I)),!S||!r);f+=2)A=d;var m={};return S&&(m.rise=P(n,S)),r&&(m.set=P(n,r)),S||r||(m[g>0?"alwaysUp":"alwaysDown"]=!0),m},"object"==typeof exports&&"undefined"!=typeof module?module.exports=p:"function"==typeof define&&define.amd?define(p):window.SunCalc=p}();const _TravelCities=[{Name:"Atlanta",Latitude:33.749,Longitude:-84.388},{Name:"Boston",Latitude:42.3584,Longitude:-71.0598},{Name:"Chicago",Latitude:41.9796,Longitude:-87.9045},{Name:"Cleveland",Latitude:41.4995,Longitude:-81.6954},{Name:"Dallas",Latitude:32.8959,Longitude:-97.0372},{Name:"Denver",Latitude:39.7391,Longitude:-104.9847},{Name:"Detroit",Latitude:42.3314,Longitude:-83.0457},{Name:"Hartford",Latitude:41.7637,Longitude:-72.6851},{Name:"Houston",Latitude:29.7633,Longitude:-95.3633},{Name:"Indianapolis",Latitude:39.7684,Longitude:-86.158},{Name:"Los Angeles",Latitude:34.0522,Longitude:-118.2437},{Name:"Miami",Latitude:25.7743,Longitude:-80.1937},{Name:"Minneapolis",Latitude:44.98,Longitude:-93.2638},{Name:"New York",Latitude:40.7142,Longitude:-74.0059},{Name:"Norfolk",Latitude:36.8468,Longitude:-76.2852},{Name:"Orlando",Latitude:28.5383,Longitude:-81.3792},{Name:"Philadelphia",Latitude:39.9523,Longitude:-75.1638},{Name:"Pittsburgh",Latitude:40.4406,Longitude:-79.9959},{Name:"St. Louis",Latitude:38.6273,Longitude:-90.1979},{Name:"San Francisco",Latitude:37.7749,Longitude:-122.4194},{Name:"Seattle",Latitude:47.6062,Longitude:-122.3321},{Name:"Syracuse",Latitude:43.0481,Longitude:-76.1474},{Name:"Tampa",Latitude:27.9475,Longitude:-82.4584},{Name:"Washington DC",Latitude:38.8951,Longitude:-77.0364}],_RegionalCities=[{Name:"Atlanta",Latitude:33.749,Longitude:-84.388},{Name:"Boston",Latitude:42.3584,Longitude:-71.0598},{Name:"Chicago",Latitude:41.9796,Longitude:-87.9045},{Name:"Cleveland",Latitude:41.4995,Longitude:-81.6954},{Name:"Dallas",Latitude:32.8959,Longitude:-97.0372},{Name:"Denver",Latitude:39.7391,Longitude:-104.9847},{Name:"Detroit",Latitude:42.3314,Longitude:-83.0457},{Name:"Hartford",Latitude:41.7637,Longitude:-72.6851},{Name:"Houston",Latitude:29.7633,Longitude:-95.3633},{Name:"Indianapolis",Latitude:39.7684,Longitude:-86.158},{Name:"Los Angeles",Latitude:34.0522,Longitude:-118.2437},{Name:"Miami",Latitude:25.7743,Longitude:-80.1937},{Name:"Minneapolis",Latitude:44.98,Longitude:-93.2638},{Name:"New York",Latitude:40.78,Longitude:-73.88},{Name:"Norfolk",Latitude:36.8468,Longitude:-76.2852},{Name:"Orlando",Latitude:28.5383,Longitude:-81.3792},{Name:"Philadelphia",Latitude:39.9523,Longitude:-75.1638},{Name:"Pittsburgh",Latitude:40.4406,Longitude:-79.9959},{Name:"St. Louis",Latitude:38.6273,Longitude:-90.1979},{Name:"San Francisco",Latitude:37.6148,Longitude:-122.3918},{Name:"Seattle",Latitude:47.6062,Longitude:-122.3321},{Name:"Syracuse",Latitude:43.0481,Longitude:-76.1474},{Name:"Tampa",Latitude:27.9756,Longitude:-82.5329},{Name:"Washington DC",Latitude:38.8951,Longitude:-77.0364},{Name:"Albany",Latitude:42.6526,Longitude:-73.7562},{Name:"Albuquerque",Latitude:35.0845,Longitude:-106.6511},{Name:"Amarillo",Latitude:35.222,Longitude:-101.8313},{Name:"Anchorage",Latitude:61.2181,Longitude:-149.9003},{Name:"Austin",Latitude:30.2671,Longitude:-97.7431},{Name:"Baker",Latitude:44.7502,Longitude:-117.6677},{Name:"Baltimore",Latitude:39.2904,Longitude:-76.6122},{Name:"Bangor",Latitude:44.8012,Longitude:-68.7778},{Name:"Birmingham",Latitude:33.5207,Longitude:-86.8025},{Name:"Bismarck",Latitude:46.8083,Longitude:-100.7837},{Name:"Boise",Latitude:43.6135,Longitude:-116.2034},{Name:"Buffalo",Latitude:42.8864,Longitude:-78.8784},{Name:"Carlsbad",Latitude:32.4207,Longitude:-104.2288},{Name:"Charleston",Latitude:32.7766,Longitude:-79.9309},{Name:"Charleston",Latitude:38.3498,Longitude:-81.6326},{Name:"Charlotte",Latitude:35.2271,Longitude:-80.8431},{Name:"Cheyenne",Latitude:41.14,Longitude:-104.8202},{Name:"Cincinnati",Latitude:39.162,Longitude:-84.4569},{Name:"Columbia",Latitude:34.0007,Longitude:-81.0348},{Name:"Columbus",Latitude:39.9612,Longitude:-82.9988},{Name:"Des Moines",Latitude:41.6005,Longitude:-93.6091},{Name:"Dubuque",Latitude:42.5006,Longitude:-90.6646},{Name:"Duluth",Latitude:46.7833,Longitude:-92.1066},{Name:"Eastport",Latitude:44.9062,Longitude:-66.99},{Name:"El Centro",Latitude:32.792,Longitude:-115.563},{Name:"El Paso",Latitude:31.7587,Longitude:-106.4869},{Name:"Eugene",Latitude:44.0521,Longitude:-123.0867},{Name:"Fargo",Latitude:46.8772,Longitude:-96.7898},{Name:"Flagstaff",Latitude:35.1981,Longitude:-111.6513},{Name:"Fresno",Latitude:36.7477,Longitude:-119.7724},{Name:"Grand Junction",Latitude:39.0639,Longitude:-108.5506},{Name:"Grand Rapids",Latitude:42.9634,Longitude:-85.6681},{Name:"Havre",Latitude:48.55,Longitude:-109.6841},{Name:"Helena",Latitude:46.5927,Longitude:-112.0361},{Name:"Honolulu",Latitude:21.3069,Longitude:-157.8583},{Name:"Hot Springs",Latitude:34.5037,Longitude:-93.0552},{Name:"Idaho Falls",Latitude:43.4666,Longitude:-112.0341},{Name:"Jackson",Latitude:32.2988,Longitude:-90.1848},{Name:"Jacksonville",Latitude:30.3322,Longitude:-81.6556},{Name:"Juneau",Latitude:58.3019,Longitude:-134.4197},{Name:"Kansas City",Latitude:39.1142,Longitude:-94.6275},{Name:"Key West",Latitude:24.5557,Longitude:-81.7826},{Name:"Klamath Falls",Latitude:42.2249,Longitude:-121.7817},{Name:"Knoxville",Latitude:35.9606,Longitude:-83.9207},{Name:"Las Vegas",Latitude:36.175,Longitude:-115.1372},{Name:"Lewiston",Latitude:46.4165,Longitude:-117.0177},{Name:"Lincoln",Latitude:40.8,Longitude:-96.667},{Name:"Long Beach",Latitude:33.767,Longitude:-118.1892},{Name:"Louisville",Latitude:38.2542,Longitude:-85.7594},{Name:"Manchester",Latitude:42.9956,Longitude:-71.4548},{Name:"Memphis",Latitude:35.1495,Longitude:-90.049},{Name:"Milwaukee",Latitude:43.0389,Longitude:-87.9065},{Name:"Mobile",Latitude:30.6944,Longitude:-88.043},{Name:"Montgomery",Latitude:32.3668,Longitude:-86.3},{Name:"Montpelier",Latitude:44.2601,Longitude:-72.5754},{Name:"Nashville",Latitude:36.1659,Longitude:-86.7844},{Name:"Newark",Latitude:40.7357,Longitude:-74.1724},{Name:"New Haven",Latitude:41.3081,Longitude:-72.9282},{Name:"New Orleans",Latitude:29.9546,Longitude:-90.0751},{Name:"Nome",Latitude:64.5011,Longitude:-165.4064},{Name:"Oklahoma City",Latitude:35.4676,Longitude:-97.5164},{Name:"Omaha",Latitude:41.2586,Longitude:-95.9378},{Name:"Phoenix",Latitude:33.4484,Longitude:-112.074},{Name:"Pierre",Latitude:44.3683,Longitude:-100.351},{Name:"Portland",Latitude:43.6615,Longitude:-70.2553},{Name:"Portland",Latitude:45.5234,Longitude:-122.6762},{Name:"Providence",Latitude:41.824,Longitude:-71.4128},{Name:"Raleigh",Latitude:35.7721,Longitude:-78.6386},{Name:"Reno",Latitude:39.4986,Longitude:-119.7681},{Name:"Richfield",Latitude:38.7725,Longitude:-112.0841},{Name:"Richmond",Latitude:37.5538,Longitude:-77.4603},{Name:"Roanoke",Latitude:37.271,Longitude:-79.9414},{Name:"Sacramento",Latitude:38.5816,Longitude:-121.4944},{Name:"Salt Lake City",Latitude:40.7608,Longitude:-111.891},{Name:"San Antonio",Latitude:29.4241,Longitude:-98.4936},{Name:"San Diego",Latitude:32.7153,Longitude:-117.1573},{Name:"San Jose",Latitude:37.3394,Longitude:-121.895},{Name:"Santa Fe",Latitude:35.687,Longitude:-105.9378},{Name:"Savannah",Latitude:32.0835,Longitude:-81.0998},{Name:"Shreveport",Latitude:32.5251,Longitude:-93.7502},{Name:"Sioux Falls",Latitude:43.55,Longitude:-96.7003},{Name:"Sitka",Latitude:57.0531,Longitude:-135.33},{Name:"Spokane",Latitude:47.6597,Longitude:-117.4291},{Name:"Springfield",Latitude:39.8017,Longitude:-89.6437},{Name:"Springfield",Latitude:42.1015,Longitude:-72.5898},{Name:"Springfield",Latitude:37.2153,Longitude:-93.2982},{Name:"Toledo",Latitude:41.6639,Longitude:-83.5552},{Name:"Tulsa",Latitude:36.154,Longitude:-95.9928},{Name:"Virginia Beach",Latitude:36.8529,Longitude:-75.978},{Name:"Wichita",Latitude:37.6922,Longitude:-97.3375},{Name:"Wilmington",Latitude:34.2257,Longitude:-77.9447},{Name:"Tuscan",Latitude:32.2216,Longitude:-110.9698}],_StationInfo={PADK:{StationId:"PADK",City:"Adak Nas",State:"AK",Latitude:51.8833,Longitude:-176.65},PAKH:{StationId:"PAKH",City:"Akhiok",State:"AK",Latitude:56.9333,Longitude:-154.1833},PAFM:{StationId:"PAFM",City:"Ambler",State:"AK",Latitude:67.1,Longitude:-157.85},PAKP:{StationId:"PAKP",City:"Anaktuvuk Pass",State:"AK",Latitude:68.1333,Longitude:-151.7333},PANC:{StationId:"PANC",City:"Anchorage Intl",State:"AK",Latitude:61.1666,Longitude:-150.0166},PAFC:{StationId:"PAFC",City:"Anchorage/Wfo",State:"AK",Latitude:61.1666,Longitude:-150.0333},PAHG:{StationId:"PAHG",City:"Anchorag/Nikiski",State:"AK",Latitude:60.7333,Longitude:-151.35},PALH:{StationId:"PALH",City:"Anchorage/Lake H",State:"AK",Latitude:61.1833,Longitude:-149.9666},PZAN:{StationId:"PZAN",City:"Anchorage/Artcc",State:"AK",Latitude:61.1666,Longitude:-149.9833},PAMR:{StationId:"PAMR",City:"Anchorage/Merril",State:"AK",Latitude:61.2166,Longitude:-149.85},PAGN:{StationId:"PAGN",City:"Angoon Seaplane",State:"AK",Latitude:57.5,Longitude:-134.5833},PANI:{StationId:"PANI",City:"Aniak",State:"AK",Latitude:61.5833,Longitude:-159.5333},PANT:{StationId:"PANT",City:"Annette Island",State:"AK",Latitude:55.0333,Longitude:-131.5666},PANV:{StationId:"PANV",City:"Anvik",State:"AK",Latitude:62.65,Longitude:-160.1833},PARC:{StationId:"PARC",City:"Arctic Village",State:"AK",Latitude:68.1166,Longitude:-145.5833},PATQ:{StationId:"PATQ",City:"Atqasuk Burnell",State:"AK",Latitude:70.4666,Longitude:-157.4333},PAAK:{StationId:"PAAK",City:"Atka",State:"AK",Latitude:52.2166,Longitude:-174.2},PABR:{StationId:"PABR",City:"Barrow",State:"AK",Latitude:71.2833,Longitude:-156.8},PABA:{StationId:"PABA",City:"Barter Island",State:"AK",Latitude:70.1333,Longitude:-143.5833},PABE:{StationId:"PABE",City:"Bethel",State:"AK",Latitude:60.7833,Longitude:-161.85},PABC:{StationId:"PABC",City:"Bethel/88D",State:"AK",Latitude:60.8,Longitude:-161.8833},PABT:{StationId:"PABT",City:"Bettles",State:"AK",Latitude:66.9166,Longitude:-151.5166},PALV:{StationId:"PALV",City:"Big River Lakes",State:"AK",Latitude:60.8166,Longitude:-152.3},PABV:{StationId:"PABV",City:"Birchwood",State:"AK",Latitude:61.4166,Longitude:-149.5166},PFKT:{StationId:"PFKT",City:"Brevig_Mission",State:"AK",Latitude:65.3333,Longitude:-166.4666},PABL:{StationId:"PABL",City:"Buckland",State:"AK",Latitude:65.9833,Longitude:-161.15},PATW:{StationId:"PATW",City:"Cantwell",State:"AK",Latitude:63.3833,Longitude:-148.95},PALU:{StationId:"PALU",City:"Cape Lisburne",State:"AK",Latitude:68.8833,Longitude:-166.1333},PAEH:{StationId:"PAEH",City:"Cape Newenham",State:"AK",Latitude:58.65,Longitude:-162.0666},PACZ:{StationId:"PACZ",City:"Cape Romanzof",State:"AK",Latitude:61.7833,Longitude:-166.0333},PARL:{StationId:"PARL",City:"Central",State:"AK",Latitude:65.5666,Longitude:-144.7833},PACE:{StationId:"PACE",City:"Central",State:"AK",Latitude:65.5666,Longitude:-144.7833},PALR:{StationId:"PALR",City:"Chandalar Lake",State:"AK",Latitude:67.5,Longitude:-148.4833},PAVA:{StationId:"PAVA",City:"Chevak",State:"AK",Latitude:61.5333,Longitude:-165.6},PAJC:{StationId:"PAJC",City:"Chignik Bay",State:"AK",Latitude:56.3166,Longitude:-158.3666},PACR:{StationId:"PACR",City:"Circle/Pafc Rfc",State:"AK",Latitude:65.8333,Longitude:-144.0666},PACD:{StationId:"PACD",City:"Cold Bay",State:"AK",Latitude:55.2,Longitude:-162.7166},PACV:{StationId:"PACV",City:"Cordova",State:"AK",Latitude:60.5,Longitude:-145.5},PASC:{StationId:"PASC",City:"Deadhorse",State:"AK",Latitude:70.2,Longitude:-148.4666},PADE:{StationId:"PADE",City:"Deering",State:"AK",Latitude:66.0666,Longitude:-162.7666},PABI:{StationId:"PABI",City:"Delta Junction",State:"AK",Latitude:64,Longitude:-145.7333},PADL:{StationId:"PADL",City:"Dillingham",State:"AK",Latitude:59.05,Longitude:-158.5166},PAEG:{StationId:"PAEG",City:"Eagle",State:"AK",Latitude:64.7833,Longitude:-141.15},PASY:{StationId:"PASY",City:"Eareckson/Shemya",State:"AK",Latitude:52.7166,Longitude:174.1166},PAII:{StationId:"PAII",City:"Egegik",State:"AK",Latitude:58.1833,Longitude:-157.3833},PAEI:{StationId:"PAEI",City:"Eielson Afb",State:"AK",Latitude:64.6666,Longitude:-147.1},PAEL:{StationId:"PAEL",City:"Elfin Cove",State:"AK",Latitude:58.2,Longitude:-136.35},PFEL:{StationId:"PFEL",City:"Elim Aprt",State:"AK",Latitude:64.6166,Longitude:-162.2666},PAED:{StationId:"PAED",City:"Elmendorf Afb",State:"AK",Latitude:61.25,Longitude:-149.8},PAEM:{StationId:"PAEM",City:"Emmonak",State:"AK",Latitude:62.7666,Longitude:-164.5166},PAZK:{StationId:"PAZK",City:"Eureka",State:"AK",Latitude:61.9333,Longitude:-147.1666},PAFA:{StationId:"PAFA",City:"Fairbanks",State:"AK",Latitude:64.8,Longitude:-147.8833},PAFG:{StationId:"PAFG",City:"Fairbanks/Wfo",State:"AK",Latitude:64.8,Longitude:-147.8833},PAKF:{StationId:"PAKF",City:"False Pass",State:"AK",Latitude:54.85,Longitude:-163.4166},PAPD:{StationId:"PAPD",City:"Frbnks/Pedro Dom",State:"AK",Latitude:65.0333,Longitude:-147.5},PAFK:{StationId:"PAFK",City:"Farewell Lake",State:"AK",Latitude:62.5333,Longitude:-153.6},PAFR:{StationId:"PAFR",City:"Fort Richardson",State:"AK",Latitude:61.2666,Longitude:-149.65},PAFB:{StationId:"PAFB",City:"Fort Wainwright",State:"AK",Latitude:64.8333,Longitude:-147.6166},PAFY:{StationId:"PAFY",City:"Fort Yukon",State:"AK",Latitude:66.5666,Longitude:-145.2666},PFYU:{StationId:"PFYU",City:"Fort Yukon",State:"AK",Latitude:66.5666,Longitude:-145.2666},PAFN:{StationId:"PAFN",City:"Funter Bay",State:"AK",Latitude:58.25,Longitude:-134.9},PAGB:{StationId:"PAGB",City:"Galbraith Lake",State:"AK",Latitude:68.4833,Longitude:-149.4833},PAGA:{StationId:"PAGA",City:"Galena",State:"AK",Latitude:64.7333,Longitude:-156.9333},PAGM:{StationId:"PAGM",City:"Gambell",State:"AK",Latitude:63.7666,Longitude:-171.7333},PAGL:{StationId:"PAGL",City:"Golovin",State:"AK",Latitude:64.55,Longitude:-163.0333},PAGK:{StationId:"PAGK",City:"Gulkana",State:"AK",Latitude:62.15,Longitude:-145.45},PAGS:{StationId:"PAGS",City:"Gustavus",State:"AK",Latitude:58.4166,Longitude:-135.7333},PAHN:{StationId:"PAHN",City:"Haines",State:"AK",Latitude:59.25,Longitude:-135.5166},PAHZ:{StationId:"PAHZ",City:"Hayes River",State:"AK",Latitude:61.9833,Longitude:-152.0833},PAHV:{StationId:"PAHV",City:"Healy",State:"AK",Latitude:63.8333,Longitude:-149},PAHC:{StationId:"PAHC",City:"Holy Cross",State:"AK",Latitude:62.1833,Longitude:-159.7833},PAHO:{StationId:"PAHO",City:"Homer",State:"AK",Latitude:59.6333,Longitude:-151.5},PAOH:{StationId:"PAOH",City:"Hoonah",State:"AK",Latitude:58.1,Longitude:-135.45},PAHP:{StationId:"PAHP",City:"Hooper Bay",State:"AK",Latitude:61.5333,Longitude:-166.15},PAHS:{StationId:"PAHS",City:"Huslia",State:"AK",Latitude:65.7,Longitude:-156.3833},PAHL:{StationId:"PAHL",City:"Huslia",State:"AK",Latitude:65.7,Longitude:-156.35},PAHY:{StationId:"PAHY",City:"Hydaburg",State:"AK",Latitude:55.2,Longitude:-132.8333},PAIG:{StationId:"PAIG",City:"Igiugig",State:"AK",Latitude:59.3166,Longitude:-155.9},PAIL:{StationId:"PAIL",City:"Iliamna",State:"AK",Latitude:59.75,Longitude:-154.9166},PAIM:{StationId:"PAIM",City:"Indian Mountain",State:"AK",Latitude:66,Longitude:-153.7},PAJN:{StationId:"PAJN",City:"Juneau",State:"AK",Latitude:58.3666,Longitude:-134.5833},PAJK:{StationId:"PAJK",City:"Juneau/Wfo",State:"AK",Latitude:58.3666,Longitude:-134.5666},PAFE:{StationId:"PAFE",City:"Kake",State:"AK",Latitude:56.9666,Longitude:-133.9166},PALG:{StationId:"PALG",City:"Kalskag",State:"AK",Latitude:61.5333,Longitude:-160.3333},PAKV:{StationId:"PAKV",City:"Kaltag",State:"AK",Latitude:64.3333,Longitude:-158.75},PAEN:{StationId:"PAEN",City:"Kenai",State:"AK",Latitude:60.5666,Longitude:-151.25},PAKT:{StationId:"PAKT",City:"Ketchikan",State:"AK",Latitude:55.35,Longitude:-131.7},PAIK:{StationId:"PAIK",City:"Kiana",State:"AK",Latitude:66.9833,Longitude:-160.4333},PAVC:{StationId:"PAVC",City:"King Cove",State:"AK",Latitude:55.1166,Longitude:-162.2666},PAKN:{StationId:"PAKN",City:"King Salmon",State:"AK",Latitude:58.6833,Longitude:-156.65},PAKC:{StationId:"PAKC",City:"King Salmon/88D",State:"AK",Latitude:58.6833,Longitude:-156.6333},KQRC:{StationId:"KQRC",City:"King Salmon Afs",State:"AK",Latitude:58.6833,Longitude:-156.6333},PAKI:{StationId:"PAKI",City:"Kipnuk",State:"AK",Latitude:59.9333,Longitude:-164.0333},PAVL:{StationId:"PAVL",City:"Kivalina",State:"AK",Latitude:67.7333,Longitude:-164.55},PAKW:{StationId:"PAKW",City:"Klawock",State:"AK",Latitude:55.5833,Longitude:-133.0666},PADQ:{StationId:"PADQ",City:"Kodiak",State:"AK",Latitude:57.75,Longitude:-152.5},PAKD:{StationId:"PAKD",City:"Kodiak",State:"AK",Latitude:57.8,Longitude:-152.3666},PAJZ:{StationId:"PAJZ",City:"Koliganek",State:"AK",Latitude:59.7333,Longitude:-157.2666},PAOT:{StationId:"PAOT",City:"Kotzebue",State:"AK",Latitude:66.8666,Longitude:-162.5833},PAKK:{StationId:"PAKK",City:"Koyuk",State:"AK",Latitude:64.9333,Longitude:-161.15},PAKU:{StationId:"PAKU",City:"Kuparuk",State:"AK",Latitude:70.3166,Longitude:-149.5833},PAML:{StationId:"PAML",City:"Manley Hot Sprin",State:"AK",Latitude:65,Longitude:-150.65},PAMB:{StationId:"PAMB",City:"Manokotak",State:"AK",Latitude:58.9833,Longitude:-159.05},PADM:{StationId:"PADM",City:"Marshall",State:"AK",Latitude:61.8666,Longitude:-162.0333},PAMX:{StationId:"PAMX",City:"Mccarthy",State:"AK",Latitude:61.4333,Longitude:-142.9166},PAMC:{StationId:"PAMC",City:"Mcgrath",State:"AK",Latitude:62.9666,Longitude:-155.6166},PAIN:{StationId:"PAIN",City:"Mckinley Park",State:"AK",Latitude:63.7333,Longitude:-148.9166},PAMY:{StationId:"PAMY",City:"Mekoryuk",State:"AK",Latitude:60.3666,Longitude:-166.2666},PAMM:{StationId:"PAMM",City:"Metlakatla",State:"AK",Latitude:55.1333,Longitude:-131.5833},PAMD:{StationId:"PAMD",City:"Middleton Island",State:"AK",Latitude:59.4333,Longitude:-146.3},PAIH:{StationId:"PAIH",City:"Middleton Is 88D",State:"AK",Latitude:59.4666,Longitude:-146.3},PAMH:{StationId:"PAMH",City:"Minchumina",State:"AK",Latitude:63.9,Longitude:-152.3166},PAMO:{StationId:"PAMO",City:"Mountain Village",State:"AK",Latitude:62.1,Longitude:-163.6833},PABN:{StationId:"PABN",City:"Nabesna",State:"AK",Latitude:62.4,Longitude:-143},PAOU:{StationId:"PAOU",City:"Nelson Lagoon",State:"AK",Latitude:56,Longitude:-161.1666},PANN:{StationId:"PANN",City:"Nenana",State:"AK",Latitude:64.55,Longitude:-149.0833},PANW:{StationId:"PANW",City:"New Stuyahok",State:"AK",Latitude:59.45,Longitude:-157.3666},PAFS:{StationId:"PAFS",City:"Nikolai",State:"AK",Latitude:63.0166,Longitude:-154.35},PAOM:{StationId:"PAOM",City:"Nome",State:"AK",Latitude:64.5,Longitude:-165.4333},PAEC:{StationId:"PAEC",City:"Chulitna",State:"AK",Latitude:62.8833,Longitude:-149.8333},PAOR:{StationId:"PAOR",City:"Northway",State:"AK",Latitude:62.9666,Longitude:-141.9333},PAWN:{StationId:"PAWN",City:"Noatak",State:"AK",Latitude:67.5666,Longitude:-162.9833},PFNO:{StationId:"PFNO",City:"Noorvik",State:"AK",Latitude:66.8166,Longitude:-161.0166},PAQT:{StationId:"PAQT",City:"Nuiqsut",State:"AK",Latitude:70.2166,Longitude:-151},PALP:{StationId:"PALP",City:"Nuiqsut Village",State:"AK",Latitude:70.3333,Longitude:-150.9333},POLI:{StationId:"POLI",City:"Oliktok Point",State:"AK",Latitude:70.5,Longitude:-149.8833},PAAQ:{StationId:"PAAQ",City:"Palmer",State:"AK",Latitude:61.6,Longitude:-149.0833},PAXK:{StationId:"PAXK",City:"Paxson",State:"AK",Latitude:63.0333,Longitude:-145.5},PAPG:{StationId:"PAPG",City:"Petersburg",State:"AK",Latitude:56.8166,Longitude:-132.9666},PAPN:{StationId:"PAPN",City:"Pilot Point",State:"AK",Latitude:57.5833,Longitude:-157.5666},PAPM:{StationId:"PAPM",City:"Platinum",State:"AK",Latitude:59.0166,Longitude:-161.8166},PAPO:{StationId:"PAPO",City:"Point Hope",State:"AK",Latitude:68.35,Longitude:-166.8},PPIZ:{StationId:"PPIZ",City:"Point Lay",State:"AK",Latitude:69.7333,Longitude:-163},PAAP:{StationId:"PAAP",City:"Port Alexander",State:"AK",Latitude:56.2333,Longitude:-134.65},PALJ:{StationId:"PALJ",City:"Port Alsworth",State:"AK",Latitude:60.2,Longitude:-154.3},PAPC:{StationId:"PAPC",City:"Port Clarence",State:"AK",Latitude:65.25,Longitude:-166.85},PAPH:{StationId:"PAPH",City:"Port Heiden",State:"AK",Latitude:56.95,Longitude:-158.6166},PATO:{StationId:"PATO",City:"Portage Glacier",State:"AK",Latitude:60.7833,Longitude:-148.85},PAPR:{StationId:"PAPR",City:"Prospect Creek",State:"AK",Latitude:66.8166,Longitude:-150.65},PAUD:{StationId:"PAUD",City:"Prudhoe Bay",State:"AK",Latitude:70.25,Longitude:-148.3333},PAPT:{StationId:"PAPT",City:"Puntilla Lake",State:"AK",Latitude:62.1,Longitude:-152.7166},PARD:{StationId:"PARD",City:"Reg Dog",State:"AK",Latitude:68.0333,Longitude:-162.9},PADG:{StationId:"PADG",City:"Reg Dog",State:"AK",Latitude:68.0333,Longitude:-162.9},PARY:{StationId:"PARY",City:"Ruby",State:"AK",Latitude:64.7333,Longitude:-155.4666},PARS:{StationId:"PARS",City:"Russian Mission",State:"AK",Latitude:61.7666,Longitude:-161.3166},PASM:{StationId:"PASM",City:"Saint Marys",State:"AK",Latitude:62.0666,Longitude:-163.3},PASD:{StationId:"PASD",City:"Sand Point",State:"AK",Latitude:55.3333,Longitude:-160.5},PASA:{StationId:"PASA",City:"Savoonga",State:"AK",Latitude:63.6833,Longitude:-170.5},PACM:{StationId:"PACM",City:"Scammon Bay",State:"AK",Latitude:61.85,Longitude:-165.5666},PASK:{StationId:"PASK",City:"Selawik",State:"AK",Latitude:66.6,Longitude:-160},PASO:{StationId:"PASO",City:"Seldovia",State:"AK",Latitude:59.45,Longitude:-151.7},PAWD:{StationId:"PAWD",City:"Seward",State:"AK",Latitude:60.1166,Longitude:-149.4166},PFSH:{StationId:"PFSH",City:"Shaktoolik",State:"AK",Latitude:64.3666,Longitude:-161.2166},PASH:{StationId:"PASH",City:"Shishmaref",State:"AK",Latitude:66.2666,Longitude:-166.0833},PAGH:{StationId:"PAGH",City:"Shungnak",State:"AK",Latitude:66.8833,Longitude:-157.1666},PASI:{StationId:"PASI",City:"Sitka",State:"AK",Latitude:57.0666,Longitude:-135.35},PACG:{StationId:"PACG",City:"Sitka/Biorka/88D",State:"AK",Latitude:56.85,Longitude:-135.5333},PAGY:{StationId:"PAGY",City:"Skagway",State:"AK",Latitude:59.4666,Longitude:-135.3},PASW:{StationId:"PASW",City:"Skwentna",State:"AK",Latitude:61.9666,Longitude:-151.2},PADT:{StationId:"PADT",City:"Slana",State:"AK",Latitude:62.7166,Longitude:-143.85},PASL:{StationId:"PASL",City:"Sleetmute",State:"AK",Latitude:61.7166,Longitude:-157.15},PALK:{StationId:"PALK",City:"Snowshoe Lake",State:"AK",Latitude:62.0333,Longitude:-142.6666},PASX:{StationId:"PASX",City:"Soldotna",State:"AK",Latitude:60.4833,Longitude:-151.0333},PASV:{StationId:"PASV",City:"Sparrevohn",State:"AK",Latitude:61.1,Longitude:-155.5666},PAPB:{StationId:"PAPB",City:"St George",State:"AK",Latitude:56.5833,Longitude:-169.6666},PAMK:{StationId:"PAMK",City:"St Michael",State:"AK",Latitude:63.4833,Longitude:-162.1166},PASN:{StationId:"PASN",City:"St Paul Island",State:"AK",Latitude:57.15,Longitude:-170.2166},PAER:{StationId:"PAER",City:"Stony River Land",State:"AK",Latitude:61.2666,Longitude:-153.8},PAJV:{StationId:"PAJV",City:"Sutton",State:"AK",Latitude:61.7166,Longitude:-148.8833},PASP:{StationId:"PASP",City:"Tahnetna Pass Lo",State:"AK",Latitude:61.8166,Longitude:-147.55},PATK:{StationId:"PATK",City:"Talkeetna",State:"AK",Latitude:62.3,Longitude:-150.1},PATA:{StationId:"PATA",City:"Tanana",State:"AK",Latitude:65.1666,Longitude:-152.1},PATL:{StationId:"PATL",City:"Tatalina Afs",State:"AK",Latitude:62.9,Longitude:-155.9666},PATE:{StationId:"PATE",City:"Teller",State:"AK",Latitude:65.2333,Longitude:-166.3333},PATC:{StationId:"PATC",City:"Tin City Afs",State:"AK",Latitude:65.5666,Longitude:-167.9166},PATG:{StationId:"PATG",City:"Togiak",State:"AK",Latitude:59.05,Longitude:-160.3833},PAOO:{StationId:"PAOO",City:"Toksook Bay",State:"AK",Latitude:60.5333,Longitude:-165.1166},PAUM:{StationId:"PAUM",City:"Umiat",State:"AK",Latitude:69.3666,Longitude:-152.1333},PAUN:{StationId:"PAUN",City:"Unalakleet",State:"AK",Latitude:63.8833,Longitude:-160.8},PADU:{StationId:"PADU",City:"Dutch Harbor",State:"AK",Latitude:53.9,Longitude:-166.5333},PAVD:{StationId:"PAVD",City:"Valdez",State:"AK",Latitude:61.1333,Longitude:-146.25},PAVW:{StationId:"PAVW",City:"Valdez Wso",State:"AK",Latitude:61.1333,Longitude:-146.35},PAWI:{StationId:"PAWI",City:"Wainwright",State:"AK",Latitude:70.6166,Longitude:-159.85},PAIW:{StationId:"PAIW",City:"Wales",State:"AK",Latitude:65.6166,Longitude:-168.1},PAWS:{StationId:"PAWS",City:"Wasilla",State:"AK",Latitude:61.5666,Longitude:-149.5333},PAWM:{StationId:"PAWM",City:"White Mountain",State:"AK",Latitude:64.6833,Longitude:-163.4166},PAWR:{StationId:"PAWR",City:"Whittier",State:"AK",Latitude:60.7833,Longitude:-148.7166},PAUO:{StationId:"PAUO",City:"Willow",State:"AK",Latitude:61.75,Longitude:-150.05},PAIZ:{StationId:"PAIZ",City:"Wolverine Road",State:"AK",Latitude:61.6333,Longitude:-149.0333},PAWG:{StationId:"PAWG",City:"Wrangell",State:"AK",Latitude:56.4833,Longitude:-132.3666},PAYA:{StationId:"PAYA",City:"Yakutat",State:"AK",Latitude:59.5166,Longitude:-139.6666},PZ74:{StationId:"PZ74",City:"Alaskan Artcc",State:"AK",Latitude:60.15,Longitude:-164.2833},PZ76:{StationId:"PZ76",City:"Alaskan Artcc",State:"AK",Latitude:65.25,Longitude:-134.65},KEET:{StationId:"KEET",City:"Alabaster",State:"AL",Latitude:33.1833,Longitude:-86.7833},K8A0:{StationId:"K8A0",City:"Albertville Muni",State:"AL",Latitude:34.2333,Longitude:-86.25},KALX:{StationId:"KALX",City:"Alexander/Russel",State:"AL",Latitude:32.9166,Longitude:-85.9666},K79J:{StationId:"K79J",City:"Andalusia/Opp Ar",State:"AL",Latitude:31.3166,Longitude:-86.4},KANB:{StationId:"KANB",City:"Anniston",State:"AL",Latitude:33.5833,Longitude:-85.85},KAUB:{StationId:"KAUB",City:"Auburn Univ. (Am",State:"AL",Latitude:32.6,Longitude:-85.5},KAUO:{StationId:"KAUO",City:"Auburn Opelika A",State:"AL",Latitude:32.6166,Longitude:-85.4166},KBHM:{StationId:"KBHM",City:"Birmingham",State:"AL",Latitude:33.5666,Longitude:-86.75},KBMX:{StationId:"KBMX",City:"Brmnghm/Alabastr",State:"AL",Latitude:33.1666,Longitude:-86.7666},KOZR:{StationId:"KOZR",City:"Ozark/Cairns Aaf",State:"AL",Latitude:31.2833,Longitude:-85.7166},K0A8:{StationId:"K0A8",City:"Centreville Wsm",State:"AL",Latitude:32.9333,Longitude:-87.0833},K9A4:{StationId:"K9A4",City:"Courtland",State:"AL",Latitude:34.6666,Longitude:-87.35},K3A1:{StationId:"K3A1",City:"Cullman/Folsom F",State:"AL",Latitude:34.2666,Longitude:-86.85},KCMD:{StationId:"KCMD",City:"Cullman/Folsom F",State:"AL",Latitude:34.2666,Longitude:-86.85},KDCU:{StationId:"KDCU",City:"Decatur",State:"AL",Latitude:34.65,Longitude:-86.95},KDYA:{StationId:"KDYA",City:"Demopolis",State:"AL",Latitude:32.4666,Longitude:-87.95},KDHN:{StationId:"KDHN",City:"Dothan",State:"AL",Latitude:31.3166,Longitude:-85.45},KEUF:{StationId:"KEUF",City:"Eufaula",State:"AL",Latitude:31.95,Longitude:-85.1333},KGZH:{StationId:"KGZH",City:"Evergreen",State:"AL",Latitude:31.4166,Longitude:-87.05},KCQF:{StationId:"KCQF",City:"Fairhope",State:"AL",Latitude:30.4666,Longitude:-87.8833},K0J4:{StationId:"K0J4",City:"Florala Muni",State:"AL",Latitude:31.05,Longitude:-86.3166},K4A9:{StationId:"K4A9",City:"Ft Payne/Isbell",State:"AL",Latitude:34.4666,Longitude:-85.7166},KEOX:{StationId:"KEOX",City:"Ft Rucker 88D",State:"AL",Latitude:31.4666,Longitude:-85.4666},KSXS:{StationId:"KSXS",City:"Ft Rucker/Shell",State:"AL",Latitude:31.3666,Longitude:-85.85},KHEY:{StationId:"KHEY",City:"Ft Rucker/Hanche",State:"AL",Latitude:31.35,Longitude:-85.65},KGAD:{StationId:"KGAD",City:"Gadsden Muni",State:"AL",Latitude:33.9666,Longitude:-86.0666},KPRN:{StationId:"KPRN",City:"Greenville",State:"AL",Latitude:31.85,Longitude:-86.6166},KJKA:{StationId:"KJKA",City:"Gulf Shores",State:"AL",Latitude:30.2833,Longitude:-87.6666},K1M4:{StationId:"K1M4",City:"Haleyville",State:"AL",Latitude:34.2833,Longitude:-87.6},KHSV:{StationId:"KHSV",City:"Huntsville",State:"AL",Latitude:34.65,Longitude:-86.7833},KMDQ:{StationId:"KMDQ",City:"Huntsville/Madis",State:"AL",Latitude:34.8666,Longitude:-86.55},KHTX:{StationId:"KHTX",City:"Hytop/88D",State:"AL",Latitude:34.9333,Longitude:-86.0833},KJFX:{StationId:"KJFX",City:"Jasper/Walker",State:"AL",Latitude:33.9,Longitude:-87.3166},KLOR:{StationId:"KLOR",City:"Lowe Ahp/Ft. Ruc",State:"AL",Latitude:31.35,Longitude:-85.75},KMXX:{StationId:"KMXX",City:"Maxwell Afb 88D",State:"AL",Latitude:32.5333,Longitude:-85.7833},KMXF:{StationId:"KMXF",City:"Maxwell Afb/Mgm",State:"AL",Latitude:32.3666,Longitude:-86.3666},KBFM:{StationId:"KBFM",City:"Mobile/Brookley",State:"AL",Latitude:30.6166,Longitude:-88.0666},KMOB:{StationId:"KMOB",City:"Mobile/Bates",State:"AL",Latitude:30.6833,Longitude:-88.25},KMGM:{StationId:"KMGM",City:"Montgomery",State:"AL",Latitude:32.3,Longitude:-86.4},KMSL:{StationId:"KMSL",City:"Muscle Shoal",State:"AL",Latitude:34.75,Longitude:-87.6},KMVC:{StationId:"KMVC",City:"Monroeville",State:"AL",Latitude:31.45,Longitude:-87.35},KHUA:{StationId:"KHUA",City:"Redstone Arsenal",State:"AL",Latitude:34.6833,Longitude:-86.6833},K4A6:{StationId:"K4A6",City:"Scottsboro",State:"AL",Latitude:34.6833,Longitude:-86},KSJI:{StationId:"KSJI",City:"Semmnes Vor",State:"AL",Latitude:30.7333,Longitude:-88.3666},KASN:{StationId:"KASN",City:"Talladega",State:"AL",Latitude:33.5666,Longitude:-86.05},KTOI:{StationId:"KTOI",City:"Troy",State:"AL",Latitude:31.85,Longitude:-86.0166},KTCL:{StationId:"KTCL",City:"Tuscaloosa",State:"AL",Latitude:33.2166,Longitude:-87.6166},KVUZ:{StationId:"KVUZ",City:"Vulcan Vor",State:"AL",Latitude:33.6666,Longitude:-86.9},KCKL:{StationId:"KCKL",City:"Centreville Wsm",State:"AL",Latitude:32.8833,Longitude:-87.25},K4R9:{StationId:"K4R9",City:"Dauphin Island",State:"AL",Latitude:30.2666,Longitude:-88.1333},K4R4:{StationId:"K4R4",City:"Fairhope",State:"AL",Latitude:30.4666,Longitude:-87.8833},KM82:{StationId:"KM82",City:"Huntsville/Madis",State:"AL",Latitude:34.85,Longitude:-86.55},KADF:{StationId:"KADF",City:"Arkadelphia",State:"AR",Latitude:34.1,Longitude:-93.0666},KBVX:{StationId:"KBVX",City:"Batesville",State:"AR",Latitude:35.7333,Longitude:-91.65},KH00:{StationId:"KH00",City:"Bentonville",State:"AR",Latitude:36.35,Longitude:-94.2166},KVBT:{StationId:"KVBT",City:"Bentonville",State:"AR",Latitude:36.35,Longitude:-94.2166},KXNA:{StationId:"KXNA",City:"Bentonville (Nw)",State:"AR",Latitude:36.2833,Longitude:-94.3},KHKA:{StationId:"KHKA",City:"Blytheville",State:"AR",Latitude:35.9333,Longitude:-89.8333},KBYH:{StationId:"KBYH",City:"Blytheville",State:"AR",Latitude:35.9666,Longitude:-89.95},KCDH:{StationId:"KCDH",City:"Camden",State:"AR",Latitude:33.6166,Longitude:-92.7666},KCCA:{StationId:"KCCA",City:"Clinton Muni",State:"AR",Latitude:35.6,Longitude:-92.45},K4M9:{StationId:"K4M9",City:"Corning",State:"AR",Latitude:36.4,Longitude:-90.65},KDEQ:{StationId:"KDEQ",City:"De Queen",State:"AR",Latitude:34.05,Longitude:-94.4},KDQU:{StationId:"KDQU",City:"Dequeen Profiler",State:"AR",Latitude:34.1,Longitude:-94.2833},KELD:{StationId:"KELD",City:"El Dorado",State:"AR",Latitude:33.2166,Longitude:-92.8166},KFYV:{StationId:"KFYV",City:"Fayetteville",State:"AR",Latitude:36.0166,Longitude:-94.1666},KFLP:{StationId:"KFLP",City:"Flippin (Awos)",State:"AR",Latitude:36.2833,Longitude:-92.5833},KFSM:{StationId:"KFSM",City:"Fort Smith",State:"AR",Latitude:35.3333,Longitude:-94.3666},KSRX:{StationId:"KSRX",City:"Slatington Mtn.",State:"AR",Latitude:35.2833,Longitude:-94.3666},KHRO:{StationId:"KHRO",City:"Harrison",State:"AR",Latitude:36.2666,Longitude:-93.15},KHOT:{StationId:"KHOT",City:"Hot Springs",State:"AR",Latitude:34.4833,Longitude:-93.1},KJBR:{StationId:"KJBR",City:"Jonesboro",State:"AR",Latitude:35.8333,Longitude:-90.65},KLIT:{StationId:"KLIT",City:"Little Rock",State:"AR",Latitude:34.7333,Longitude:-92.2333},KLRF:{StationId:"KLRF",City:"Little Rock Afb",State:"AR",Latitude:34.9166,Longitude:-92.15},KMEZ:{StationId:"KMEZ",City:"Mena Intermtn",State:"AR",Latitude:34.55,Longitude:-94.2},KAWM:{StationId:"KAWM",City:"W Memphis Muni",State:"AR",Latitude:35.1333,Longitude:-90.2333},KLLQ:{StationId:"KLLQ",City:"Monticello",State:"AR",Latitude:33.6333,Longitude:-91.75},KMWT:{StationId:"KMWT",City:"Mount Ida",State:"AR",Latitude:34.55,Longitude:-93.5833},KBPK:{StationId:"KBPK",City:"Mountain Home",State:"AR",Latitude:36.3666,Longitude:-92.4666},KLZK:{StationId:"KLZK",City:"N. Little Rock",State:"AR",Latitude:34.8333,Longitude:-92.2666},KM19:{StationId:"KM19",City:"Newport",State:"AR",Latitude:35.65,Longitude:-91.1666},KPBF:{StationId:"KPBF",City:"Pine Bluff/Gridr",State:"AR",Latitude:34.1833,Longitude:-91.9333},KRZC:{StationId:"KRZC",City:"Razorback Vor",State:"AR",Latitude:36.25,Longitude:-94.1166},KROG:{StationId:"KROG",City:"Rogers",State:"AR",Latitude:36.3666,Longitude:-94.0833},KRUE:{StationId:"KRUE",City:"Russellville",State:"AR",Latitude:35.25,Longitude:-93.1},KSRC:{StationId:"KSRC",City:"Searcy",State:"AR",Latitude:35.2166,Longitude:-91.7333},KSLG:{StationId:"KSLG",City:"Siloam Spring",State:"AR",Latitude:36.2,Longitude:-94.4666},KASG:{StationId:"KASG",City:"Springdale Muni",State:"AR",Latitude:36.1666,Longitude:-94.1166},KSGT:{StationId:"KSGT",City:"Stuttgart",State:"AR",Latitude:34.6,Longitude:-91.5666},KTXK:{StationId:"KTXK",City:"Texarkana",State:"AR",Latitude:33.45,Longitude:-93.9833},KARG:{StationId:"KARG",City:"Walnut Ridge",State:"AR",Latitude:36.1166,Longitude:-90.9166},KM89:{StationId:"KM89",City:"Arkadelphia",State:"AR",Latitude:34.1,Longitude:-93.0666},KM39:{StationId:"KM39",City:"Mena Intermtn",State:"AR",Latitude:34.55,Longitude:-94.2},KPHX:{StationId:"KPHX",City:"Phoenix/Sky Hrbr",State:"AZ",Latitude:33.4333,Longitude:-112.0166},KTUS:{StationId:"KTUS",City:"Tucson",State:"AZ",Latitude:32.1333,Longitude:-110.95},KBXK:{StationId:"KBXK",City:"Buckeye",State:"AZ",Latitude:33.4166,Longitude:-112.6833},KIFP:{StationId:"KIFP",City:"Bullhead City",State:"AZ",Latitude:35.15,Longitude:-114.5666},KCGZ:{StationId:"KCGZ",City:"Casa Granda",State:"AZ",Latitude:32.95,Longitude:-111.7666},KIWA:{StationId:"KIWA",City:"Chandler/Mesa",State:"AZ",Latitude:33.3,Longitude:-111.65},KCHD:{StationId:"KCHD",City:"Chandler",State:"AZ",Latitude:33.2666,Longitude:-111.8166},KFSX:{StationId:"KFSX",City:"Coconino/Flagstf",State:"AZ",Latitude:34.5666,Longitude:-111.2},KAZC:{StationId:"KAZC",City:"Colorado City",State:"AZ",Latitude:36.9666,Longitude:-113.0166},KP08:{StationId:"KP08",City:"Coolidge Muni",State:"AZ",Latitude:32.9333,Longitude:-111.4333},KDMA:{StationId:"KDMA",City:"Davis/Tucson",State:"AZ",Latitude:32.1666,Longitude:-110.8666},KDUG:{StationId:"KDUG",City:"Douglas Bisbee",State:"AZ",Latitude:31.4666,Longitude:-109.5833},KFLG:{StationId:"KFLG",City:"Flagstaff",State:"AZ",Latitude:35.1333,Longitude:-111.6666},KFGZ:{StationId:"KFGZ",City:"Flagstaff/Bellem",State:"AZ",Latitude:35.2333,Longitude:-111.8166},KFHU:{StationId:"KFHU",City:"Fort Huachuca",State:"AZ",Latitude:31.5833,Longitude:-110.35},KGXF:{StationId:"KGXF",City:"Gila Bend (Aaf)",State:"AZ",Latitude:32.8666,Longitude:-112.7166},KGEU:{StationId:"KGEU",City:"Glendale",State:"AZ",Latitude:33.5333,Longitude:-112.3},KLUF:{StationId:"KLUF",City:"Luke Afb/Glendal",State:"AZ",Latitude:33.5166,Longitude:-112.3666},KGYR:{StationId:"KGYR",City:"Goodyear Municip",State:"AZ",Latitude:33.4166,Longitude:-112.3666},KGCN:{StationId:"KGCN",City:"Grand Canyon",State:"AZ",Latitude:35.95,Longitude:-112.15},K40G:{StationId:"K40G",City:"Grand Canyon/Val",State:"AZ",Latitude:35.6333,Longitude:-112.15},KIGM:{StationId:"KIGM",City:"Kingman",State:"AZ",Latitude:35.25,Longitude:-113.9333},KHII:{StationId:"KHII",City:"Lake Havasu City",State:"AZ",Latitude:34.5666,Longitude:-114.3666},KFFZ:{StationId:"KFFZ",City:"Mesa/Falcon Fld",State:"AZ",Latitude:33.4666,Longitude:-111.7166},KOLS:{StationId:"KOLS",City:"Nogales",State:"AZ",Latitude:31.4166,Longitude:-110.85},KPGA:{StationId:"KPGA",City:"Page",State:"AZ",Latitude:36.9166,Longitude:-111.45},KPAN:{StationId:"KPAN",City:"Payson",State:"AZ",Latitude:34.25,Longitude:-111.3333},KPGS:{StationId:"KPGS",City:"Peach Spring",State:"AZ",Latitude:35.6166,Longitude:-113.5333},KDVT:{StationId:"KDVT",City:"Phoenix/Deer Vly",State:"AZ",Latitude:33.6833,Longitude:-112.0666},KPSR:{StationId:"KPSR",City:"Phoenix/Wfo",State:"AZ",Latitude:33.4333,Longitude:-112.0166},KEMX:{StationId:"KEMX",City:"Pima County/88D",State:"AZ",Latitude:31.9,Longitude:-110.6333},KALK:{StationId:"KALK",City:"Pioneer Airfield",State:"AZ",Latitude:31.6,Longitude:-110.4333},KPRC:{StationId:"KPRC",City:"Prescott",State:"AZ",Latitude:34.65,Longitude:-112.4166},KDRK:{StationId:"KDRK",City:"Prescott(Vor)",State:"AZ",Latitude:34.7,Longitude:-112.4833},KSAD:{StationId:"KSAD",City:"Safford",State:"AZ",Latitude:32.85,Longitude:-109.6333},KSSO:{StationId:"KSSO",City:"San Simon",State:"AZ",Latitude:32.2666,Longitude:-109.25},KSDL:{StationId:"KSDL",City:"Scottsdale",State:"AZ",Latitude:33.6166,Longitude:-111.9166},KSEZ:{StationId:"KSEZ",City:"Sedona",State:"AZ",Latitude:34.85,Longitude:-111.7833},KSOW:{StationId:"KSOW",City:"Show Low Municip",State:"AZ",Latitude:34.2666,Longitude:-110},KSJN:{StationId:"KSJN",City:"St. Johns",State:"AZ",Latitude:34.5166,Longitude:-109.3833},KTBC:{StationId:"KTBC",City:"Tuba City",State:"AZ",Latitude:36.1166,Longitude:-111.2666},KTWC:{StationId:"KTWC",City:"Tucson/Wfo",State:"AZ",Latitude:32.2333,Longitude:-110.95},KRYN:{StationId:"KRYN",City:"Tucson/Ryan Fld",State:"AZ",Latitude:32.15,Longitude:-111.1666},KCMR:{StationId:"KCMR",City:"Williams Clark",State:"AZ",Latitude:35.3,Longitude:-112.2},KRQE:{StationId:"KRQE",City:"Window Rock",State:"AZ",Latitude:35.65,Longitude:-109.0666},KINW:{StationId:"KINW",City:"Winslow",State:"AZ",Latitude:35.0333,Longitude:-110.7166},KYUX:{StationId:"KYUX",City:"Yuma/88D",State:"AZ",Latitude:32.5,Longitude:-114.65},KYUM:{StationId:"KYUM",City:"Yuma Intl",State:"AZ",Latitude:32.6333,Longitude:-114.5833},KNYL:{StationId:"KNYL",City:"Yuma Mcas",State:"AZ",Latitude:32.6333,Longitude:-114.6166},K1Y7:{StationId:"K1Y7",City:"Yuma Prvg Groun",State:"AZ",Latitude:32.5,Longitude:-114.4},KBZA:{StationId:"KBZA",City:"Yuma (Vor)",State:"AZ",Latitude:32.7666,Longitude:-114.6},KGBN:{StationId:"KGBN",City:"Gila Bend (Aaf)",State:"AZ",Latitude:32.8666,Longitude:-112.7166},K13A:{StationId:"K13A",City:"Nogales",State:"AZ",Latitude:31.4166,Longitude:-110.85},K0E4:{StationId:"K0E4",City:"Payson",State:"AZ",Latitude:34.2166,Longitude:-111.3166},KE74:{StationId:"KE74",City:"Safford",State:"AZ",Latitude:32.8166,Longitude:-109.6833},KE03:{StationId:"KE03",City:"Show Low",State:"AZ",Latitude:34.25,Longitude:-110.0333},KT03:{StationId:"KT03",City:"Tuba City",State:"AZ",Latitude:36.1,Longitude:-111.3833},KP34:{StationId:"KP34",City:"Window Rock",State:"AZ",Latitude:35.65,Longitude:-109.0666},KNGZ:{StationId:"KNGZ",City:"Alameda Nas",State:"CA",Latitude:37.7666,Longitude:-122.3166},KAAT:{StationId:"KAAT",City:"Alturas",State:"CA",Latitude:41.4833,Longitude:-120.5666},KAPV:{StationId:"KAPV",City:"Apple Valley",State:"CA",Latitude:34.5666,Longitude:-117.1833},KACV:{StationId:"KACV",City:"Arcata/Eureka",State:"CA",Latitude:40.9833,Longitude:-124.1},KAUN:{StationId:"KAUN",City:"Auburn Muni",State:"CA",Latitude:38.95,Longitude:-121.0833},KAVX:{StationId:"KAVX",City:"Avalon",State:"CA",Latitude:33.4,Longitude:-118.4166},KBFL:{StationId:"KBFL",City:"Bakersfield",State:"CA",Latitude:35.4333,Longitude:-119.05},KEHF:{StationId:"KEHF",City:"Bakersfield(Vor)",State:"CA",Latitude:35.4833,Longitude:-119.1},KBAB:{StationId:"KBAB",City:"Beale Afb/Marysv",State:"CA",Latitude:39.1166,Longitude:-121.4166},KBBX:{StationId:"KBBX",City:"Beale/Oro Dam",State:"CA",Latitude:39.5,Longitude:-121.6333},KBUO:{StationId:"KBUO",City:"Beaumont",State:"CA",Latitude:33.9166,Longitude:-116.9666},KL35:{StationId:"KL35",City:"Big Bear City",State:"CA",Latitude:34.2666,Longitude:-116.85},KBYS:{StationId:"KBYS",City:"Bicycle Lake",State:"CA",Latitude:35.2833,Longitude:-116.6166},KBIH:{StationId:"KBIH",City:"Bishop",State:"CA",Latitude:37.3666,Longitude:-118.35},KBLH:{StationId:"KBLH",City:"Blythe",State:"CA",Latitude:33.6166,Longitude:-114.7166},KO57:{StationId:"KO57",City:"Bridgeport",State:"CA",Latitude:38.2666,Longitude:-119.2166},KBAN:{StationId:"KBAN",City:"Bridgeport(Mcmwt",State:"CA",Latitude:38.35,Longitude:-119.5166},KBUR:{StationId:"KBUR",City:"Burbank",State:"CA",Latitude:34.2,Longitude:-118.3666},KBNY:{StationId:"KBNY",City:"Burney",State:"CA",Latitude:40.8666,Longitude:-121.6666},KCXL:{StationId:"KCXL",City:"Calexico Intl",State:"CA",Latitude:32.6666,Longitude:-115.5},KCMA:{StationId:"KCMA",City:"Camarillo",State:"CA",Latitude:34.2166,Longitude:-119.1},KNFG:{StationId:"KNFG",City:"Camp Pendleton",State:"CA",Latitude:33.2833,Longitude:-117.3333},KSYL:{StationId:"KSYL",City:"Camp Roberts",State:"CA",Latitude:35.75,Longitude:-120.7},KCZZ:{StationId:"KCZZ",City:"Campo",State:"CA",Latitude:32.6333,Longitude:-116.4666},KCRQ:{StationId:"KCRQ",City:"Carlsbad",State:"CA",Latitude:33.1333,Longitude:-117.2833},KCIC:{StationId:"KCIC",City:"Chico Municipal",State:"CA",Latitude:39.7833,Longitude:-121.8333},KNID:{StationId:"KNID",City:"China Lake (Naf)",State:"CA",Latitude:35.6666,Longitude:-117.6666},KCNO:{StationId:"KCNO",City:"Chino",State:"CA",Latitude:33.9833,Longitude:-117.6166},KO22:{StationId:"KO22",City:"Columbia",State:"CA",Latitude:38.0333,Longitude:-120.4166},KCCR:{StationId:"KCCR",City:"Concord",State:"CA",Latitude:38,Longitude:-122.05},KAJO:{StationId:"KAJO",City:"Corona Muni",State:"CA",Latitude:33.9,Longitude:-117.6},KCEC:{StationId:"KCEC",City:"Crescent City",State:"CA",Latitude:41.7666,Longitude:-124.2166},KDAG:{StationId:"KDAG",City:"Daggett",State:"CA",Latitude:34.85,Longitude:-116.7833},KEDU:{StationId:"KEDU",City:"Davis",State:"CA",Latitude:38.5333,Longitude:-121.7833},KEDW:{StationId:"KEDW",City:"Edwards Afb",State:"CA",Latitude:34.8833,Longitude:-117.8666},KEYX:{StationId:"KEYX",City:"Edwards Afb/88D",State:"CA",Latitude:35.1,Longitude:-117.5666},K9L2:{StationId:"K9L2",City:"Edwards N-Aux",State:"CA",Latitude:34.9666,Longitude:-117.8666},KNJK:{StationId:"KNJK",City:"El Centro Naf",State:"CA",Latitude:32.8166,Longitude:-115.6666},KEMT:{StationId:"KEMT",City:"El Monte",State:"CA",Latitude:34.0666,Longitude:-118.0166},KBLU:{StationId:"KBLU",City:"Emigrant Gap",State:"CA",Latitude:39.2833,Longitude:-120.7},KEKA:{StationId:"KEKA",City:"Eureka/Murray",State:"CA",Latitude:40.8,Longitude:-124.1666},KFOT:{StationId:"KFOT",City:"Fortuna",State:"CA",Latitude:40.55,Longitude:-124.1333},KFAT:{StationId:"KFAT",City:"Fresno",State:"CA",Latitude:36.7833,Longitude:-119.7166},KCZQ:{StationId:"KCZQ",City:"Fresno(Vor)",State:"CA",Latitude:36.8833,Longitude:-119.8166},KFCH:{StationId:"KFCH",City:"Fresno Chandler",State:"CA",Latitude:36.7166,Longitude:-119.8166},KFUL:{StationId:"KFUL",City:"Fullerton",State:"CA",Latitude:33.8666,Longitude:-117.9833},KGOO:{StationId:"KGOO",City:"Grass Valley",State:"CA",Latitude:39.2166,Longitude:-121},KHAF:{StationId:"KHAF",City:"Half Moon Bay",State:"CA",Latitude:37.5166,Longitude:-122.5},KHJO:{StationId:"KHJO",City:"Hanford",State:"CA",Latitude:36.3166,Longitude:-119.6166},KHNX:{StationId:"KHNX",City:"Hanford/San Joaq",State:"CA",Latitude:36.3166,Longitude:-119.6333},KO18:{StationId:"KO18",City:"Hanford",State:"CA",Latitude:36.3166,Longitude:-119.6333},KHHR:{StationId:"KHHR",City:"Hawthorne",State:"CA",Latitude:33.9166,Longitude:-118.3333},KHWD:{StationId:"KHWD",City:"Hayward",State:"CA",Latitude:37.6666,Longitude:-122.1166},KHES:{StationId:"KHES",City:"Healdsburg",State:"CA",Latitude:38.65,Longitude:-122.9},KHEC:{StationId:"KHEC",City:"Hector(Vor)",State:"CA",Latitude:34.8,Longitude:-116.4666},KCVH:{StationId:"KCVH",City:"Hollister Muni",State:"CA",Latitude:36.9,Longitude:-121.4166},KBHX:{StationId:"KBHX",City:"Humboldt Cty/88D",State:"CA",Latitude:40.5,Longitude:-124.3},KHGT:{StationId:"KHGT",City:"Hunter Ligget",State:"CA",Latitude:36,Longitude:-121.2166},KIPL:{StationId:"KIPL",City:"Imperial",State:"CA",Latitude:32.8333,Longitude:-115.5833},KNRS:{StationId:"KNRS",City:"Imperial Beach",State:"CA",Latitude:32.5666,Longitude:-117.1166},KIYK:{StationId:"KIYK",City:"Inyokern",State:"CA",Latitude:35.6666,Longitude:-117.8166},KPOC:{StationId:"KPOC",City:"La Verne/Bracket",State:"CA",Latitude:34.1,Longitude:-117.7666},KWJF:{StationId:"KWJF",City:"Lancaster/Fox",State:"CA",Latitude:34.7166,Longitude:-118.2166},KNLC:{StationId:"KNLC",City:"Lemoore Nas/Reev",State:"CA",Latitude:36.3166,Longitude:-119.95},KLHM:{StationId:"KLHM",City:"Lincoln",State:"CA",Latitude:38.9166,Longitude:-121.35},KLLR:{StationId:"KLLR",City:"Little River",State:"CA",Latitude:39.2666,Longitude:-123.75},KLVK:{StationId:"KLVK",City:"Livermore",State:"CA",Latitude:37.7,Longitude:-121.8166},KLPC:{StationId:"KLPC",City:"Lompoc",State:"CA",Latitude:34.6666,Longitude:-120.4666},KLGB:{StationId:"KLGB",City:"Long Beach",State:"CA",Latitude:33.8166,Longitude:-118.15},KSLI:{StationId:"KSLI",City:"Los Alamitos Aaf",State:"CA",Latitude:33.7666,Longitude:-118.0333},KLAX:{StationId:"KLAX",City:"Los Angeles",State:"CA",Latitude:33.9333,Longitude:-118.3833},KLOX:{StationId:"KLOX",City:"Los Angeles/Oxna",State:"CA",Latitude:34.2,Longitude:-119.2},KZLA:{StationId:"KZLA",City:"Los Angels/Artcc",State:"CA",Latitude:34.6333,Longitude:-118.0833},KCQT:{StationId:"KCQT",City:"Los Angeles",State:"CA",Latitude:34.0166,Longitude:-118.2833},KWHP:{StationId:"KWHP",City:"La / Whiteman",State:"CA",Latitude:34.25,Longitude:-118.4166},KMAE:{StationId:"KMAE",City:"Madera",State:"CA",Latitude:36.9833,Longitude:-120.1166},KMMH:{StationId:"KMMH",City:"Mammoth/June Lak",State:"CA",Latitude:37.6166,Longitude:-118.8166},KMYV:{StationId:"KMYV",City:"Marysville",State:"CA",Latitude:39.1,Longitude:-121.5666},KMHR:{StationId:"KMHR",City:"Mather Field",State:"CA",Latitude:38.5333,Longitude:-121.2833},KMCC:{StationId:"KMCC",City:"Mcclellan Afb",State:"CA",Latitude:38.6666,Longitude:-121.4},KMCE:{StationId:"KMCE",City:"Merced",State:"CA",Latitude:37.2833,Longitude:-120.5},KMER:{StationId:"KMER",City:"Merced/Castle Af",State:"CA",Latitude:37.3833,Longitude:-120.5666},KNKX:{StationId:"KNKX",City:"Miramar Nas/San",State:"CA",Latitude:32.8666,Longitude:-117.1333},KMZB:{StationId:"KMZB",City:"Mission Bay Vor",State:"CA",Latitude:32.7833,Longitude:-117.2333},KMOD:{StationId:"KMOD",City:"Modesto",State:"CA",Latitude:37.6166,Longitude:-120.95},KNUQ:{StationId:"KNUQ",City:"Moffett Nas/Mtn",State:"CA",Latitude:37.4,Longitude:-122.05},KMHV:{StationId:"KMHV",City:"Mojave",State:"CA",Latitude:35.0666,Longitude:-118.15},KSIY:{StationId:"KSIY",City:"Montague/Siskiyo",State:"CA",Latitude:41.7666,Longitude:-122.4666},KMRY:{StationId:"KMRY",City:"Monterey",State:"CA",Latitude:36.5833,Longitude:-121.85},KMHS:{StationId:"KMHS",City:"Mount Shasta",State:"CA",Latitude:41.3166,Longitude:-122.3166},KMWS:{StationId:"KMWS",City:"Mount Wilson",State:"CA",Latitude:34.2333,Longitude:-118.05},KF70:{StationId:"KF70",City:"Murrieta/Temecul",State:"CA",Latitude:33.5666,Longitude:-117.1333},KAPC:{StationId:"KAPC",City:"Napa",State:"CA",Latitude:38.2,Longitude:-122.2833},KEED:{StationId:"KEED",City:"Needles",State:"CA",Latitude:34.7666,Longitude:-114.6166},K3A6:{StationId:"K3A6",City:"Newhall",State:"CA",Latitude:34.3666,Longitude:-118.5666},KNZY:{StationId:"KNZY",City:"North Island Nas",State:"CA",Latitude:32.7,Longitude:-117.2166},KDVO:{StationId:"KDVO",City:"Novato/Gnoss Fld",State:"CA",Latitude:38.15,Longitude:-122.55},KOAK:{StationId:"KOAK",City:"Oakland",State:"CA",Latitude:37.7166,Longitude:-122.2333},KZOA:{StationId:"KZOA",City:"Oakland/Artcc",State:"CA",Latitude:37.55,Longitude:-122.0166},KOKB:{StationId:"KOKB",City:"Oceanside",State:"CA",Latitude:33.2166,Longitude:-117.35},KNXF:{StationId:"KNXF",City:"Oceanside/Red-B",State:"CA",Latitude:33.2833,Longitude:-117.45},KONT:{StationId:"KONT",City:"Ontario",State:"CA",Latitude:34.05,Longitude:-117.5833},KSOX:{StationId:"KSOX",City:"Orange Cty/88D",State:"CA",Latitude:33.8166,Longitude:-117.6333},KVBX:{StationId:"KVBX",City:"Orcutt Oil/Vbg",State:"CA",Latitude:34.8333,Longitude:-120.4},KOVE:{StationId:"KOVE",City:"Oroville",State:"CA",Latitude:39.5,Longitude:-121.6166},KOXR:{StationId:"KOXR",City:"Oxnard",State:"CA",Latitude:34.2,Longitude:-119.2},KPSP:{StationId:"KPSP",City:"Palm Springs",State:"CA",Latitude:33.8166,Longitude:-116.5},KPMD:{StationId:"KPMD",City:"Palmdale",State:"CA",Latitude:34.6333,Longitude:-118.0833},KGXA:{StationId:"KGXA",City:"Palmdale",State:"CA",Latitude:34.5666,Longitude:-117.6666},KPAO:{StationId:"KPAO",City:"Palo Alto",State:"CA",Latitude:37.4666,Longitude:-122.1166},KPRB:{StationId:"KPRB",City:"Paso Robles",State:"CA",Latitude:35.6666,Longitude:-120.6333},KO69:{StationId:"KO69",City:"Petaluma",State:"CA",Latitude:38.25,Longitude:-122.6},KPVF:{StationId:"KPVF",City:"Placerville",State:"CA",Latitude:38.7166,Longitude:-120.75},KNTD:{StationId:"KNTD",City:"Point Mugu Nas",State:"CA",Latitude:34.1166,Longitude:-119.1166},KPYE:{StationId:"KPYE",City:"Point Reyes Vor",State:"CA",Latitude:38.0833,Longitude:-122.8666},KPTV:{StationId:"KPTV",City:"Porterville",State:"CA",Latitude:36.0166,Longitude:-119.0666},K87Q:{StationId:"K87Q",City:"Pt. Piedras Blan",State:"CA",Latitude:35.6666,Longitude:-121.2833},KRBL:{StationId:"KRBL",City:"Red Bluff",State:"CA",Latitude:40.15,Longitude:-122.25},KRDD:{StationId:"KRDD",City:"Redding",State:"CA",Latitude:40.5166,Longitude:-122.3},KREI:{StationId:"KREI",City:"Redlands",State:"CA",Latitude:34.0833,Longitude:-117.15},KO88:{StationId:"KO88",City:"Rio Vista",State:"CA",Latitude:38.2,Longitude:-121.7},KRAL:{StationId:"KRAL",City:"Riverside",State:"CA",Latitude:33.95,Longitude:-117.45},KRIV:{StationId:"KRIV",City:"Riverside/March",State:"CA",Latitude:33.8666,Longitude:-117.2666},KRNM:{StationId:"KRNM",City:"Ramona",State:"CA",Latitude:33.0333,Longitude:-116.9166},KSAC:{StationId:"KSAC",City:"Sacramento",State:"CA",Latitude:38.5,Longitude:-121.5},KSTO:{StationId:"KSTO",City:"Sacramento/Wfo",State:"CA",Latitude:38.5,Longitude:-121.5},KRSA:{StationId:"KRSA",City:"Sacramento/Rfc",State:"CA",Latitude:38.5,Longitude:-121.5},KDAX:{StationId:"KDAX",City:"Sacramento/88D",State:"CA",Latitude:38.5,Longitude:-121.6833},KSMF:{StationId:"KSMF",City:"Sacramento/Metro",State:"CA",Latitude:38.7,Longitude:-121.6},KSNS:{StationId:"KSNS",City:"Salinas",State:"CA",Latitude:36.6666,Longitude:-121.6},KSBD:{StationId:"KSBD",City:"San Bernardino",State:"CA",Latitude:34.0833,Longitude:-117.25},KSQL:{StationId:"KSQL",City:"San Carlos Airpo",State:"CA",Latitude:37.5166,Longitude:-122.25},KNUC:{StationId:"KNUC",City:"San Clemente Is.",State:"CA",Latitude:33.0166,Longitude:-118.5666},KSAN:{StationId:"KSAN",City:"San Diego",State:"CA",Latitude:32.7333,Longitude:-117.1833},KMYF:{StationId:"KMYF",City:"San Diego/Mntgmy",State:"CA",Latitude:32.8166,Longitude:-117.1333},KSDM:{StationId:"KSDM",City:"San Diego/Brown",State:"CA",Latitude:32.5833,Longitude:-117},KSEE:{StationId:"KSEE",City:"San Diego/Santee",State:"CA",Latitude:32.8166,Longitude:-116.9666},KSGX:{StationId:"KSGX",City:"San Diego/Wfo",State:"CA",Latitude:32.7333,Longitude:-117.1666},KSFO:{StationId:"KSFO",City:"San Francisco",State:"CA",Latitude:37.6166,Longitude:-122.3666},KSJC:{StationId:"KSJC",City:"San Jose",State:"CA",Latitude:37.3666,Longitude:-121.9166},KRHV:{StationId:"KRHV",City:"San Jose/Reid",State:"CA",Latitude:37.3166,Longitude:-121.8166},KSBP:{StationId:"KSBP",City:"San Luis Obispo",State:"CA",Latitude:35.2333,Longitude:-120.6333},KE16:{StationId:"KE16",City:"San Martin",State:"CA",Latitude:37.0833,Longitude:-121.6},KNSI:{StationId:"KNSI",City:"San Nicolas Isla",State:"CA",Latitude:33.2166,Longitude:-119.45},KSDB:{StationId:"KSDB",City:"Sandberg",State:"CA",Latitude:34.75,Longitude:-118.7166},KSNA:{StationId:"KSNA",City:"Costa Mesa",State:"CA",Latitude:33.6666,Longitude:-117.8666},KSBA:{StationId:"KSBA",City:"Santa Barbara",State:"CA",Latitude:34.4333,Longitude:-119.85},KRZS:{StationId:"KRZS",City:"Santa Barb(Vor)",State:"CA",Latitude:34.5166,Longitude:-119.7666},KMUX:{StationId:"KMUX",City:"Santa Clar/88D",State:"CA",Latitude:37.15,Longitude:-121.9},KSMX:{StationId:"KSMX",City:"Santa Maria",State:"CA",Latitude:34.9,Longitude:-120.45},KSMO:{StationId:"KSMO",City:"Santa Monica",State:"CA",Latitude:34.0166,Longitude:-118.45},KSTS:{StationId:"KSTS",City:"Santa Rosa",State:"CA",Latitude:38.5,Longitude:-122.8166},KIZA:{StationId:"KIZA",City:"Santa Ynez",State:"CA",Latitude:34.6,Longitude:-120.0666},KO87:{StationId:"KO87",City:"Shelter Cove",State:"CA",Latitude:40.0166,Longitude:-124.0666},KTVL:{StationId:"KTVL",City:"South Lake Tahoe",State:"CA",Latitude:38.9,Longitude:-120},KSCK:{StationId:"KSCK",City:"Stockton",State:"CA",Latitude:37.8833,Longitude:-121.2166},KSVE:{StationId:"KSVE",City:"Susanville Muni",State:"CA",Latitude:40.3666,Longitude:-120.5666},KTRM:{StationId:"KTRM",City:"Thermal/Palm Spg",State:"CA",Latitude:33.6333,Longitude:-116.1666},KTOA:{StationId:"KTOA",City:"Torrance Municip",State:"CA",Latitude:33.7833,Longitude:-118.3166},KSUU:{StationId:"KSUU",City:"Travis Afb/Fairf",State:"CA",Latitude:38.2666,Longitude:-121.9166},KTRK:{StationId:"KTRK",City:"Truckee Tahoe",State:"CA",Latitude:39.3166,Longitude:-120.1166},KTSP:{StationId:"KTSP",City:"Tehachapi",State:"CA",Latitude:35.1333,Longitude:-118.4333},KO86:{StationId:"KO86",City:"Trinity Center",State:"CA",Latitude:40.9833,Longitude:-122.7},KNXP:{StationId:"KNXP",City:"Twentynine Palms",State:"CA",Latitude:34.2833,Longitude:-116.1666},KUKI:{StationId:"KUKI",City:"Ukiah",State:"CA",Latitude:39.1166,Longitude:-123.2},KENI:{StationId:"KENI",City:"Ukiah(Vor)",State:"CA",Latitude:39.05,Longitude:-123.2666},KVCB:{StationId:"KVCB",City:"Vacaville",State:"CA",Latitude:38.3833,Longitude:-121.95},KVNY:{StationId:"KVNY",City:"Van Nuys",State:"CA",Latitude:34.2166,Longitude:-118.4833},KVBG:{StationId:"KVBG",City:"Vandenberg Afb",State:"CA",Latitude:34.7333,Longitude:-120.5833},KXVW:{StationId:"KXVW",City:"Vandenberg Range",State:"CA",Latitude:34.7166,Longitude:-120.5666},KVTX:{StationId:"KVTX",City:"Ventura Cty/88D",State:"CA",Latitude:34.4166,Longitude:-119.1833},KVCV:{StationId:"KVCV",City:"Victorville",State:"CA",Latitude:34.5833,Longitude:-117.3833},KVIS:{StationId:"KVIS",City:"Visalia Muni",State:"CA",Latitude:36.3166,Longitude:-119.4},KWVI:{StationId:"KWVI",City:"Watsonville",State:"CA",Latitude:36.9333,Longitude:-121.7833},KO54:{StationId:"KO54",City:"Weaverville",State:"CA",Latitude:40.75,Longitude:-122.9166},KO00:{StationId:"KO00",City:"Alturas",State:"CA",Latitude:41.4833,Longitude:-120.5666},KS11:{StationId:"KS11",City:"Alturas",State:"CA",Latitude:41.5,Longitude:-120.5166},K92Q:{StationId:"K92Q",City:"Bodega Bay",State:"CA",Latitude:38.3166,Longitude:-123.05},KNRC:{StationId:"KNRC",City:"Crows Landing",State:"CA",Latitude:37.4,Longitude:-121.1},KNZJ:{StationId:"KNZJ",City:"El Toro Mcas",State:"CA",Latitude:33.6666,Longitude:-117.7166},KOAR:{StationId:"KOAR",City:"Fort Ord/Fritzsc",State:"CA",Latitude:36.6666,Longitude:-121.7666},K1O5:{StationId:"K1O5",City:"Montague/Yreka",State:"CA",Latitude:41.7333,Longitude:-122.5333},KL32:{StationId:"KL32",City:"Oceanside",State:"CA",Latitude:33.2166,Longitude:-117.35},K53Q:{StationId:"K53Q",City:"Pilar Point Afs",State:"CA",Latitude:37.5,Longitude:-122.5},KPGU:{StationId:"KPGU",City:"Point Arguello",State:"CA",Latitude:34.5666,Longitude:-120.35},KPAA:{StationId:"KPAA",City:"Point Arena",State:"CA",Latitude:38.95,Longitude:-123.2666},KL39:{StationId:"KL39",City:"Romona",State:"CA",Latitude:33.0333,Longitude:-116.9166},KRIU:{StationId:"KRIU",City:"Rancho Murieta",State:"CA",Latitude:38.4833,Longitude:-121.1},K4SU:{StationId:"K4SU",City:"Superior Valley",State:"CA",Latitude:35.3333,Longitude:-117.1},KNTK:{StationId:"KNTK",City:"Tustin Mcas",State:"CA",Latitude:33.7,Longitude:-117.8166},KO45:{StationId:"KO45",City:"Vacaville",State:"CA",Latitude:38.3833,Longitude:-121.95},KRIX:{StationId:"KRIX",City:"March Afb/88D",State:"CA",Latitude:33.55,Longitude:-117.4333},KDEN:{StationId:"KDEN",City:"Denver (Dia)",State:"CO",Latitude:39.85,Longitude:-104.65},KAKO:{StationId:"KAKO",City:"Akron",State:"CO",Latitude:40.1666,Longitude:-103.2166},KALS:{StationId:"KALS",City:"Alamosa",State:"CO",Latitude:37.4333,Longitude:-105.8666},KASE:{StationId:"KASE",City:"Aspen",State:"CO",Latitude:39.2333,Longitude:-106.8666},K0CO:{StationId:"K0CO",City:"Berthoud Pass",State:"CO",Latitude:39.8,Longitude:-105.7666},KBOU:{StationId:"KBOU",City:"Boulder Den/Wfo",State:"CO",Latitude:40,Longitude:-105.3333},KBJC:{StationId:"KBJC",City:"Broomfield/Jeffc",State:"CO",Latitude:39.9,Longitude:-105.1},KBKF:{StationId:"KBKF",City:"Buckley Angb/Den",State:"CO",Latitude:39.7166,Longitude:-104.75},KITR:{StationId:"KITR",City:"Burlington",State:"CO",Latitude:39.2333,Longitude:-102.2833},K1V6:{StationId:"K1V6",City:"Canon City",State:"CO",Latitude:38.4333,Longitude:-105.1},KCWN:{StationId:"KCWN",City:"Cheyenne Mtn",State:"CO",Latitude:38.75,Longitude:-104.85},KCOS:{StationId:"KCOS",City:"Colorado Springs",State:"CO",Latitude:38.8166,Longitude:-104.6833},KFLY:{StationId:"KFLY",City:"Co Spngs Meadow",State:"CO",Latitude:38.95,Longitude:-104.5666},KCEZ:{StationId:"KCEZ",City:"Cortez",State:"CO",Latitude:37.3,Longitude:-108.6333},KCAG:{StationId:"KCAG",City:"Craig",State:"CO",Latitude:40.5,Longitude:-107.5166},KAPA:{StationId:"KAPA",City:"Denver/Arapahoe",State:"CO",Latitude:39.5666,Longitude:-104.85},KFTG:{StationId:"KFTG",City:"Denver F. Range",State:"CO",Latitude:39.7833,Longitude:-104.55},KZDV:{StationId:"KZDV",City:"Denver/Artcc",State:"CO",Latitude:40.1833,Longitude:-105.1333},KDNR:{StationId:"KDNR",City:"Denver/Stapleton",State:"CO",Latitude:39.75,Longitude:-104.8666},KDVC:{StationId:"KDVC",City:"Dove Creek",State:"CO",Latitude:37.8,Longitude:-108.9166},KDRO:{StationId:"KDRO",City:"Durango",State:"CO",Latitude:37.15,Longitude:-107.7666},KEGE:{StationId:"KEGE",City:"Eagle Co. Region",State:"CO",Latitude:39.6333,Longitude:-106.9166},KDBL:{StationId:"KDBL",City:"Red Table Vor",State:"CO",Latitude:39.4333,Longitude:-106.9},KFCS:{StationId:"KFCS",City:"Fort Carson",State:"CO",Latitude:38.6666,Longitude:-104.7666},KFNL:{StationId:"KFNL",City:"Ft Collins/Lovel",State:"CO",Latitude:40.45,Longitude:-105.0166},KGJT:{StationId:"KGJT",City:"Grand Junction",State:"CO",Latitude:39.1166,Longitude:-108.5166},KJNC:{StationId:"KJNC",City:"Grand Junction",State:"CO",Latitude:39.0666,Longitude:-108.8},KGJX:{StationId:"KGJX",City:"Grand Junc/Mesa",State:"CO",Latitude:39.0666,Longitude:-108.2166},KGXY:{StationId:"KGXY",City:"Greeley/Weld",State:"CO",Latitude:40.4166,Longitude:-104.6166},KGUC:{StationId:"KGUC",City:"Gunnison",State:"CO",Latitude:38.5166,Longitude:-106.9166},KHBU:{StationId:"KHBU",City:"Gunnison(Vor)",State:"CO",Latitude:38.45,Longitude:-107.0333},KCHE:{StationId:"KCHE",City:"Hayden Vor",State:"CO",Latitude:40.4833,Longitude:-107.2166},KHDN:{StationId:"KHDN",City:"Hayden/Yampa",State:"CO",Latitude:40.4666,Longitude:-107.2166},KLHX:{StationId:"KLHX",City:"La Junta",State:"CO",Latitude:38.05,Longitude:-103.5166},KLAA:{StationId:"KLAA",City:"Lamar",State:"CO",Latitude:38.0666,Longitude:-102.6833},KLXV:{StationId:"KLXV",City:"Leadville",State:"CO",Latitude:39.2333,Longitude:-106.3166},KLIC:{StationId:"KLIC",City:"Limon",State:"CO",Latitude:39.2666,Longitude:-103.6666},KEEO:{StationId:"KEEO",City:"Meeker",State:"CO",Latitude:40.05,Longitude:-107.8833},KMTJ:{StationId:"KMTJ",City:"Montrose",State:"CO",Latitude:38.5,Longitude:-107.9},KAIB:{StationId:"KAIB",City:"Nucla/Hopkins F",State:"CO",Latitude:38.2333,Longitude:-108.5666},KPEF:{StationId:"KPEF",City:"Peterson Afb",State:"CO",Latitude:38.7833,Longitude:-104.7166},KPUX:{StationId:"KPUX",City:"Pueblo Cty 88D",State:"CO",Latitude:38.4666,Longitude:-104.1833},KPUB:{StationId:"KPUB",City:"Pueblo",State:"CO",Latitude:38.2833,Longitude:-104.5},KRIL:{StationId:"KRIL",City:"Rifle",State:"CO",Latitude:39.5333,Longitude:-107.7333},K04V:{StationId:"K04V",City:"Saguache Muni",State:"CO",Latitude:38.1,Longitude:-106.1666},KSHM:{StationId:"KSHM",City:"Schriever Afb",State:"CO",Latitude:38.8,Longitude:-104.5166},KSPD:{StationId:"KSPD",City:"Springfield",State:"CO",Latitude:37.2833,Longitude:-102.6166},KSBS:{StationId:"KSBS",City:"Steamboat Spring",State:"CO",Latitude:40.5166,Longitude:-106.8666},K3MW:{StationId:"K3MW",City:"Mt Werner Sbs",State:"CO",Latitude:40.45,Longitude:-106.75},KTEX:{StationId:"KTEX",City:"Telluride Region",State:"CO",Latitude:37.95,Longitude:-107.9},KTBE:{StationId:"KTBE",City:"Tobe/Vor",State:"CO",Latitude:37.2666,Longitude:-103.6},KTAD:{StationId:"KTAD",City:"Trinidad/Animas",State:"CO",Latitude:37.2666,Longitude:-104.3333},KAFF:{StationId:"KAFF",City:"Usaf Academy/Cos",State:"CO",Latitude:38.9666,Longitude:-104.8166},K4V5:{StationId:"K4V5",City:"Durango(Awrs)",State:"CO",Latitude:37.2833,Longitude:-107.8666},KFCL:{StationId:"KFCL",City:"Fort Collins",State:"CO",Latitude:40.5833,Longitude:-105.0833},K4FC:{StationId:"K4FC",City:"Fraser",State:"CO",Latitude:39.95,Longitude:-105.8333},K2V9:{StationId:"K2V9",City:"Gunnison/Awrs",State:"CO",Latitude:38.6,Longitude:-106.9166},K4LJ:{StationId:"K4LJ",City:"Lamar",State:"CO",Latitude:38.0833,Longitude:-102.6166},KS29:{StationId:"KS29",City:"Salida",State:"CO",Latitude:38.5166,Longitude:-106.0166},KC96:{StationId:"KC96",City:"Winter Park",State:"CO",Latitude:40,Longitude:-105.8666},KYMA:{StationId:"KYMA",City:"Yuma",State:"CO",Latitude:40.1,Longitude:-102.7166},KFLA:{StationId:"KFLA",City:"Flagler",State:"CO",Latitude:39.2833,Longitude:-103.0666},K72C:{StationId:"K72C",City:"Kirk",State:"CO",Latitude:39.6,Longitude:-102.5666},KSTK:{StationId:"KSTK",City:"Sterling",State:"CO",Latitude:40.6166,Longitude:-103.2666},KSTR:{StationId:"KSTR",City:"Stratton",State:"CO",Latitude:39.3,Longitude:-102.6},KCCU:{StationId:"KCCU",City:"Red Cliff Pass",State:"CO",Latitude:39.4833,Longitude:-106.15},K4V0:{StationId:"K4V0",City:"Rangely",State:"CO",Latitude:40.1,Longitude:-108.7666},KAEJ:{StationId:"KAEJ",City:"Buena Vista",State:"CO",Latitude:38.8166,Longitude:-106.1166},KAJZ:{StationId:"KAJZ",City:"Delta/Blake Fld",State:"CO",Latitude:38.7833,Longitude:-108.0666},KANK:{StationId:"KANK",City:"Salida",State:"CO",Latitude:38.5333,Longitude:-106.05},KBDU:{StationId:"KBDU",City:"Boulder Muni",State:"CO",Latitude:40.0333,Longitude:-105.2333},KABH:{StationId:"KABH",City:"Ellicott-B Afa",State:"CO",Latitude:38.75,Longitude:-104.3},KEIK:{StationId:"KEIK",City:"Erie Muni",State:"CO",Latitude:40.0166,Longitude:-105.05},KFMM:{StationId:"KFMM",City:"Fort Morgan",State:"CO",Latitude:40.3333,Longitude:-103.8},KGNB:{StationId:"KGNB",City:"Granby/Grand Co",State:"CO",Latitude:40.0833,Longitude:-105.9166},KHEQ:{StationId:"KHEQ",City:"Holyoke",State:"CO",Latitude:40.5666,Longitude:-102.2833},KLMO:{StationId:"KLMO",City:"Longmont/Vbrand",State:"CO",Latitude:40.1666,Longitude:-105.1666},KPSO:{StationId:"KPSO",City:"Pagosa Springs",State:"CO",Latitude:37.2833,Longitude:-107.05},KCPW:{StationId:"KCPW",City:"Wolf Creek Pass",State:"CO",Latitude:37.45,Longitude:-106.8},KCRV:{StationId:"KCRV",City:"Corona Pass",State:"CO",Latitude:40.05,Longitude:-105.5833},KMNH:{StationId:"KMNH",City:"Monument/Elbert",State:"CO",Latitude:39.2166,Longitude:-104.65},KMYP:{StationId:"KMYP",City:"Monarch Pass",State:"CO",Latitude:38.4833,Longitude:-106.3166},KVTP:{StationId:"KVTP",City:"La Veta Pass",State:"CO",Latitude:37.5,Longitude:-105.1666},K33V:{StationId:"K33V",City:"Walden",State:"CO",Latitude:40.75,Longitude:-106.2833},K20V:{StationId:"K20V",City:"Kremmling Awos",State:"CO",Latitude:40.05,Longitude:-106.3666},K4BM:{StationId:"K4BM",City:"Wilkerson Pass",State:"CO",Latitude:39.05,Longitude:-105.5166},K5SM:{StationId:"K5SM",City:"Sunlight",State:"CO",Latitude:39.4333,Longitude:-107.3833},K7BM:{StationId:"K7BM",City:"Cottonwood Pass",State:"CO",Latitude:38.7833,Longitude:-106.2166},K2V5:{StationId:"K2V5",City:"Wray",State:"CO",Latitude:40.1,Longitude:-102.25},KBDR:{StationId:"KBDR",City:"Bridgeport",State:"CT",Latitude:41.1666,Longitude:-73.1333},KSNC:{StationId:"KSNC",City:"Chester",State:"CT",Latitude:41.3833,Longitude:-72.5},KDXR:{StationId:"KDXR",City:"Danbury",State:"CT",Latitude:41.3666,Longitude:-73.4833},KGON:{StationId:"KGON",City:"Groton/New Londo",State:"CT",Latitude:41.3333,Longitude:-72.05},KHFD:{StationId:"KHFD",City:"Hartford/Brainar",State:"CT",Latitude:41.7333,Longitude:-72.65},KMMK:{StationId:"KMMK",City:"Meriden",State:"CT",Latitude:41.5166,Longitude:-72.8333},KHVN:{StationId:"KHVN",City:"New Haven/Tweed",State:"CT",Latitude:41.2666,Longitude:-72.8666},KOXC:{StationId:"KOXC",City:"Oxford/Waterbury",State:"CT",Latitude:41.4666,Longitude:-73.1333},KIJD:{StationId:"KIJD",City:"Willimantic",State:"CT",Latitude:41.75,Longitude:-72.1833},KBDL:{StationId:"KBDL",City:"Windsor Locks",State:"CT",Latitude:41.9333,Longitude:-72.6833},K5B0:{StationId:"K5B0",City:"Mansfield",State:"CT",Latitude:41.75,Longitude:-72.1666},K5B3:{StationId:"K5B3",City:"Putnam",State:"CT",Latitude:41.0666,Longitude:-73.6166},KDOV:{StationId:"KDOV",City:"Dover Afb",State:"DE",Latitude:39.1166,Longitude:-75.4666},KDOX:{StationId:"KDOX",City:"Dover/Ellendale",State:"DE",Latitude:38.8333,Longitude:-75.4333},KGED:{StationId:"KGED",City:"Georgetown",State:"DE",Latitude:38.6833,Longitude:-75.3666},KILG:{StationId:"KILG",City:"Wilmington",State:"DE",Latitude:39.6666,Longitude:-75.6},KAAF:{StationId:"KAAF",City:"Apalachicola",State:"FL",Latitude:29.7333,Longitude:-85.0333},KBOW:{StationId:"KBOW",City:"Bartow Municipal",State:"FL",Latitude:27.9333,Longitude:-81.7666},KBCT:{StationId:"KBCT",City:"Boca Raton",State:"FL",Latitude:26.3833,Longitude:-80.1},K1J0:{StationId:"K1J0",City:"Bonifay Tri-Cty",State:"FL",Latitude:30.85,Longitude:-85.6},KBKV:{StationId:"KBKV",City:"Brooksville",State:"FL",Latitude:28.4666,Longitude:-82.45},KXMR:{StationId:"KXMR",City:"Cape Canaveral",State:"FL",Latitude:28.4666,Longitude:-80.5666},KNZC:{StationId:"KNZC",City:"Cecil Field Nas",State:"FL",Latitude:30.2166,Longitude:-81.8666},KCEW:{StationId:"KCEW",City:"Crestview",State:"FL",Latitude:30.7833,Longitude:-86.5166},KCTY:{StationId:"KCTY",City:"Cross City",State:"FL",Latitude:29.6333,Longitude:-83.1},KCGC:{StationId:"KCGC",City:"Crystal River",State:"FL",Latitude:28.8666,Longitude:-82.5666},KDAB:{StationId:"KDAB",City:"Daytona Beach",State:"FL",Latitude:29.1833,Longitude:-81.0666},K54J:{StationId:"K54J",City:"De Funiak Sprngs",State:"FL",Latitude:30.7333,Longitude:-86.15},KDED:{StationId:"KDED",City:"Deland",State:"FL",Latitude:29.0666,Longitude:-81.2833},KDTS:{StationId:"KDTS",City:"Destin",State:"FL",Latitude:30.4,Longitude:-86.4666},KEGI:{StationId:"KEGI",City:"Duke Fld/Eglin",State:"FL",Latitude:30.6333,Longitude:-86.5166},KEVX:{StationId:"KEVX",City:"Eglin Afb/88D",State:"FL",Latitude:30.5666,Longitude:-85.9166},KVPS:{StationId:"KVPS",City:"Eglin Afb/Valpar",State:"FL",Latitude:30.4666,Longitude:-86.5166},KEGC:{StationId:"KEGC",City:"Everglades City",State:"FL",Latitude:25.85,Longitude:-81.3833},KFHB:{StationId:"KFHB",City:"Fernandina Beach",State:"FL",Latitude:30.6166,Longitude:-81.4666},KFLM:{StationId:"KFLM",City:"Flamingo/Monroe",State:"FL",Latitude:25.1333,Longitude:-80.9166},KFLL:{StationId:"KFLL",City:"Ft Lauderd/Holly",State:"FL",Latitude:26.0666,Longitude:-80.15},KFXE:{StationId:"KFXE",City:"Ft Lauderd/Exec",State:"FL",Latitude:26.2,Longitude:-80.1833},KRSW:{StationId:"KRSW",City:"Fort Myers",State:"FL",Latitude:26.5333,Longitude:-81.75},KFMY:{StationId:"KFMY",City:"Fort Myers",State:"FL",Latitude:26.5833,Longitude:-81.8666},KFPR:{StationId:"KFPR",City:"Fort Pierce",State:"FL",Latitude:27.5,Longitude:-80.3833},KGNV:{StationId:"KGNV",City:"Gainesville",State:"FL",Latitude:29.7,Longitude:-82.2833},KHWO:{StationId:"KHWO",City:"Hollywood",State:"FL",Latitude:26,Longitude:-80.2333},KHST:{StationId:"KHST",City:"Homestead Afb",State:"FL",Latitude:25.4666,Longitude:-80.3666},KHRT:{StationId:"KHRT",City:"Hurlburt Field",State:"FL",Latitude:30.4166,Longitude:-86.6666},KIMM:{StationId:"KIMM",City:"Immokalee",State:"FL",Latitude:26.4333,Longitude:-81.4},KINF:{StationId:"KINF",City:"Inverness",State:"FL",Latitude:28.8,Longitude:-82.3166},KCRG:{StationId:"KCRG",City:"Jacksonvil/Craig",State:"FL",Latitude:30.3333,Longitude:-81.5166},KNIP:{StationId:"KNIP",City:"Jacksonville Nas",State:"FL",Latitude:30.2166,Longitude:-81.6666},KJAX:{StationId:"KJAX",City:"Jacksonville",State:"FL",Latitude:30.5,Longitude:-81.6833},KZJX:{StationId:"KZJX",City:"Jacksonvil/Artcc",State:"FL",Latitude:30.6833,Longitude:-81.9},KVQQ:{StationId:"KVQQ",City:"Jacksonvil/Cecil",State:"FL",Latitude:30.2166,Longitude:-81.8833},KNEN:{StationId:"KNEN",City:"Jacksonvil/Naval",State:"FL",Latitude:30.35,Longitude:-81.8833},K42J:{StationId:"K42J",City:"Keystone Heights",State:"FL",Latitude:29.85,Longitude:-82.05},KNQX:{StationId:"KNQX",City:"Key West Nas",State:"FL",Latitude:24.5666,Longitude:-81.6666},KEYW:{StationId:"KEYW",City:"Key West",State:"FL",Latitude:24.55,Longitude:-81.75},KKEY:{StationId:"KKEY",City:"Key West",State:"FL",Latitude:24.55,Longitude:-81.7833},KBYX:{StationId:"KBYX",City:"Key W/Boca Chica",State:"FL",Latitude:24.6,Longitude:-81.7},KISM:{StationId:"KISM",City:"Kissimmee/Orland",State:"FL",Latitude:28.2833,Longitude:-81.4333},KX14:{StationId:"KX14",City:"La Belle",State:"FL",Latitude:26.7333,Longitude:-81.4333},KLAL:{StationId:"KLAL",City:"Lakeland Regiona",State:"FL",Latitude:27.9666,Longitude:-82.0166},KLEE:{StationId:"KLEE",City:"Leesburg",State:"FL",Latitude:28.8166,Longitude:-81.8166},KMCF:{StationId:"KMCF",City:"Macdill Afb/Tamp",State:"FL",Latitude:27.85,Longitude:-82.5166},KMTH:{StationId:"KMTH",City:"Marathon",State:"FL",Latitude:24.7333,Longitude:-81.05},KMKY:{StationId:"KMKY",City:"Marco Island",State:"FL",Latitude:26,Longitude:-81.6666},KMAI:{StationId:"KMAI",City:"Marianna",State:"FL",Latitude:30.8333,Longitude:-85.1833},KNRB:{StationId:"KNRB",City:"Mayport Nas",State:"FL",Latitude:30.3833,Longitude:-81.4166},KMLB:{StationId:"KMLB",City:"Melbourne",State:"FL",Latitude:28.1,Longitude:-80.65},KCOI:{StationId:"KCOI",City:"Merritt Island",State:"FL",Latitude:28.3333,Longitude:-80.6833},KAMX:{StationId:"KAMX",City:"Miami/88D",State:"FL",Latitude:25.6166,Longitude:-80.4166},KMFL:{StationId:"KMFL",City:"Miami/Wfo",State:"FL",Latitude:25.75,Longitude:-80.3666},KTMB:{StationId:"KTMB",City:"Miami/Tamiami",State:"FL",Latitude:25.65,Longitude:-80.4333},KMIA:{StationId:"KMIA",City:"Miami",State:"FL",Latitude:25.8,Longitude:-80.2833},KZMA:{StationId:"KZMA",City:"Miami/Artcc",State:"FL",Latitude:25.7666,Longitude:-80.1833},KOPF:{StationId:"KOPF",City:"Miami/Opa Locka",State:"FL",Latitude:25.9166,Longitude:-80.2833},KMBF:{StationId:"KMBF",City:"Miami Beach",State:"FL",Latitude:25.7666,Longitude:-80.1333},KNDZ:{StationId:"KNDZ",City:"Milton/Whiting S",State:"FL",Latitude:30.7,Longitude:-87.0166},KAPF:{StationId:"KAPF",City:"Naples Municipal",State:"FL",Latitude:26.15,Longitude:-81.7666},KTTS:{StationId:"KTTS",City:"Nasa Shuttle Fcl",State:"FL",Latitude:28.6166,Longitude:-80.7166},KNHC:{StationId:"KNHC",City:"Natl Hurr Center",State:"FL",Latitude:25.7333,Longitude:-80.2666},KRRF:{StationId:"KRRF",City:"New Port Richey",State:"FL",Latitude:28.1833,Longitude:-82.6333},KEVB:{StationId:"KEVB",City:"New Smyrna Beach",State:"FL",Latitude:29.05,Longitude:-80.95},KOCF:{StationId:"KOCF",City:"Ocala Muni",State:"FL",Latitude:29.1666,Longitude:-82.2166},KOCR:{StationId:"KOCR",City:"Ocean Reef",State:"FL",Latitude:25.3,Longitude:-80.2666},KOBE:{StationId:"KOBE",City:"Okeechobee Cty",State:"FL",Latitude:27.2666,Longitude:-80.85},KMCO:{StationId:"KMCO",City:"Orlando",State:"FL",Latitude:28.4166,Longitude:-81.3333},KORL:{StationId:"KORL",City:"Orlando",State:"FL",Latitude:28.55,Longitude:-81.3333},KOMN:{StationId:"KOMN",City:"Ormond Beach Vor",State:"FL",Latitude:29.3,Longitude:-81.1166},KXFL:{StationId:"KXFL",City:"Palm Coast",State:"FL",Latitude:29.4666,Longitude:-81.2},KECP:{StationId:"KECP",City:"Panama City",State:"FL",Latitude:30.35,Longitude:-85.8},KCOF:{StationId:"KCOF",City:"Patrick Afb/Coco",State:"FL",Latitude:28.2333,Longitude:-80.6},KPNS:{StationId:"KPNS",City:"Pensacola",State:"FL",Latitude:30.4833,Longitude:-87.1833},KNPA:{StationId:"KNPA",City:"Pensacola Nas",State:"FL",Latitude:30.35,Longitude:-87.3166},K40J:{StationId:"K40J",City:"Perry Foley",State:"FL",Latitude:30.0666,Longitude:-83.5666},KPCM:{StationId:"KPCM",City:"Plant City Muni",State:"FL",Latitude:28,Longitude:-82.1666},KPMP:{StationId:"KPMP",City:"Pompano Beach",State:"FL",Latitude:26.25,Longitude:-80.1166},KX41:{StationId:"KX41",City:"Port Richey",State:"FL",Latitude:28.35,Longitude:-82.6166},KPGD:{StationId:"KPGD",City:"Punta Gorda",State:"FL",Latitude:26.9166,Longitude:-82},K2J9:{StationId:"K2J9",City:"Quincy",State:"FL",Latitude:30.6,Longitude:-84.55},KSFB:{StationId:"KSFB",City:"Sanford/Orlando",State:"FL",Latitude:28.7666,Longitude:-81.2166},KSRQ:{StationId:"KSRQ",City:"Sarasota/Bradent",State:"FL",Latitude:27.4,Longitude:-82.5666},KX26:{StationId:"KX26",City:"Sebastian",State:"FL",Latitude:27.8166,Longitude:-80.5},KSGJ:{StationId:"KSGJ",City:"St Augustine",State:"FL",Latitude:29.9666,Longitude:-81.3166},KPIE:{StationId:"KPIE",City:"St Petersburg",State:"FL",Latitude:27.9166,Longitude:-82.6833},KSPG:{StationId:"KSPG",City:"St Peters/Albert",State:"FL",Latitude:27.7666,Longitude:-82.6333},KSUA:{StationId:"KSUA",City:"Stuart/Witham",State:"FL",Latitude:27.1833,Longitude:-80.2166},KTLH:{StationId:"KTLH",City:"Tallahassee",State:"FL",Latitude:30.4,Longitude:-84.35},KTAE:{StationId:"KTAE",City:"Tallahassee/Wfo",State:"FL",Latitude:30.4,Longitude:-84.3333},KTPA:{StationId:"KTPA",City:"Tampa",State:"FL",Latitude:27.9666,Longitude:-82.5333},KTPF:{StationId:"KTPF",City:"Tampa/O Knight",State:"FL",Latitude:27.9166,Longitude:-82.45},KTBW:{StationId:"KTBW",City:"Tampa Bay/Ruskin",State:"FL",Latitude:27.7,Longitude:-82.4},KVDF:{StationId:"KVDF",City:"Tampa/Vandenburg",State:"FL",Latitude:28.0166,Longitude:-82.3333},KTIX:{StationId:"KTIX",City:"Titusville",State:"FL",Latitude:28.5,Longitude:-80.8},KPAM:{StationId:"KPAM",City:"Tyndall Afb",State:"FL",Latitude:30.0666,Longitude:-85.5666},KTDR:{StationId:"KTDR",City:"Tyndall Drone",State:"FL",Latitude:30.05,Longitude:-85.5166},KVNC:{StationId:"KVNC",City:"Venice",State:"FL",Latitude:27.0666,Longitude:-82.4333},KVRB:{StationId:"KVRB",City:"Vero Beach",State:"FL",Latitude:27.65,Longitude:-80.4166},KTRV:{StationId:"KTRV",City:"Vero Beach",State:"FL",Latitude:27.65,Longitude:-80.4166},KVVG:{StationId:"KVVG",City:"The Villages",State:"FL",Latitude:28.95,Longitude:-81.9666},KPBI:{StationId:"KPBI",City:"West Palm Beach",State:"FL",Latitude:26.6833,Longitude:-80.1},KNSE:{StationId:"KNSE",City:"Whiting Fld Nas",State:"FL",Latitude:30.7333,Longitude:-87.0166},KGIF:{StationId:"KGIF",City:"Winter Haven",State:"FL",Latitude:28.0666,Longitude:-81.75},KZPH:{StationId:"KZPH",City:"Zephyrhills",State:"FL",Latitude:28.2333,Longitude:-82.15},KAQQ:{StationId:"KAQQ",City:"Apalachicola",State:"FL",Latitude:29.7333,Longitude:-85.0333},K90J:{StationId:"K90J",City:"Astor",State:"FL",Latitude:29.1166,Longitude:-81.5666},KAGR:{StationId:"KAGR",City:"Avon Park",State:"FL",Latitude:27.65,Longitude:-81.3333},KX40:{StationId:"KX40",City:"Inverness",State:"FL",Latitude:28.8,Longitude:-82.3166},KPFN:{StationId:"KPFN",City:"Panama City",State:"FL",Latitude:30.2,Longitude:-85.6833},KQHY:{StationId:"KQHY",City:"Hurlbert",State:"FL",Latitude:30.4,Longitude:-86.65},KQBL:{StationId:"KQBL",City:"Hurlbert",State:"FL",Latitude:30.4,Longitude:-86.65},KABY:{StationId:"KABY",City:"Albany",State:"GA",Latitude:31.5333,Longitude:-84.2},KACJ:{StationId:"KACJ",City:"Americus",State:"GA",Latitude:32.1166,Longitude:-84.1833},KPZD:{StationId:"KPZD",City:"Pecan (Albany)",State:"GA",Latitude:31.65,Longitude:-84.3},KAMG:{StationId:"KAMG",City:"Alma",State:"GA",Latitude:31.5333,Longitude:-82.5},KAHN:{StationId:"KAHN",City:"Athens",State:"GA",Latitude:33.95,Longitude:-83.3333},KATL:{StationId:"KATL",City:"Atlanta",State:"GA",Latitude:33.6333,Longitude:-84.45},KFTY:{StationId:"KFTY",City:"Atlanta/Fulton",State:"GA",Latitude:33.7833,Longitude:-84.5166},KPUJ:{StationId:"KPUJ",City:"Atlanta/Paulding",State:"GA",Latitude:33.9166,Longitude:-84.9333},KATR:{StationId:"KATR",City:"Atlanta/Rfc",State:"GA",Latitude:33.3666,Longitude:-84.5666},KZTL:{StationId:"KZTL",City:"Atlanta/Artcc",State:"GA",Latitude:33.3833,Longitude:-84.3333},K6A2:{StationId:"K6A2",City:"Griffin-Spalding",State:"GA",Latitude:33.2333,Longitude:-84.2666},KDNL:{StationId:"KDNL",City:"Augusta/Daniel",State:"GA",Latitude:33.4666,Longitude:-82.0333},KAGS:{StationId:"KAGS",City:"Augusta/Bush",State:"GA",Latitude:33.3666,Longitude:-81.9666},KBGE:{StationId:"KBGE",City:"Bainbridge",State:"GA",Latitude:30.9666,Longitude:-84.6333},KDZJ:{StationId:"KDZJ",City:"Blairsville",State:"GA",Latitude:34.85,Longitude:-84},KBIJ:{StationId:"KBIJ",City:"Blakely Early C",State:"GA",Latitude:31.4,Longitude:-84.9},KSSI:{StationId:"KSSI",City:"Brunswick",State:"GA",Latitude:31.15,Longitude:-81.3833},KBQK:{StationId:"KBQK",City:"Brunswick/Glynco",State:"GA",Latitude:31.25,Longitude:-81.4666},K6A1:{StationId:"K6A1",City:"Butler",State:"GA",Latitude:32.5666,Longitude:-84.25},KCNI:{StationId:"KCNI",City:"Canton/Cherokee",State:"GA",Latitude:34.3166,Longitude:-84.4166},KCTJ:{StationId:"KCTJ",City:"Carrollton/Gray",State:"GA",Latitude:33.6333,Longitude:-85.15},KVPC:{StationId:"KVPC",City:"Cartersville",State:"GA",Latitude:34.1333,Longitude:-84.85},KCWV:{StationId:"KCWV",City:"Claxton/Evans Co",State:"GA",Latitude:32.2,Longitude:-81.8666},KCSG:{StationId:"KCSG",City:"Columbus",State:"GA",Latitude:32.5166,Longitude:-84.95},KCKF:{StationId:"KCKF",City:"Cordele",State:"GA",Latitude:31.9833,Longitude:-83.7666},K9A1:{StationId:"K9A1",City:"Covington",State:"GA",Latitude:33.6333,Longitude:-83.85},KDNN:{StationId:"KDNN",City:"Dalton",State:"GA",Latitude:34.7166,Longitude:-84.8666},KMGE:{StationId:"KMGE",City:"Dobbins Afb/Mari",State:"GA",Latitude:33.9166,Longitude:-84.5166},KDQH:{StationId:"KDQH",City:"Douglas Muni",State:"GA",Latitude:31.4833,Longitude:-82.8666},KDBN:{StationId:"KDBN",City:"Dublin",State:"GA",Latitude:32.5666,Longitude:-82.9833},KEZM:{StationId:"KEZM",City:"Eastman",State:"GA",Latitude:32.2166,Longitude:-83.1333},K27A:{StationId:"K27A",City:"Elberton Patz F",State:"GA",Latitude:34.1,Longitude:-82.8166},KFZG:{StationId:"KFZG",City:"Fitzgerald",State:"GA",Latitude:31.6833,Longitude:-83.2666},KLSF:{StationId:"KLSF",City:"Ft Benning/Colum",State:"GA",Latitude:32.3166,Longitude:-84.9666},KLHW:{StationId:"KLHW",City:"Ft Stewart/Wrigh",State:"GA",Latitude:31.8666,Longitude:-81.5666},KGVL:{StationId:"KGVL",City:"Gainesville",State:"GA",Latitude:34.2666,Longitude:-83.8333},K3J7:{StationId:"K3J7",City:"Greensboro",State:"GA",Latitude:33.6,Longitude:-83.1333},KAZE:{StationId:"KAZE",City:"Hazelhurst",State:"GA",Latitude:31.8833,Longitude:-82.65},KHOE:{StationId:"KHOE",City:"Homerville",State:"GA",Latitude:31.05,Longitude:-82.7833},K19A:{StationId:"K19A",City:"Jefferson",State:"GA",Latitude:34.1833,Longitude:-83.5666},KJES:{StationId:"KJES",City:"Jesup/Wayne Cty",State:"GA",Latitude:31.55,Longitude:-81.8833},KLGC:{StationId:"KLGC",City:"La Grange",State:"GA",Latitude:33,Longitude:-85.0666},KLZU:{StationId:"KLZU",City:"Lawrenceville",State:"GA",Latitude:33.9833,Longitude:-83.9666},KMCN:{StationId:"KMCN",City:"Macon",State:"GA",Latitude:32.6833,Longitude:-83.65},KRYY:{StationId:"KRYY",City:"Marietta Mccolum",State:"GA",Latitude:34.0166,Longitude:-84.6},KHQU:{StationId:"KHQU",City:"Mcduffie/Thomson",State:"GA",Latitude:33.5333,Longitude:-82.5166},KMLJ:{StationId:"KMLJ",City:"Milledgeville",State:"GA",Latitude:33.15,Longitude:-83.2333},KVAD:{StationId:"KVAD",City:"Moody Afb/Valdos",State:"GA",Latitude:30.9666,Longitude:-83.2},KVAX:{StationId:"KVAX",City:"Moody Afb/88D",State:"GA",Latitude:30.8833,Longitude:-83},KMGR:{StationId:"KMGR",City:"Moultrie Muni",State:"GA",Latitude:31.0833,Longitude:-83.8},KMUL:{StationId:"KMUL",City:"Moultrie/Spence",State:"GA",Latitude:31.1333,Longitude:-83.7},KCCO:{StationId:"KCCO",City:"Newnan",State:"GA",Latitude:33.3166,Longitude:-84.7666},KPDK:{StationId:"KPDK",City:"Peachtree/Dekalb",State:"GA",Latitude:33.8833,Longitude:-84.3},KFFC:{StationId:"KFFC",City:"Peachtree City",State:"GA",Latitude:33.35,Longitude:-84.5666},KALR:{StationId:"KALR",City:"Atlanta Rfc",State:"GA",Latitude:33.3666,Longitude:-84.5666},KJGX:{StationId:"KJGX",City:"Robins Afb/88D",State:"GA",Latitude:32.6833,Longitude:-83.35},KRMG:{StationId:"KRMG",City:"Rome",State:"GA",Latitude:34.35,Longitude:-85.1666},KSAV:{StationId:"KSAV",City:"Savannah",State:"GA",Latitude:32.1166,Longitude:-81.2},KSVN:{StationId:"KSVN",City:"Savannah/Hunter",State:"GA",Latitude:32.0166,Longitude:-81.15},KTBR:{StationId:"KTBR",City:"Statesboro",State:"GA",Latitude:32.4833,Longitude:-81.7333},KSBO:{StationId:"KSBO",City:"Swainsboro",State:"GA",Latitude:32.6166,Longitude:-82.3666},KJYL:{StationId:"KJYL",City:"Sylvania",State:"GA",Latitude:32.65,Longitude:-81.6},KTMA:{StationId:"KTMA",City:"Tifton",State:"GA",Latitude:31.4333,Longitude:-83.4833},KOPN:{StationId:"KOPN",City:"Thomaston Upson",State:"GA",Latitude:32.95,Longitude:-84.2666},KTVI:{StationId:"KTVI",City:"Thomasville",State:"GA",Latitude:30.9,Longitude:-83.8833},KTOC:{StationId:"KTOC",City:"Toccoa",State:"GA",Latitude:34.6,Longitude:-83.3},KODF:{StationId:"KODF",City:"Toccoa Vor",State:"GA",Latitude:34.7,Longitude:-83.3},KVLD:{StationId:"KVLD",City:"Valdosta Regiona",State:"GA",Latitude:30.7833,Longitude:-83.2666},KVDI:{StationId:"KVDI",City:"Vidalia Muni",State:"GA",Latitude:32.2,Longitude:-82.3666},KWRB:{StationId:"KWRB",City:"Warner Robins Af",State:"GA",Latitude:32.6166,Longitude:-83.5833},KIIY:{StationId:"KIIY",City:"Washington",State:"GA",Latitude:33.7833,Longitude:-82.8166},KAYS:{StationId:"KAYS",City:"Waycross/Ware Co",State:"GA",Latitude:31.25,Longitude:-82.4},KWDR:{StationId:"KWDR",City:"Winder/Barrow",State:"GA",Latitude:33.9833,Longitude:-83.6666},K11J:{StationId:"K11J",City:"Blakely Early C",State:"GA",Latitude:31.4,Longitude:-84.9},K47A:{StationId:"K47A",City:"Canton/Cherokee",State:"GA",Latitude:34.3166,Longitude:-84.4166},PHBK:{StationId:"PHBK",City:"Barking Sands/Ka",State:"HI",Latitude:22.0333,Longitude:-159.7833},PHSF:{StationId:"PHSF",City:"Bradshaw Aaf/Haw",State:"HI",Latitude:19.7666,Longitude:-155.55},PHHN:{StationId:"PHHN",City:"Hana",State:"HI",Latitude:20.8,Longitude:-156.0166},PHIK:{StationId:"PHIK",City:"Hickam Afb",State:"HI",Latitude:21.3166,Longitude:-157.9333},PHWR:{StationId:"PHWR",City:"Hickam Awc",State:"HI",Latitude:21.3166,Longitude:-157.9333},PHTO:{StationId:"PHTO",City:"Hilo",State:"HI",Latitude:19.7166,Longitude:-155.05},PHNL:{StationId:"PHNL",City:"Honolulu",State:"HI",Latitude:21.3333,Longitude:-157.9166},PHFO:{StationId:"PHFO",City:"Honolulu/Wfo",State:"HI",Latitude:21.3166,Longitude:-157.9166},PZHN:{StationId:"PZHN",City:"Honolulu/Artcc",State:"HI",Latitude:21.3166,Longitude:-157.9166},PHKP:{StationId:"PHKP",City:"Kaanapali",State:"HI",Latitude:20.9333,Longitude:-156.7},PHOG:{StationId:"PHOG",City:"Kahului",State:"HI",Latitude:20.9,Longitude:-156.4333},PHKO:{StationId:"PHKO",City:"Kailua/Kona",State:"HI",Latitude:19.7333,Longitude:-156.05},PHLU:{StationId:"PHLU",City:"Kalaupapa",State:"HI",Latitude:21.2166,Longitude:-156.9666},PHMU:{StationId:"PHMU",City:"Kamuela/Waimea",State:"HI",Latitude:20,Longitude:-155.6666},PHKM:{StationId:"PHKM",City:"Kohala 88D",State:"HI",Latitude:20.1333,Longitude:-155.7833},PHNG:{StationId:"PHNG",City:"Kaneohe Mcas",State:"HI",Latitude:21.4333,Longitude:-157.7666},PHAC:{StationId:"PHAC",City:"Kokee",State:"HI",Latitude:22.15,Longitude:-159.65},PHJR:{StationId:"PHJR",City:"Kalaeloa",State:"HI",Latitude:21.3166,Longitude:-158.0666},PHJH:{StationId:"PHJH",City:"Lahaina/West Mau",State:"HI",Latitude:20.9666,Longitude:-156.6666},PHNY:{StationId:"PHNY",City:"Lanai City Airpo",State:"HI",Latitude:20.7666,Longitude:-156.9333},PHLI:{StationId:"PHLI",City:"Lihue/Kauai Is",State:"HI",Latitude:21.9666,Longitude:-159.3333},PHMO:{StationId:"PHMO",City:"Molokai/Kukui",State:"HI",Latitude:21.1333,Longitude:-157.1833},PHMK:{StationId:"PHMK",City:"Molokai",State:"HI",Latitude:21.15,Longitude:-157.1},PHWA:{StationId:"PHWA",City:"Naalehu/S Hawaii",State:"HI",Latitude:19.1,Longitude:-155.5666},PHKI:{StationId:"PHKI",City:"Numila/S Kauai",State:"HI",Latitude:21.9,Longitude:-159.55},PHUP:{StationId:"PHUP",City:"Upolu",State:"HI",Latitude:20.2666,Longitude:-155.8666},PHNC:{StationId:"PHNC",City:"Pearl Harbor",State:"HI",Latitude:21.35,Longitude:-157.9333},PHHI:{StationId:"PHHI",City:"Wheeler Afb/Oahu",State:"HI",Latitude:21.4833,Longitude:-158.05},PHNA:{StationId:"PHNA",City:"Barbers Pt Nas",State:"HI",Latitude:21.3166,Longitude:-158.0666},PMDY:{StationId:"PMDY",City:"Midway Island Na",State:"HI",Latitude:28.2166,Longitude:-177.3666},KAXA:{StationId:"KAXA",City:"Algona",State:"IA",Latitude:43.0666,Longitude:-94.2666},KAMW:{StationId:"KAMW",City:"Ames",State:"IA",Latitude:41.9833,Longitude:-93.6166},KIKV:{StationId:"KIKV",City:"Ankeny",State:"IA",Latitude:41.6833,Longitude:-93.5666},KAIO:{StationId:"KAIO",City:"Atlantic",State:"IA",Latitude:41.3833,Longitude:-95.0333},KADU:{StationId:"KADU",City:"Audubon",State:"IA",Latitude:41.7,Longitude:-94.9166},KBNW:{StationId:"KBNW",City:"Boone Muni",State:"IA",Latitude:42.0333,Longitude:-93.8333},KBRL:{StationId:"KBRL",City:"Burlington",State:"IA",Latitude:40.7666,Longitude:-91.1333},KCIN:{StationId:"KCIN",City:"Carroll",State:"IA",Latitude:42.0333,Longitude:-94.7666},KCID:{StationId:"KCID",City:"Cedar Rapids",State:"IA",Latitude:41.8833,Longitude:-91.7166},KTVK:{StationId:"KTVK",City:"Centerville Muni",State:"IA",Latitude:40.6833,Longitude:-92.9},KCNC:{StationId:"KCNC",City:"Chariton",State:"IA",Latitude:41.0166,Longitude:-93.3666},KCCY:{StationId:"KCCY",City:"Charles City",State:"IA",Latitude:43.0666,Longitude:-92.6166},KCKP:{StationId:"KCKP",City:"Cherokee",State:"IA",Latitude:42.7333,Longitude:-95.55},KICL:{StationId:"KICL",City:"Clarinda",State:"IA",Latitude:40.7166,Longitude:-95.0166},KCAV:{StationId:"KCAV",City:"Clarion",State:"IA",Latitude:42.75,Longitude:-93.7666},KCWI:{StationId:"KCWI",City:"Clinton Muni",State:"IA",Latitude:41.8166,Longitude:-90.3166},KCBF:{StationId:"KCBF",City:"Council Bluffs",State:"IA",Latitude:41.2666,Longitude:-95.7666},KCSQ:{StationId:"KCSQ",City:"Creston",State:"IA",Latitude:41.0166,Longitude:-94.3666},KDVN:{StationId:"KDVN",City:"Davenport/Quad C",State:"IA",Latitude:41.6166,Longitude:-90.5833},KDEH:{StationId:"KDEH",City:"Decorah",State:"IA",Latitude:43.2666,Longitude:-91.7166},KDNS:{StationId:"KDNS",City:"Denison",State:"IA",Latitude:41.9666,Longitude:-95.3666},KDSM:{StationId:"KDSM",City:"Des Moines",State:"IA",Latitude:41.5333,Longitude:-93.6666},KDBQ:{StationId:"KDBQ",City:"Dubuque",State:"IA",Latitude:42.4,Longitude:-90.7},KEST:{StationId:"KEST",City:"Estherville",State:"IA",Latitude:43.4,Longitude:-94.75},KFFL:{StationId:"KFFL",City:"Fairfield",State:"IA",Latitude:41.0333,Longitude:-91.9666},KFXY:{StationId:"KFXY",City:"Forest City",State:"IA",Latitude:43.2333,Longitude:-93.6166},KFOD:{StationId:"KFOD",City:"Fort Dodge",State:"IA",Latitude:42.5333,Longitude:-94.1666},KFSW:{StationId:"KFSW",City:"Fort Madison",State:"IA",Latitude:40.6666,Longitude:-91.3166},KGGI:{StationId:"KGGI",City:"Grinnell Reg",State:"IA",Latitude:41.7166,Longitude:-92.7333},KHNR:{StationId:"KHNR",City:"Harlan Muni",State:"IA",Latitude:41.5833,Longitude:-95.3333},KIIB:{StationId:"KIIB",City:"Independence",State:"IA",Latitude:42.45,Longitude:-91.95},KIOW:{StationId:"KIOW",City:"Iowa City",State:"IA",Latitude:41.6333,Longitude:-91.55},KIFA:{StationId:"KIFA",City:"Iowa Falls Muni",State:"IA",Latitude:42.4666,Longitude:-93.2666},KDMX:{StationId:"KDMX",City:"Johnston/Desmoin",State:"IA",Latitude:41.7333,Longitude:-93.7166},KEOK:{StationId:"KEOK",City:"Keokuk Muni",State:"IA",Latitude:40.4666,Longitude:-91.4166},KOXV:{StationId:"KOXV",City:"Knoxville",State:"IA",Latitude:41.2833,Longitude:-93.1166},KLWD:{StationId:"KLWD",City:"Lamoni",State:"IA",Latitude:40.6333,Longitude:-93.9},KLMN:{StationId:"KLMN",City:"Lamoni",State:"IA",Latitude:40.6,Longitude:-93.9666},KLRJ:{StationId:"KLRJ",City:"Le Mars",State:"IA",Latitude:42.7666,Longitude:-96.2},KMIW:{StationId:"KMIW",City:"Marshalltown",State:"IA",Latitude:42.1166,Longitude:-92.9166},KMCW:{StationId:"KMCW",City:"Mason City",State:"IA",Latitude:43.15,Longitude:-93.3333},KMXO:{StationId:"KMXO",City:"Monticello Muni",State:"IA",Latitude:42.2166,Longitude:-91.1666},KMPZ:{StationId:"KMPZ",City:"Mt Pleasant",State:"IA",Latitude:40.95,Longitude:-91.5166},KMUT:{StationId:"KMUT",City:"Muscatine",State:"IA",Latitude:41.3666,Longitude:-91.15},KTNU:{StationId:"KTNU",City:"Newton Muni",State:"IA",Latitude:41.6666,Longitude:-93.0166},KOLZ:{StationId:"KOLZ",City:"Oelwen",State:"IA",Latitude:42.6666,Longitude:-91.9666},KORC:{StationId:"KORC",City:"Orange City",State:"IA",Latitude:42.9666,Longitude:-96.0666},KI75:{StationId:"KI75",City:"Osceola Muni",State:"IA",Latitude:41.05,Longitude:-93.6833},KOOA:{StationId:"KOOA",City:"Oskaloosa Muni",State:"IA",Latitude:41.2333,Longitude:-92.5},KOTM:{StationId:"KOTM",City:"Ottumwa",State:"IA",Latitude:41.1,Longitude:-92.45},KPEA:{StationId:"KPEA",City:"Pella",State:"IA",Latitude:41.4,Longitude:-92.95},KPRO:{StationId:"KPRO",City:"Perry Muni",State:"IA",Latitude:41.8333,Longitude:-94.1666},KRDK:{StationId:"KRDK",City:"Red Oak",State:"IA",Latitude:41.0166,Longitude:-95.2666},KSHL:{StationId:"KSHL",City:"Sheldon",State:"IA",Latitude:43.2166,Longitude:-95.8166},KSDA:{StationId:"KSDA",City:"Shenandoah Muni",State:"IA",Latitude:40.75,Longitude:-95.4166},KSUX:{StationId:"KSUX",City:"Sioux City",State:"IA",Latitude:42.3833,Longitude:-96.3833},KSPW:{StationId:"KSPW",City:"Spencer",State:"IA",Latitude:43.1666,Longitude:-95.2166},KSLB:{StationId:"KSLB",City:"Storm Lake",State:"IA",Latitude:42.6,Longitude:-95.2166},KVTI:{StationId:"KVTI",City:"Vinton",State:"IA",Latitude:42.2166,Longitude:-92.0166},KAWG:{StationId:"KAWG",City:"Washington",State:"IA",Latitude:41.2666,Longitude:-91.6666},KALO:{StationId:"KALO",City:"Waterloo",State:"IA",Latitude:42.55,Longitude:-92.4},KEBS:{StationId:"KEBS",City:"Webster City",State:"IA",Latitude:42.4166,Longitude:-93.8666},K0Y7:{StationId:"K0Y7",City:"Lamoni",State:"IA",Latitude:40.6333,Longitude:-93.9},K3OI:{StationId:"K3OI",City:"Lamoni",State:"IA",Latitude:40.6166,Longitude:-93.95},K3SE:{StationId:"K3SE",City:"Spencer",State:"IA",Latitude:43.1666,Longitude:-95.15},XADA:{StationId:"XADA",City:"Adair I80",State:"IA",Latitude:41.4833,Longitude:-94.7166},XALG:{StationId:"XALG",City:"Algona Us18",State:"IA",Latitude:43.0833,Longitude:-94.3833},XATN:{StationId:"XATN",City:"Alton Ia10",State:"IA",Latitude:42.8166,Longitude:-96.0833},XALT:{StationId:"XALT",City:"Altoona I80/Us65",State:"IA",Latitude:41.6666,Longitude:-93.5166},XAME:{StationId:"XAME",City:"Ames I35",State:"IA",Latitude:42.0333,Longitude:-93.5666},XANK:{StationId:"XANK",City:"Ankeny I35",State:"IA",Latitude:41.7666,Longitude:-93.5666},XAVO:{StationId:"XAVO",City:"Avoca I80",State:"IA",Latitude:41.4833,Longitude:-95.2833},XBUR:{StationId:"XBUR",City:"Burlington Us34",State:"IA",Latitude:40.8166,Longitude:-91.0833},XCAR:{StationId:"XCAR",City:"Carroll Us30",State:"IA",Latitude:42.0833,Longitude:-94.8833},XCDR:{StationId:"XCDR",City:"Cedar Rapids 380",State:"IA",Latitude:41.8166,Longitude:-91.6666},XCID:{StationId:"XCID",City:"Cedar Rapid Us30",State:"IA",Latitude:41.9333,Longitude:-91.6833},XCEN:{StationId:"XCEN",City:"Centerville Ia2",State:"IA",Latitude:40.7333,Longitude:-93},XCOU:{StationId:"XCOU",City:"Council Bluff 80",State:"IA",Latitude:41.2333,Longitude:-95.8666},XCRE:{StationId:"XCRE",City:"Creston Us34",State:"IA",Latitude:41.0666,Longitude:-94.3},XDAV:{StationId:"XDAV",City:"Davenport 80/280",State:"IA",Latitude:41.6,Longitude:-90.6833},XDEC:{StationId:"XDEC",City:"Decorah Ia9",State:"IA",Latitude:43.2333,Longitude:-91.6833},XDSM:{StationId:"XDSM",City:"Des Moines I35",State:"IA",Latitude:41.5333,Longitude:-93.7666},XDES:{StationId:"XDES",City:"Des Moines I235",State:"IA",Latitude:41.5833,Longitude:-93.6166},XDST:{StationId:"XDST",City:"De Soto 80/Us169",State:"IA",Latitude:41.5333,Longitude:-94.1},XDEW:{StationId:"XDEW",City:"De Witt Us30/61",State:"IA",Latitude:41.8333,Longitude:-90.5666},XDUB:{StationId:"XDUB",City:"Dubuque Us20",State:"IA",Latitude:42.4833,Longitude:-90.7333},XFOD:{StationId:"XFOD",City:"Fort Dodge Us20",State:"IA",Latitude:42.4333,Longitude:-94.1833},XGRI:{StationId:"XGRI",City:"Grinnell I80",State:"IA",Latitude:41.6833,Longitude:-92.7333},XIAC:{StationId:"XIAC",City:"Iowa City Us218",State:"IA",Latitude:41.6333,Longitude:-91.5833},XIOW:{StationId:"XIOW",City:"Iowa City I80",State:"IA",Latitude:41.6833,Longitude:-91.5833},XJEF:{StationId:"XJEF",City:"Jefferson Ia4",State:"IA",Latitude:42.05,Longitude:-94.3833},XLEO:{StationId:"XLEO",City:"Leon I35/Ia2",State:"IA",Latitude:40.7333,Longitude:-93.8333},XMAN:{StationId:"XMAN",City:"Manchester Us20",State:"IA",Latitude:42.4333,Longitude:-91.4333},XMAQ:{StationId:"XMAQ",City:"Maquoketa 61/64",State:"IA",Latitude:42.0666,Longitude:-90.6833},XMAR:{StationId:"XMAR",City:"Marshaltown Us30",State:"IA",Latitude:42.0166,Longitude:-92.9666},XMCW:{StationId:"XMCW",City:"Mason City I35",State:"IA",Latitude:43.0333,Longitude:-93.3333},XMIS:{StationId:"XMIS",City:"Missouri Val I29",State:"IA",Latitude:41.5333,Longitude:-95.9166},XMOU:{StationId:"XMOU",City:"Mt Pleasant U218",State:"IA",Latitude:40.8833,Longitude:-91.55},XNEW:{StationId:"XNEW",City:"New Hampton Us18",State:"IA",Latitude:43.0333,Longitude:-92.4666},XONA:{StationId:"XONA",City:"Onawa I29",State:"IA",Latitude:41.8666,Longitude:-96.0166},XOSC:{StationId:"XOSC",City:"Osceola I35",State:"IA",Latitude:41.0333,Longitude:-93.7833},XOTT:{StationId:"XOTT",City:"Ottumwa Us63",State:"IA",Latitude:41.0166,Longitude:-92.4166},XPEL:{StationId:"XPEL",City:"Pella Ia163",State:"IA",Latitude:41.3833,Longitude:-92.8666},XRED:{StationId:"XRED",City:"Red Oak Us34/71",State:"IA",Latitude:40.9833,Longitude:-94.9833},XSID:{StationId:"XSID",City:"Sidney I29/Ia2",State:"IA",Latitude:40.6833,Longitude:-95.7833},XSIG:{StationId:"XSIG",City:"Sigourney Ia92",State:"IA",Latitude:41.3333,Longitude:-92.3166},XSIO:{StationId:"XSIO",City:"Sioux City I29",State:"IA",Latitude:42.4833,Longitude:-96.3833},XSPE:{StationId:"XSPE",City:"Spencer Us18",State:"IA",Latitude:43.1333,Longitude:-95.0833},XSTO:{StationId:"XSTO",City:"Storm Lake 71/3",State:"IA",Latitude:42.7333,Longitude:-95.15},XTIP:{StationId:"XTIP",City:"Tipton I80",State:"IA",Latitude:41.6333,Longitude:-91.1333},XURB:{StationId:"XURB",City:"Urbana I380",State:"IA",Latitude:42.3166,Longitude:-91.9833},XWAT:{StationId:"XWAT",City:"Waterloo Us20",State:"IA",Latitude:42.45,Longitude:-92.3166},XWIL:{StationId:"XWIL",City:"Williams I35",State:"IA",Latitude:42.5333,Longitude:-93.5666},XWBG:{StationId:"XWBG",City:"Willaimsburg I80",State:"IA",Latitude:41.6833,Longitude:-92.0166},XHAN:{StationId:"XHAN",City:"Hanlontown I35",State:"IA",Latitude:43.3833,Longitude:-93.3333},XSBI:{StationId:"XSBI",City:"Steamboat R Us20",State:"IA",Latitude:42.45,Longitude:-93.05},XIGI:{StationId:"XIGI",City:"Ida Grove Us59",State:"IA",Latitude:42.35,Longitude:-95.4833},XCRI:{StationId:"XCRI",City:"Cedar Rapids U30",State:"IA",Latitude:41.9333,Longitude:-91.55},XBFI:{StationId:"XBFI",City:"Bedford",State:"IA",Latitude:40.6833,Longitude:-94.7166},XCFI:{StationId:"XCFI",City:"Colfax",State:"IA",Latitude:41.6833,Longitude:-93.2666},XDYI:{StationId:"XDYI",City:"Eddyville",State:"IA",Latitude:41.15,Longitude:-92.65},XSYI:{StationId:"XSYI",City:"Sibley",State:"IA",Latitude:43.4333,Longitude:-95.7166},XTMI:{StationId:"XTMI",City:"Tama",State:"IA",Latitude:41.9666,Longitude:-92.3},XCTI:{StationId:"XCTI",City:"Cantril",State:"IA",Latitude:40.6666,Longitude:-92.0666},XDNI:{StationId:"XDNI",City:"Denison",State:"IA",Latitude:41.9166,Longitude:-95.3333},XPFI:{StationId:"XPFI",City:"Plainfield",State:"IA",Latitude:42.8333,Longitude:-92.5333},XQCI:{StationId:"XQCI",City:"Quad Cities",State:"IA",Latitude:41.5166,Longitude:-90.5166},Q03I:{StationId:"Q03I",City:"State Fair",State:"IA",Latitude:41.6,Longitude:-93.5666},QADI:{StationId:"QADI",City:"Adair",State:"IA",Latitude:41.5166,Longitude:-94.5833},QAEI:{StationId:"QAEI",City:"Adel",State:"IA",Latitude:41.6166,Longitude:-94.0166},QAFI:{StationId:"QAFI",City:"Afton",State:"IA",Latitude:41.0333,Longitude:-94.1833},QAGI:{StationId:"QAGI",City:"Algona",State:"IA",Latitude:43.0666,Longitude:-94.2333},QAKI:{StationId:"QAKI",City:"Ankeny",State:"IA",Latitude:41.7333,Longitude:-93.6166},QALI:{StationId:"QALI",City:"Albia",State:"IA",Latitude:41.0333,Longitude:-92.8166},QAMI:{StationId:"QAMI",City:"Ames",State:"IA",Latitude:42.05,Longitude:-93.6333},QATI:{StationId:"QATI",City:"Anita",State:"IA",Latitude:41.45,Longitude:-94.7666},QAUI:{StationId:"QAUI",City:"Audubon",State:"IA",Latitude:41.7166,Longitude:-94.9166},QBDI:{StationId:"QBDI",City:"Bedford",State:"IA",Latitude:40.6666,Longitude:-94.7166},QBKI:{StationId:"QBKI",City:"Belmond",State:"IA",Latitude:42.85,Longitude:-93.6},QBMI:{StationId:"QBMI",City:"Bloomfield",State:"IA",Latitude:40.75,Longitude:-92.4166},QBOI:{StationId:"QBOI",City:"Boone",State:"IA",Latitude:42.0333,Longitude:-93.7833},QBRI:{StationId:"QBRI",City:"Brooklyn",State:"IA",Latitude:41.7333,Longitude:-92.45},QBSI:{StationId:"QBSI",City:"Bussey",State:"IA",Latitude:41.2166,Longitude:-92.8833},QBXI:{StationId:"QBXI",City:"Baxter",State:"IA",Latitude:41.8333,Longitude:-93.15},QBZI:{StationId:"QBZI",City:"Blank Park Zoo",State:"IA",Latitude:41.5333,Longitude:-93.6166},QCAI:{StationId:"QCAI",City:"Carroll",State:"IA",Latitude:42.0666,Longitude:-94.8666},QCBI:{StationId:"QCBI",City:"Coon Rapids",State:"IA",Latitude:41.8833,Longitude:-94.6833},QCCI:{StationId:"QCCI",City:"Charles City",State:"IA",Latitude:43.0666,Longitude:-92.6666},QCDI:{StationId:"QCDI",City:"Corydon",State:"IA",Latitude:40.75,Longitude:-93.3166},QCEI:{StationId:"QCEI",City:"Centerville",State:"IA",Latitude:40.7333,Longitude:-92.8666},QCGI:{StationId:"QCGI",City:"Clarion",State:"IA",Latitude:42.7333,Longitude:-93.7333},QCHI:{StationId:"QCHI",City:"Chariton",State:"IA",Latitude:41.0166,Longitude:-93.3166},QCKI:{StationId:"QCKI",City:"Clear Lake",State:"IA",Latitude:43.1333,Longitude:-93.3666},QCQI:{StationId:"QCQI",City:"Cresco",State:"IA",Latitude:43.3833,Longitude:-92.1},QCNI:{StationId:"QCNI",City:"Corning",State:"IA",Latitude:40.9833,Longitude:-94.7333},QCOI:{StationId:"QCOI",City:"Colo",State:"IA",Latitude:42.0166,Longitude:-93.3166},QCRI:{StationId:"QCRI",City:"Creston",State:"IA",Latitude:41.0666,Longitude:-94.3666},QCSI:{StationId:"QCSI",City:"Inwood",State:"IA",Latitude:43.3166,Longitude:-96.4333},QDCI:{StationId:"QDCI",City:"Dsm Christian",State:"IA",Latitude:41.6333,Longitude:-93.8},QDNI:{StationId:"QDNI",City:"Sheldon",State:"IA",Latitude:43.1833,Longitude:-95.8333},QDRI:{StationId:"QDRI",City:"River Woods",State:"IA",Latitude:41.5666,Longitude:-93.5833},QEGI:{StationId:"QEGI",City:"Eagle Grove",State:"IA",Latitude:42.6666,Longitude:-93.9166},QFAI:{StationId:"QFAI",City:"Farnhamville",State:"IA",Latitude:42.3333,Longitude:-94.4166},QFCI:{StationId:"QFCI",City:"Forest City",State:"IA",Latitude:43.2666,Longitude:-93.65},QFDI:{StationId:"QFDI",City:"Fort Dodge",State:"IA",Latitude:42.5166,Longitude:-94.1833},QFOI:{StationId:"QFOI",City:"Fontanelle",State:"IA",Latitude:41.2833,Longitude:-94.5666},QGLI:{StationId:"QGLI",City:"Glidden",State:"IA",Latitude:42.0666,Longitude:-94.7333},QGNI:{StationId:"QGNI",City:"Garner",State:"IA",Latitude:43.0833,Longitude:-93.6166},QGRI:{StationId:"QGRI",City:"Grimes",State:"IA",Latitude:41.6833,Longitude:-93.8},QHII:{StationId:"QHII",City:"Hull",State:"IA",Latitude:43.1833,Longitude:-96.1333},QHPI:{StationId:"QHPI",City:"Hampton",State:"IA",Latitude:42.75,Longitude:-93.1833},QHUI:{StationId:"QHUI",City:"Humboldt",State:"IA",Latitude:42.7166,Longitude:-94.2333},QIAI:{StationId:"QIAI",City:"Ica",State:"IA",Latitude:41.5833,Longitude:-93.7333},QIFI:{StationId:"QIFI",City:"Iowa Falls",State:"IA",Latitude:42.5333,Longitude:-93.2666},QINI:{StationId:"QINI",City:"Indianola",State:"IA",Latitude:41.3666,Longitude:-93.55},QJCI:{StationId:"QJCI",City:"Jordan Creek",State:"IA",Latitude:41.5666,Longitude:-93.7666},QJEI:{StationId:"QJEI",City:"Jefferson",State:"IA",Latitude:42,Longitude:-94.3833},QJWI:{StationId:"QJWI",City:"South Hamilton",State:"IA",Latitude:42.3,Longitude:-93.65},QKCI:{StationId:"QKCI",City:"Kcci",State:"IA",Latitude:41.5833,Longitude:-93.6333},QKNI:{StationId:"QKNI",City:"Knoxville",State:"IA",Latitude:41.3166,Longitude:-93.1166},QKWI:{StationId:"QKWI",City:"Kanawha",State:"IA",Latitude:42.9333,Longitude:-93.7833},QLEI:{StationId:"QLEI",City:"Leon",State:"IA",Latitude:40.75,Longitude:-93.7333},QLMI:{StationId:"QLMI",City:"Latimer",State:"IA",Latitude:42.75,Longitude:-93.3666},QLOI:{StationId:"QLOI",City:"Lamoni",State:"IA",Latitude:40.6333,Longitude:-93.9333},QLUI:{StationId:"QLUI",City:"Luverne",State:"IA",Latitude:42.9166,Longitude:-94.0833},QLYI:{StationId:"QLYI",City:"Rock Rapids",State:"IA",Latitude:43.4166,Longitude:-96.1666},QMAI:{StationId:"QMAI",City:"Marshalltown",State:"IA",Latitude:42.0166,Longitude:-92.9166},QMDI:{StationId:"QMDI",City:"Madrid",State:"IA",Latitude:41.8833,Longitude:-93.8166},QMII:{StationId:"QMII",City:"Lake Mills",State:"IA",Latitude:43.4166,Longitude:-93.5333},QMLI:{StationId:"QMLI",City:"Mallard",State:"IA",Latitude:42.9333,Longitude:-94.6833},QMNI:{StationId:"QMNI",City:"Montezuma",State:"IA",Latitude:41.5833,Longitude:-92.5166},QMOI:{StationId:"QMOI",City:"Mount Ayr",State:"IA",Latitude:40.7166,Longitude:-94.2333},QMSI:{StationId:"QMSI",City:"Manson-Nw",State:"IA",Latitude:42.5,Longitude:-94.3666},QMUI:{StationId:"QMUI",City:"Murray",State:"IA",Latitude:41.0333,Longitude:-93.95},QMWI:{StationId:"QMWI",City:"Mason City",State:"IA",Latitude:43.1333,Longitude:-93.2333},QMYI:{StationId:"QMYI",City:"Mason City",State:"IA",Latitude:43.15,Longitude:-93.1666},QNEI:{StationId:"QNEI",City:"Newton",State:"IA",Latitude:41.7,Longitude:-93.0333},QNII:{StationId:"QNII",City:"Thompson",State:"IA",Latitude:43.3666,Longitude:-93.7},QNKI:{StationId:"QNKI",City:"Northwood",State:"IA",Latitude:43.45,Longitude:-93.2},QNSI:{StationId:"QNSI",City:"Nora Springs",State:"IA",Latitude:43.15,Longitude:-93},QNVI:{StationId:"QNVI",City:"Nevada",State:"IA",Latitude:42.0166,Longitude:-93.4333},QOAI:{StationId:"QOAI",City:"Osage",State:"IA",Latitude:43.2833,Longitude:-92.8166},QOCI:{StationId:"QOCI",City:"Oskaloosa",State:"IA",Latitude:41.3,Longitude:-92.65},QOGI:{StationId:"QOGI",City:"Ogden",State:"IA",Latitude:42.0333,Longitude:-94.0333},QOSI:{StationId:"QOSI",City:"Osceola",State:"IA",Latitude:41.0333,Longitude:-93.7666},QPAI:{StationId:"QPAI",City:"Panora",State:"IA",Latitude:41.7,Longitude:-94.3666},QPEI:{StationId:"QPEI",City:"Pella",State:"IA",Latitude:41.4166,Longitude:-92.9},QPKI:{StationId:"QPKI",City:"North Polk",State:"IA",Latitude:41.7833,Longitude:-93.7166},QPYI:{StationId:"QPYI",City:"Perry",State:"IA",Latitude:41.8333,Longitude:-94.0833},QRMI:{StationId:"QRMI",City:"Mason City",State:"IA",Latitude:43.1333,Longitude:-93.1},QROI:{StationId:"QROI",City:"Rockwell City",State:"IA",Latitude:42.3833,Longitude:-94.6333},QRRI:{StationId:"QRRI",City:"Rockford",State:"IA",Latitude:43.05,Longitude:-92.9333},QRSI:{StationId:"QRSI",City:"Rockwell",State:"IA",Latitude:42.9833,Longitude:-93.1},QRUM:{StationId:"QRUM",City:"Russell",State:"IA",Latitude:44.3166,Longitude:-95.95},QRVI:{StationId:"QRVI",City:"Riceville",State:"IA",Latitude:43.35,Longitude:-92.5},QSAI:{StationId:"QSAI",City:"St Ansgar",State:"IA",Latitude:43.3666,Longitude:-92.9166},QSBI:{StationId:"QSBI",City:"Sibley",State:"IA",Latitude:43.4,Longitude:-95.75},QSTI:{StationId:"QSTI",City:"Stuart",State:"IA",Latitude:41.5,Longitude:-94.3166},QSUI:{StationId:"QSUI",City:"Sully",State:"IA",Latitude:41.5666,Longitude:-92.8333},QTKI:{StationId:"QTKI",City:"Titonka",State:"IA",Latitude:43.2333,Longitude:-94.0333},QTQI:{StationId:"QTQI",City:"Meskwaki Ss Tama",State:"IA",Latitude:41.9833,Longitude:-92.65},QUNI:{StationId:"QUNI",City:"Union",State:"IA",Latitude:42.2333,Longitude:-93.0666},QVTI:{StationId:"QVTI",City:"Ventura",State:"IA",Latitude:43.1333,Longitude:-93.4833},QWAI:{StationId:"QWAI",City:"Wall Lake",State:"IA",Latitude:42.2666,Longitude:-95.1},QWBI:{StationId:"QWBI",City:"Webster City",State:"IA",Latitude:42.4666,Longitude:-93.8166},QWGI:{StationId:"QWGI",City:"Woodward",State:"IA",Latitude:41.8666,Longitude:-93.9166},QWII:{StationId:"QWII",City:"Winterset",State:"IA",Latitude:41.3333,Longitude:-94.0166},QPCI:{StationId:"QPCI",City:"Pocahontas",State:"IA",Latitude:42.7333,Longitude:-94.6666},KCBX:{StationId:"KCBX",City:"Ada County/Boise",State:"ID",Latitude:43.4833,Longitude:-116.2333},KBOI:{StationId:"KBOI",City:"Boise",State:"ID",Latitude:43.5666,Longitude:-116.2333},KBYI:{StationId:"KBYI",City:"Burley",State:"ID",Latitude:42.55,Longitude:-113.7666},K65S:{StationId:"K65S",City:"Bonners Ferry",State:"ID",Latitude:48.7333,Longitude:-116.3},KEUL:{StationId:"KEUL",City:"Caldwell",State:"ID",Latitude:43.6166,Longitude:-116.6166},KLLJ:{StationId:"KLLJ",City:"Challis",State:"ID",Latitude:44.5166,Longitude:-114.2166},KCOE:{StationId:"KCOE",City:"Coeur D'alene",State:"ID",Latitude:47.7666,Longitude:-116.8166},KDIJ:{StationId:"KDIJ",City:"Driggs Reed Mem",State:"ID",Latitude:43.75,Longitude:-111.1},KDBS:{StationId:"KDBS",City:"Dubios (Vor)",State:"ID",Latitude:44.0833,Longitude:-112.2166},KGIC:{StationId:"KGIC",City:"Grangeville",State:"ID",Latitude:45.9333,Longitude:-116.1333},KSUN:{StationId:"KSUN",City:"Hailey/Friedman",State:"ID",Latitude:43.5,Longitude:-114.2833},KIDA:{StationId:"KIDA",City:"Idaho Falls",State:"ID",Latitude:43.5166,Longitude:-112.0666},KJER:{StationId:"KJER",City:"Jerome County",State:"ID",Latitude:42.7166,Longitude:-114.45},KLWS:{StationId:"KLWS",City:"Lewiston",State:"ID",Latitude:46.3666,Longitude:-117.0166},KP69:{StationId:"KP69",City:"Lowell/Elk City",State:"ID",Latitude:46.15,Longitude:-115.6},KMLD:{StationId:"KMLD",City:"Malad City",State:"ID",Latitude:42.1666,Longitude:-112.2833},K77M:{StationId:"K77M",City:"Malta (Awrs)",State:"ID",Latitude:42.3166,Longitude:-113.3166},KMYL:{StationId:"KMYL",City:"Mccall",State:"ID",Latitude:44.9,Longitude:-116.1},KDNJ:{StationId:"KDNJ",City:"Mccall (Vor)",State:"ID",Latitude:44.7666,Longitude:-116.2166},KMUO:{StationId:"KMUO",City:"Mountain Home",State:"ID",Latitude:43.0333,Longitude:-115.8666},KMLP:{StationId:"KMLP",City:"Mullan Pass",State:"ID",Latitude:47.45,Longitude:-115.6666},KMAN:{StationId:"KMAN",City:"Nampa",State:"ID",Latitude:43.5833,Longitude:-116.5166},KPIH:{StationId:"KPIH",City:"Pocatello",State:"ID",Latitude:42.9166,Longitude:-112.5666},KRXE:{StationId:"KRXE",City:"Rexburg",State:"ID",Latitude:43.8333,Longitude:-111.8},KLKT:{StationId:"KLKT",City:"Salmon/Vor",State:"ID",Latitude:45.0166,Longitude:-114.0833},KSMN:{StationId:"KSMN",City:"Salmon/Lemhi",State:"ID",Latitude:45.1166,Longitude:-113.8666},KU78:{StationId:"KU78",City:"Soda Springs",State:"ID",Latitude:42.6333,Longitude:-111.5666},KS14:{StationId:"KS14",City:"Spencer",State:"ID",Latitude:44.35,Longitude:-112.1666},KSFX:{StationId:"KSFX",City:"Springfield/Pih",State:"ID",Latitude:43.1,Longitude:-112.6833},KSNT:{StationId:"KSNT",City:"Stanley",State:"ID",Latitude:44.1666,Longitude:-114.9333},KTWF:{StationId:"KTWF",City:"Twin Falls",State:"ID",Latitude:42.4833,Longitude:-114.4833},KSZT:{StationId:"KSZT",City:"Wall/Sandpoint",State:"ID",Latitude:48.3,Longitude:-116.5666},KU35:{StationId:"KU35",City:"Caldwell (Awos)",State:"ID",Latitude:43.6166,Longitude:-116.6166},KU15:{StationId:"KU15",City:"Challis",State:"ID",Latitude:44.5166,Longitude:-114.2166},KGNG:{StationId:"KGNG",City:"Gooding",State:"ID",Latitude:42.9166,Longitude:-114.7666},KU73:{StationId:"KU73",City:"Jerome",State:"ID",Latitude:42.7333,Longitude:-114.45},KS06:{StationId:"KS06",City:"Mullan (Awrs)",State:"ID",Latitude:47.4666,Longitude:-115.7833},KU11:{StationId:"KU11",City:"Rexburg",State:"ID",Latitude:43.8333,Longitude:-111.8},K27U:{StationId:"K27U",City:"Salmon (Awrs)",State:"ID",Latitude:45.1666,Longitude:-113.9},KMI1:{StationId:"KMI1",City:"Saylor Creek",State:"ID",Latitude:42.5,Longitude:-115.5},KS80:{StationId:"KS80",City:"Grangeville",State:"ID",Latitude:45.95,Longitude:-116.1166},KALN:{StationId:"KALN",City:"Alton/St Louis R",State:"IL",Latitude:38.8833,Longitude:-90.0333},KBMI:{StationId:"KBMI",City:"Bloomington/Norm",State:"IL",Latitude:40.4666,Longitude:-88.9166},KBDF:{StationId:"KBDF",City:"Bradford/Vor",State:"IL",Latitude:41.15,Longitude:-89.5833},KCPS:{StationId:"KCPS",City:"Cahokia/St Louis",State:"IL",Latitude:38.5666,Longitude:-90.15},KCIR:{StationId:"KCIR",City:"Cairo",State:"IL",Latitude:37.0666,Longitude:-89.2166},KMDH:{StationId:"KMDH",City:"Carbondale/Murph",State:"IL",Latitude:37.7833,Longitude:-89.25},KCUL:{StationId:"KCUL",City:"Carmi Muni",State:"IL",Latitude:38.0833,Longitude:-88.1166},KENL:{StationId:"KENL",City:"Centralia",State:"IL",Latitude:38.5166,Longitude:-89.1},KCMI:{StationId:"KCMI",City:"Champaign/Urbana",State:"IL",Latitude:40.0333,Longitude:-88.2666},KMDW:{StationId:"KMDW",City:"Chicago",State:"IL",Latitude:41.7833,Longitude:-87.75},KORD:{StationId:"KORD",City:"Chicago O'hare",State:"IL",Latitude:41.9833,Longitude:-87.9333},KARR:{StationId:"KARR",City:"Chicago/Aurora",State:"IL",Latitude:41.7666,Longitude:-88.4833},KDPA:{StationId:"KDPA",City:"Chicago/Dupage",State:"IL",Latitude:41.9166,Longitude:-88.25},KCGX:{StationId:"KCGX",City:"Chicago/Meigs",State:"IL",Latitude:41.8666,Longitude:-87.5833},KIGQ:{StationId:"KIGQ",City:"Chicago/Lansing",State:"IL",Latitude:41.5333,Longitude:-87.5333},KZAU:{StationId:"KZAU",City:"Chicago/Artcc",State:"IL",Latitude:41.7833,Longitude:-88.3333},KDNV:{StationId:"KDNV",City:"Danville",State:"IL",Latitude:40.2,Longitude:-87.6},KDEC:{StationId:"KDEC",City:"Decatur",State:"IL",Latitude:39.8333,Longitude:-88.85},KAXC:{StationId:"KAXC",City:"Decatur",State:"IL",Latitude:39.8333,Longitude:-88.85},KDKB:{StationId:"KDKB",City:"De Kalb",State:"IL",Latitude:41.9333,Longitude:-88.7},KC73:{StationId:"KC73",City:"Dixon",State:"IL",Latitude:41.8333,Longitude:-89.45},K1H2:{StationId:"K1H2",City:"Effingham",State:"IL",Latitude:39.0666,Longitude:-88.5333},KFWC:{StationId:"KFWC",City:"Fairfield",State:"IL",Latitude:38.3833,Longitude:-88.4166},KFEP:{StationId:"KFEP",City:"Freeport",State:"IL",Latitude:42.25,Longitude:-89.5833},KFOA:{StationId:"KFOA",City:"Flora",State:"IL",Latitude:38.6666,Longitude:-88.45},KGBG:{StationId:"KGBG",City:"Galesburg",State:"IL",Latitude:40.9333,Longitude:-90.4333},KGRE:{StationId:"KGRE",City:"Greenville",State:"IL",Latitude:38.8333,Longitude:-89.3833},KHSB:{StationId:"KHSB",City:"Harrisburg",State:"IL",Latitude:37.8166,Longitude:-88.55},KIJX:{StationId:"KIJX",City:"Jacksonville",State:"IL",Latitude:39.7666,Longitude:-90.25},KJOT:{StationId:"KJOT",City:"Joliet",State:"IL",Latitude:41.5166,Longitude:-88.1833},KIKK:{StationId:"KIKK",City:"Kankakee",State:"IL",Latitude:41.0666,Longitude:-87.85},KC75:{StationId:"KC75",City:"Lacon",State:"IL",Latitude:41.0166,Longitude:-89.3833},KLWV:{StationId:"KLWV",City:"Lawrenceville",State:"IL",Latitude:38.7666,Longitude:-87.6},KILX:{StationId:"KILX",City:"Lincoln",State:"IL",Latitude:40.15,Longitude:-89.3333},KAAA:{StationId:"KAAA",City:"Lincoln",State:"IL",Latitude:40.1666,Longitude:-89.3333},K3LF:{StationId:"K3LF",City:"Litchfield Muni",State:"IL",Latitude:39.1666,Longitude:-89.6666},KMQB:{StationId:"KMQB",City:"Macomb Muni",State:"IL",Latitude:40.5166,Longitude:-90.65},KMWA:{StationId:"KMWA",City:"Marion Regional",State:"IL",Latitude:37.7666,Longitude:-89.0166},KMMO:{StationId:"KMMO",City:"Marseilles",State:"IL",Latitude:41.3666,Longitude:-88.6666},KMTO:{StationId:"KMTO",City:"Mattoon/Charlest",State:"IL",Latitude:39.4666,Longitude:-88.2666},KM30:{StationId:"KM30",City:"Metropolis",State:"IL",Latitude:37.1833,Longitude:-88.75},KMLI:{StationId:"KMLI",City:"Moline/Quad City",State:"IL",Latitude:41.45,Longitude:-90.5166},KC56:{StationId:"KC56",City:"Monee",State:"IL",Latitude:41.3833,Longitude:-87.6833},KC09:{StationId:"KC09",City:"Morris-Washburn",State:"IL",Latitude:41.4333,Longitude:-88.4166},KAJG:{StationId:"KAJG",City:"Mount Carmel",State:"IL",Latitude:38.6166,Longitude:-87.7333},KMVN:{StationId:"KMVN",City:"Mount Vernon",State:"IL",Latitude:38.3166,Longitude:-88.8666},KOLY:{StationId:"KOLY",City:"Olney-Noble",State:"IL",Latitude:38.7166,Longitude:-88.1833},KPWK:{StationId:"KPWK",City:"Palwaukee",State:"IL",Latitude:42.1166,Longitude:-87.9},KPIA:{StationId:"KPIA",City:"Peoria",State:"IL",Latitude:40.6666,Longitude:-89.6833},KPRG:{StationId:"KPRG",City:"Paris",State:"IL",Latitude:39.7,Longitude:-87.6666},KVYS:{StationId:"KVYS",City:"Peru",State:"IL",Latitude:41.35,Longitude:-89.15},KPPQ:{StationId:"KPPQ",City:"Pittsfield",State:"IL",Latitude:39.6333,Longitude:-90.7833},KPNT:{StationId:"KPNT",City:"Pontiac",State:"IL",Latitude:40.9166,Longitude:-88.6166},KUIN:{StationId:"KUIN",City:"Quincy Muni/Bald",State:"IL",Latitude:39.95,Longitude:-91.2},KTIP:{StationId:"KTIP",City:"Rantoul",State:"IL",Latitude:40.2833,Longitude:-88.15},KRSV:{StationId:"KRSV",City:"Robinson Muni",State:"IL",Latitude:39.0166,Longitude:-87.65},KRFD:{StationId:"KRFD",City:"Rockford",State:"IL",Latitude:42.2,Longitude:-89.1},KRPJ:{StationId:"KRPJ",City:"Rochelle/Koritz",State:"IL",Latitude:41.8833,Longitude:-89.0833},KLOT:{StationId:"KLOT",City:"Romeoville/Chi",State:"IL",Latitude:41.6,Longitude:-88.1},KSLO:{StationId:"KSLO",City:"Salem/Leckrone",State:"IL",Latitude:38.65,Longitude:-88.9666},KSFY:{StationId:"KSFY",City:"Savanna/Tritown",State:"IL",Latitude:42.05,Longitude:-90.1166},KBLV:{StationId:"KBLV",City:"Scott Afb/Bellev",State:"IL",Latitude:38.5333,Longitude:-89.8333},KSAR:{StationId:"KSAR",City:"Sparta",State:"IL",Latitude:38.15,Longitude:-89.7},KSPI:{StationId:"KSPI",City:"Springfield",State:"IL",Latitude:39.85,Longitude:-89.6833},KSQI:{StationId:"KSQI",City:"Sterling Rockfal",State:"IL",Latitude:41.75,Longitude:-89.6666},KTAZ:{StationId:"KTAZ",City:"Taylorville",State:"IL",Latitude:39.5333,Longitude:-89.3333},KVLA:{StationId:"KVLA",City:"Vandalia",State:"IL",Latitude:38.9833,Longitude:-89.1666},KUGN:{StationId:"KUGN",City:"Waukegan",State:"IL",Latitude:42.4166,Longitude:-87.8666},KCHI:{StationId:"KCHI",City:"Chicago",State:"IL",Latitude:42,Longitude:-87.8833},KNBU:{StationId:"KNBU",City:"Glenview Nas",State:"IL",Latitude:42.0833,Longitude:-87.8166},K3LC:{StationId:"K3LC",City:"Lincoln",State:"IL",Latitude:40.1666,Longitude:-89.3333},K2I5:{StationId:"K2I5",City:"Rantoul",State:"IL",Latitude:40.3,Longitude:-88.15},K12C:{StationId:"K12C",City:"Rochelle/Koritz",State:"IL",Latitude:41.8833,Longitude:-89.0666},KAID:{StationId:"KAID",City:"Anderson Municip",State:"IN",Latitude:40.1166,Longitude:-85.6166},KANQ:{StationId:"KANQ",City:"Angola",State:"IN",Latitude:41.6333,Longitude:-85.0833},KGWB:{StationId:"KGWB",City:"Auburn Dekalb C",State:"IN",Latitude:41.3,Longitude:-85.0666},KBMG:{StationId:"KBMG",City:"Bloomington",State:"IN",Latitude:39.15,Longitude:-86.6166},KBAK:{StationId:"KBAK",City:"Columbus/Balkala",State:"IN",Latitude:39.2666,Longitude:-85.9},KDCY:{StationId:"KDCY",City:"Daviess County",State:"IN",Latitude:38.7,Longitude:-87.1333},KEKM:{StationId:"KEKM",City:"Elkhart Municipa",State:"IN",Latitude:41.7166,Longitude:-86},KEVV:{StationId:"KEVV",City:"Evansville",State:"IN",Latitude:38.05,Longitude:-87.5166},KVWX:{StationId:"KVWX",City:"Evansville",State:"IN",Latitude:38.2666,Longitude:-87.7166},KFWA:{StationId:"KFWA",City:"Fort Wayne",State:"IN",Latitude:40.9833,Longitude:-85.1833},KGYY:{StationId:"KGYY",City:"Gary Regional",State:"IN",Latitude:41.6166,Longitude:-87.4166},KGSH:{StationId:"KGSH",City:"Goshen",State:"IN",Latitude:41.5333,Longitude:-85.7833},KGUS:{StationId:"KGUS",City:"Grissom Afb/Peru",State:"IN",Latitude:40.6333,Longitude:-86.15},K1II:{StationId:"K1II",City:"Himsel Aaf",State:"IN",Latitude:39.3333,Longitude:-86.0333},KHNB:{StationId:"KHNB",City:"Huntingburg",State:"IN",Latitude:38.25,Longitude:-86.95},KEYE:{StationId:"KEYE",City:"Indianapolis",State:"IN",Latitude:39.8333,Longitude:-86.3},KIND:{StationId:"KIND",City:"Indianapolis",State:"IN",Latitude:39.7166,Longitude:-86.3},KUMP:{StationId:"KUMP",City:"Indianapol/Metro",State:"IN",Latitude:39.9333,Longitude:-86.05},KZID:{StationId:"KZID",City:"Indianapol/Artcc",State:"IN",Latitude:39.7333,Longitude:-86.2833},KTYQ:{StationId:"KTYQ",City:"Indianapolis Exc",State:"IN",Latitude:40.0333,Longitude:-86.25},KMQJ:{StationId:"KMQJ",City:"Indianapolis Reg",State:"IN",Latitude:39.85,Longitude:-85.9},KOXI:{StationId:"KOXI",City:"Knox Starke Cty",State:"IN",Latitude:41.3333,Longitude:-86.6666},KOKK:{StationId:"KOKK",City:"Kokomo",State:"IN",Latitude:40.5333,Longitude:-86.0666},KLAF:{StationId:"KLAF",City:"Lafayette",State:"IN",Latitude:40.4166,Longitude:-86.9333},KBVT:{StationId:"KBVT",City:"Lafayette Vor",State:"IN",Latitude:40.5666,Longitude:-87.0666},KPPO:{StationId:"KPPO",City:"La Porte",State:"IN",Latitude:41.5666,Longitude:-86.7333},KGGP:{StationId:"KGGP",City:"Logansport",State:"IN",Latitude:40.7166,Longitude:-86.3666},KMZZ:{StationId:"KMZZ",City:"Marion Muni",State:"IN",Latitude:40.4833,Longitude:-85.6833},KMGC:{StationId:"KMGC",City:"Michigan City",State:"IN",Latitude:41.7,Longitude:-86.8166},KMIE:{StationId:"KMIE",City:"Muncie",State:"IN",Latitude:40.2333,Longitude:-85.4},KIWX:{StationId:"KIWX",City:"North Webster",State:"IN",Latitude:41.3666,Longitude:-85.7},KPXV:{StationId:"KPXV",City:"Pocket City Vor",State:"IN",Latitude:37.9333,Longitude:-87.7666},KRZL:{StationId:"KRZL",City:"Rensselaer",State:"IN",Latitude:40.95,Longitude:-87.1833},KRCR:{StationId:"KRCR",City:"Rochester",State:"IN",Latitude:41.0666,Longitude:-86.1833},KGEZ:{StationId:"KGEZ",City:"Shelbyville",State:"IN",Latitude:39.5833,Longitude:-85.8},KSBN:{StationId:"KSBN",City:"South Bend",State:"IN",Latitude:41.7,Longitude:-86.3166},KHUF:{StationId:"KHUF",City:"Terre Haute",State:"IN",Latitude:39.45,Longitude:-87.3},KTTH:{StationId:"KTTH",City:"Terre Haute Vor",State:"IN",Latitude:39.4833,Longitude:-87.25},KVPZ:{StationId:"KVPZ",City:"Valparaiso",State:"IN",Latitude:41.45,Longitude:-87},KASW:{StationId:"KASW",City:"Warsaw Muni",State:"IN",Latitude:41.2666,Longitude:-85.8333},KHLB:{StationId:"KHLB",City:"Batesville",State:"IN",Latitude:39.35,Longitude:-85.2666},KI14:{StationId:"KI14",City:"Indianapolis/Eag",State:"IN",Latitude:39.8333,Longitude:-86.3},K3SM:{StationId:"K3SM",City:"Shelbyville",State:"IN",Latitude:39.5833,Longitude:-85.8},KTWX:{StationId:"KTWX",City:"Alma/Topeka",State:"KS",Latitude:39,Longitude:-96.2333},KUKL:{StationId:"KUKL",City:"Burlington",State:"KS",Latitude:38.3,Longitude:-95.7333},KCNU:{StationId:"KCNU",City:"Chanute",State:"KS",Latitude:37.6666,Longitude:-95.4833},KCFV:{StationId:"KCFV",City:"Coffeyville",State:"KS",Latitude:37.0833,Longitude:-95.5666},KCNK:{StationId:"KCNK",City:"Concordia",State:"KS",Latitude:39.55,Longitude:-97.65},KDDC:{StationId:"KDDC",City:"Dodge City",State:"KS",Latitude:37.7666,Longitude:-99.9666},KEHA:{StationId:"KEHA",City:"Elkhart",State:"KS",Latitude:37,Longitude:-101.9},KEMP:{StationId:"KEMP",City:"Emporia",State:"KS",Latitude:38.3333,Longitude:-96.2},KFLV:{StationId:"KFLV",City:"Fort Leavenworth",State:"KS",Latitude:39.3666,Longitude:-94.9166},KFRI:{StationId:"KFRI",City:"Ft Riley/Marshal",State:"KS",Latitude:39.0333,Longitude:-96.7666},KGCK:{StationId:"KGCK",City:"Garden City",State:"KS",Latitude:37.9166,Longitude:-100.7166},KK68:{StationId:"KK68",City:"Garnett",State:"KS",Latitude:38.2833,Longitude:-95.2166},KGLD:{StationId:"KGLD",City:"Goodland",State:"KS",Latitude:39.3666,Longitude:-101.7},KGBD:{StationId:"KGBD",City:"Great Bend",State:"KS",Latitude:38.35,Longitude:-98.8666},K8K2:{StationId:"K8K2",City:"Harper",State:"KS",Latitude:37.2833,Longitude:-98.05},KHVL:{StationId:"KHVL",City:"Haviland Profile",State:"KS",Latitude:37.65,Longitude:-99.1},KHYS:{StationId:"KHYS",City:"Hays Muni",State:"KS",Latitude:38.85,Longitude:-99.2666},KHLC:{StationId:"KHLC",City:"Hill City",State:"KS",Latitude:39.3666,Longitude:-99.8333},KHUT:{StationId:"KHUT",City:"Hutchinson",State:"KS",Latitude:38.0666,Longitude:-97.8666},KIDP:{StationId:"KIDP",City:"Independence",State:"KS",Latitude:37.1666,Longitude:-95.7833},KJN8:{StationId:"KJN8",City:"Jennings",State:"KS",Latitude:39.6833,Longitude:-100.3},KLWC:{StationId:"KLWC",City:"Lawrence",State:"KS",Latitude:39.0166,Longitude:-95.2166},K3K7:{StationId:"K3K7",City:"Leoti/Hoard Meml",State:"KS",Latitude:38.45,Longitude:-101.35},KLBL:{StationId:"KLBL",City:"Liberal",State:"KS",Latitude:37.0333,Longitude:-100.9666},KMHK:{StationId:"KMHK",City:"Manhattan",State:"KS",Latitude:39.1333,Longitude:-96.6833},KIAB:{StationId:"KIAB",City:"Mcconnell Afb",State:"KS",Latitude:37.6166,Longitude:-97.2666},KP28:{StationId:"KP28",City:"Medicine Lodge",State:"KS",Latitude:37.2833,Longitude:-98.55},KAL8:{StationId:"KAL8",City:"New Almelo",State:"KS",Latitude:39.6,Longitude:-100.1166},KEWK:{StationId:"KEWK",City:"Newton",State:"KS",Latitude:38.0333,Longitude:-97.2666},KIXD:{StationId:"KIXD",City:"Olathe/Industria",State:"KS",Latitude:38.8166,Longitude:-94.8833},KOJC:{StationId:"KOJC",City:"Olathe/Executive",State:"KS",Latitude:38.85,Longitude:-94.7333},KOSW:{StationId:"KOSW",City:"Oswego/Vor",State:"KS",Latitude:37.15,Longitude:-95.2},KPPF:{StationId:"KPPF",City:"Parsons",State:"KS",Latitude:37.3333,Longitude:-95.5},KPTS:{StationId:"KPTS",City:"Pittsburg",State:"KS",Latitude:37.45,Longitude:-94.7333},KPTT:{StationId:"KPTT",City:"Pratt Indust",State:"KS",Latitude:37.7,Longitude:-98.75},KRSL:{StationId:"KRSL",City:"Russell",State:"KS",Latitude:38.8666,Longitude:-98.8166},KSLN:{StationId:"KSLN",City:"Salina",State:"KS",Latitude:38.7833,Longitude:-97.65},KFOE:{StationId:"KFOE",City:"Topeka/Forbes",State:"KS",Latitude:38.9333,Longitude:-95.65},KTOP:{StationId:"KTOP",City:"Topeka",State:"KS",Latitude:39.0666,Longitude:-95.6333},KWK6:{StationId:"KWK6",City:"Wakeeney",State:"KS",Latitude:39.0333,Longitude:-99.8833},KICT:{StationId:"KICT",City:"Wichita",State:"KS",Latitude:37.65,Longitude:-97.4333},KAAO:{StationId:"KAAO",City:"Wichita/Jabara",State:"KS",Latitude:37.75,Longitude:-97.2166},KWLD:{StationId:"KWLD",City:"Winfield/Arkansa",State:"KS",Latitude:37.1666,Longitude:-97.0333},K1K5:{StationId:"K1K5",City:"Elkhart",State:"KS",Latitude:37,Longitude:-101.8833},K3KM:{StationId:"K3KM",City:"Wichita/Jabara",State:"KS",Latitude:37.75,Longitude:-97.2166},KOIN:{StationId:"KOIN",City:"Oberlin",State:"KS",Latitude:39.8333,Longitude:-100.5333},K3K3:{StationId:"K3K3",City:"Syracuse",State:"KS",Latitude:38,Longitude:-101.75},KNRN:{StationId:"KNRN",City:"Norton",State:"KS",Latitude:39.85,Longitude:-99.9},KTRB:{StationId:"KTRB",City:"Tribune",State:"KS",Latitude:38.45,Longitude:-101.75},KCBK:{StationId:"KCBK",City:"Colby",State:"KS",Latitude:39.4333,Longitude:-101.05},KGNL:{StationId:"KGNL",City:"Grinnell",State:"KS",Latitude:39.1333,Longitude:-100.6166},KHOX:{StationId:"KHOX",City:"Hoxie",State:"KS",Latitude:39.3666,Longitude:-100.4333},KPHG:{StationId:"KPHG",City:"Phillipsburg",State:"KS",Latitude:39.7333,Longitude:-99.3166},KHD7:{StationId:"KHD7",City:"Herndon",State:"KS",Latitude:39.9166,Longitude:-100.8333},KLG5:{StationId:"KLG5",City:"Logan",State:"KS",Latitude:39.6666,Longitude:-99.5666},KSYF:{StationId:"KSYF",City:"St Francis",State:"KS",Latitude:39.7666,Longitude:-101.8},KK78:{StationId:"KK78",City:"Abilene",State:"KS",Latitude:38.9,Longitude:-97.2333},K9K7:{StationId:"K9K7",City:"Ellsworth",State:"KS",Latitude:38.75,Longitude:-98.2333},K13K:{StationId:"K13K",City:"Eureka",State:"KS",Latitude:37.85,Longitude:-96.3},KFSK:{StationId:"KFSK",City:"Fort Scott",State:"KS",Latitude:37.8,Longitude:-94.7666},KHQG:{StationId:"KHQG",City:"Hugoton",State:"KS",Latitude:37.1666,Longitude:-101.3666},K2K3:{StationId:"K2K3",City:"Johnson",State:"KS",Latitude:37.5833,Longitude:-101.7333},K9K8:{StationId:"K9K8",City:"Kingman",State:"KS",Latitude:37.6666,Longitude:-98.1166},KMPR:{StationId:"KMPR",City:"Mcpherson",State:"KS",Latitude:38.35,Longitude:-97.6833},KOEL:{StationId:"KOEL",City:"Oakley",State:"KS",Latitude:39.1166,Longitude:-100.8166},KTQK:{StationId:"KTQK",City:"Scott City",State:"KS",Latitude:38.4666,Longitude:-100.8833},KK82:{StationId:"KK82",City:"Smith Center",State:"KS",Latitude:39.7666,Longitude:-98.8},KULS:{StationId:"KULS",City:"Ulysses",State:"KS",Latitude:37.6,Longitude:-101.3666},KEGT:{StationId:"KEGT",City:"Wellington",State:"KS",Latitude:37.3166,Longitude:-97.3833},KSJS:{StationId:"KSJS",City:"Big Sandy Rgnl",State:"KY",Latitude:37.75,Longitude:-82.6333},KBWG:{StationId:"KBWG",City:"Bowling Gree",State:"KY",Latitude:36.9666,Longitude:-86.4166},KCVG:{StationId:"KCVG",City:"Covington",State:"KY",Latitude:39.05,Longitude:-84.6666},KDVK:{StationId:"KDVK",City:"Danville",State:"KY",Latitude:37.5833,Longitude:-84.7666},KHPX:{StationId:"KHPX",City:"Hopkinton/F Camb",State:"KY",Latitude:36.7333,Longitude:-87.2833},KHOP:{StationId:"KHOP",City:"Hopkinsville",State:"KY",Latitude:36.6666,Longitude:-87.5},KK62:{StationId:"KK62",City:"Falmouth",State:"KY",Latitude:38.7,Longitude:-84.4},KLVX:{StationId:"KLVX",City:"Fort Knox/88D",State:"KY",Latitude:37.9833,Longitude:-85.95},KFTK:{StationId:"KFTK",City:"Fort Knox/Godman",State:"KY",Latitude:37.8833,Longitude:-85.9666},KFFT:{StationId:"KFFT",City:"Frankfort",State:"KY",Latitude:38.1833,Longitude:-84.9},KGLW:{StationId:"KGLW",City:"Glasgow",State:"KY",Latitude:37.0333,Longitude:-85.95},KI35:{StationId:"KI35",City:"Harlan",State:"KY",Latitude:36.8666,Longitude:-83.3666},KEHR:{StationId:"KEHR",City:"Henderson City",State:"KY",Latitude:37.8166,Longitude:-87.6666},KLEX:{StationId:"KLEX",City:"Lexington",State:"KY",Latitude:38.0333,Longitude:-84.6},KLOZ:{StationId:"KLOZ",City:"London",State:"KY",Latitude:37.0833,Longitude:-84.0666},KSDF:{StationId:"KSDF",City:"Louisville",State:"KY",Latitude:38.1833,Longitude:-85.7333},KLOU:{StationId:"KLOU",City:"Louisville/Bowmn",State:"KY",Latitude:38.2166,Longitude:-85.6666},KLMK:{StationId:"KLMK",City:"Louisville/Wfo",State:"KY",Latitude:38.2333,Longitude:-85.6666},KIIU:{StationId:"KIIU",City:"Louisville Vor",State:"KY",Latitude:38.1,Longitude:-85.5833},K2I0:{StationId:"K2I0",City:"Madisonville",State:"KY",Latitude:37.35,Longitude:-87.4},K5M9:{StationId:"K5M9",City:"Marion",State:"KY",Latitude:37.3333,Longitude:-88.1166},KM25:{StationId:"KM25",City:"Mayfield",State:"KY",Latitude:36.7666,Longitude:-88.5833},K1A6:{StationId:"K1A6",City:"Middlesboro-Bell",State:"KY",Latitude:36.6166,Longitude:-83.7333},KEKQ:{StationId:"KEKQ",City:"Monticello/Wayne",State:"KY",Latitude:36.85,Longitude:-84.85},KM97:{StationId:"KM97",City:"Morehead",State:"KY",Latitude:38.2166,Longitude:-83.5833},KIOB:{StationId:"KIOB",City:"Mount Sterling",State:"KY",Latitude:38.05,Longitude:-83.9833},KCEY:{StationId:"KCEY",City:"Murray Kyle-Oak",State:"KY",Latitude:36.6666,Longitude:-88.3666},KJKL:{StationId:"KJKL",City:"Noctor/Jackson",State:"KY",Latitude:37.6,Longitude:-83.3166},KOWB:{StationId:"KOWB",City:"Owensboro/Davies",State:"KY",Latitude:37.7166,Longitude:-87.1666},KPAH:{StationId:"KPAH",City:"Paducah",State:"KY",Latitude:37.0666,Longitude:-88.7666},KI39:{StationId:"KI39",City:"Richmond/Madison",State:"KY",Latitude:37.6333,Longitude:-84.3333},KSME:{StationId:"KSME",City:"Somerset",State:"KY",Latitude:37.05,Longitude:-84.6166},KTZV:{StationId:"KTZV",City:"Tompkinsville",State:"KY",Latitude:36.7333,Longitude:-85.65},KEKX:{StationId:"KEKX",City:"Elizabeth",State:"KY",Latitude:37.7166,Longitude:-85.8666},KI26:{StationId:"KI26",City:"Henderson City",State:"KY",Latitude:37.8166,Longitude:-87.6666},K5I3:{StationId:"K5I3",City:"Pikeville (Ramos",State:"KY",Latitude:37.4666,Longitude:-82.5166},KK22:{StationId:"KK22",City:"Prestonburg",State:"KY",Latitude:37.75,Longitude:-82.6333},KIYA:{StationId:"KIYA",City:"Abbeville Cc Mem",State:"LA",Latitude:29.9833,Longitude:-92.0833},KAEX:{StationId:"KAEX",City:"Alexandria",State:"LA",Latitude:31.3333,Longitude:-92.5666},KESF:{StationId:"KESF",City:"Alexandria",State:"LA",Latitude:31.4,Longitude:-92.2833},K7R3:{StationId:"K7R3",City:"Amelia/Lake Palo",State:"LA",Latitude:29.6833,Longitude:-91.0833},KAUD:{StationId:"KAUD",City:"Audubon Park",State:"LA",Latitude:29.9333,Longitude:-90.1333},KBAD:{StationId:"KBAD",City:"Barksdale Afb",State:"LA",Latitude:32.5,Longitude:-93.6666},KBQP:{StationId:"KBQP",City:"Bastrop Morehous",State:"LA",Latitude:32.75,Longitude:-91.8833},KBTR:{StationId:"KBTR",City:"Baton Rouge",State:"LA",Latitude:30.5333,Longitude:-91.15},KBXA:{StationId:"KBXA",City:"Bogalusa Carr F",State:"LA",Latitude:30.8166,Longitude:-89.8666},KBVE:{StationId:"KBVE",City:"Boothville",State:"LA",Latitude:29.3166,Longitude:-89.4},K7R5:{StationId:"K7R5",City:"Cameron Heliport",State:"LA",Latitude:29.7666,Longitude:-93.2833},KCWF:{StationId:"KCWF",City:"Chenault/Lk Chas",State:"LA",Latitude:30.2166,Longitude:-93.15},K5R8:{StationId:"K5R8",City:"Dequincey Ind Ar",State:"LA",Latitude:30.4333,Longitude:-93.4666},KDRI:{StationId:"KDRI",City:"Deridder/Fss",State:"LA",Latitude:30.8333,Longitude:-93.3333},K3B6:{StationId:"K3B6",City:"Eugene Is 330",State:"LA",Latitude:28.2333,Longitude:-91.6833},KPOE:{StationId:"KPOE",City:"Fort Polk Fr",State:"LA",Latitude:31.05,Longitude:-93.2},KAQV:{StationId:"KAQV",City:"Peason Ridg/Polk",State:"LA",Latitude:31.4,Longitude:-93.3},KBKB:{StationId:"KBKB",City:"Fullerton/Polk",State:"LA",Latitude:31,Longitude:-92.9166},KDNK:{StationId:"KDNK",City:"Self Strip/Polk",State:"LA",Latitude:31.1166,Longitude:-93.15},K9F2:{StationId:"K9F2",City:"Fourchon (Sawrs)",State:"LA",Latitude:29.1,Longitude:-90.2},KXPY:{StationId:"KXPY",City:"Port Fourchon",State:"LA",Latitude:29.1166,Longitude:-90.2},KGAO:{StationId:"KGAO",City:"Galliano",State:"LA",Latitude:29.45,Longitude:-90.2666},K2GL:{StationId:"K2GL",City:"Galliano Heliprt",State:"LA",Latitude:29.4166,Longitude:-90.3},KAXO:{StationId:"KAXO",City:"Grand Isle (Sawr",State:"LA",Latitude:29.25,Longitude:-89.9666},KLEV:{StationId:"KLEV",City:"Grand Isle (Vor)",State:"LA",Latitude:29.1833,Longitude:-90.1},KXCN:{StationId:"KXCN",City:"Green Canyon 184",State:"LA",Latitude:27.7666,Longitude:-91.5166},K28K:{StationId:"K28K",City:"Green Canyon 52",State:"LA",Latitude:27.8833,Longitude:-91.5},KHDC:{StationId:"KHDC",City:"Hammond",State:"LA",Latitude:30.5166,Longitude:-90.4166},KH02:{StationId:"KH02",City:"High Island 334A",State:"LA",Latitude:28.1,Longitude:-93.4},KH08:{StationId:"KH08",City:"High Is. 264C",State:"LA",Latitude:28.4666,Longitude:-93.7333},KH78:{StationId:"KH78",City:"Offshore",State:"LA",Latitude:28.1833,Longitude:-88.4833},KHUM:{StationId:"KHUM",City:"Houma Terrebonne",State:"LA",Latitude:29.5666,Longitude:-90.6666},K7R4:{StationId:"K7R4",City:"Intracoastal Cit",State:"LA",Latitude:29.7666,Longitude:-92.1166},K3R7:{StationId:"K3R7",City:"Jennings",State:"LA",Latitude:30.25,Longitude:-92.6666},KLFT:{StationId:"KLFT",City:"Lafayette",State:"LA",Latitude:30.2,Longitude:-92},KLCH:{StationId:"KLCH",City:"Lake Charles",State:"LA",Latitude:30.1333,Longitude:-93.2166},KMNE:{StationId:"KMNE",City:"Minden",State:"LA",Latitude:32.65,Longitude:-93.3},KMLU:{StationId:"KMLU",City:"Monroe",State:"LA",Latitude:32.5166,Longitude:-92.0333},KIER:{StationId:"KIER",City:"Natchitoches",State:"LA",Latitude:31.7333,Longitude:-93.1},KARA:{StationId:"KARA",City:"New Iberia",State:"LA",Latitude:30.0333,Longitude:-91.8833},KNEW:{StationId:"KNEW",City:"New Orleans/Lake",State:"LA",Latitude:30.05,Longitude:-90.0333},KNBG:{StationId:"KNBG",City:"New Orleans Nas",State:"LA",Latitude:29.8166,Longitude:-90.0166},KMSY:{StationId:"KMSY",City:"New Orleans/Intl",State:"LA",Latitude:30,Longitude:-90.25},KHZR:{StationId:"KHZR",City:"New Roads",State:"LA",Latitude:30.7166,Longitude:-91.4833},KVSH:{StationId:"KVSH",City:"New O Superdome",State:"LA",Latitude:29.95,Longitude:-90.0833},KHRV:{StationId:"KHRV",City:"Harvey/N Orleans",State:"LA",Latitude:29.85,Longitude:-90},KACP:{StationId:"KACP",City:"Oakdale Allen P",State:"LA",Latitude:30.75,Longitude:-92.6833},KOPL:{StationId:"KOPL",City:"Opelousas",State:"LA",Latitude:30.55,Longitude:-92.1},KRSN:{StationId:"KRSN",City:"Ruston Regional",State:"LA",Latitude:32.5166,Longitude:-92.5833},KPTN:{StationId:"KPTN",City:"Patterson Memori",State:"LA",Latitude:29.7166,Longitude:-91.3166},KP92:{StationId:"KP92",City:"Salt Point",State:"LA",Latitude:29.5666,Longitude:-91.5333},KGSM:{StationId:"KGSM",City:"Ship Shoal 207",State:"LA",Latitude:28.5333,Longitude:-90.9833},KDTN:{StationId:"KDTN",City:"Shreveport/Dwntn",State:"LA",Latitude:32.55,Longitude:-93.75},KSHV:{StationId:"KSHV",City:"Shreveport",State:"LA",Latitude:32.45,Longitude:-93.8333},KEIC:{StationId:"KEIC",City:"Shreveport(Vor)",State:"LA",Latitude:32.7666,Longitude:-93.8166},KLIX:{StationId:"KLIX",City:"Slidell/88D",State:"LA",Latitude:30.3333,Longitude:-89.8333},KASD:{StationId:"KASD",City:"Slidell 22",State:"LA",Latitude:30.35,Longitude:-89.8166},KORN:{StationId:"KORN",City:"New Orleans Rfc",State:"LA",Latitude:30.25,Longitude:-89.7666},KSRN:{StationId:"KSRN",City:"S Marsh Isl 268",State:"LA",Latitude:29.1166,Longitude:-91.8666},K7R8:{StationId:"K7R8",City:"S Marsh Island",State:"LA",Latitude:28.3,Longitude:-91.9666},KS58:{StationId:"KS58",City:"South Timbalier",State:"LA",Latitude:28.5166,Longitude:-90.5666},KUXL:{StationId:"KUXL",City:"Sulphur",State:"LA",Latitude:30.1333,Longitude:-93.3833},KTVR:{StationId:"KTVR",City:"Tallulah/Vicksbu",State:"LA",Latitude:32.35,Longitude:-91.0333},K1B7:{StationId:"K1B7",City:"Venice Heliport",State:"LA",Latitude:29.35,Longitude:-89.4333},KE12:{StationId:"KE12",City:"E. Cameron 346",State:"LA",Latitude:28.0666,Longitude:-92.7},KW60:{StationId:"KW60",City:"W. Cameron 560",State:"LA",Latitude:28.15,Longitude:-93.35},K0R3:{StationId:"K0R3",City:"Abbeville Cc Mem",State:"LA",Latitude:29.9833,Longitude:-92.0833},K01R:{StationId:"K01R",City:"Alexandria/Afb",State:"LA",Latitude:31.1333,Longitude:-92.5666},K2F8:{StationId:"K2F8",City:"Bastrop Morehous",State:"LA",Latitude:32.75,Longitude:-91.8833},K41I:{StationId:"K41I",City:"Eugene Is. 266C",State:"LA",Latitude:28.4666,Longitude:-91.7833},KL49:{StationId:"KL49",City:"Galliano",State:"LA",Latitude:29.45,Longitude:-90.2666},KGHB:{StationId:"KGHB",City:"Garden Banks172",State:"LA",Latitude:27.8333,Longitude:-91.9833},KL38:{StationId:"KL38",City:"Gonzales",State:"LA",Latitude:30.1666,Longitude:-90.9333},KL29:{StationId:"KL29",City:"Grand Cheiner",State:"LA",Latitude:29.8,Longitude:-92.8333},KG01:{StationId:"KG01",City:"Green Canyon 184",State:"LA",Latitude:27.9,Longitude:-91.5},K01T:{StationId:"K01T",City:"High Island 511",State:"LA",Latitude:28.1333,Longitude:-94.4},KH39:{StationId:"KH39",City:"High Is. A572c",State:"LA",Latitude:27.95,Longitude:-93.9833},KL40:{StationId:"KL40",City:"High Is. A489b",State:"LA",Latitude:28.2,Longitude:-94.2},K7R2:{StationId:"K7R2",City:"Leeville",State:"LA",Latitude:29.2166,Longitude:-90.2333},KF24:{StationId:"KF24",City:"Minden",State:"LA",Latitude:32.65,Longitude:-93.3},K1G7:{StationId:"K1G7",City:"Miss. Canyon",State:"LA",Latitude:28.7833,Longitude:-89.05},KL42:{StationId:"KL42",City:"Oakdale Allen P",State:"LA",Latitude:30.75,Longitude:-92.6833},KS02:{StationId:"KS02",City:"Ship Shoal 224A",State:"LA",Latitude:28.5,Longitude:-91.3},KS65:{StationId:"KS65",City:"Ship Shoal 198G",State:"LA",Latitude:28.5,Longitude:-91.2},K6R0:{StationId:"K6R0",City:"Slidell",State:"LA",Latitude:30.35,Longitude:-89.8166},KSIL:{StationId:"KSIL",City:"Slidell",State:"LA",Latitude:30.25,Longitude:-89.7666},KL75:{StationId:"KL75",City:"Southland Field",State:"LA",Latitude:30.1333,Longitude:-93.3666},KH18:{StationId:"KH18",City:"S. Pass Blk 62A",State:"LA",Latitude:28.9833,Longitude:-89.1333},K3V8:{StationId:"K3V8",City:"Venice/Heliport",State:"LA",Latitude:29.1166,Longitude:-89.2},K7W2:{StationId:"K7W2",City:"Vermillion",State:"LA",Latitude:28.5833,Longitude:-92.4666},KVRX:{StationId:"KVRX",City:"Vermillion Area",State:"LA",Latitude:28.05,Longitude:-92.45},K7R1:{StationId:"K7R1",City:"Venice",State:"LA",Latitude:29.2666,Longitude:-89.3666},KW76:{StationId:"KW76",City:"W. Cameron 522",State:"LA",Latitude:28.3666,Longitude:-93.5},K37C:{StationId:"K37C",City:"W. Cameron 556",State:"LA",Latitude:28.3666,Longitude:-93.5},K7B5:{StationId:"K7B5",City:"W. Cameron 587",State:"LA",Latitude:28.0833,Longitude:-93.2},KMPM:{StationId:"KMPM",City:"Main Pass 299",State:"LA",Latitude:29.2666,Longitude:-88.7666},KCYD:{StationId:"KCYD",City:"Miss Canyan 807",State:"LA",Latitude:28.1666,Longitude:-89.2166},KIPN:{StationId:"KIPN",City:"Indepedence 920",State:"LA",Latitude:28.0833,Longitude:-87.9833},KGBK:{StationId:"KGBK",City:"Magnolia Oilp",State:"LA",Latitude:27.2,Longitude:-92.2},KSPR:{StationId:"KSPR",City:"Ship Shoal178",State:"LA",Latitude:28.6,Longitude:-91.2},KMDJ:{StationId:"KMDJ",City:"Miss Canyon 311A",State:"LA",Latitude:28.65,Longitude:-89.8},KEHC:{StationId:"KEHC",City:"E Cameron278oilp",State:"LA",Latitude:28.4333,Longitude:-92.8833},KVBS:{StationId:"KVBS",City:"Sabine 13B Oilp",State:"LA",Latitude:29.4833,Longitude:-93.6333},KSCF:{StationId:"KSCF",City:"S Marsh268 Oilp",State:"LA",Latitude:29.1166,Longitude:-91.8666},KVNP:{StationId:"KVNP",City:"Vermillion26oilp",State:"LA",Latitude:29.4666,Longitude:-92.3666},KEIR:{StationId:"KEIR",City:"Eugene I 215Oilp",State:"LA",Latitude:28.6333,Longitude:-91.4833},KATP:{StationId:"KATP",City:"Atlantis Oilp",State:"LA",Latitude:27.2,Longitude:-90.0333},KCMB:{StationId:"KCMB",City:"E Cameron 47Jp",State:"LA",Latitude:29.4333,Longitude:-92.9833},KGRY:{StationId:"KGRY",City:"Green Canyon 338",State:"LA",Latitude:27.6333,Longitude:-90.45},KXIH:{StationId:"KXIH",City:"High Is. 179A",State:"LA",Latitude:29.1833,Longitude:-94.5166},KVKY:{StationId:"KVKY",City:"Main Pass 289C",State:"LA",Latitude:29.25,Longitude:-88.4333},KMIS:{StationId:"KMIS",City:"Main Pass 140B",State:"LA",Latitude:29.3,Longitude:-88.85},KSTZ:{StationId:"KSTZ",City:"S Timbalier 301B",State:"LA",Latitude:28.1666,Longitude:-90.6666},KVQT:{StationId:"KVQT",City:"Vermilion 331",State:"LA",Latitude:28.2666,Longitude:-92.2666},KIKT:{StationId:"KIKT",City:"Miss Canyon 474",State:"LA",Latitude:28.5166,Longitude:-88.2833},KBED:{StationId:"KBED",City:"Bedford",State:"MA",Latitude:42.4666,Longitude:-71.3},KBVY:{StationId:"KBVY",City:"Beverly",State:"MA",Latitude:42.5833,Longitude:-70.9166},KBOS:{StationId:"KBOS",City:"Boston",State:"MA",Latitude:42.3666,Longitude:-71.0166},KBOX:{StationId:"KBOX",City:"Boston/Taunton",State:"MA",Latitude:41.95,Longitude:-71.1333},KTAR:{StationId:"KTAR",City:"Boston/Rfc",State:"MA",Latitude:41.95,Longitude:-71.1333},KCHH:{StationId:"KCHH",City:"Chatham",State:"MA",Latitude:41.6666,Longitude:-69.9666},KCQX:{StationId:"KCQX",City:"Chatham",State:"MA",Latitude:41.6833,Longitude:-70},KCEF:{StationId:"KCEF",City:"Chicopee/Westove",State:"MA",Latitude:42.2,Longitude:-72.5166},KMQE:{StationId:"KMQE",City:"East Milton",State:"MA",Latitude:42.2166,Longitude:-71.1166},KFMH:{StationId:"KFMH",City:"Falmouth/Otis Ab",State:"MA",Latitude:41.6333,Longitude:-70.5166},KFIT:{StationId:"KFIT",City:"Fitchburg",State:"MA",Latitude:42.55,Longitude:-71.75},KHYA:{StationId:"KHYA",City:"Hyannis",State:"MA",Latitude:41.6666,Longitude:-70.2666},KLWM:{StationId:"KLWM",City:"Lawrence",State:"MA",Latitude:42.7166,Longitude:-71.1333},KGHG:{StationId:"KGHG",City:"Marshfield",State:"MA",Latitude:42.1,Longitude:-70.6666},KMVY:{StationId:"KMVY",City:"Marthas Vineyard",State:"MA",Latitude:41.4,Longitude:-70.6166},KACK:{StationId:"KACK",City:"Nantucket",State:"MA",Latitude:41.25,Longitude:-70.0666},KEWB:{StationId:"KEWB",City:"New Bedford",State:"MA",Latitude:41.6833,Longitude:-70.95},KAQW:{StationId:"KAQW",City:"North Adams",State:"MA",Latitude:42.7,Longitude:-73.1666},KOWD:{StationId:"KOWD",City:"Norwood",State:"MA",Latitude:42.1833,Longitude:-71.1666},KORE:{StationId:"KORE",City:"Orange",State:"MA",Latitude:42.5666,Longitude:-72.2833},KPSF:{StationId:"KPSF",City:"Pittsfield",State:"MA",Latitude:42.4333,Longitude:-73.2833},KPYM:{StationId:"KPYM",City:"Plymouth",State:"MA",Latitude:41.9166,Longitude:-70.7333},KPVC:{StationId:"KPVC",City:"Provincetown",State:"MA",Latitude:42.0666,Longitude:-70.2166},KNZW:{StationId:"KNZW",City:"South Weymouth",State:"MA",Latitude:42.1333,Longitude:-70.9166},KTAN:{StationId:"KTAN",City:"Taunton",State:"MA",Latitude:41.8833,Longitude:-71.0166},KBAF:{StationId:"KBAF",City:"Westfield",State:"MA",Latitude:42.1666,Longitude:-72.7166},KORH:{StationId:"KORH",City:"Worcester",State:"MA",Latitude:42.2666,Longitude:-71.8666},K9B4:{StationId:"K9B4",City:"Ashburnham",State:"MA",Latitude:42.65,Longitude:-71.8666},KAYE:{StationId:"KAYE",City:"Ayer",State:"MA",Latitude:42.5666,Longitude:-71.6},K8B5:{StationId:"K8B5",City:"Barre Falls",State:"MA",Latitude:42.4166,Longitude:-72.0666},KGDM:{StationId:"KGDM",City:"Gardner",State:"MA",Latitude:42.5666,Longitude:-71.9666},KGBR:{StationId:"KGBR",City:"G Barrington",State:"MA",Latitude:42.2,Longitude:-73.35},K7B2:{StationId:"K7B2",City:"Knightville",State:"MA",Latitude:42.2666,Longitude:-72.8666},K3B2:{StationId:"K3B2",City:"Marshfield",State:"MA",Latitude:42.1,Longitude:-70.6666},K2B2:{StationId:"K2B2",City:"Newburyport",State:"MA",Latitude:42.8166,Longitude:-70.9166},K2B6:{StationId:"K2B6",City:"North Adams",State:"MA",Latitude:42.7,Longitude:-73.1833},KWOR:{StationId:"KWOR",City:"Worthington",State:"MA",Latitude:42.3833,Longitude:-72.9166},KAPG:{StationId:"KAPG",City:"Aberdeen/Phillip",State:"MD",Latitude:39.4666,Longitude:-76.1666},KQAH:{StationId:"KQAH",City:"Aberdeen Prv Gnd",State:"MD",Latitude:39.5,Longitude:-76.5666},KNAK:{StationId:"KNAK",City:"Annapolis/Naval",State:"MD",Latitude:38.9833,Longitude:-76.4833},KADW:{StationId:"KADW",City:"Andrews Afb",State:"MD",Latitude:38.8166,Longitude:-76.8666},KBWI:{StationId:"KBWI",City:"Balto/Wash Intl",State:"MD",Latitude:39.1666,Longitude:-76.6833},KMTN:{StationId:"KMTN",City:"Baltimore/Martin",State:"MD",Latitude:39.3166,Longitude:-76.4166},KDMH:{StationId:"KDMH",City:"Baltimore/Dwntwn",State:"MD",Latitude:39.2833,Longitude:-76.6166},KCGE:{StationId:"KCGE",City:"Cambridge-Dorch",State:"MD",Latitude:38.5333,Longitude:-76.0333},KRSP:{StationId:"KRSP",City:"Nsf Thurmont",State:"MD",Latitude:39.65,Longitude:-77.4666},KWNO:{StationId:"KWNO",City:"Camp Spring/Ncep",State:"MD",Latitude:38.85,Longitude:-76.9333},KWNH:{StationId:"KWNH",City:"Camp Springs/Hpc",State:"MD",Latitude:38.85,Longitude:-76.9333},KWNM:{StationId:"KWNM",City:"Camp Springs/Mpc",State:"MD",Latitude:38.85,Longitude:-76.9333},KWNC:{StationId:"KWNC",City:"Camp Springs/Cpc",State:"MD",Latitude:38.85,Longitude:-76.9333},KWNB:{StationId:"KWNB",City:"Camp Springs/Dbc",State:"MD",Latitude:38.85,Longitude:-76.9333},KDMW:{StationId:"KDMW",City:"Carroll Cnty",State:"MD",Latitude:39.6,Longitude:-77},KW32:{StationId:"KW32",City:"Clinton",State:"MD",Latitude:38.75,Longitude:-76.9333},KCGS:{StationId:"KCGS",City:"College Park",State:"MD",Latitude:38.9833,Longitude:-76.9166},KCBE:{StationId:"KCBE",City:"Cumberland Reg",State:"MD",Latitude:39.6166,Longitude:-78.7666},KESN:{StationId:"KESN",City:"Easton/Newnam",State:"MD",Latitude:38.8,Longitude:-76.0666},KFME:{StationId:"KFME",City:"Fort Meade",State:"MD",Latitude:39.0833,Longitude:-76.7666},KJWX:{StationId:"KJWX",City:"Fort Ritchie",State:"MD",Latitude:39.7166,Longitude:-77.4166},KFDK:{StationId:"KFDK",City:"Frederick",State:"MD",Latitude:39.4166,Longitude:-77.3666},K2G4:{StationId:"K2G4",City:"Garrett Co",State:"MD",Latitude:39.5833,Longitude:-79.3333},KGAI:{StationId:"KGAI",City:"Gaithersburg",State:"MD",Latitude:39.1666,Longitude:-77.1666},KHGR:{StationId:"KHGR",City:"Hagerstown",State:"MD",Latitude:39.7,Longitude:-77.7333},KOXB:{StationId:"KOXB",City:"Ocean City",State:"MD",Latitude:38.3166,Longitude:-75.1166},KNHK:{StationId:"KNHK",City:"Patuxent River",State:"MD",Latitude:38.2666,Longitude:-76.4},KRJD:{StationId:"KRJD",City:"Ridgely",State:"MD",Latitude:38.9666,Longitude:-75.8666},KSBY:{StationId:"KSBY",City:"Salisbury",State:"MD",Latitude:38.3333,Longitude:-75.5},KW29:{StationId:"KW29",City:"Stevensville",State:"MD",Latitude:38.9833,Longitude:-76.3333},K2W6:{StationId:"K2W6",City:"St Marys (Duke)",State:"MD",Latitude:38.3166,Longitude:-76.55},KDVD:{StationId:"KDVD",City:"Camp David",State:"MD",Latitude:39.65,Longitude:-77.4666},K43M:{StationId:"K43M",City:"Fort Ritchie/Sit",State:"MD",Latitude:39.7166,Longitude:-77.4166},KN80:{StationId:"KN80",City:"Ocean City",State:"MD",Latitude:38.3166,Longitude:-75.1166},KNUI:{StationId:"KNUI",City:"Webster Naval",State:"MD",Latitude:38.15,Longitude:-76.4333},KEMI:{StationId:"KEMI",City:"Westminster",State:"MD",Latitude:39.5,Longitude:-76.9833},KLEW:{StationId:"KLEW",City:"Auburn/Lewiston",State:"ME",Latitude:44.0333,Longitude:-70.2666},KAUG:{StationId:"KAUG",City:"Augusta",State:"ME",Latitude:44.3166,Longitude:-69.8},KBGR:{StationId:"KBGR",City:"Bangor",State:"ME",Latitude:44.8,Longitude:-68.8166},KBHB:{StationId:"KBHB",City:"Bar Harbor",State:"ME",Latitude:44.45,Longitude:-68.3666},KNHZ:{StationId:"KNHZ",City:"Brunswick Nas",State:"ME",Latitude:43.8666,Longitude:-69.9166},KCAR:{StationId:"KCAR",City:"Caribou",State:"ME",Latitude:46.8666,Longitude:-68.0166},KB21:{StationId:"KB21",City:"Carrabassett",State:"ME",Latitude:45.0833,Longitude:-70.2166},K40B:{StationId:"K40B",City:"Clayton Lake",State:"ME",Latitude:46.6166,Longitude:-69.5166},KEPM:{StationId:"KEPM",City:"Eastport",State:"ME",Latitude:44.9166,Longitude:-67.0166},KFVE:{StationId:"KFVE",City:"Frenchville",State:"ME",Latitude:47.2833,Longitude:-68.3},KIZG:{StationId:"KIZG",City:"Fryeburg",State:"ME",Latitude:43.9833,Longitude:-70.95},KGYX:{StationId:"KGYX",City:"Gray/Portland",State:"ME",Latitude:43.8833,Longitude:-70.25},KGNR:{StationId:"KGNR",City:"Greenville",State:"ME",Latitude:45.4666,Longitude:-69.55},KCBW:{StationId:"KCBW",City:"Houlton/88D",State:"ME",Latitude:46.0333,Longitude:-67.8},KHUL:{StationId:"KHUL",City:"Houlton",State:"ME",Latitude:46.1166,Longitude:-67.8},KENE:{StationId:"KENE",City:"Kennebunkport",State:"ME",Latitude:43.4333,Longitude:-70.6166},KMLT:{StationId:"KMLT",City:"Millinocket",State:"ME",Latitude:45.65,Longitude:-68.7},KOLD:{StationId:"KOLD",City:"Old Town/Dewitt",State:"ME",Latitude:44.95,Longitude:-68.6666},KPWM:{StationId:"KPWM",City:"Portland",State:"ME",Latitude:43.65,Longitude:-70.3},KPQI:{StationId:"KPQI",City:"Presque Isle",State:"ME",Latitude:46.6666,Longitude:-68.0333},KRKD:{StationId:"KRKD",City:"Rockland/Knox",State:"ME",Latitude:44.0666,Longitude:-69.0833},KSFM:{StationId:"KSFM",City:"Sanford Muni",State:"ME",Latitude:43.3833,Longitude:-70.7166},KWVL:{StationId:"KWVL",City:"Waterville",State:"ME",Latitude:44.5166,Longitude:-69.6666},KIWI:{StationId:"KIWI",City:"Wiscasset",State:"ME",Latitude:43.9666,Longitude:-69.7166},K47B:{StationId:"K47B",City:"Eastport",State:"ME",Latitude:44.9166,Longitude:-67},KB20:{StationId:"KB20",City:"Freyburg",State:"ME",Latitude:43.9833,Longitude:-70.95},K3B1:{StationId:"K3B1",City:"Greenville",State:"ME",Latitude:45.4666,Longitude:-69.55},K2B7:{StationId:"K2B7",City:"Harmony",State:"ME",Latitude:44.9333,Longitude:-69.6166},KLIZ:{StationId:"KLIZ",City:"Loring Afb",State:"ME",Latitude:46.95,Longitude:-67.8833},K8B0:{StationId:"K8B0",City:"Rangeley",State:"ME",Latitude:44.9666,Longitude:-70.7},KRUM:{StationId:"KRUM",City:"Rumford",State:"ME",Latitude:44.5333,Longitude:-70.5333},K9B6:{StationId:"K9B6",City:"Sewel Ridge",State:"ME",Latitude:43,Longitude:-68},K9B9:{StationId:"K9B9",City:"Wiscasset",State:"ME",Latitude:43.9666,Longitude:-69.7166},KADG:{StationId:"KADG",City:"Adrian",State:"MI",Latitude:41.8666,Longitude:-84.0833},KAMN:{StationId:"KAMN",City:"Alma",State:"MI",Latitude:43.3166,Longitude:-84.6833},KAPN:{StationId:"KAPN",City:"Alpena",State:"MI",Latitude:45.0666,Longitude:-83.5666},KARB:{StationId:"KARB",City:"Ann Arbor",State:"MI",Latitude:42.2166,Longitude:-83.7333},KBAX:{StationId:"KBAX",City:"Bad Axe",State:"MI",Latitude:43.7833,Longitude:-82.9833},KBTL:{StationId:"KBTL",City:"Battle Creek",State:"MI",Latitude:42.3166,Longitude:-85.2333},KACB:{StationId:"KACB",City:"Bellaire",State:"MI",Latitude:44.9833,Longitude:-85.2},KSJX:{StationId:"KSJX",City:"Beaver Island",State:"MI",Latitude:45.7,Longitude:-85.5666},KBEH:{StationId:"KBEH",City:"Benton Harbor",State:"MI",Latitude:42.1333,Longitude:-86.4166},KRQB:{StationId:"KRQB",City:"Big Rapids",State:"MI",Latitude:43.7166,Longitude:-85.5},KCAD:{StationId:"KCAD",City:"Cadillac/Wexford",State:"MI",Latitude:44.2666,Longitude:-85.4166},KCFS:{StationId:"KCFS",City:"Caro/Tuscola",State:"MI",Latitude:43.4666,Longitude:-83.45},KCVX:{StationId:"KCVX",City:"Charlevoix",State:"MI",Latitude:45.3,Longitude:-85.2666},KFPK:{StationId:"KFPK",City:"Charlotte",State:"MI",Latitude:42.5666,Longitude:-84.8166},KSLH:{StationId:"KSLH",City:"Cheboygan",State:"MI",Latitude:45.65,Longitude:-84.5166},KCIU:{StationId:"KCIU",City:"Chippewa Intl",State:"MI",Latitude:46.25,Longitude:-84.4666},KOEB:{StationId:"KOEB",City:"Coldwater",State:"MI",Latitude:41.9166,Longitude:-85.0333},KP59:{StationId:"KP59",City:"Copper Harbor",State:"MI",Latitude:47.4666,Longitude:-87.8833},KDET:{StationId:"KDET",City:"Detroit/City Air",State:"MI",Latitude:42.4,Longitude:-83.0166},KYIP:{StationId:"KYIP",City:"Detroit/Willow",State:"MI",Latitude:42.2333,Longitude:-83.5333},KDTW:{StationId:"KDTW",City:"Detroit/Wayne",State:"MI",Latitude:42.2333,Longitude:-83.3333},KDTX:{StationId:"KDTX",City:"Detroit/White Lk",State:"MI",Latitude:42.7,Longitude:-83.4666},KONZ:{StationId:"KONZ",City:"Detroit/Grosse I",State:"MI",Latitude:42.1,Longitude:-83.15},KDXO:{StationId:"KDXO",City:"Detroit/Vor",State:"MI",Latitude:42.2166,Longitude:-83.3666},KDRM:{StationId:"KDRM",City:"Drummond Is",State:"MI",Latitude:46,Longitude:-83.75},KESC:{StationId:"KESC",City:"Escanaba",State:"MI",Latitude:45.75,Longitude:-87.0833},KFNT:{StationId:"KFNT",City:"Flint",State:"MI",Latitude:42.9666,Longitude:-83.75},KFKS:{StationId:"KFKS",City:"Frankfort",State:"MI",Latitude:44.6333,Longitude:-86.2},KFFX:{StationId:"KFFX",City:"Fremont",State:"MI",Latitude:43.4333,Longitude:-86},KAPX:{StationId:"KAPX",City:"Gaylord/Alpena",State:"MI",Latitude:44.9,Longitude:-84.7166},KGLR:{StationId:"KGLR",City:"Gaylord",State:"MI",Latitude:45.0166,Longitude:-84.6833},KGRR:{StationId:"KGRR",City:"Grand Rapids",State:"MI",Latitude:42.8833,Longitude:-85.5166},KGOV:{StationId:"KGOV",City:"Grayling Af",State:"MI",Latitude:44.6833,Longitude:-84.7333},KSAW:{StationId:"KSAW",City:"Gwinn/Sawyer",State:"MI",Latitude:46.35,Longitude:-87.4},KCMX:{StationId:"KCMX",City:"Hancock",State:"MI",Latitude:47.1666,Longitude:-88.4833},KMGN:{StationId:"KMGN",City:"Harbor Springs",State:"MI",Latitude:45.4333,Longitude:-84.9166},KC04:{StationId:"KC04",City:"Hart/Shelby",State:"MI",Latitude:41.9166,Longitude:-85.0333},KJYM:{StationId:"KJYM",City:"Hillsdale",State:"MI",Latitude:41.9166,Longitude:-84.5833},KBIV:{StationId:"KBIV",City:"Holland",State:"MI",Latitude:42.75,Longitude:-86.1},KHTL:{StationId:"KHTL",City:"Houghton Lake",State:"MI",Latitude:44.35,Longitude:-84.6666},KOZW:{StationId:"KOZW",City:"Howell",State:"MI",Latitude:42.6166,Longitude:-83.9666},KY70:{StationId:"KY70",City:"Ionia",State:"MI",Latitude:42.9333,Longitude:-85.0666},KIMT:{StationId:"KIMT",City:"Iron Mountain",State:"MI",Latitude:45.8166,Longitude:-88.1166},KIWD:{StationId:"KIWD",City:"Ironwood",State:"MI",Latitude:46.5166,Longitude:-90.1166},KJXN:{StationId:"KJXN",City:"Jackson/Reynolds",State:"MI",Latitude:42.2666,Longitude:-84.4666},KAZO:{StationId:"KAZO",City:"Kalamazoo",State:"MI",Latitude:42.2333,Longitude:-85.55},KDUH:{StationId:"KDUH",City:"Lambertville",State:"MI",Latitude:41.7333,Longitude:-83.65},KLAN:{StationId:"KLAN",City:"Lansing",State:"MI",Latitude:42.7833,Longitude:-84.5833},KD95:{StationId:"KD95",City:"Lapeer",State:"MI",Latitude:43.0666,Longitude:-83.2666},KLDM:{StationId:"KLDM",City:"Ludington/Mason",State:"MI",Latitude:43.9666,Longitude:-86.4},KMCD:{StationId:"KMCD",City:"Mackinac Island",State:"MI",Latitude:45.85,Longitude:-84.6333},KMBL:{StationId:"KMBL",City:"Manistee",State:"MI",Latitude:44.2666,Longitude:-86.25},KISQ:{StationId:"KISQ",City:"Manistique",State:"MI",Latitude:45.9666,Longitude:-86.1666},KP75:{StationId:"KP75",City:"Manistique",State:"MI",Latitude:45.95,Longitude:-86.2333},KRMY:{StationId:"KRMY",City:"Marshall",State:"MI",Latitude:42.2333,Longitude:-84.95},KTEW:{StationId:"KTEW",City:"Mason",State:"MI",Latitude:42.5666,Longitude:-84.4166},KMNM:{StationId:"KMNM",City:"Menominee",State:"MI",Latitude:45.1166,Longitude:-87.6166},KIKW:{StationId:"KIKW",City:"Midland Barstow",State:"MI",Latitude:43.6666,Longitude:-84.2666},KTTF:{StationId:"KTTF",City:"Monroe",State:"MI",Latitude:41.9333,Longitude:-83.4166},KMOP:{StationId:"KMOP",City:"Mount Pleasant",State:"MI",Latitude:43.6166,Longitude:-84.7333},KP53:{StationId:"KP53",City:"Munising Lakesh",State:"MI",Latitude:46.4166,Longitude:-86.65},KMKG:{StationId:"KMKG",City:"Muskegon",State:"MI",Latitude:43.1666,Longitude:-86.2333},KERY:{StationId:"KERY",City:"Newberry",State:"MI",Latitude:46.3,Longitude:-85.45},KGIJ:{StationId:"KGIJ",City:"Niles Vor",State:"MI",Latitude:41.7666,Longitude:-86.3166},KOSC:{StationId:"KOSC",City:"Oscoda/Wurtsmith",State:"MI",Latitude:44.45,Longitude:-83.4},KASP:{StationId:"KASP",City:"Oscoda (Vor)",State:"MI",Latitude:44.45,Longitude:-83.4},KRNP:{StationId:"KRNP",City:"Owosso",State:"MI",Latitude:43,Longitude:-84.1333},KPLN:{StationId:"KPLN",City:"Pellston",State:"MI",Latitude:45.5666,Longitude:-84.8},KPTK:{StationId:"KPTK",City:"Pontiac",State:"MI",Latitude:42.6666,Longitude:-83.4166},KPMM:{StationId:"KPMM",City:"Pullman Vor",State:"MI",Latitude:42.4666,Longitude:-86.1166},KP58:{StationId:"KP58",City:"Port Hope",State:"MI",Latitude:44.0166,Longitude:-82.8},KPHN:{StationId:"KPHN",City:"Port Huron",State:"MI",Latitude:42.9166,Longitude:-82.5166},KPZQ:{StationId:"KPZQ",City:"Rogers City",State:"MI",Latitude:45.4,Longitude:-83.8166},KMBS:{StationId:"KMBS",City:"Saginaw",State:"MI",Latitude:43.5333,Longitude:-84.0833},KHYX:{StationId:"KHYX",City:"Saginaw/Browne",State:"MI",Latitude:43.4333,Longitude:-83.8666},KSVM:{StationId:"KSVM",City:"Salem (Lansing)",State:"MI",Latitude:42.4166,Longitude:-83.6},KSSM:{StationId:"KSSM",City:"Sault Ste Marie",State:"MI",Latitude:46.4666,Longitude:-84.3666},KANJ:{StationId:"KANJ",City:"Sault Ste Marie",State:"MI",Latitude:46.4666,Longitude:-84.3666},KMTC:{StationId:"KMTC",City:"Selfridge Angb",State:"MI",Latitude:42.6166,Longitude:-82.8166},KLWA:{StationId:"KLWA",City:"South Haven",State:"MI",Latitude:42.35,Longitude:-86.25},KIRS:{StationId:"KIRS",City:"Sturgis/Kirsch",State:"MI",Latitude:41.8,Longitude:-85.4333},KHAI:{StationId:"KHAI",City:"Three Rivers",State:"MI",Latitude:41.9666,Longitude:-85.6},KTVC:{StationId:"KTVC",City:"Traverse Cit",State:"MI",Latitude:44.7333,Longitude:-85.5666},KVLL:{StationId:"KVLL",City:"Troy/Oakland",State:"MI",Latitude:42.55,Longitude:-83.1833},K78D:{StationId:"K78D",City:"Caro/Tuscola",State:"MI",Latitude:43.4666,Longitude:-83.45},K07G:{StationId:"K07G",City:"Charlotte",State:"MI",Latitude:42.5666,Longitude:-84.8166},KY15:{StationId:"KY15",City:"Cheboygan",State:"MI",Latitude:45.65,Longitude:-84.5166},K2G5:{StationId:"K2G5",City:"Detroit/Grosse I",State:"MI",Latitude:42.1,Longitude:-83.1666},K3FM:{StationId:"K3FM",City:"Fremont",State:"MI",Latitude:43.4333,Longitude:-86},K3RN:{StationId:"K3RN",City:"Grayling Af",State:"MI",Latitude:44.6833,Longitude:-84.7333},K55D:{StationId:"K55D",City:"Grayling Af",State:"MI",Latitude:44.6833,Longitude:-84.7333},KD87:{StationId:"KD87",City:"Harbor Springs",State:"MI",Latitude:45.4333,Longitude:-84.9166},K3HE:{StationId:"K3HE",City:"Howell",State:"MI",Latitude:42.6166,Longitude:-83.9666},K5G9:{StationId:"K5G9",City:"Lambertville",State:"MI",Latitude:41.7333,Longitude:-83.65},KY84:{StationId:"KY84",City:"Mackinac Island",State:"MI",Latitude:45.8666,Longitude:-84.6333},KMQT:{StationId:"KMQT",City:"Marquette",State:"MI",Latitude:46.5333,Longitude:-87.5666},K5D8:{StationId:"K5D8",City:"Marshall",State:"MI",Latitude:42.25,Longitude:-84.95},K09G:{StationId:"K09G",City:"Mason",State:"MI",Latitude:42.5666,Longitude:-84.4166},KD92:{StationId:"KD92",City:"Monroe",State:"MI",Latitude:41.9333,Longitude:-83.4333},K5D3:{StationId:"K5D3",City:"Owosso",State:"MI",Latitude:43,Longitude:-84.1333},KECK:{StationId:"KECK",City:"Peck",State:"MI",Latitude:43.25,Longitude:-82.7166},KY62:{StationId:"KY62",City:"Sault Ste Marie",State:"MI",Latitude:46.4666,Longitude:-84.3666},K0D1:{StationId:"K0D1",City:"South Haven",State:"MI",Latitude:42.35,Longitude:-86.25},K7D2:{StationId:"K7D2",City:"Troy/Oakland",State:"MI",Latitude:42.55,Longitude:-83.1833},KAIT:{StationId:"KAIT",City:"Aitkin Ndb",State:"MN",Latitude:46.5333,Longitude:-93.6666},KAEL:{StationId:"KAEL",City:"Albert Lea",State:"MN",Latitude:43.6833,Longitude:-93.3666},KAXN:{StationId:"KAXN",City:"Alexandria",State:"MN",Latitude:45.8666,Longitude:-95.4},KAQP:{StationId:"KAQP",City:"Appleton Municip",State:"MN",Latitude:45.2166,Longitude:-96},KAUM:{StationId:"KAUM",City:"Austin Muni",State:"MN",Latitude:43.6666,Longitude:-92.9166},KBDE:{StationId:"KBDE",City:"Baudette",State:"MN",Latitude:48.7333,Longitude:-94.6166},KBJI:{StationId:"KBJI",City:"Bemidji",State:"MN",Latitude:47.5,Longitude:-94.9166},KBBB:{StationId:"KBBB",City:"Benson Muni",State:"MN",Latitude:45.3166,Longitude:-95.65},KFOZ:{StationId:"KFOZ",City:"Bigfork",State:"MN",Latitude:47.7666,Longitude:-93.65},KBRD:{StationId:"KBRD",City:"Brainerd",State:"MN",Latitude:46.4,Longitude:-94.1333},KCFE:{StationId:"KCFE",City:"Buffalo Muni",State:"MN",Latitude:45.1666,Longitude:-93.85},KCBG:{StationId:"KCBG",City:"Cambridge Muni",State:"MN",Latitude:45.5666,Longitude:-93.2666},KCNB:{StationId:"KCNB",City:"Canby/Myers Fld",State:"MN",Latitude:44.7333,Longitude:-96.2666},KMPX:{StationId:"KMPX",City:"Chanhassen",State:"MN",Latitude:44.85,Longitude:-93.5666},KCOQ:{StationId:"KCOQ",City:"Cloquet",State:"MN",Latitude:46.7,Longitude:-92.5},KCQM:{StationId:"KCQM",City:"Cook Muni Airpor",State:"MN",Latitude:47.8166,Longitude:-92.6833},KCDD:{StationId:"KCDD",City:"Crane Lake",State:"MN",Latitude:48.2666,Longitude:-92.4833},KCKN:{StationId:"KCKN",City:"Crookston Muni",State:"MN",Latitude:47.85,Longitude:-96.6166},KDTL:{StationId:"KDTL",City:"Detroit Lakes",State:"MN",Latitude:46.8166,Longitude:-95.8666},KTOB:{StationId:"KTOB",City:"Dodge Center",State:"MN",Latitude:44.0166,Longitude:-92.8166},KDYT:{StationId:"KDYT",City:"Duluth (Sky Harb",State:"MN",Latitude:46.7166,Longitude:-92.0333},KDLH:{StationId:"KDLH",City:"Duluth",State:"MN",Latitude:46.85,Longitude:-92.2},KY63:{StationId:"KY63",City:"Elbow Lake Muni",State:"MN",Latitude:45.9833,Longitude:-96},KELO:{StationId:"KELO",City:"Ely Muni",State:"MN",Latitude:47.8166,Longitude:-91.8166},KEVM:{StationId:"KEVM",City:"Eveleth Muni",State:"MN",Latitude:47.4166,Longitude:-92.5},KFRM:{StationId:"KFRM",City:"Fairmont Muni",State:"MN",Latitude:43.6333,Longitude:-94.4166},KFBL:{StationId:"KFBL",City:"Faribault Muni",State:"MN",Latitude:44.3333,Longitude:-93.3166},KFFM:{StationId:"KFFM",City:"Fergus Falls",State:"MN",Latitude:46.2833,Longitude:-96.15},KFGN:{StationId:"KFGN",City:"Flag Island",State:"MN",Latitude:49.3166,Longitude:-94.9},KFSE:{StationId:"KFSE",City:"Fosston",State:"MN",Latitude:47.5833,Longitude:-95.7666},KGYL:{StationId:"KGYL",City:"Glencoe",State:"MN",Latitude:44.7666,Longitude:-94.0833},KGHW:{StationId:"KGHW",City:"Glenwood",State:"MN",Latitude:45.6333,Longitude:-95.3166},KGNA:{StationId:"KGNA",City:"Grand Marais",State:"MN",Latitude:47.75,Longitude:-90.35},KGRM:{StationId:"KGRM",City:"Grand Marais",State:"MN",Latitude:47.8333,Longitude:-90.3833},KCKC:{StationId:"KCKC",City:"Grand Marais/Coo",State:"MN",Latitude:47.8333,Longitude:-90.3666},KGPZ:{StationId:"KGPZ",City:"Grand Rapids",State:"MN",Latitude:47.2166,Longitude:-93.5166},KGDB:{StationId:"KGDB",City:"Granite Falls",State:"MN",Latitude:44.75,Longitude:-95.55},KHCO:{StationId:"KHCO",City:"Hallock",State:"MN",Latitude:48.75,Longitude:-96.9333},KHIB:{StationId:"KHIB",City:"Hibbing",State:"MN",Latitude:47.3833,Longitude:-92.8333},K04W:{StationId:"K04W",City:"Hinckley",State:"MN",Latitude:46.0166,Longitude:-92.9},KHCD:{StationId:"KHCD",City:"Hutchinson",State:"MN",Latitude:44.8666,Longitude:-94.3833},KINL:{StationId:"KINL",City:"Interntnl Falls",State:"MN",Latitude:48.5666,Longitude:-93.4},KMJQ:{StationId:"KMJQ",City:"Jackson Muni",State:"MN",Latitude:43.6333,Longitude:-94.9666},K21D:{StationId:"K21D",City:"Lake Elmo",State:"MN",Latitude:45,Longitude:-92.85},KLJF:{StationId:"KLJF",City:"Litchfield",State:"MN",Latitude:45.1,Longitude:-94.5166},KLXL:{StationId:"KLXL",City:"Little Falls",State:"MN",Latitude:45.95,Longitude:-94.3333},K14Y:{StationId:"K14Y",City:"Long Prairie",State:"MN",Latitude:45.9,Longitude:-94.8666},KXVG:{StationId:"KXVG",City:"Longville",State:"MN",Latitude:46.9833,Longitude:-94.2},KLYV:{StationId:"KLYV",City:"Luverne",State:"MN",Latitude:43.6166,Longitude:-96.2166},KDXX:{StationId:"KDXX",City:"Madison",State:"MN",Latitude:44.9833,Longitude:-96.1833},KMKT:{StationId:"KMKT",City:"Mankato",State:"MN",Latitude:44.2166,Longitude:-93.9166},KMML:{StationId:"KMML",City:"Marshall/Ryan",State:"MN",Latitude:44.45,Longitude:-95.8166},KMGG:{StationId:"KMGG",City:"Maple Lake",State:"MN",Latitude:45.2333,Longitude:-93.9833},KHZX:{StationId:"KHZX",City:"Mcgregor/Iverson",State:"MN",Latitude:46.6166,Longitude:-93.3166},KMSP:{StationId:"KMSP",City:"Minneapolis",State:"MN",Latitude:44.8833,Longitude:-93.2333},KANE:{StationId:"KANE",City:"Minneapls/Blaine",State:"MN",Latitude:45.15,Longitude:-93.2166},KMSR:{StationId:"KMSR",City:"Minneapolis/Rfc",State:"MN",Latitude:44.85,Longitude:-93.5666},KZMP:{StationId:"KZMP",City:"Minneapols/Artcc",State:"MN",Latitude:44.6333,Longitude:-93.1833},KFCM:{StationId:"KFCM",City:"Mnpls/Flying Cld",State:"MN",Latitude:44.8333,Longitude:-93.4666},KMIC:{StationId:"KMIC",City:"Mnpls/Crystal",State:"MN",Latitude:45.0666,Longitude:-93.35},KLVN:{StationId:"KLVN",City:"Mnpls/Airlake",State:"MN",Latitude:44.6333,Longitude:-93.2333},KMVE:{StationId:"KMVE",City:"Montevideo",State:"MN",Latitude:44.9666,Longitude:-95.7166},KJKJ:{StationId:"KJKJ",City:"Moorhead Muni",State:"MN",Latitude:46.8333,Longitude:-96.6666},KMZH:{StationId:"KMZH",City:"Moose Lake",State:"MN",Latitude:46.4166,Longitude:-92.8},KJMR:{StationId:"KJMR",City:"Mora",State:"MN",Latitude:45.8833,Longitude:-93.2666},KMOX:{StationId:"KMOX",City:"Morris Muni",State:"MN",Latitude:45.5666,Longitude:-95.9666},K27D:{StationId:"K27D",City:"Canby/Myers Fld",State:"MN",Latitude:44.7333,Longitude:-96.2666},KULM:{StationId:"KULM",City:"New Ulm Muni",State:"MN",Latitude:44.3166,Longitude:-94.5},KODI:{StationId:"KODI",City:"Nodine Vor",State:"MN",Latitude:43.9166,Longitude:-91.4666},KOVL:{StationId:"KOVL",City:"Olivia",State:"MN",Latitude:44.7833,Longitude:-95.0333},KORB:{StationId:"KORB",City:"Orr",State:"MN",Latitude:48.0166,Longitude:-92.8666},KVVV:{StationId:"KVVV",City:"Ortonville",State:"MN",Latitude:45.3,Longitude:-96.4166},KOWA:{StationId:"KOWA",City:"Owatonna",State:"MN",Latitude:44.1166,Longitude:-93.25},KPKD:{StationId:"KPKD",City:"Park Rapids",State:"MN",Latitude:46.9,Longitude:-95.0666},KPEX:{StationId:"KPEX",City:"Paynesville",State:"MN",Latitude:45.3666,Longitude:-94.7333},KPWC:{StationId:"KPWC",City:"Pine River Regio",State:"MN",Latitude:46.7166,Longitude:-94.3666},KPQN:{StationId:"KPQN",City:"Pipestone",State:"MN",Latitude:43.9666,Longitude:-96.3166},KFKA:{StationId:"KFKA",City:"Preston",State:"MN",Latitude:43.6833,Longitude:-92.1666},KPNM:{StationId:"KPNM",City:"Princeton Muni",State:"MN",Latitude:45.5666,Longitude:-93.6},KRGK:{StationId:"KRGK",City:"Red Wing",State:"MN",Latitude:44.5833,Longitude:-92.4833},KRWF:{StationId:"KRWF",City:"Redwood Fall",State:"MN",Latitude:44.55,Longitude:-95.0833},KRST:{StationId:"KRST",City:"Rochester",State:"MN",Latitude:43.9,Longitude:-92.5},K9MN:{StationId:"K9MN",City:"St Mary Hospital",State:"MN",Latitude:44.0166,Longitude:-92.4833},KROX:{StationId:"KROX",City:"Roseau Muni",State:"MN",Latitude:48.85,Longitude:-95.7},KROS:{StationId:"KROS",City:"Rush City",State:"MN",Latitude:45.7,Longitude:-92.95},KD39:{StationId:"KD39",City:"Sauk Centre",State:"MN",Latitude:45.7,Longitude:-94.9333},KBFW:{StationId:"KBFW",City:"Silver Bay",State:"MN",Latitude:47.25,Longitude:-91.4},KDVP:{StationId:"KDVP",City:"Slayton",State:"MN",Latitude:43.9833,Longitude:-95.7833},KSGS:{StationId:"KSGS",City:"South St Paul",State:"MN",Latitude:44.8666,Longitude:-93.0333},KSTC:{StationId:"KSTC",City:"St. Cloud",State:"MN",Latitude:45.55,Longitude:-94.05},KJYG:{StationId:"KJYG",City:"St. James",State:"MN",Latitude:43.9833,Longitude:-94.55},KSTP:{StationId:"KSTP",City:"St. Paul",State:"MN",Latitude:44.9333,Longitude:-93.05},KSYN:{StationId:"KSYN",City:"Stanton",State:"MN",Latitude:44.4666,Longitude:-93.0166},KSAZ:{StationId:"KSAZ",City:"Staples",State:"MN",Latitude:46.3666,Longitude:-94.8},KTVF:{StationId:"KTVF",City:"Thief River",State:"MN",Latitude:48.0666,Longitude:-96.1666},KP61:{StationId:"KP61",City:"Tofte (Ramos)",State:"MN",Latitude:47.5666,Longitude:-90.8166},KTKC:{StationId:"KTKC",City:"Tracy",State:"MN",Latitude:44.25,Longitude:-95.6166},KTWM:{StationId:"KTWM",City:"Two Harbors",State:"MN",Latitude:47.0333,Longitude:-91.75},KADC:{StationId:"KADC",City:"Wadena Muni",State:"MN",Latitude:46.45,Longitude:-95.2166},KRRT:{StationId:"KRRT",City:"Warroad",State:"MN",Latitude:48.9333,Longitude:-95.3333},KACQ:{StationId:"KACQ",City:"Waseca",State:"MN",Latitude:44.0666,Longitude:-93.55},KVWU:{StationId:"KVWU",City:"Waskish Muni",State:"MN",Latitude:48.15,Longitude:-94.5166},KETH:{StationId:"KETH",City:"Wheaton Ndb",State:"MN",Latitude:45.7833,Longitude:-96.55},KILL:{StationId:"KILL",City:"Willmar/Rice",State:"MN",Latitude:45.1166,Longitude:-95.0666},KBDH:{StationId:"KBDH",City:"Willmar Muni",State:"MN",Latitude:45.1166,Longitude:-95.1333},KMWM:{StationId:"KMWM",City:"Windom Muni Airp",State:"MN",Latitude:43.9,Longitude:-95.1},KONA:{StationId:"KONA",City:"Winona Muni",State:"MN",Latitude:44.0666,Longitude:-91.7},KOTG:{StationId:"KOTG",City:"Worthington",State:"MN",Latitude:43.6333,Longitude:-95.5666},K85D:{StationId:"K85D",City:"Bigfork",State:"MN",Latitude:47.7666,Longitude:-93.65},K8Y2:{StationId:"K8Y2",City:"Buffalo Muni",State:"MN",Latitude:45.1666,Longitude:-93.85},K8Y8:{StationId:"K8Y8",City:"Crane Lake",State:"MN",Latitude:46.2666,Longitude:-92.5666},K87D:{StationId:"K87D",City:"Dodge Center",State:"MN",Latitude:44.0166,Longitude:-92.8166},KD36:{StationId:"KD36",City:"Duluth/Sky Hrbr",State:"MN",Latitude:46.7166,Longitude:-92.05},KY29:{StationId:"KY29",City:"Glencoe",State:"MN",Latitude:44.75,Longitude:-95.9166},K1G2:{StationId:"K1G2",City:"Granite Falls",State:"MN",Latitude:44.75,Longitude:-95.55},K03Y:{StationId:"K03Y",City:"Hallock",State:"MN",Latitude:48.7666,Longitude:-96.95},K43F:{StationId:"K43F",City:"Litchfield Muni",State:"MN",Latitude:45.1,Longitude:-94.5},KD33:{StationId:"KD33",City:"Longville",State:"MN",Latitude:46.9833,Longitude:-94.2},KD19:{StationId:"KD19",City:"Luverne",State:"MN",Latitude:43.6166,Longitude:-96.2166},KY33:{StationId:"KY33",City:"Maple Lake",State:"MN",Latitude:45.2333,Longitude:-93.9833},KY12:{StationId:"KY12",City:"Lakeville/Mnpls",State:"MN",Latitude:44.6333,Longitude:-93.2333},K17Y:{StationId:"K17Y",City:"Mcgregor/Iverson",State:"MN",Latitude:46.6166,Longitude:-93.3166},K19D:{StationId:"K19D",City:"Mora Muni",State:"MN",Latitude:45.8666,Longitude:-93.2666},K99M:{StationId:"K99M",City:"Moorehead",State:"MN",Latitude:46.8333,Longitude:-96.6666},K2P3:{StationId:"K2P3",City:"Paynesville",State:"MN",Latitude:45.3666,Longitude:-94.75},KP39:{StationId:"KP39",City:"Pequot Lake",State:"MN",Latitude:46.6,Longitude:-94.3166},K54Y:{StationId:"K54Y",City:"Rush City",State:"MN",Latitude:45.7,Longitude:-92.95},K60Y:{StationId:"K60Y",City:"Slayton",State:"MN",Latitude:43.9833,Longitude:-95.7833},KD97:{StationId:"KD97",City:"South St Paul",State:"MN",Latitude:44.85,Longitude:-93.15},KD40:{StationId:"KD40",City:"St James Muni",State:"MN",Latitude:43.9833,Longitude:-94.55},KY68:{StationId:"KY68",City:"Tracy",State:"MN",Latitude:44.25,Longitude:-95.6},K17W:{StationId:"K17W",City:"Wadena",State:"MN",Latitude:46.45,Longitude:-95.2},KD45:{StationId:"KD45",City:"Warroad",State:"MN",Latitude:48.9333,Longitude:-95.35},KRAD:{StationId:"KRAD",City:"Warroad",State:"MN",Latitude:48.9333,Longitude:-95.3333},QASM:{StationId:"QASM",City:"Austin",State:"MN",Latitude:43.6666,Longitude:-92.95},QBLM:{StationId:"QBLM",City:"Albert Lea",State:"MN",Latitude:43.6333,Longitude:-93.3833},QFCM:{StationId:"QFCM",City:"Preston",State:"MN",Latitude:43.6666,Longitude:-92},QFMM:{StationId:"QFMM",City:"Rochester",State:"MN",Latitude:44.0166,Longitude:-92.4666},QGMM:{StationId:"QGMM",City:"Grand Meadow",State:"MN",Latitude:43.7166,Longitude:-92.5},QHIM:{StationId:"QHIM",City:"Hills",State:"MN",Latitude:43.5166,Longitude:-96.3666},QJAM:{StationId:"QJAM",City:"Rochester",State:"MN",Latitude:44.0666,Longitude:-92.4833},QKGM:{StationId:"QKGM",City:"Rochester",State:"MN",Latitude:44.0333,Longitude:-92.4666},QLEM:{StationId:"QLEM",City:"Leroy",State:"MN",Latitude:43.5166,Longitude:-92.5166},QMAM:{StationId:"QMAM",City:"Madison",State:"MN",Latitude:45.0166,Longitude:-96.1833},QMOM:{StationId:"QMOM",City:"Worthington",State:"MN",Latitude:43.6333,Longitude:-95.6333},QMSM:{StationId:"QMSM",City:"Luverne",State:"MN",Latitude:43.6666,Longitude:-96.2166},QRCM:{StationId:"QRCM",City:"Lamberton",State:"MN",Latitude:44.2333,Longitude:-95.2666},QTMM:{StationId:"QTMM",City:"West Concord",State:"MN",Latitude:44.1333,Longitude:-92.9},QWLM:{StationId:"QWLM",City:"Rochester",State:"MN",Latitude:43.9833,Longitude:-92.4333},KVER:{StationId:"KVER",City:"Boonville",State:"MO",Latitude:38.95,Longitude:-92.6833},KBBG:{StationId:"KBBG",City:"Branson",State:"MO",Latitude:36.5333,Longitude:-93.2},KFWB:{StationId:"KFWB",City:"Branson West",State:"MO",Latitude:36.7,Longitude:-93.4},KBUM:{StationId:"KBUM",City:"Butler",State:"MO",Latitude:38.2666,Longitude:-94.4833},KH21:{StationId:"KH21",City:"Camdenton",State:"MO",Latitude:37.9666,Longitude:-92.6833},KCGI:{StationId:"KCGI",City:"Cape Girardeau",State:"MO",Latitude:37.2333,Longitude:-89.5833},KCDJ:{StationId:"KCDJ",City:"Chillicothe",State:"MO",Latitude:39.8166,Longitude:-93.5833},KGLY:{StationId:"KGLY",City:"Clinton",State:"MO",Latitude:38.35,Longitude:-93.6833},KCOU:{StationId:"KCOU",City:"Columbia",State:"MO",Latitude:38.8166,Longitude:-92.2166},KFAM:{StationId:"KFAM",City:"Farmington",State:"MO",Latitude:37.7666,Longitude:-90.4166},KTBN:{StationId:"KTBN",City:"Fort Leonard Woo",State:"MO",Latitude:37.7166,Longitude:-92.1166},KGVW:{StationId:"KGVW",City:"Grandview",State:"MO",Latitude:38.8333,Longitude:-94.5666},KHAE:{StationId:"KHAE",City:"Hannibal",State:"MO",Latitude:39.7333,Longitude:-91.45},KLRY:{StationId:"KLRY",City:"Harrisonville",State:"MO",Latitude:38.6166,Longitude:-94.35},KJEF:{StationId:"KJEF",City:"Jefferson City",State:"MO",Latitude:38.6,Longitude:-92.15},KJLN:{StationId:"KJLN",City:"Joplin",State:"MO",Latitude:37.15,Longitude:-94.5},KLBO:{StationId:"KLBO",City:"Lebanon",State:"MO",Latitude:37.65,Longitude:-92.65},KAIZ:{StationId:"KAIZ",City:"Kaiser Mem",State:"MO",Latitude:38.1,Longitude:-92.5333},KMCI:{StationId:"KMCI",City:"Kansas City/Intl",State:"MO",Latitude:39.3,Longitude:-94.7333},KMKC:{StationId:"KMKC",City:"Kansas City/Dntn",State:"MO",Latitude:39.1166,Longitude:-94.6},KNKA:{StationId:"KNKA",City:"Kansas City/Com",State:"MO",Latitude:39.1166,Longitude:-94.6},KKCI:{StationId:"KKCI",City:"Kansas City/Awc",State:"MO",Latitude:39.2833,Longitude:-94.6666},KKRF:{StationId:"KKRF",City:"Kansas City/Rfc",State:"MO",Latitude:38.8166,Longitude:-94.2666},KZKC:{StationId:"KZKC",City:"Kansas Cit/Artcc",State:"MO",Latitude:38.85,Longitude:-94.7333},KIRK:{StationId:"KIRK",City:"Kirksville",State:"MO",Latitude:40.1,Longitude:-92.55},KLXT:{StationId:"KLXT",City:"Lees Summit Muni",State:"MO",Latitude:38.9666,Longitude:-94.3666},KMAW:{StationId:"KMAW",City:"Malden",State:"MO",Latitude:36.6,Longitude:-90},KMHL:{StationId:"KMHL",City:"Marshall",State:"MO",Latitude:39.1,Longitude:-93.2},KEVU:{StationId:"KEVU",City:"Maryville",State:"MO",Latitude:40.35,Longitude:-94.9166},KMYJ:{StationId:"KMYJ",City:"Mexico",State:"MO",Latitude:39.15,Longitude:-91.8166},KMBY:{StationId:"KMBY",City:"Moberly",State:"MO",Latitude:39.4666,Longitude:-92.4333},KUMN:{StationId:"KUMN",City:"Monett",State:"MO",Latitude:36.8666,Longitude:-93.9},KHFJ:{StationId:"KHFJ",City:"Monett",State:"MO",Latitude:36.9,Longitude:-94.0166},KGPH:{StationId:"KGPH",City:"Mosby",State:"MO",Latitude:39.3333,Longitude:-94.3166},KEOS:{StationId:"KEOS",City:"Neosho",State:"MO",Latitude:36.8166,Longitude:-94.4},KNVD:{StationId:"KNVD",City:"Nevada",State:"MO",Latitude:37.85,Longitude:-94.3},KPYN:{StationId:"KPYN",City:"Piedmont",State:"MO",Latitude:37.1333,Longitude:-90.7166},KEAX:{StationId:"KEAX",City:"Pleasant Hill/Kc",State:"MO",Latitude:38.8166,Longitude:-94.2666},KPOF:{StationId:"KPOF",City:"Popular Bluff",State:"MO",Latitude:36.7666,Longitude:-90.3166},KDMO:{StationId:"KDMO",City:"Sedalia",State:"MO",Latitude:38.7166,Longitude:-93.1666},KSIK:{StationId:"KSIK",City:"Sikeston",State:"MO",Latitude:36.9,Longitude:-89.5666},KP35:{StationId:"KP35",City:"Spickard",State:"MO",Latitude:40.25,Longitude:-93.7166},KSGF:{StationId:"KSGF",City:"Springfield",State:"MO",Latitude:37.2333,Longitude:-93.3833},KLSX:{StationId:"KLSX",City:"St Charles/88D",State:"MO",Latitude:38.7,Longitude:-90.6833},KSET:{StationId:"KSET",City:"St. Charles",State:"MO",Latitude:38.9333,Longitude:-90.4333},KSTJ:{StationId:"KSTJ",City:"St. Joseph",State:"MO",Latitude:39.7666,Longitude:-94.9166},KSUS:{StationId:"KSUS",City:"St. Louis/Spirit",State:"MO",Latitude:38.65,Longitude:-90.65},KSTL:{StationId:"KSTL",City:"St. Louis",State:"MO",Latitude:38.75,Longitude:-90.3666},KUUV:{StationId:"KUUV",City:"Sullivan",State:"MO",Latitude:38.2333,Longitude:-91.1666},KVIH:{StationId:"KVIH",City:"Vichy/Rolla",State:"MO",Latitude:38.1333,Longitude:-91.7666},KRAW:{StationId:"KRAW",City:"Warsaw",State:"MO",Latitude:38.35,Longitude:-93.35},KRCM:{StationId:"KRCM",City:"Warrensburg Skyh",State:"MO",Latitude:38.7833,Longitude:-93.8},KFYG:{StationId:"KFYG",City:"Washington",State:"MO",Latitude:38.5833,Longitude:-91},KUNO:{StationId:"KUNO",City:"West Plains",State:"MO",Latitude:36.8833,Longitude:-91.9},KSZL:{StationId:"KSZL",City:"Whiteman Afb",State:"MO",Latitude:38.7166,Longitude:-93.5333},KP02:{StationId:"KP02",City:"Poplar Bluff",State:"MO",Latitude:36.7666,Longitude:-90.4666},K3SQ:{StationId:"K3SQ",City:"St. Charles",State:"MO",Latitude:38.85,Longitude:-90.5},KH63:{StationId:"KH63",City:"West Plains",State:"MO",Latitude:36.75,Longitude:-91.8666},K9K4:{StationId:"K9K4",City:"Warrensburg Skyh",State:"MO",Latitude:38.7833,Longitude:-93.8},KM40:{StationId:"KM40",City:"Aberdeen/Amory",State:"MS",Latitude:33.8666,Longitude:-88.4833},KHSA:{StationId:"KHSA",City:"Bay St Louis",State:"MS",Latitude:30.3666,Longitude:-89.45},K01M:{StationId:"K01M",City:"Belmont",State:"MS",Latitude:34.5,Longitude:-88.2},KBIX:{StationId:"KBIX",City:"Biloxi/Keesler",State:"MS",Latitude:30.4166,Longitude:-88.9166},KIGB:{StationId:"KIGB",City:"Bigbee",State:"MS",Latitude:33.4833,Longitude:-88.5},K1R7:{StationId:"K1R7",City:"Brookhaven",State:"MS",Latitude:31.6,Longitude:-90.4166},KCKM:{StationId:"KCKM",City:"Clarksdale",State:"MS",Latitude:34.3,Longitude:-90.5166},KRNV:{StationId:"KRNV",City:"Cleveland",State:"MS",Latitude:33.7666,Longitude:-90.75},KCBM:{StationId:"KCBM",City:"Columbus Afb",State:"MS",Latitude:33.6333,Longitude:-88.45},KGWX:{StationId:"KGWX",City:"Columbus Afb/88D",State:"MS",Latitude:33.9,Longitude:-88.3333},KCRX:{StationId:"KCRX",City:"Corinth/R Turner",State:"MS",Latitude:34.9166,Longitude:-88.6},KGTR:{StationId:"KGTR",City:"Golden/Columbus",State:"MS",Latitude:33.45,Longitude:-88.5666},KGLH:{StationId:"KGLH",City:"Greenville",State:"MS",Latitude:33.5,Longitude:-90.9833},KGWO:{StationId:"KGWO",City:"Greenwood",State:"MS",Latitude:33.5,Longitude:-90.0833},KGPT:{StationId:"KGPT",City:"Gulfport",State:"MS",Latitude:30.4166,Longitude:-89.0833},KHBG:{StationId:"KHBG",City:"Hattiesburg",State:"MS",Latitude:31.2666,Longitude:-89.25},KIDL:{StationId:"KIDL",City:"Indianola",State:"MS",Latitude:33.4833,Longitude:-90.6833},KHKS:{StationId:"KHKS",City:"Jackson/Hawkins",State:"MS",Latitude:32.3333,Longitude:-90.2166},KJAN:{StationId:"KJAN",City:"Jackson",State:"MS",Latitude:32.3166,Longitude:-90.0833},KMHZ:{StationId:"KMHZ",City:"Magnolia",State:"MS",Latitude:32.4333,Longitude:-90.1},KDGX:{StationId:"KDGX",City:"Brandon/Jackson",State:"MS",Latitude:32.2833,Longitude:-89.9833},KMCB:{StationId:"KMCB",City:"Mccomb",State:"MS",Latitude:31.1833,Longitude:-90.4666},KNMM:{StationId:"KNMM",City:"Meridian Nas",State:"MS",Latitude:32.5333,Longitude:-88.5666},KMEI:{StationId:"KMEI",City:"Meridian/Key Fld",State:"MS",Latitude:32.3333,Longitude:-88.75},KHEZ:{StationId:"KHEZ",City:"Natchez/Hardy",State:"MS",Latitude:31.6166,Longitude:-91.3},KOLV:{StationId:"KOLV",City:"Olive Branch",State:"MS",Latitude:34.9833,Longitude:-89.7833},KUOX:{StationId:"KUOX",City:"Oxford",State:"MS",Latitude:34.3833,Longitude:-89.5333},KPQL:{StationId:"KPQL",City:"Pascagoula",State:"MS",Latitude:30.4666,Longitude:-88.5333},KPGL:{StationId:"KPGL",City:"Pascagoula",State:"MS",Latitude:30.4,Longitude:-88.4833},KPIB:{StationId:"KPIB",City:"Pine Belt Rgnl",State:"MS",Latitude:31.4666,Longitude:-89.3166},KJVW:{StationId:"KJVW",City:"Raymond",State:"MS",Latitude:32.3,Longitude:-90.4166},KSQS:{StationId:"KSQS",City:"Sidon Vor",State:"MS",Latitude:33.4666,Longitude:-90.2833},KSTF:{StationId:"KSTF",City:"Starkville",State:"MS",Latitude:33.4333,Longitude:-88.85},KUTA:{StationId:"KUTA",City:"Tunica",State:"MS",Latitude:34.6833,Longitude:-90.35},KTUP:{StationId:"KTUP",City:"Tupelo",State:"MS",Latitude:34.2666,Longitude:-88.7666},KGRW:{StationId:"KGRW",City:"Greenwood",State:"MS",Latitude:33.5,Longitude:-90.0833},KLUL:{StationId:"KLUL",City:"Laurel",State:"MS",Latitude:31.4666,Longitude:-89.3333},KM16:{StationId:"KM16",City:"Raymond",State:"MS",Latitude:32.3,Longitude:-90.4166},KVKS:{StationId:"KVKS",City:"Vicksburg",State:"MS",Latitude:32.2333,Longitude:-90.9333},KYZO:{StationId:"KYZO",City:"Yazoo City",State:"MS",Latitude:32.9,Longitude:-90.3666},KMYT:{StationId:"KMYT",City:"Innovator Oilp",State:"MS",Latitude:28.2166,Longitude:-89.6166},KDLP:{StationId:"KDLP",City:"West Delta 27A",State:"MS",Latitude:29.1166,Longitude:-89.55},KBHK:{StationId:"KBHK",City:"Baker",State:"MT",Latitude:46.35,Longitude:-104.25},KEKS:{StationId:"KEKS",City:"Ennis Big Sky",State:"MT",Latitude:45.2666,Longitude:-111.65},KBIL:{StationId:"KBIL",City:"Billings",State:"MT",Latitude:45.8,Longitude:-108.55},KBYZ:{StationId:"KBYZ",City:"Billings (Wfo)",State:"MT",Latitude:45.8,Longitude:-108.55},KBZN:{StationId:"KBZN",City:"Bozeman",State:"MT",Latitude:45.7833,Longitude:-111.1666},K8S0:{StationId:"K8S0",City:"Browning",State:"MT",Latitude:48.6,Longitude:-113.1166},KBTM:{StationId:"KBTM",City:"Butte",State:"MT",Latitude:45.9666,Longitude:-112.5},KS71:{StationId:"KS71",City:"Chinook",State:"MT",Latitude:48.6,Longitude:-109.25},KM46:{StationId:"KM46",City:"Colstrip",State:"MT",Latitude:45.85,Longitude:-106.7166},KCTB:{StationId:"KCTB",City:"Cut Bank",State:"MT",Latitude:48.6,Longitude:-112.3666},KDLN:{StationId:"KDLN",City:"Dillon",State:"MT",Latitude:45.25,Longitude:-112.55},K3DU:{StationId:"K3DU",City:"Drummond",State:"MT",Latitude:46.6666,Longitude:-113.15},K97M:{StationId:"K97M",City:"Ekalaka",State:"MT",Latitude:45.8833,Longitude:-104.5333},K88M:{StationId:"K88M",City:"Eureka",State:"MT",Latitude:48.9666,Longitude:-115.0833},K1S3:{StationId:"K1S3",City:"Forsyth",State:"MT",Latitude:46.2666,Longitude:-106.6166},KGGW:{StationId:"KGGW",City:"Glasgow",State:"MT",Latitude:48.2166,Longitude:-106.6166},KGDV:{StationId:"KGDV",City:"Glendive",State:"MT",Latitude:47.1166,Longitude:-104.7833},KTFX:{StationId:"KTFX",City:"Great Falls/88D",State:"MT",Latitude:47.4666,Longitude:-111.3833},KGTF:{StationId:"KGTF",City:"Great Falls",State:"MT",Latitude:47.4666,Longitude:-111.3833},K6S5:{StationId:"K6S5",City:"Hamilton/Ravalli",State:"MT",Latitude:46.25,Longitude:-114.1333},K3HT:{StationId:"K3HT",City:"Harlowton",State:"MT",Latitude:46.4166,Longitude:-109.8166},KHVR:{StationId:"KHVR",City:"Havre",State:"MT",Latitude:48.55,Longitude:-109.7666},KHLN:{StationId:"KHLN",City:"Helena",State:"MT",Latitude:46.6,Longitude:-111.9833},KJDN:{StationId:"KJDN",City:"Jordan",State:"MT",Latitude:47.3333,Longitude:-106.95},KFCA:{StationId:"KFCA",City:"Kalispell",State:"MT",Latitude:48.3,Longitude:-114.2666},KGPI:{StationId:"KGPI",City:"Kalispell",State:"MT",Latitude:48.3166,Longitude:-114.25},K6S8:{StationId:"K6S8",City:"Laurel",State:"MT",Latitude:45.7,Longitude:-108.7666},KLWT:{StationId:"KLWT",City:"Lewistown",State:"MT",Latitude:47.0333,Longitude:-109.4666},KS59:{StationId:"KS59",City:"Libby",State:"MT",Latitude:48.2833,Longitude:-115.4833},KLVM:{StationId:"KLVM",City:"Livingston",State:"MT",Latitude:45.7,Longitude:-110.4333},KGFA:{StationId:"KGFA",City:"Malmstrom Afb",State:"MT",Latitude:47.5,Longitude:-111.1666},KM75:{StationId:"KM75",City:"Malta",State:"MT",Latitude:48.3666,Longitude:-107.9166},KMLS:{StationId:"KMLS",City:"Miles City",State:"MT",Latitude:46.4333,Longitude:-105.8833},KMSX:{StationId:"KMSX",City:"Missoula Cty/88D",State:"MT",Latitude:47.0333,Longitude:-113.9833},KMSO:{StationId:"KMSO",City:"Missoula",State:"MT",Latitude:46.9166,Longitude:-114.1},KS34:{StationId:"KS34",City:"Plains",State:"MT",Latitude:47.4666,Longitude:-114.9},KPWD:{StationId:"KPWD",City:"Plentywood",State:"MT",Latitude:48.7833,Longitude:-104.5166},KPO1:{StationId:"KPO1",City:"Poplar",State:"MT",Latitude:48.1333,Longitude:-105.1666},KQPR:{StationId:"KQPR",City:"Powder River",State:"MT",Latitude:45.5333,Longitude:-104.8666},KRPX:{StationId:"KRPX",City:"Roundup",State:"MT",Latitude:46.4666,Longitude:-108.55},K9S2:{StationId:"K9S2",City:"Scobey",State:"MT",Latitude:48.8,Longitude:-105.4333},KSDY:{StationId:"KSDY",City:"Sidney Richland",State:"MT",Latitude:47.7,Longitude:-104.2},K3TH:{StationId:"K3TH",City:"Thompson Falls",State:"MT",Latitude:47.6,Longitude:-115.3666},K7S1:{StationId:"K7S1",City:"Twin Bridges",State:"MT",Latitude:45.5333,Longitude:-112.3},KWEY:{StationId:"KWEY",City:"West Yellowstone",State:"MT",Latitude:44.6333,Longitude:-111.0833},KOLF:{StationId:"KOLF",City:"Wolf Point",State:"MT",Latitude:48.1,Longitude:-105.5833},KWYS:{StationId:"KWYS",City:"West Yellowstone",State:"MT",Latitude:44.6666,Longitude:-111.1166},KBLX:{StationId:"KBLX",City:"Yellowst/Billing",State:"MT",Latitude:45.85,Longitude:-108.6},K4BQ:{StationId:"K4BQ",City:"Broadus",State:"MT",Latitude:45.4333,Longitude:-105.4},KHMM:{StationId:"KHMM",City:"Hamilton/Ravalli",State:"MT",Latitude:46.25,Longitude:-114.15},KMQM:{StationId:"KMQM",City:"Monida",State:"MT",Latitude:44.5666,Longitude:-112.3166},KASJ:{StationId:"KASJ",City:"Ahoskie/Tri Coun",State:"NC",Latitude:36.2833,Longitude:-77.1666},KVUJ:{StationId:"KVUJ",City:"Albemarle Stanly",State:"NC",Latitude:35.4166,Longitude:-80.15},KRHP:{StationId:"KRHP",City:"Andrews",State:"NC",Latitude:35.1833,Longitude:-83.85},KAFP:{StationId:"KAFP",City:"Wadesboro/Anson",State:"NC",Latitude:35.0166,Longitude:-80.0833},KHBI:{StationId:"KHBI",City:"Asheboro Muni",State:"NC",Latitude:35.65,Longitude:-79.9},KAVL:{StationId:"KAVL",City:"Asheville",State:"NC",Latitude:35.4333,Longitude:-82.5333},KMRH:{StationId:"KMRH",City:"Beaufort",State:"NC",Latitude:34.7333,Longitude:-76.65},KNJM:{StationId:"KNJM",City:"Bogue/Swansboro",State:"NC",Latitude:34.6666,Longitude:-77.0166},KTNB:{StationId:"KTNB",City:"Boone Watauga Ct",State:"NC",Latitude:36.2,Longitude:-81.65},KBUY:{StationId:"KBUY",City:"Burlington",State:"NC",Latitude:36.05,Longitude:-79.4666},KHAT:{StationId:"KHAT",City:"Cape Hatteras",State:"NC",Latitude:35.2666,Longitude:-75.5333},KIGX:{StationId:"KIGX",City:"Chapel Hill",State:"NC",Latitude:35.9333,Longitude:-79.0666},KCLT:{StationId:"KCLT",City:"Charlotte",State:"NC",Latitude:35.2166,Longitude:-80.95},KNKT:{StationId:"KNKT",City:"Cherry Point",State:"NC",Latitude:34.9,Longitude:-76.8833},KRAX:{StationId:"KRAX",City:"Clayton/Rdu 88D",State:"NC",Latitude:35.6666,Longitude:-78.4833},KCTZ:{StationId:"KCTZ",City:"Clinton",State:"NC",Latitude:34.9833,Longitude:-78.3666},KJQF:{StationId:"KJQF",City:"Concord Reg Arpt",State:"NC",Latitude:35.3833,Longitude:-80.7166},KONX:{StationId:"KONX",City:"Currituck",State:"NC",Latitude:36.4,Longitude:-76.0166},KEXX:{StationId:"KEXX",City:"Davidson Cty Ap",State:"NC",Latitude:35.7833,Longitude:-80.3},KEDE:{StationId:"KEDE",City:"Edenton",State:"NC",Latitude:36.0166,Longitude:-76.5666},KECG:{StationId:"KECG",City:"Elizabeth City",State:"NC",Latitude:36.2666,Longitude:-76.1833},KEYF:{StationId:"KEYF",City:"Elizabethtown",State:"NC",Latitude:34.6,Longitude:-78.5833},KHRJ:{StationId:"KHRJ",City:"Erwin/Harnett Co",State:"NC",Latitude:35.3833,Longitude:-78.7333},KFAY:{StationId:"KFAY",City:"Fayetteville",State:"NC",Latitude:34.9833,Longitude:-78.8833},KFBG:{StationId:"KFBG",City:"Fort Bragg/Simmo",State:"NC",Latitude:35.1166,Longitude:-78.9166},KAKH:{StationId:"KAKH",City:"Gastonia",State:"NC",Latitude:35.2,Longitude:-81.15},KGSB:{StationId:"KGSB",City:"Goldsboro/S. J.",State:"NC",Latitude:35.3166,Longitude:-77.9666},KGWW:{StationId:"KGWW",City:"Goldsboro/Wayne",State:"NC",Latitude:35.4666,Longitude:-77.9666},KGSO:{StationId:"KGSO",City:"Greensboro",State:"NC",Latitude:36.1,Longitude:-79.95},KHSE:{StationId:"KHSE",City:"Hatteras/Mitchel",State:"NC",Latitude:35.2333,Longitude:-75.6166},KHNZ:{StationId:"KHNZ",City:"Henderson/Oxford",State:"NC",Latitude:36.3666,Longitude:-78.5333},KHKY:{StationId:"KHKY",City:"Hickory",State:"NC",Latitude:35.75,Longitude:-81.3833},KHFF:{StationId:"KHFF",City:"Hoffman/Mackall",State:"NC",Latitude:35.0166,Longitude:-79.5},KOAJ:{StationId:"KOAJ",City:"Jacksonville",State:"NC",Latitude:34.8166,Longitude:-77.6166},KGEV:{StationId:"KGEV",City:"Jefferson",State:"NC",Latitude:36.4333,Longitude:-81.4166},KDPL:{StationId:"KDPL",City:"Kenansville/Dupl",State:"NC",Latitude:35,Longitude:-77.9666},KFFA:{StationId:"KFFA",City:"Kill Devil Hills",State:"NC",Latitude:36.0166,Longitude:-75.6666},KISO:{StationId:"KISO",City:"Kinston/Stalling",State:"NC",Latitude:35.3166,Longitude:-77.6166},KIPJ:{StationId:"KIPJ",City:"Lincolnton",State:"NC",Latitude:35.4833,Longitude:-81.1666},KLHZ:{StationId:"KLHZ",City:"Louisburg/Frankl",State:"NC",Latitude:36.0166,Longitude:-78.3333},KLBT:{StationId:"KLBT",City:"Lumberton",State:"NC",Latitude:34.6,Longitude:-79.0666},K1A5:{StationId:"K1A5",City:"Macon/Franklin",State:"NC",Latitude:35.2166,Longitude:-83.4166},KMQI:{StationId:"KMQI",City:"Manteo/Dare Co",State:"NC",Latitude:35.9166,Longitude:-75.7},KMEB:{StationId:"KMEB",City:"Maxton",State:"NC",Latitude:34.7833,Longitude:-79.3666},KEQY:{StationId:"KEQY",City:"Monroe",State:"NC",Latitude:35.0166,Longitude:-80.6166},KMHX:{StationId:"KMHX",City:"Morehead/Newport",State:"NC",Latitude:34.7666,Longitude:-76.8666},KMRN:{StationId:"KMRN",City:"Morganton/Lenoir",State:"NC",Latitude:35.8166,Longitude:-81.6166},KMWK:{StationId:"KMWK",City:"Mount Airy/Surry",State:"NC",Latitude:36.4666,Longitude:-80.55},KEWN:{StationId:"KEWN",City:"New Bern",State:"NC",Latitude:35.0666,Longitude:-77.05},KNCA:{StationId:"KNCA",City:"New River Mcas",State:"NC",Latitude:34.7166,Longitude:-77.45},KNBT:{StationId:"KNBT",City:"Piney Island",State:"NC",Latitude:35.0166,Longitude:-76.4666},KPGV:{StationId:"KPGV",City:"Pitt Greenville",State:"NC",Latitude:35.6166,Longitude:-77.4},KPOB:{StationId:"KPOB",City:"Pope Afb",State:"NC",Latitude:35.1666,Longitude:-79.0166},KRDU:{StationId:"KRDU",City:"Raleigh/Durham",State:"NC",Latitude:35.9,Longitude:-78.7833},KRAH:{StationId:"KRAH",City:"Raleigh/Wfo",State:"NC",Latitude:35.8666,Longitude:-78.7833},KSIF:{StationId:"KSIF",City:"Reidsville",State:"NC",Latitude:36.4333,Longitude:-79.85},KRZZ:{StationId:"KRZZ",City:"Roanoke Rapids",State:"NC",Latitude:36.4333,Longitude:-77.7166},KIXA:{StationId:"KIXA",City:"Halifax Northamp",State:"NC",Latitude:36.3333,Longitude:-77.6333},KRCZ:{StationId:"KRCZ",City:"Rockingham",State:"NC",Latitude:34.8833,Longitude:-79.7666},KRWI:{StationId:"KRWI",City:"Rocky Mount",State:"NC",Latitude:35.85,Longitude:-77.9},KTDF:{StationId:"KTDF",City:"Roxboro Person",State:"NC",Latitude:36.2833,Longitude:-78.9833},KFQD:{StationId:"KFQD",City:"Rutherfordton",State:"NC",Latitude:35.4166,Longitude:-81.9333},KRUQ:{StationId:"KRUQ",City:"Salisbury Rowan",State:"NC",Latitude:35.65,Longitude:-80.5166},KTTA:{StationId:"KTTA",City:"Sanford",State:"NC",Latitude:35.5833,Longitude:-79.1},KLTX:{StationId:"KLTX",City:"Shallotte/Wilm.",State:"NC",Latitude:33.9833,Longitude:-78.4333},KEHO:{StationId:"KEHO",City:"Shelby Muni",State:"NC",Latitude:35.25,Longitude:-81.6},K5W8:{StationId:"K5W8",City:"Siler City",State:"NC",Latitude:35.7,Longitude:-79.5},KSOP:{StationId:"KSOP",City:"Southern Pines",State:"NC",Latitude:35.2166,Longitude:-79.4},KJNX:{StationId:"KJNX",City:"Smithfield Johns",State:"NC",Latitude:35.5333,Longitude:-78.3833},KSVH:{StationId:"KSVH",City:"Statesville",State:"NC",Latitude:35.75,Longitude:-80.95},K2DP:{StationId:"K2DP",City:"Stumpy Point",State:"NC",Latitude:35.6833,Longitude:-75.9},KSUT:{StationId:"KSUT",City:"Southport",State:"NC",Latitude:33.9333,Longitude:-78.0833},KETC:{StationId:"KETC",City:"Tarboro",State:"NC",Latitude:35.9333,Longitude:-77.55},KOCW:{StationId:"KOCW",City:"Washington",State:"NC",Latitude:35.5666,Longitude:-77.05},KCPC:{StationId:"KCPC",City:"Whiteville",State:"NC",Latitude:34.2833,Longitude:-78.7166},KUKF:{StationId:"KUKF",City:"Wilkesboro",State:"NC",Latitude:36.2166,Longitude:-81.1},KILM:{StationId:"KILM",City:"Wilmington",State:"NC",Latitude:34.2666,Longitude:-77.9},KINT:{StationId:"KINT",City:"Winston Salem",State:"NC",Latitude:36.1333,Longitude:-80.2166},K6A3:{StationId:"K6A3",City:"Andrews",State:"NC",Latitude:35.1833,Longitude:-83.85},KW44:{StationId:"KW44",City:"Asheboro",State:"NC",Latitude:35.65,Longitude:-80.1},K9W7:{StationId:"K9W7",City:"Currituck",State:"NC",Latitude:36.4,Longitude:-76.0166},K44W:{StationId:"K44W",City:"Diamond Shores",State:"NC",Latitude:35.15,Longitude:-75.7},K37W:{StationId:"K37W",City:"Erwin/Harnett Co",State:"NC",Latitude:35.3666,Longitude:-78.7166},KHSS:{StationId:"KHSS",City:"Hot Springs",State:"NC",Latitude:35.9,Longitude:-82.8166},K78N:{StationId:"K78N",City:"Reidsville",State:"NC",Latitude:36.4333,Longitude:-79.85},K45J:{StationId:"K45J",City:"Rockingham",State:"NC",Latitude:34.8833,Longitude:-79.7666},KACZ:{StationId:"KACZ",City:"Wallace",State:"NC",Latitude:34.7333,Longitude:-78},K20U:{StationId:"K20U",City:"Beach",State:"ND",Latitude:46.9333,Longitude:-103.9833},KBIS:{StationId:"KBIS",City:"Bismarck",State:"ND",Latitude:46.7666,Longitude:-100.75},KBPP:{StationId:"KBPP",City:"Bowman Muni",State:"ND",Latitude:46.1833,Longitude:-103.4333},K9D7:{StationId:"K9D7",City:"Cando",State:"ND",Latitude:48.4833,Longitude:-99.2333},K46D:{StationId:"K46D",City:"Carrington",State:"ND",Latitude:47.45,Longitude:-99.15},K2C8:{StationId:"K2C8",City:"Cavalier",State:"ND",Latitude:48.7833,Longitude:-97.6333},KS32:{StationId:"KS32",City:"Cooperstown",State:"ND",Latitude:47.4166,Longitude:-98.1},KD50:{StationId:"KD50",City:"Crosby",State:"ND",Latitude:48.9333,Longitude:-103.3},KDVL:{StationId:"KDVL",City:"Devils Lake",State:"ND",Latitude:48.1166,Longitude:-98.9166},KP11:{StationId:"KP11",City:"Devils Lake",State:"ND",Latitude:48.1166,Longitude:-98.9166},KDIK:{StationId:"KDIK",City:"Dickinson",State:"ND",Latitude:46.8,Longitude:-102.8},KFAR:{StationId:"KFAR",City:"Fargo",State:"ND",Latitude:46.9333,Longitude:-96.8166},KFGF:{StationId:"KFGF",City:"Fargo/Grand Fork",State:"ND",Latitude:46.9,Longitude:-96.8},KN60:{StationId:"KN60",City:"Garrison",State:"ND",Latitude:47.65,Longitude:-101.4333},KD57:{StationId:"KD57",City:"Glen Ullin",State:"ND",Latitude:46.8166,Longitude:-101.8666},KGAF:{StationId:"KGAF",City:"Grafton",State:"ND",Latitude:48.4,Longitude:-97.3666},KRDR:{StationId:"KRDR",City:"Grand Forks Afb",State:"ND",Latitude:47.9666,Longitude:-97.4},KGFK:{StationId:"KGFK",City:"Grand Forks",State:"ND",Latitude:47.95,Longitude:-97.1833},KGWR:{StationId:"KGWR",City:"Gwinner",State:"ND",Latitude:46.2166,Longitude:-97.65},K5H4:{StationId:"K5H4",City:"Harvey",State:"ND",Latitude:47.7833,Longitude:-99.9333},KHZE:{StationId:"KHZE",City:"Hazen",State:"ND",Latitude:47.2833,Longitude:-101.5833},KHEI:{StationId:"KHEI",City:"Hettinger",State:"ND",Latitude:46.0166,Longitude:-102.65},KJMS:{StationId:"KJMS",City:"Jamestown",State:"ND",Latitude:46.9333,Longitude:-98.6666},KD55:{StationId:"KD55",City:"Langdon/Robertsn",State:"ND",Latitude:48.75,Longitude:-98.4},KP67:{StationId:"KP67",City:"Lidgerwood (Ramo",State:"ND",Latitude:46.1,Longitude:-97.15},K7L2:{StationId:"K7L2",City:"Linton",State:"ND",Latitude:46.2166,Longitude:-100.25},KY19:{StationId:"KY19",City:"Mandan",State:"ND",Latitude:46.7666,Longitude:-100.9},KMVX:{StationId:"KMVX",City:"Mayville/Fargo",State:"ND",Latitude:47.5333,Longitude:-97.3333},KMBX:{StationId:"KMBX",City:"Mchenry Cy/Minot",State:"ND",Latitude:48.4,Longitude:-100.8666},KMIB:{StationId:"KMIB",City:"Minot Afb",State:"ND",Latitude:48.4166,Longitude:-101.3333},KMOT:{StationId:"KMOT",City:"Minot",State:"ND",Latitude:48.25,Longitude:-101.2666},K2D5:{StationId:"K2D5",City:"Oakes",State:"ND",Latitude:46.1666,Longitude:-98.0833},K06D:{StationId:"K06D",City:"Rolla",State:"ND",Latitude:48.8833,Longitude:-99.6166},KRUG:{StationId:"KRUG",City:"Rugby",State:"ND",Latitude:48.3833,Longitude:-100.0166},K08D:{StationId:"K08D",City:"Stanley",State:"ND",Latitude:48.3,Longitude:-102.4},KD60:{StationId:"KD60",City:"Tioga",State:"ND",Latitude:48.3833,Longitude:-102.9},KBAC:{StationId:"KBAC",City:"Valley City",State:"ND",Latitude:46.9333,Longitude:-98.0166},K96D:{StationId:"K96D",City:"Walhalla",State:"ND",Latitude:48.9333,Longitude:-97.9},KS25:{StationId:"KS25",City:"Watford City",State:"ND",Latitude:47.8,Longitude:-103.25},KISN:{StationId:"KISN",City:"Williston",State:"ND",Latitude:48.1666,Longitude:-103.6333},KP24:{StationId:"KP24",City:"Roseglen",State:"ND",Latitude:47.75,Longitude:-101.8333},KBWP:{StationId:"KBWP",City:"Wahpeton",State:"ND",Latitude:46.25,Longitude:-96.6166},KANW:{StationId:"KANW",City:"Ainsworth Munici",State:"NE",Latitude:42.5666,Longitude:-100},KBVN:{StationId:"KBVN",City:"Albion Muni",State:"NE",Latitude:41.7333,Longitude:-98.05},KAIA:{StationId:"KAIA",City:"Alliance",State:"NE",Latitude:42.05,Longitude:-102.8},KAUH:{StationId:"KAUH",City:"Aurora",State:"NE",Latitude:40.8833,Longitude:-98},KBIE:{StationId:"KBIE",City:"Beatrice Municip",State:"NE",Latitude:40.2833,Longitude:-96.75},KBTA:{StationId:"KBTA",City:"Blair Muni",State:"NE",Latitude:41.4166,Longitude:-96.1166},KBBW:{StationId:"KBBW",City:"Broken Bow Muni",State:"NE",Latitude:41.4333,Longitude:-99.6333},KCDR:{StationId:"KCDR",City:"Chadron",State:"NE",Latitude:42.8333,Longitude:-103.1},KOLU:{StationId:"KOLU",City:"Columbus Muni",State:"NE",Latitude:41.45,Longitude:-97.3166},KFNB:{StationId:"KFNB",City:"Falls City/Brenn",State:"NE",Latitude:40.0666,Longitude:-95.5833},KFET:{StationId:"KFET",City:"Fremont Muni Arp",State:"NE",Latitude:41.45,Longitude:-96.5166},KGRI:{StationId:"KGRI",City:"Grand Island",State:"NE",Latitude:40.9666,Longitude:-98.3166},KGID:{StationId:"KGID",City:"Grand Island/Wfo",State:"NE",Latitude:40.9666,Longitude:-98.3166},KHSI:{StationId:"KHSI",City:"Hastings",State:"NE",Latitude:40.6,Longitude:-98.4333},KHJH:{StationId:"KHJH",City:"Hebron Muni",State:"NE",Latitude:40.15,Longitude:-97.5833},KHDE:{StationId:"KHDE",City:"Holdrege/Brewstr",State:"NE",Latitude:40.45,Longitude:-99.3166},KIML:{StationId:"KIML",City:"Imperial Municip",State:"NE",Latitude:40.5166,Longitude:-101.6166},KEAR:{StationId:"KEAR",City:"Kearney Muni",State:"NE",Latitude:40.7166,Longitude:-99},KIBM:{StationId:"KIBM",City:"Kimball Muni",State:"NE",Latitude:41.1833,Longitude:-103.6833},KLXN:{StationId:"KLXN",City:"Lexington",State:"NE",Latitude:40.7833,Longitude:-99.7666},KLNK:{StationId:"KLNK",City:"Lincoln",State:"NE",Latitude:40.85,Longitude:-96.7666},KMCK:{StationId:"KMCK",City:"Mccook",State:"NE",Latitude:40.2,Longitude:-100.5833},KAFK:{StationId:"KAFK",City:"Nebraska City",State:"NE",Latitude:40.6,Longitude:-95.85},KOFK:{StationId:"KOFK",City:"Norfolk",State:"NE",Latitude:41.9833,Longitude:-97.4333},KOVN:{StationId:"KOVN",City:"North Omaha",State:"NE",Latitude:41.3666,Longitude:-96.0166},KLBF:{StationId:"KLBF",City:"North Platte",State:"NE",Latitude:41.1166,Longitude:-100.6666},KONL:{StationId:"KONL",City:"O'neill",State:"NE",Latitude:42.4666,Longitude:-98.6666},KGWC:{StationId:"KGWC",City:"Offutt/Afwa",State:"NE",Latitude:41.1166,Longitude:-95.9166},KOFF:{StationId:"KOFF",City:"Offutt Afb/Belle",State:"NE",Latitude:41.1166,Longitude:-95.9166},KOGA:{StationId:"KOGA",City:"Ogallala",State:"NE",Latitude:41.1166,Longitude:-101.7666},KOMA:{StationId:"KOMA",City:"Omaha/Eppley",State:"NE",Latitude:41.3166,Longitude:-95.9},KOAX:{StationId:"KOAX",City:"Omaha/Valley/88D",State:"NE",Latitude:41.3166,Longitude:-96.3666},KOVR:{StationId:"KOVR",City:"Omaha Vor",State:"NE",Latitude:41.1666,Longitude:-95.7333},KMLE:{StationId:"KMLE",City:"Omaha/Millard",State:"NE",Latitude:41.2,Longitude:-96.1166},KODX:{StationId:"KODX",City:"Ord/Sharp Field",State:"NE",Latitude:41.6166,Longitude:-98.95},KPWE:{StationId:"KPWE",City:"Pawnee City",State:"NE",Latitude:40.2,Longitude:-96.2},KPMV:{StationId:"KPMV",City:"Plattsmouth Muni",State:"NE",Latitude:40.95,Longitude:-95.9166},KBFF:{StationId:"KBFF",City:"Scottsbluff",State:"NE",Latitude:41.8666,Longitude:-103.5833},KSNY:{StationId:"KSNY",City:"Sidney",State:"NE",Latitude:41.1,Longitude:-102.9833},KTQE:{StationId:"KTQE",City:"Tekamah",State:"NE",Latitude:41.7666,Longitude:-96.1833},KLNX:{StationId:"KLNX",City:"Thedford/Lbf/88D",State:"NE",Latitude:41.95,Longitude:-100.5833},KTIF:{StationId:"KTIF",City:"Thedford/Thomas",State:"NE",Latitude:41.9666,Longitude:-100.5666},KVTN:{StationId:"KVTN",City:"Valentine",State:"NE",Latitude:42.8666,Longitude:-100.55},KAHQ:{StationId:"KAHQ",City:"Wahoo",State:"NE",Latitude:41.2333,Longitude:-96.6},KLCG:{StationId:"KLCG",City:"Wayne Muni",State:"NE",Latitude:42.25,Longitude:-96.9833},KUEX:{StationId:"KUEX",City:"Webster Cnty/88D",State:"NE",Latitude:40.3166,Longitude:-98.45},KOBH:{StationId:"KOBH",City:"Wolbach (Vor)",State:"NE",Latitude:41.3833,Longitude:-98.35},KJYR:{StationId:"KJYR",City:"York",State:"NE",Latitude:40.9,Longitude:-97.6166},K42V:{StationId:"K42V",City:"Benkelman-Jones",State:"NE",Latitude:40.05,Longitude:-101.5333},KK46:{StationId:"KK46",City:"Blair Muni",State:"NE",Latitude:41.4166,Longitude:-96.1166},KBUB:{StationId:"KBUB",City:"Burwell",State:"NE",Latitude:41.7833,Longitude:-99.15},KCZD:{StationId:"KCZD",City:"Cozad",State:"NE",Latitude:40.8666,Longitude:-100},KMHN:{StationId:"KMHN",City:"Mullen",State:"NE",Latitude:42.05,Longitude:-101.0666},KCHM:{StationId:"KCHM",City:"Champion",State:"NE",Latitude:40.3833,Longitude:-101.7166},KBML:{StationId:"KBML",City:"Berlin",State:"NH",Latitude:44.5833,Longitude:-71.1833},KCON:{StationId:"KCON",City:"Concord",State:"NH",Latitude:43.2,Longitude:-71.5},KAFN:{StationId:"KAFN",City:"Jaffrey",State:"NH",Latitude:42.8,Longitude:-72},KEEN:{StationId:"KEEN",City:"Keene/Dillant",State:"NH",Latitude:42.8833,Longitude:-72.2666},KLCI:{StationId:"KLCI",City:"Laconia Muni",State:"NH",Latitude:43.5666,Longitude:-71.4166},KLEB:{StationId:"KLEB",City:"Lebanon",State:"NH",Latitude:43.6333,Longitude:-72.3},KMHT:{StationId:"KMHT",City:"Manchester",State:"NH",Latitude:42.9333,Longitude:-71.4333},KMWN:{StationId:"KMWN",City:"Mount Washington",State:"NH",Latitude:44.2666,Longitude:-71.3},KASH:{StationId:"KASH",City:"Nashua/Boire Fld",State:"NH",Latitude:42.7833,Longitude:-71.5166},KZBW:{StationId:"KZBW",City:"Nashua/Artcc-Bos",State:"NH",Latitude:42.7333,Longitude:-71.4833},K1P1:{StationId:"K1P1",City:"Plymouth",State:"NH",Latitude:43.7833,Longitude:-71.75},KPSM:{StationId:"KPSM",City:"Portsmouth/Pease",State:"NH",Latitude:43.0666,Longitude:-70.8166},KDAW:{StationId:"KDAW",City:"Rochester",State:"NH",Latitude:43.2833,Longitude:-70.9166},KHIE:{StationId:"KHIE",City:"Whitefield",State:"NH",Latitude:44.3666,Longitude:-71.55},K8B2:{StationId:"K8B2",City:"Diamond Lake",State:"NH",Latitude:44.95,Longitude:-71.3166},KNGR:{StationId:"KNGR",City:"North Groton",State:"NH",Latitude:43.7666,Longitude:-71.8666},K6B1:{StationId:"K6B1",City:"Rochester",State:"NH",Latitude:43.2833,Longitude:-70.9166},KTMW:{StationId:"KTMW",City:"Tamworth",State:"NH",Latitude:43.9,Longitude:-71.3},KN85:{StationId:"KN85",City:"Alexandria",State:"NJ",Latitude:40.5833,Longitude:-75.0166},K12N:{StationId:"K12N",City:"Andover",State:"NJ",Latitude:41.0166,Longitude:-74.7333},KACY:{StationId:"KACY",City:"Atlantic City",State:"NJ",Latitude:39.45,Longitude:-74.5666},KBLM:{StationId:"KBLM",City:"Belmar/Farmdale",State:"NJ",Latitude:40.1666,Longitude:-74.1166},K1N7:{StationId:"K1N7",City:"Blairstown",State:"NJ",Latitude:40.9666,Longitude:-75},KCDW:{StationId:"KCDW",City:"Caldwell",State:"NJ",Latitude:40.8833,Longitude:-74.2833},KCYN:{StationId:"KCYN",City:"Coyle Vor",State:"NJ",Latitude:39.8166,Longitude:-74.4333},K17N:{StationId:"K17N",City:"Cross Keys",State:"NJ",Latitude:39.7,Longitude:-75.0333},KN81:{StationId:"KN81",City:"Hammonton",State:"NJ",Latitude:39.6666,Longitude:-74.75},KNEL:{StationId:"KNEL",City:"Lakehurst Nas",State:"NJ",Latitude:40.0166,Longitude:-74.3333},KN12:{StationId:"KN12",City:"Lakewood",State:"NJ",Latitude:40.0666,Longitude:-74.1833},KN07:{StationId:"KN07",City:"Lincoln Park",State:"NJ",Latitude:40.95,Longitude:-74.3166},KLDJ:{StationId:"KLDJ",City:"Linden",State:"NJ",Latitude:40.6166,Longitude:-74.25},KN14:{StationId:"KN14",City:"Lumberton",State:"NJ",Latitude:39.9333,Longitude:-74.8},KDIX:{StationId:"KDIX",City:"Manchester 88D",State:"NJ",Latitude:39.95,Longitude:-74.4166},K47N:{StationId:"K47N",City:"Manville",State:"NJ",Latitude:40.5166,Longitude:-74.6},KMIV:{StationId:"KMIV",City:"Millville",State:"NJ",Latitude:39.3666,Longitude:-75.0833},KMMU:{StationId:"KMMU",City:"Morristown Muni",State:"NJ",Latitude:40.7833,Longitude:-74.4166},KVAY:{StationId:"KVAY",City:"Mount Holly",State:"NJ",Latitude:39.9333,Longitude:-74.8333},KPHI:{StationId:"KPHI",City:"Mt Holly/Phl/Wfo",State:"NJ",Latitude:40.0166,Longitude:-74.8166},KEWR:{StationId:"KEWR",City:"Newark",State:"NJ",Latitude:40.6833,Longitude:-74.1666},K26N:{StationId:"K26N",City:"Ocean City",State:"NJ",Latitude:39.2666,Longitude:-74.6},K3N6:{StationId:"K3N6",City:"Old Bridge",State:"NJ",Latitude:40.3333,Longitude:-74.35},KN40:{StationId:"KN40",City:"Pittstown",State:"NJ",Latitude:40.5666,Longitude:-74.9833},K39N:{StationId:"K39N",City:"Princeton",State:"NJ",Latitude:40.4,Longitude:-74.6666},KN87:{StationId:"KN87",City:"Robbinsville",State:"NJ",Latitude:40.2166,Longitude:-74.6},KSIE:{StationId:"KSIE",City:"Sea Isle Vor",State:"NJ",Latitude:39.1,Longitude:-74.8},KSMQ:{StationId:"KSMQ",City:"Somerville",State:"NJ",Latitude:40.6166,Longitude:-74.6666},KSAX:{StationId:"KSAX",City:"Sparta Vor",State:"NJ",Latitude:41.0666,Longitude:-74.5333},KFWN:{StationId:"KFWN",City:"Sussex",State:"NJ",Latitude:41.2,Longitude:-74.6333},KTEB:{StationId:"KTEB",City:"Teterboro",State:"NJ",Latitude:40.8666,Longitude:-74.05},KMJX:{StationId:"KMJX",City:"Toms River",State:"NJ",Latitude:39.9333,Longitude:-74.3},KTTN:{StationId:"KTTN",City:"Trenton",State:"NJ",Latitude:40.2833,Longitude:-74.8166},K4N1:{StationId:"K4N1",City:"West Milford",State:"NJ",Latitude:41.1333,Longitude:-74.35},KWWD:{StationId:"KWWD",City:"Wildwood",State:"NJ",Latitude:39.0166,Longitude:-74.9166},KOBI:{StationId:"KOBI",City:"Woodbine Muni",State:"NJ",Latitude:39.2166,Longitude:-74.8},KWRI:{StationId:"KWRI",City:"Wrightst/Mcguire",State:"NJ",Latitude:40.0166,Longitude:-74.5833},KNBK:{StationId:"KNBK",City:"New Brunswick",State:"NJ",Latitude:40.4833,Longitude:-74.4333},K56N:{StationId:"K56N",City:"Sandy Hook Cgs",State:"NJ",Latitude:40.4666,Longitude:-74.0166},KN52:{StationId:"KN52",City:"Somerville",State:"NJ",Latitude:40.6166,Longitude:-74.6666},KN63:{StationId:"KN63",City:"Sussex",State:"NJ",Latitude:41.2,Longitude:-74.6},KSJB:{StationId:"KSJB",City:"Somerville",State:"NJ",Latitude:40.6166,Longitude:-74.6666},KGUP:{StationId:"KGUP",City:"Gallup",State:"NM",Latitude:35.5166,Longitude:-108.8},KALM:{StationId:"KALM",City:"Alamogordo White",State:"NM",Latitude:32.8166,Longitude:-105.9666},KABQ:{StationId:"KABQ",City:"Albuquerque",State:"NM",Latitude:35.05,Longitude:-106.6166},KABX:{StationId:"KABX",City:"Albuquerque/88D",State:"NM",Latitude:35.15,Longitude:-106.8166},KIKR:{StationId:"KIKR",City:"Kirtland Afb-Abq",State:"NM",Latitude:35.05,Longitude:-106.6},KZAB:{StationId:"KZAB",City:"Albuquerqu/Artcc",State:"NM",Latitude:35.1666,Longitude:-106.5666},KAXX:{StationId:"KAXX",City:"Angel Fire",State:"NM",Latitude:36.4166,Longitude:-105.2833},KATS:{StationId:"KATS",City:"Artesia",State:"NM",Latitude:32.85,Longitude:-104.4666},KE80:{StationId:"KE80",City:"Belen",State:"NM",Latitude:34.65,Longitude:-106.8333},KCVS:{StationId:"KCVS",City:"Cannon Afb/Clovi",State:"NM",Latitude:34.3666,Longitude:-103.3166},KFDX:{StationId:"KFDX",City:"Cannon Afb/88D",State:"NM",Latitude:34.6333,Longitude:-103.6166},KCNM:{StationId:"KCNM",City:"Carlsbad",State:"NM",Latitude:32.3333,Longitude:-104.25},KE33:{StationId:"KE33",City:"Chama (Awrs)",State:"NM",Latitude:36.8833,Longitude:-106.5666},KCME:{StationId:"KCME",City:"Chisum/Roswell",State:"NM",Latitude:33.3333,Longitude:-104.6166},KCIM:{StationId:"KCIM",City:"Cimarron (Vor)",State:"NM",Latitude:36.4833,Longitude:-104.8666},KCAO:{StationId:"KCAO",City:"Clayton",State:"NM",Latitude:36.45,Longitude:-103.15},KCQC:{StationId:"KCQC",City:"Clines Corners",State:"NM",Latitude:35,Longitude:-105.6666},KCVN:{StationId:"KCVN",City:"Clovis Muni",State:"NM",Latitude:34.4166,Longitude:-103.0666},K4CR:{StationId:"K4CR",City:"Corona/Lincoln",State:"NM",Latitude:34.1,Longitude:-105.6666},KDMN:{StationId:"KDMN",City:"Deming",State:"NM",Latitude:32.2666,Longitude:-107.7166},KAEG:{StationId:"KAEG",City:"Double Eagle Ii",State:"NM",Latitude:35.1333,Longitude:-106.8},KFMN:{StationId:"KFMN",City:"Farmington",State:"NM",Latitude:36.75,Longitude:-108.2333},KRSK:{StationId:"KRSK",City:"Rattlesnake-Fmn",State:"NM",Latitude:36.75,Longitude:-108.1},KGNT:{StationId:"KGNT",City:"Grants",State:"NM",Latitude:35.1666,Longitude:-107.9},KHOB:{StationId:"KHOB",City:"Hobbs/Lea Co.",State:"NM",Latitude:32.6666,Longitude:-103.2166},KHMN:{StationId:"KHMN",City:"Holloman Afb",State:"NM",Latitude:32.85,Longitude:-106.0833},KLRU:{StationId:"KLRU",City:"Las Cruces Intl",State:"NM",Latitude:32.2666,Longitude:-106.9166},KLVS:{StationId:"KLVS",City:"Las Vegas",State:"NM",Latitude:35.65,Longitude:-105.1333},KLSB:{StationId:"KLSB",City:"Lordsburg",State:"NM",Latitude:32.3333,Longitude:-108.7},KFTI:{StationId:"KFTI",City:"Ft Union/Vegas",State:"NM",Latitude:35.65,Longitude:-105.1333},KLAM:{StationId:"KLAM",City:"Los Alamos",State:"NM",Latitude:35.8666,Longitude:-106.2666},KM63:{StationId:"KM63",City:"Mcgregor Range",State:"NM",Latitude:32.05,Longitude:-106.15},K4MR:{StationId:"K4MR",City:"Melrose G Range",State:"NM",Latitude:34.3,Longitude:-103.8},K4MY:{StationId:"K4MY",City:"Moriarty",State:"NM",Latitude:34.9833,Longitude:-106},K0E0:{StationId:"K0E0",City:"Moriarty",State:"NM",Latitude:34.9833,Longitude:-106},KRTN:{StationId:"KRTN",City:"Raton",State:"NM",Latitude:36.7333,Longitude:-104.5},KROW:{StationId:"KROW",City:"Roswell",State:"NM",Latitude:33.3,Longitude:-104.5},KSRR:{StationId:"KSRR",City:"Sierra B/Ruidoso",State:"NM",Latitude:33.4666,Longitude:-105.5166},KSAF:{StationId:"KSAF",City:"Santa Fe",State:"NM",Latitude:35.6166,Longitude:-106.1},KEPZ:{StationId:"KEPZ",City:"Santa Teresa/88D",State:"NM",Latitude:31.8666,Longitude:-106.7},K5T6:{StationId:"K5T6",City:"Santa Teresa",State:"NM",Latitude:31.8833,Longitude:-106.7},KSVC:{StationId:"KSVC",City:"Silver City",State:"NM",Latitude:32.6333,Longitude:-108.15},KONM:{StationId:"KONM",City:"Socorro",State:"NM",Latitude:34.0166,Longitude:-106.9},KSKX:{StationId:"KSKX",City:"Taos Muni Apt",State:"NM",Latitude:36.45,Longitude:-105.6666},K4SL:{StationId:"K4SL",City:"Torreon/Cuba",State:"NM",Latitude:35.7833,Longitude:-107.1666},KTCS:{StationId:"KTCS",City:"Truth Or Conseq.",State:"NM",Latitude:33.2333,Longitude:-107.2666},KTCC:{StationId:"KTCC",City:"Tucumcari",State:"NM",Latitude:35.1833,Longitude:-103.6},KHDX:{StationId:"KHDX",City:"W Sands/Holloman",State:"NM",Latitude:33.0833,Longitude:-106.1166},K2C2:{StationId:"K2C2",City:"White Sands Test",State:"NM",Latitude:32.3666,Longitude:-106.4666},KP70:{StationId:"KP70",City:"Clines Corners",State:"NM",Latitude:34.9166,Longitude:-105.5666},KE28:{StationId:"KE28",City:"White Sands",State:"NM",Latitude:32.9333,Longitude:-106.4166},KE23:{StationId:"KE23",City:"Taos(Awrs)",State:"NM",Latitude:36.4166,Longitude:-105.5666},KZUN:{StationId:"KZUN",City:"Zuni Pueblo",State:"NM",Latitude:35.0833,Longitude:-108.7833},KQMG:{StationId:"KQMG",City:"Mcgregor Range",State:"NM",Latitude:32.05,Longitude:-106.15},XTAT:{StationId:"XTAT",City:"Tatum Nm 2Sw",State:"NM",Latitude:33.2333,Longitude:-103.35},XDR1:{StationId:"XDR1",City:"Dora 2Sw",State:"NM",Latitude:33.9166,Longitude:-103.35},XHO1:{StationId:"XHO1",City:"Hobbs 5Nw",State:"NM",Latitude:32.7666,Longitude:-103.1833},KU31:{StationId:"KU31",City:"Austin",State:"NV",Latitude:39.5,Longitude:-117.0666},KB23:{StationId:"KB23",City:"Battle Mountain",State:"NV",Latitude:40.6,Longitude:-116.8666},KBAM:{StationId:"KBAM",City:"Battle Mtn (Vor)",State:"NV",Latitude:40.5666,Longitude:-116.9166},KBTY:{StationId:"KBTY",City:"Beatty",State:"NV",Latitude:36.8,Longitude:-116.7333},KBVU:{StationId:"KBVU",City:"Boulder City",State:"NV",Latitude:35.95,Longitude:-114.8666},KCXP:{StationId:"KCXP",City:"Carson City",State:"NV",Latitude:39.1833,Longitude:-119.7333},KOAL:{StationId:"KOAL",City:"Coaldale (Vor)",State:"NV",Latitude:38,Longitude:-117.7666},KDRA:{StationId:"KDRA",City:"Desert R/Mercury",State:"NV",Latitude:36.6166,Longitude:-116.0333},KEKO:{StationId:"KEKO",City:"Elko",State:"NV",Latitude:40.8166,Longitude:-115.7833},KLKN:{StationId:"KLKN",City:"Elko/Wfo",State:"NV",Latitude:40.8666,Longitude:-115.7166},KLRX:{StationId:"KLRX",City:"Elko/Lander 88D",State:"NV",Latitude:40.7333,Longitude:-116.8},KELY:{StationId:"KELY",City:"Ely",State:"NV",Latitude:39.3,Longitude:-114.85},K05U:{StationId:"K05U",City:"Eureka",State:"NV",Latitude:39.6,Longitude:-116},KP68:{StationId:"KP68",City:"Eureka",State:"NV",Latitude:39.6,Longitude:-116},KNFL:{StationId:"KNFL",City:"Fallon Nas",State:"NV",Latitude:39.4166,Longitude:-118.7},KINS:{StationId:"KINS",City:"Indian Springs",State:"NV",Latitude:36.5833,Longitude:-115.6666},KL63:{StationId:"KL63",City:"Ind Sprng Range",State:"NV",Latitude:36.5166,Longitude:-115.5666},KLAS:{StationId:"KLAS",City:"Las Vegas",State:"NV",Latitude:36.0666,Longitude:-115.1666},KLSV:{StationId:"KLSV",City:"Las Vegas/Nellis",State:"NV",Latitude:36.2166,Longitude:-115.0166},KESX:{StationId:"KESX",City:"Las Vegas/Nelson",State:"NV",Latitude:35.7,Longitude:-114.8833},KHND:{StationId:"KHND",City:"Vegas/Henderson",State:"NV",Latitude:35.9833,Longitude:-115.1333},KVEF:{StationId:"KVEF",City:"Las Vegas/Wfo",State:"NV",Latitude:36.05,Longitude:-115.1833},KLOL:{StationId:"KLOL",City:"Lovelock",State:"NV",Latitude:40.0666,Longitude:-118.5666},KVGT:{StationId:"KVGT",City:"North Las Vegas",State:"NV",Latitude:36.2166,Longitude:-115.2},KRNO:{StationId:"KRNO",City:"Reno",State:"NV",Latitude:39.5,Longitude:-119.7666},KREV:{StationId:"KREV",City:"Reno/Wfo",State:"NV",Latitude:39.5666,Longitude:-119.8},KRTS:{StationId:"KRTS",City:"Reno/Stead",State:"NV",Latitude:39.6666,Longitude:-119.8833},KRGX:{StationId:"KRGX",City:"Reno/Washoe Cty",State:"NV",Latitude:39.75,Longitude:-119.4666},KFMG:{StationId:"KFMG",City:"Reno(Vor)",State:"NV",Latitude:39.5333,Longitude:-119.65},KTPH:{StationId:"KTPH",City:"Tonopah",State:"NV",Latitude:38.05,Longitude:-117.0833},KBJN:{StationId:"KBJN",City:"Tonopah Range74",State:"NV",Latitude:37.6166,Longitude:-116.2666},K9BB:{StationId:"K9BB",City:"Wells",State:"NV",Latitude:41.1,Longitude:-114.9666},KAWH:{StationId:"KAWH",City:"Wildhorse Res/El",State:"NV",Latitude:41.6666,Longitude:-115.7666},KILC:{StationId:"KILC",City:"Wilson Creek",State:"NV",Latitude:38.25,Longitude:-114.3833},KWMC:{StationId:"KWMC",City:"Winnemucca",State:"NV",Latitude:40.9,Longitude:-117.8},KYUC:{StationId:"KYUC",City:"Yucca Flats",State:"NV",Latitude:36.95,Longitude:-116.0333},KUCC:{StationId:"KUCC",City:"Yucca Flat",State:"NV",Latitude:36.95,Longitude:-116.05},KP38:{StationId:"KP38",City:"Caliente",State:"NV",Latitude:37.6166,Longitude:-114.5333},KHTH:{StationId:"KHTH",City:"Hawthorne",State:"NV",Latitude:38.55,Longitude:-118.6333},KL76:{StationId:"KL76",City:"Indian Springs",State:"NV",Latitude:36.5333,Longitude:-115.5666},K06U:{StationId:"K06U",City:"Jackpot",State:"NV",Latitude:41.9833,Longitude:-114.65},KOWY:{StationId:"KOWY",City:"Owyhee",State:"NV",Latitude:41.95,Longitude:-116.1},KTNX:{StationId:"KTNX",City:"Tonopah Military",State:"NV",Latitude:37.7833,Longitude:-116.7666},KALB:{StationId:"KALB",City:"Albany",State:"NY",Latitude:42.75,Longitude:-73.8},KENX:{StationId:"KENX",City:"Albany/E. Berne",State:"NY",Latitude:42.5833,Longitude:-74.0666},KALY:{StationId:"KALY",City:"Albany/Wfo",State:"NY",Latitude:42.75,Longitude:-73.8},KBGM:{StationId:"KBGM",City:"Binghamton",State:"NY",Latitude:42.2166,Longitude:-75.9833},KOKX:{StationId:"KOKX",City:"Brookhaven/Upton",State:"NY",Latitude:40.8666,Longitude:-72.8666},KBUF:{StationId:"KBUF",City:"Buffalo/Cheektow",State:"NY",Latitude:42.9333,Longitude:-78.7333},KD38:{StationId:"KD38",City:"Canandaigua",State:"NY",Latitude:42.9,Longitude:-77.3166},KN03:{StationId:"KN03",City:"Cortland",State:"NY",Latitude:42.6,Longitude:-76.2166},KDSV:{StationId:"KDSV",City:"Dansville",State:"NY",Latitude:42.5666,Longitude:-77.7166},KDKK:{StationId:"KDKK",City:"Dunkirk",State:"NY",Latitude:42.5,Longitude:-79.2833},KHTO:{StationId:"KHTO",City:"East Hampton",State:"NY",Latitude:40.95,Longitude:-72.25},KELM:{StationId:"KELM",City:"Elmira",State:"NY",Latitude:42.15,Longitude:-76.9},KCZG:{StationId:"KCZG",City:"Endicott/Tri-Cit",State:"NY",Latitude:42.0833,Longitude:-76.1},KFRG:{StationId:"KFRG",City:"Farmingdale",State:"NY",Latitude:40.7333,Longitude:-73.4166},KTYX:{StationId:"KTYX",City:"Fort Drum/88D",State:"NY",Latitude:43.75,Longitude:-75.6833},KGTB:{StationId:"KGTB",City:"Fort Drum/Wheele",State:"NY",Latitude:44.0666,Longitude:-75.7166},KFZY:{StationId:"KFZY",City:"Fulton",State:"NY",Latitude:43.35,Longitude:-76.3833},KGFL:{StationId:"KGFL",City:"Glens Falls",State:"NY",Latitude:43.3333,Longitude:-73.6166},KVGC:{StationId:"KVGC",City:"Hamilton Municip",State:"NY",Latitude:42.85,Longitude:-75.5666},KHNK:{StationId:"KHNK",City:"Hancock Vor",State:"NY",Latitude:42.0666,Longitude:-75.3166},K4G6:{StationId:"K4G6",City:"Hornell",State:"NY",Latitude:42.3833,Longitude:-77.6833},K1B1:{StationId:"K1B1",City:"Hudson/Columbia",State:"NY",Latitude:42.2833,Longitude:-73.7166},KISP:{StationId:"KISP",City:"Islip",State:"NY",Latitude:40.8,Longitude:-73.1},KITH:{StationId:"KITH",City:"Ithaca/Tompkins",State:"NY",Latitude:42.4666,Longitude:-76.45},KJHW:{StationId:"KJHW",City:"Jamestown",State:"NY",Latitude:42.1333,Longitude:-79.2666},KJRB:{StationId:"KJRB",City:"Manhattan/Dwntwn",State:"NY",Latitude:40.7,Longitude:-74.0166},KMSS:{StationId:"KMSS",City:"Massena",State:"NY",Latitude:44.9333,Longitude:-74.85},KMTP:{StationId:"KMTP",City:"Montauk",State:"NY",Latitude:41.0666,Longitude:-71.9166},KMGJ:{StationId:"KMGJ",City:"Montgomery",State:"NY",Latitude:41.5166,Longitude:-74.2666},KMSV:{StationId:"KMSV",City:"Monticello",State:"NY",Latitude:41.7,Longitude:-74.7833},KSWF:{StationId:"KSWF",City:"Newburgh/Stewart",State:"NY",Latitude:41.5,Longitude:-74.0833},KIAG:{StationId:"KIAG",City:"Niagara Falls",State:"NY",Latitude:43.1166,Longitude:-78.9333},KOIC:{StationId:"KOIC",City:"Norwich",State:"NY",Latitude:42.5666,Longitude:-75.5166},KJFK:{StationId:"KJFK",City:"Nyc/Jfk Arpt",State:"NY",Latitude:40.6333,Longitude:-73.7666},KLGA:{StationId:"KLGA",City:"Nyc/La Guardia",State:"NY",Latitude:40.7833,Longitude:-73.8833},KNYC:{StationId:"KNYC",City:"Nyc/Central Park",State:"NY",Latitude:40.7833,Longitude:-73.9666},KZNY:{StationId:"KZNY",City:"New York/Artcc",State:"NY",Latitude:40.8,Longitude:-73.1},KOGS:{StationId:"KOGS",City:"Ogdensburg Intl",State:"NY",Latitude:44.6666,Longitude:-75.4666},KOLE:{StationId:"KOLE",City:"Olean",State:"NY",Latitude:42.2333,Longitude:-78.3666},KPEO:{StationId:"KPEO",City:"Penn Yan",State:"NY",Latitude:42.65,Longitude:-77.05},KPLB:{StationId:"KPLB",City:"Plattsburgh",State:"NY",Latitude:44.6833,Longitude:-73.5333},KPBG:{StationId:"KPBG",City:"Plattsburgh Afb",State:"NY",Latitude:44.65,Longitude:-73.4666},KPTD:{StationId:"KPTD",City:"Potsdam",State:"NY",Latitude:44.6833,Longitude:-74.95},KPOU:{StationId:"KPOU",City:"Poughkeepsie",State:"NY",Latitude:41.6333,Longitude:-73.8833},KROC:{StationId:"KROC",City:"Rochester",State:"NY",Latitude:43.1166,Longitude:-77.6833},KRME:{StationId:"KRME",City:"Rome/Griffiss Af",State:"NY",Latitude:43.2166,Longitude:-75.4},KSLK:{StationId:"KSLK",City:"Saranac Lake",State:"NY",Latitude:44.4,Longitude:-74.2},K5B2:{StationId:"K5B2",City:"Saratoga Springs",State:"NY",Latitude:43.05,Longitude:-73.8666},KSCH:{StationId:"KSCH",City:"Schenectady Airp",State:"NY",Latitude:42.85,Longitude:-73.9166},KHWV:{StationId:"KHWV",City:"Shirley",State:"NY",Latitude:40.8166,Longitude:-72.8666},KN23:{StationId:"KN23",City:"Sidney",State:"NY",Latitude:42.3,Longitude:-75.4166},KSYR:{StationId:"KSYR",City:"Syracuse",State:"NY",Latitude:43.1166,Longitude:-76.1},KUCA:{StationId:"KUCA",City:"Utica",State:"NY",Latitude:43.15,Longitude:-75.3833},KART:{StationId:"KART",City:"Watertown",State:"NY",Latitude:43.9833,Longitude:-76.0333},KELZ:{StationId:"KELZ",City:"Wellsville",State:"NY",Latitude:42.1,Longitude:-77.9833},KFOK:{StationId:"KFOK",City:"Westhampton Beac",State:"NY",Latitude:40.85,Longitude:-72.6166},KHPN:{StationId:"KHPN",City:"White Plains",State:"NY",Latitude:41.0666,Longitude:-73.7},KSDC:{StationId:"KSDC",City:"Williamson/Sodus",State:"NY",Latitude:43.2333,Longitude:-77.1166},KN28:{StationId:"KN28",City:"Ambrose",State:"NY",Latitude:40.45,Longitude:-73.1833},K1B8:{StationId:"K1B8",City:"Boonville",State:"NY",Latitude:43.45,Longitude:-75.35},KCOL:{StationId:"KCOL",City:"Colden",State:"NY",Latitude:42.6666,Longitude:-78.6833},KCOO:{StationId:"KCOO",City:"Cooperstown",State:"NY",Latitude:42.7,Longitude:-74.9166},KELB:{StationId:"KELB",City:"Ellenburg Depot",State:"NY",Latitude:44.9,Longitude:-73.8},KMAL:{StationId:"KMAL",City:"Malone",State:"NY",Latitude:44.85,Longitude:-74.3},KOZX:{StationId:"KOZX",City:"Oneonta",State:"NY",Latitude:42.3833,Longitude:-75.15},KN00:{StationId:"KN00",City:"Fulton/Oswego Ct",State:"NY",Latitude:43.35,Longitude:-76.3833},KPIC:{StationId:"KPIC",City:"Piseco Lake",State:"NY",Latitude:43.45,Longitude:-74.5333},KSLD:{StationId:"KSLD",City:"Slide Mountain",State:"NY",Latitude:41.9666,Longitude:-74.35},KSTM:{StationId:"KSTM",City:"Stormville",State:"NY",Latitude:41.5333,Longitude:-73.7333},KWRS:{StationId:"KWRS",City:"Warsaw",State:"NY",Latitude:42.6833,Longitude:-78.2},KRMX:{StationId:"KRMX",City:"Griffiss Afb/88D",State:"NY",Latitude:43.4666,Longitude:-75.45},KAKR:{StationId:"KAKR",City:"Akron (Fulton)",State:"OH",Latitude:41.0333,Longitude:-81.4666},KCAK:{StationId:"KCAK",City:"Akron",State:"OH",Latitude:40.9166,Longitude:-81.45},KAPE:{StationId:"KAPE",City:"Appleton",State:"OH",Latitude:40.15,Longitude:-82.5833},KHZY:{StationId:"KHZY",City:"Ashtabula",State:"OH",Latitude:41.7833,Longitude:-80.7},KUNI:{StationId:"KUNI",City:"Athens",State:"OH",Latitude:39.2166,Longitude:-82.2333},KI69:{StationId:"KI69",City:"Batavia",State:"OH",Latitude:39.0833,Longitude:-84.2166},KAIR:{StationId:"KAIR",City:"Bellaire Vor",State:"OH",Latitude:40.0166,Longitude:-80.8166},KEDJ:{StationId:"KEDJ",City:"Bellefontaine",State:"OH",Latitude:40.3666,Longitude:-83.8166},KLUK:{StationId:"KLUK",City:"Cincinnat/Lunken",State:"OH",Latitude:39.1,Longitude:-84.4166},KBKL:{StationId:"KBKL",City:"Cleveland",State:"OH",Latitude:41.5333,Longitude:-81.6666},KCLE:{StationId:"KCLE",City:"Cleveland",State:"OH",Latitude:41.4166,Longitude:-81.85},KCGF:{StationId:"KCGF",City:"Clevlnd/Cuyahoga",State:"OH",Latitude:41.5666,Longitude:-81.4666},KZOB:{StationId:"KZOB",City:"Cleveland/Artcc",State:"OH",Latitude:41.3,Longitude:-82.2},KCMH:{StationId:"KCMH",City:"Columbus",State:"OH",Latitude:40,Longitude:-82.8833},KOSU:{StationId:"KOSU",City:"Columbus/St Univ",State:"OH",Latitude:40.0833,Longitude:-83.0833},KTZR:{StationId:"KTZR",City:"Columbus/Bolton",State:"OH",Latitude:39.9,Longitude:-83.1333},KDAY:{StationId:"KDAY",City:"Dayton",State:"OH",Latitude:39.9,Longitude:-84.2166},KMGY:{StationId:"KMGY",City:"Dayton",State:"OH",Latitude:39.6,Longitude:-84.2333},KDFI:{StationId:"KDFI",City:"Defiance",State:"OH",Latitude:41.3333,Longitude:-84.4333},KDLZ:{StationId:"KDLZ",City:"Delaware",State:"OH",Latitude:40.2833,Longitude:-83.1166},KFDY:{StationId:"KFDY",City:"Findlay",State:"OH",Latitude:41.0166,Longitude:-83.6666},KFBC:{StationId:"KFBC",City:"Flag City",State:"OH",Latitude:41.0166,Longitude:-83.6666},KHAO:{StationId:"KHAO",City:"Hamilton",State:"OH",Latitude:39.3666,Longitude:-84.5166},KLHQ:{StationId:"KLHQ",City:"Lancaster",State:"OH",Latitude:39.75,Longitude:-82.6666},KI68:{StationId:"KI68",City:"Lebanon",State:"OH",Latitude:39.4666,Longitude:-84.25},KAOH:{StationId:"KAOH",City:"Lima",State:"OH",Latitude:40.7,Longitude:-84.0166},KLPR:{StationId:"KLPR",City:"Lorain/Elyria",State:"OH",Latitude:41.35,Longitude:-82.1833},KMFD:{StationId:"KMFD",City:"Mansfield",State:"OH",Latitude:40.8166,Longitude:-82.5166},KMNN:{StationId:"KMNN",City:"Marion",State:"OH",Latitude:40.6166,Longitude:-83.0666},KMRT:{StationId:"KMRT",City:"Marysville",State:"OH",Latitude:40.2166,Longitude:-83.35},KMWO:{StationId:"KMWO",City:"Middletown/Hook",State:"OH",Latitude:39.5333,Longitude:-84.4},K4I3:{StationId:"K4I3",City:"Mt Vernon/Knox",State:"OH",Latitude:40.3333,Longitude:-82.5333},KPHD:{StationId:"KPHD",City:"New Philadelphia",State:"OH",Latitude:40.4666,Longitude:-81.4166},KVTA:{StationId:"KVTA",City:"Newark",State:"OH",Latitude:40.0166,Longitude:-82.4666},KPCW:{StationId:"KPCW",City:"Port Clinton",State:"OH",Latitude:41.5166,Longitude:-82.8666},KPOV:{StationId:"KPOV",City:"Ravena/Portage",State:"OH",Latitude:41.2166,Longitude:-81.25},KLCK:{StationId:"KLCK",City:"Rickenbacker Ang",State:"OH",Latitude:39.8166,Longitude:-82.9166},KROD:{StationId:"KROD",City:"Rosewood Vor",State:"OH",Latitude:40.2833,Longitude:-84.0333},KSGH:{StationId:"KSGH",City:"Springfield Muni",State:"OH",Latitude:39.8333,Longitude:-83.8333},KTDZ:{StationId:"KTDZ",City:"Toledo",State:"OH",Latitude:41.5666,Longitude:-83.4833},KTOL:{StationId:"KTOL",City:"Toledo",State:"OH",Latitude:41.5833,Longitude:-83.8},KVES:{StationId:"KVES",City:"Versailles",State:"OH",Latitude:40.2,Longitude:-84.5333},KAXV:{StationId:"KAXV",City:"Wapakoneta",State:"OH",Latitude:40.5,Longitude:-84.3},KUSE:{StationId:"KUSE",City:"Wauseon",State:"OH",Latitude:41.6166,Longitude:-84.1333},KLNN:{StationId:"KLNN",City:"Willoughby",State:"OH",Latitude:41.6666,Longitude:-81.3666},KILN:{StationId:"KILN",City:"Wilmington",State:"OH",Latitude:39.4333,Longitude:-83.8},KTIR:{StationId:"KTIR",City:"Wilmington/Rfc",State:"OH",Latitude:39.4166,Longitude:-83.8166},KBJJ:{StationId:"KBJJ",City:"Wooster",State:"OH",Latitude:40.8666,Longitude:-81.8833},KFFO:{StationId:"KFFO",City:"Wright Paterson",State:"OH",Latitude:39.8166,Longitude:-84.0333},KYNG:{StationId:"KYNG",City:"Youngstown",State:"OH",Latitude:41.25,Longitude:-80.6666},KZZV:{StationId:"KZZV",City:"Zanesville",State:"OH",Latitude:39.95,Longitude:-81.9},K7G2:{StationId:"K7G2",City:"Ashtabula",State:"OH",Latitude:41.7833,Longitude:-80.7},KSHI:{StationId:"KSHI",City:"Ashtabula",State:"OH",Latitude:41.7833,Longitude:-80.7},K2I4:{StationId:"K2I4",City:"Columbus/Bolton",State:"OH",Latitude:39.9,Longitude:-83.1333},KI15:{StationId:"KI15",City:"Lancaster",State:"OH",Latitude:39.75,Longitude:-82.65},K22G:{StationId:"K22G",City:"Lorain/Elyria",State:"OH",Latitude:41.35,Longitude:-82.1833},K2I8:{StationId:"K2I8",City:"Newark",State:"OH",Latitude:40.0166,Longitude:-82.4666},K29G:{StationId:"K29G",City:"Ravena/Portage",State:"OH",Latitude:41.2166,Longitude:-81.25},KADH:{StationId:"KADH",City:"Ada",State:"OK",Latitude:34.8,Longitude:-96.6666},KADM:{StationId:"KADM",City:"Ardmore",State:"OK",Latitude:34.2833,Longitude:-97.0166},K1F0:{StationId:"K1F0",City:"Ardmore/Exec",State:"OK",Latitude:34.15,Longitude:-97.1166},KLTS:{StationId:"KLTS",City:"Altus Afb",State:"OK",Latitude:34.6666,Longitude:-99.2666},KAXS:{StationId:"KAXS",City:"Altus/Quartz Mtn",State:"OK",Latitude:34.7,Longitude:-99.3333},KAVK:{StationId:"KAVK",City:"Alva",State:"OK",Latitude:36.7666,Longitude:-98.6666},KAQR:{StationId:"KAQR",City:"Atoka",State:"OK",Latitude:34.4,Longitude:-96.15},KBVO:{StationId:"KBVO",City:"Bartlesville",State:"OK",Latitude:36.7666,Longitude:-96.0166},KBKN:{StationId:"KBKN",City:"Blackwell",State:"OK",Latitude:36.75,Longitude:-97.35},KGCM:{StationId:"KGCM",City:"Claremore",State:"OK",Latitude:36.3,Longitude:-95.4833},KCQB:{StationId:"KCQB",City:"Chandler",State:"OK",Latitude:35.7166,Longitude:-96.8166},KCHK:{StationId:"KCHK",City:"Chickasha",State:"OK",Latitude:35.1,Longitude:-97.9666},KCSM:{StationId:"KCSM",City:"Clinton",State:"OK",Latitude:35.35,Longitude:-99.2},KCLK:{StationId:"KCLK",City:"Clinton",State:"OK",Latitude:35.5333,Longitude:-98.9333},KCUH:{StationId:"KCUH",City:"Cushing",State:"OK",Latitude:35.95,Longitude:-96.7666},KDUC:{StationId:"KDUC",City:"Duncan",State:"OK",Latitude:34.4666,Longitude:-97.9666},KDUA:{StationId:"KDUA",City:"Durant",State:"OK",Latitude:33.95,Longitude:-96.4},KRQO:{StationId:"KRQO",City:"El Reno Muni",State:"OK",Latitude:35.4666,Longitude:-98},KEND:{StationId:"KEND",City:"Enid/Vance Afb",State:"OK",Latitude:36.3166,Longitude:-97.9166},KWDG:{StationId:"KWDG",City:"Enid/Woodring",State:"OK",Latitude:36.3666,Longitude:-97.7666},KFSI:{StationId:"KFSI",City:"Fort Sill",State:"OK",Latitude:34.65,Longitude:-98.4},KFDR:{StationId:"KFDR",City:"Frederick/Altus",State:"OK",Latitude:34.35,Longitude:-98.9833},KGAG:{StationId:"KGAG",City:"Gage",State:"OK",Latitude:36.3,Longitude:-99.7666},KHHW:{StationId:"KHHW",City:"Hugo",State:"OK",Latitude:34.0333,Longitude:-95.55},KMMB:{StationId:"KMMB",City:"Mitbee/Gage",State:"OK",Latitude:36.3,Longitude:-99.7666},KGMJ:{StationId:"KGMJ",City:"Grove",State:"OK",Latitude:36.6,Longitude:-94.7333},KGOK:{StationId:"KGOK",City:"Guthrie",State:"OK",Latitude:35.85,Longitude:-97.4},KGUY:{StationId:"KGUY",City:"Guymon",State:"OK",Latitude:36.6833,Longitude:-101.5},KHBR:{StationId:"KHBR",City:"Hobart",State:"OK",Latitude:34.9833,Longitude:-99.05},K4O4:{StationId:"K4O4",City:"Idabel",State:"OK",Latitude:33.9166,Longitude:-94.8666},KINX:{StationId:"KINX",City:"Inola/Tulsa/88D",State:"OK",Latitude:36.1833,Longitude:-95.5666},KLAW:{StationId:"KLAW",City:"Lawton",State:"OK",Latitude:34.55,Longitude:-98.4166},KHMY:{StationId:"KHMY",City:"Lexington",State:"OK",Latitude:35.0333,Longitude:-97.2333},KMLC:{StationId:"KMLC",City:"Mcalester",State:"OK",Latitude:34.8833,Longitude:-95.7833},KMKO:{StationId:"KMKO",City:"Muskogee",State:"OK",Latitude:35.65,Longitude:-95.3666},KOUN:{StationId:"KOUN",City:"Norman/Westheime",State:"OK",Latitude:35.25,Longitude:-97.4666},KWNS:{StationId:"KWNS",City:"Norman/Spc",State:"OK",Latitude:35.2166,Longitude:-97.45},KOKC:{StationId:"KOKC",City:"Oklahoma City",State:"OK",Latitude:35.3833,Longitude:-97.6},KPWA:{StationId:"KPWA",City:"Okla City/Wiley",State:"OK",Latitude:35.5333,Longitude:-97.65},KRCE:{StationId:"KRCE",City:"Okla City/Page",State:"OK",Latitude:35.4833,Longitude:-97.8166},KOKM:{StationId:"KOKM",City:"Okmulgee",State:"OK",Latitude:35.6666,Longitude:-95.95},KPVJ:{StationId:"KPVJ",City:"Pauls Valley",State:"OK",Latitude:34.7166,Longitude:-97.2166},KPNC:{StationId:"KPNC",City:"Ponca City",State:"OK",Latitude:36.7333,Longitude:-97.1},KRKR:{StationId:"KRKR",City:"Poteau (R Kerr)",State:"OK",Latitude:35.0166,Longitude:-94.6166},KJSV:{StationId:"KJSV",City:"Sallisaw",State:"OK",Latitude:35.4333,Longitude:-94.8},KOWP:{StationId:"KOWP",City:"Sand Springs",State:"OK",Latitude:36.1833,Longitude:-96.15},KSRE:{StationId:"KSRE",City:"Seminole",State:"OK",Latitude:35.2666,Longitude:-96.6833},KSNL:{StationId:"KSNL",City:"Shawnee",State:"OK",Latitude:35.35,Longitude:-96.95},KGZL:{StationId:"KGZL",City:"Stigler",State:"OK",Latitude:35.2833,Longitude:-95.1},KSWO:{StationId:"KSWO",City:"Stillwater",State:"OK",Latitude:36.1666,Longitude:-97.0833},KTQH:{StationId:"KTQH",City:"Tahlequah",State:"OK",Latitude:35.9333,Longitude:-95},KTIK:{StationId:"KTIK",City:"Tinker Afb",State:"OK",Latitude:35.4166,Longitude:-97.3666},KTUL:{StationId:"KTUL",City:"Tulsa",State:"OK",Latitude:36.2,Longitude:-95.8833},KRVS:{StationId:"KRVS",City:"Tulsa",State:"OK",Latitude:36.05,Longitude:-95.9833},KTSA:{StationId:"KTSA",City:"Tulsa/Wfo",State:"OK",Latitude:36.2,Longitude:-95.9},KTUA:{StationId:"KTUA",City:"Tulsa/Rfc",State:"OK",Latitude:36.15,Longitude:-95.85},KTLX:{StationId:"KTLX",City:"Twin Lakes/88D",State:"OK",Latitude:35.3333,Longitude:-97.2833},KVNX:{StationId:"KVNX",City:"Vance/Kegelman",State:"OK",Latitude:36.7333,Longitude:-98.1333},KJWG:{StationId:"KJWG",City:"Watonga",State:"OK",Latitude:35.8666,Longitude:-98.4166},KOJA:{StationId:"KOJA",City:"Weatherford",State:"OK",Latitude:35.55,Longitude:-98.6666},KWWR:{StationId:"KWWR",City:"Woodward",State:"OK",Latitude:36.45,Longitude:-99.5166},KF28:{StationId:"KF28",City:"El Reno Muni",State:"OK",Latitude:35.4666,Longitude:-98},KPGO:{StationId:"KPGO",City:"Page",State:"OK",Latitude:34.6833,Longitude:-94.6166},KH45:{StationId:"KH45",City:"Seminole",State:"OK",Latitude:35.2666,Longitude:-96.6833},KPDX:{StationId:"KPDX",City:"Portland",State:"OR",Latitude:45.6,Longitude:-122.6166},KHIO:{StationId:"KHIO",City:"Hillsboro/Portld",State:"OR",Latitude:45.55,Longitude:-122.95},KAST:{StationId:"KAST",City:"Astoria",State:"OR",Latitude:46.15,Longitude:-123.8833},KUAO:{StationId:"KUAO",City:"Aurora",State:"OR",Latitude:45.25,Longitude:-122.7666},KBKE:{StationId:"KBKE",City:"Baker",State:"OR",Latitude:44.85,Longitude:-117.8166},KBDN:{StationId:"KBDN",City:"Bend",State:"OR",Latitude:44.1,Longitude:-121.2},KBOK:{StationId:"KBOK",City:"Brookings",State:"OR",Latitude:42.0666,Longitude:-124.2833},KBNO:{StationId:"KBNO",City:"Burns",State:"OR",Latitude:43.6,Longitude:-118.95},K92S:{StationId:"K92S",City:"Cape Blanco (Cgs",State:"OR",Latitude:42.8333,Longitude:-124.5666},KCZK:{StationId:"KCZK",City:"Cascade Locks St",State:"OR",Latitude:45.6666,Longitude:-121.8666},K3CL:{StationId:"K3CL",City:"Clatsop Spit",State:"OR",Latitude:46.2333,Longitude:-124.0166},KCVO:{StationId:"KCVO",City:"Corvallis Muni A",State:"OR",Latitude:44.5,Longitude:-123.2666},KEUG:{StationId:"KEUG",City:"Eugene",State:"OR",Latitude:44.1333,Longitude:-123.2166},K6S2:{StationId:"K6S2",City:"Florence Muni",State:"OR",Latitude:43.9833,Longitude:-124.1166},K4S1:{StationId:"K4S1",City:"Gold Beach",State:"OR",Latitude:42.4166,Longitude:-124.4166},KHRI:{StationId:"KHRI",City:"Hermiston",State:"OR",Latitude:45.8333,Longitude:-119.2666},KMAX:{StationId:"KMAX",City:"Jackson Cty/Mfr",State:"OR",Latitude:42.0833,Longitude:-122.7166},KGCD:{StationId:"KGCD",City:"John Day State",State:"OR",Latitude:44.3833,Longitude:-118.9666},KIMB:{StationId:"KIMB",City:"Kimberly/Vor",State:"OR",Latitude:44.65,Longitude:-119.7166},KLMT:{StationId:"KLMT",City:"Klamath Falls",State:"OR",Latitude:42.15,Longitude:-121.7166},KLGD:{StationId:"KLGD",City:"La Grande",State:"OR",Latitude:45.2666,Longitude:-118},KLKV:{StationId:"KLKV",City:"Lakeview",State:"OR",Latitude:42.1666,Longitude:-120.4},KMMV:{StationId:"KMMV",City:"Mcminnville",State:"OR",Latitude:45.2,Longitude:-123.1333},KMEH:{StationId:"KMEH",City:"Meacham",State:"OR",Latitude:45.5166,Longitude:-118.4166},KMFR:{StationId:"KMFR",City:"Medford",State:"OR",Latitude:42.3833,Longitude:-122.8666},KOED:{StationId:"KOED",City:"Medford(Vor)",State:"OR",Latitude:42.3833,Longitude:-122.8666},KJNW:{StationId:"KJNW",City:"Newport",State:"OR",Latitude:44.5666,Longitude:-124.0666},KONP:{StationId:"KONP",City:"Newport",State:"OR",Latitude:44.5666,Longitude:-124.0333},KOTH:{StationId:"KOTH",City:"North Bend",State:"OR",Latitude:43.4166,Longitude:-124.25},KONO:{StationId:"KONO",City:"Ontario",State:"OR",Latitude:44.0166,Longitude:-117.0166},KPDT:{StationId:"KPDT",City:"Pendleton",State:"OR",Latitude:45.7,Longitude:-118.8333},KRTX:{StationId:"KRTX",City:"Portld/Scappoose",State:"OR",Latitude:45.7166,Longitude:-122.9666},KPQR:{StationId:"KPQR",City:"Portland/Wfo",State:"OR",Latitude:45.5666,Longitude:-122.5333},KPTR:{StationId:"KPTR",City:"Portland/Rfc",State:"OR",Latitude:45.6,Longitude:-122.6},KRDM:{StationId:"KRDM",City:"Redmond",State:"OR",Latitude:44.25,Longitude:-121.15},KDSD:{StationId:"KDSD",City:"Redmond(Vor)",State:"OR",Latitude:44.25,Longitude:-121.3},KP88:{StationId:"KP88",City:"Rome",State:"OR",Latitude:42.8833,Longitude:-117.65},KREO:{StationId:"KREO",City:"Rome",State:"OR",Latitude:42.5833,Longitude:-117.8666},KRRK:{StationId:"KRRK",City:"Rooster Rock",State:"OR",Latitude:45.55,Longitude:-122.9666},KRBG:{StationId:"KRBG",City:"Roseburg",State:"OR",Latitude:43.2333,Longitude:-123.35},KSLE:{StationId:"KSLE",City:"Salem",State:"OR",Latitude:44.9,Longitude:-123},KSPB:{StationId:"KSPB",City:"Scappoose",State:"OR",Latitude:45.7666,Longitude:-122.8666},K2SL:{StationId:"K2SL",City:"Sea Lion Caves",State:"OR",Latitude:44.1166,Longitude:-124.1333},KSXT:{StationId:"KSXT",City:"Sexton Summit",State:"OR",Latitude:42.6,Longitude:-123.3666},K6K5:{StationId:"K6K5",City:"Sisters Eagleair",State:"OR",Latitude:44.3,Longitude:-121.5333},KDLS:{StationId:"KDLS",City:"The Dalles",State:"OR",Latitude:45.6166,Longitude:-121.1666},KTMK:{StationId:"KTMK",City:"Tillamook",State:"OR",Latitude:45.4166,Longitude:-123.8166},KTTD:{StationId:"KTTD",City:"Troutdale",State:"OR",Latitude:45.55,Longitude:-122.4166},KNMW:{StationId:"KNMW",City:"Astoria Cg",State:"OR",Latitude:46.15,Longitude:-123.8833},K3S2:{StationId:"K3S2",City:"Aurora State",State:"OR",Latitude:45.25,Longitude:-122.7666},K4BK:{StationId:"K4BK",City:"Brookings",State:"OR",Latitude:42.0333,Longitude:-124.2666},KS22:{StationId:"KS22",City:"Hermiston",State:"OR",Latitude:45.8333,Longitude:-119.2666},K5J0:{StationId:"K5J0",City:"John Day State",State:"OR",Latitude:44.3833,Longitude:-118.9666},K4LW:{StationId:"K4LW",City:"Lakeview",State:"OR",Latitude:42.2166,Longitude:-120.35},KPFC:{StationId:"KPFC",City:"Pacific City",State:"OR",Latitude:45.2,Longitude:-123.95},K1S4:{StationId:"K1S4",City:"Scappoose",State:"OR",Latitude:45.7666,Longitude:-122.8666},KS47:{StationId:"KS47",City:"Tillamook",State:"OR",Latitude:45.4166,Longitude:-123.8166},KABE:{StationId:"KABE",City:"Allentown",State:"PA",Latitude:40.65,Longitude:-75.45},KXLL:{StationId:"KXLL",City:"Allentown Queen",State:"PA",Latitude:40.5666,Longitude:-75.4833},KAOO:{StationId:"KAOO",City:"Altoona",State:"PA",Latitude:40.3,Longitude:-78.3166},KAVP:{StationId:"KAVP",City:"Avoca/Wilkes B.",State:"PA",Latitude:41.3333,Longitude:-75.7166},KBVI:{StationId:"KBVI",City:"Beaver Falls Arp",State:"PA",Latitude:40.7666,Longitude:-80.4},KBFD:{StationId:"KBFD",City:"Bradford",State:"PA",Latitude:41.8,Longitude:-78.6333},KBTP:{StationId:"KBTP",City:"Butler Co.",State:"PA",Latitude:40.7666,Longitude:-79.95},KFIG:{StationId:"KFIG",City:"Clearfield",State:"PA",Latitude:41.05,Longitude:-78.4166},KMQS:{StationId:"KMQS",City:"Coatesville",State:"PA",Latitude:39.9833,Longitude:-75.8666},KDYL:{StationId:"KDYL",City:"Doylestown",State:"PA",Latitude:40.3333,Longitude:-75.1166},KDUJ:{StationId:"KDUJ",City:"Du Bois",State:"PA",Latitude:41.1666,Longitude:-78.9},KETX:{StationId:"KETX",City:"East Texas Vor",State:"PA",Latitude:40.5833,Longitude:-75.6833},KEWC:{StationId:"KEWC",City:"Ellwood City Vor",State:"PA",Latitude:40.8333,Longitude:-80.2166},KERI:{StationId:"KERI",City:"Erie",State:"PA",Latitude:42.0833,Longitude:-80.1833},KRYT:{StationId:"KRYT",City:"Fountain Dale",State:"PA",Latitude:39.7333,Longitude:-77.4333},KFKL:{StationId:"KFKL",City:"Franklin",State:"PA",Latitude:41.3666,Longitude:-79.8666},K29D:{StationId:"K29D",City:"Grove City",State:"PA",Latitude:41.15,Longitude:-81.1666},KCXY:{StationId:"KCXY",City:"Harrisburg",State:"PA",Latitude:40.2166,Longitude:-76.85},KHAR:{StationId:"KHAR",City:"Harrisburg",State:"PA",Latitude:40.3,Longitude:-77.0666},KIDI:{StationId:"KIDI",City:"Indiana/Stewart",State:"PA",Latitude:40.6166,Longitude:-79.0833},KJST:{StationId:"KJST",City:"Johnstown",State:"PA",Latitude:40.3166,Longitude:-78.8333},KLNS:{StationId:"KLNS",City:"Lancaster",State:"PA",Latitude:40.1166,Longitude:-76.3},KLBE:{StationId:"KLBE",City:"Latrobe/Westmorl",State:"PA",Latitude:40.2666,Longitude:-79.4},KLHV:{StationId:"KLHV",City:"Lock Haven",State:"PA",Latitude:41.1333,Longitude:-77.4166},KGKJ:{StationId:"KGKJ",City:"Meadville",State:"PA",Latitude:41.6333,Longitude:-80.2166},KMDT:{StationId:"KMDT",City:"Middletown",State:"PA",Latitude:40.2,Longitude:-76.7666},KMPO:{StationId:"KMPO",City:"Mt. Pocono",State:"PA",Latitude:41.1333,Longitude:-75.3833},KMUI:{StationId:"KMUI",City:"Muir Aaf/Indiant",State:"PA",Latitude:40.4166,Longitude:-76.5666},KUCP:{StationId:"KUCP",City:"New Castle Muni",State:"PA",Latitude:41.0333,Longitude:-80.4166},KCKZ:{StationId:"KCKZ",City:"Perkasie",State:"PA",Latitude:40.3833,Longitude:-75.2833},KPHL:{StationId:"KPHL",City:"Philadelphia",State:"PA",Latitude:39.8666,Longitude:-75.2333},KPNE:{StationId:"KPNE",City:"Philadelphia/Ne",State:"PA",Latitude:40.0833,Longitude:-75.0166},KLOM:{StationId:"KLOM",City:"Philly Wings F",State:"PA",Latitude:40.1333,Longitude:-75.2666},KPSB:{StationId:"KPSB",City:"Philipsburg/Mid",State:"PA",Latitude:40.8666,Longitude:-78.0666},KAGC:{StationId:"KAGC",City:"Pittsburgh/Alleg",State:"PA",Latitude:40.35,Longitude:-79.9166},KPIT:{StationId:"KPIT",City:"Pittsburgh",State:"PA",Latitude:40.5,Longitude:-80.2666},KPBZ:{StationId:"KPBZ",City:"Pitt/Coraopolis",State:"PA",Latitude:40.5333,Longitude:-80.2166},KPTW:{StationId:"KPTW",City:"Pottstown",State:"PA",Latitude:40.2333,Longitude:-75.55},KUKT:{StationId:"KUKT",City:"Quakertown Arp",State:"PA",Latitude:40.4333,Longitude:-75.3833},KRDG:{StationId:"KRDG",City:"Reading",State:"PA",Latitude:40.3666,Longitude:-75.9666},KCCX:{StationId:"KCCX",City:"Rush/St College",State:"PA",Latitude:40.9166,Longitude:-78},KSEG:{StationId:"KSEG",City:"Selinsgrove",State:"PA",Latitude:40.8166,Longitude:-76.8666},KSLT:{StationId:"KSLT",City:"Slate Run",State:"PA",Latitude:41.5,Longitude:-77.9666},KUNV:{StationId:"KUNV",City:"State College",State:"PA",Latitude:40.85,Longitude:-77.8333},KCTP:{StationId:"KCTP",City:"State Colleg/Wfo",State:"PA",Latitude:40.85,Longitude:-77.85},KRHA:{StationId:"KRHA",City:"State Colleg/Rfc",State:"PA",Latitude:40.85,Longitude:-77.85},KN27:{StationId:"KN27",City:"Towanda",State:"PA",Latitude:41.7333,Longitude:-76.45},KAFJ:{StationId:"KAFJ",City:"Washington",State:"PA",Latitude:40.1166,Longitude:-80.2666},KOQN:{StationId:"KOQN",City:"West Chester",State:"PA",Latitude:39.9833,Longitude:-75.5833},KIPT:{StationId:"KIPT",City:"Williamsport",State:"PA",Latitude:41.25,Longitude:-76.9166},KTHV:{StationId:"KTHV",City:"York",State:"PA",Latitude:39.9166,Longitude:-76.8833},KJVU:{StationId:"KJVU",City:"Allentown Queen",State:"PA",Latitude:40.5666,Longitude:-75.4833},KN97:{StationId:"KN97",City:"Clearfield",State:"PA",Latitude:41.05,Longitude:-78.4166},K40N:{StationId:"K40N",City:"Coatesville",State:"PA",Latitude:39.9833,Longitude:-75.8666},KHAW:{StationId:"KHAW",City:"Hawley",State:"PA",Latitude:41.4833,Longitude:-75.1666},K2G6:{StationId:"K2G6",City:"Meadville",State:"PA",Latitude:41.6166,Longitude:-80.2},K7TB:{StationId:"K7TB",City:"Tobyhanna",State:"PA",Latitude:41.1833,Longitude:-75.4166},KNXX:{StationId:"KNXX",City:"Willow Grove Nas",State:"PA",Latitude:40.2,Longitude:-75.15},KBID:{StationId:"KBID",City:"Block Island",State:"RI",Latitude:41.1666,Longitude:-71.5833},KOQU:{StationId:"KOQU",City:"N. Kingston/Quon",State:"RI",Latitude:41.6,Longitude:-71.4166},KUUU:{StationId:"KUUU",City:"Newport",State:"RI",Latitude:41.5333,Longitude:-71.2833},KSFZ:{StationId:"KSFZ",City:"Pawtucket",State:"RI",Latitude:41.9166,Longitude:-71.5},KPVD:{StationId:"KPVD",City:"Providence/Green",State:"RI",Latitude:41.7166,Longitude:-71.4333},KWST:{StationId:"KWST",City:"Westerly",State:"RI",Latitude:41.35,Longitude:-71.8},K2B4:{StationId:"K2B4",City:"Newport",State:"RI",Latitude:41.5333,Longitude:-71.2833},K1B6:{StationId:"K1B6",City:"Woonsocket",State:"RI",Latitude:41.9166,Longitude:-71.5166},KAIK:{StationId:"KAIK",City:"Aiken",State:"SC",Latitude:33.65,Longitude:-81.6833},KAND:{StationId:"KAND",City:"Anderson",State:"SC",Latitude:34.5,Longitude:-82.7166},KBNL:{StationId:"KBNL",City:"Barnwell",State:"SC",Latitude:33.25,Longitude:-81.3833},KNBC:{StationId:"KNBC",City:"Beaufort Mcas",State:"SC",Latitude:32.4666,Longitude:-80.7166},KARW:{StationId:"KARW",City:"Beaufort Cnty",State:"SC",Latitude:32.4166,Longitude:-80.6333},KMKS:{StationId:"KMKS",City:"Berkeley Moncks",State:"SC",Latitude:33.1833,Longitude:-80.0333},KCDN:{StationId:"KCDN",City:"Camden Woodward",State:"SC",Latitude:34.2833,Longitude:-80.5666},KCHS:{StationId:"KCHS",City:"Charleston",State:"SC",Latitude:32.9,Longitude:-80.0333},KCLX:{StationId:"KCLX",City:"Charleston/Grays",State:"SC",Latitude:32.65,Longitude:-81.05},KJZI:{StationId:"KJZI",City:"Charleston/Exec",State:"SC",Latitude:32.7,Longitude:-80},KCQW:{StationId:"KCQW",City:"Cheraw",State:"SC",Latitude:34.7166,Longitude:-79.95},KDCM:{StationId:"KDCM",City:"Chester Catawba",State:"SC",Latitude:34.7833,Longitude:-81.2},KCEU:{StationId:"KCEU",City:"Clemson",State:"SC",Latitude:34.6666,Longitude:-82.8833},KIRQ:{StationId:"KIRQ",City:"Colliers Vor",State:"SC",Latitude:33.7166,Longitude:-82.1666},KCAE:{StationId:"KCAE",City:"Columbia",State:"SC",Latitude:33.9333,Longitude:-81.1166},KCUB:{StationId:"KCUB",City:"Columbia-Owens",State:"SC",Latitude:33.9666,Longitude:-81},KHYW:{StationId:"KHYW",City:"Conway-Horry Cty",State:"SC",Latitude:33.8333,Longitude:-79.1166},KUDG:{StationId:"KUDG",City:"Darlington Cnty",State:"SC",Latitude:34.45,Longitude:-79.8833},KFLO:{StationId:"KFLO",City:"Florence",State:"SC",Latitude:34.1833,Longitude:-79.7333},KGGE:{StationId:"KGGE",City:"Georgetown",State:"SC",Latitude:33.3166,Longitude:-79.3166},KGRD:{StationId:"KGRD",City:"Greenwood",State:"SC",Latitude:34.25,Longitude:-82.15},KGSP:{StationId:"KGSP",City:"Greer/Spartansbg",State:"SC",Latitude:34.9,Longitude:-82.2166},KGMU:{StationId:"KGMU",City:"Greenville",State:"SC",Latitude:34.85,Longitude:-82.35},KGYH:{StationId:"KGYH",City:"Greenville",State:"SC",Latitude:34.75,Longitude:-82.3833},KHVS:{StationId:"KHVS",City:"Hartsville",State:"SC",Latitude:34.4,Longitude:-80.1166},KHXD:{StationId:"KHXD",City:"Hilton Head",State:"SC",Latitude:32.2166,Longitude:-80.7},KCKI:{StationId:"KCKI",City:"Kingstree",State:"SC",Latitude:33.7166,Longitude:-79.85},KLKR:{StationId:"KLKR",City:"Lancaster",State:"SC",Latitude:34.7166,Longitude:-80.85},KLUX:{StationId:"KLUX",City:"Laurens",State:"SC",Latitude:34.5,Longitude:-81.95},KMNI:{StationId:"KMNI",City:"Manning",State:"SC",Latitude:33.5833,Longitude:-80.2166},KMAO:{StationId:"KMAO",City:"Marion",State:"SC",Latitude:34.1833,Longitude:-79.3333},KBBP:{StationId:"KBBP",City:"Marlboro Cnty",State:"SC",Latitude:34.6166,Longitude:-79.7333},KMMT:{StationId:"KMMT",City:"Mcentire Ang Bas",State:"SC",Latitude:33.9166,Longitude:-80.7833},KLRO:{StationId:"KLRO",City:"Mount Pleasant",State:"SC",Latitude:32.9,Longitude:-79.7833},KMYR:{StationId:"KMYR",City:"Myrtle Beach",State:"SC",Latitude:33.6666,Longitude:-78.9166},KCRE:{StationId:"KCRE",City:"North Myrtle Bea",State:"SC",Latitude:33.8166,Longitude:-78.7166},KEOE:{StationId:"KEOE",City:"Newberry",State:"SC",Latitude:34.3166,Longitude:-81.6333},KOGB:{StationId:"KOGB",City:"Orangeburg",State:"SC",Latitude:33.4666,Longitude:-80.85},KLQK:{StationId:"KLQK",City:"Pickens",State:"SC",Latitude:34.8166,Longitude:-82.7},KUZA:{StationId:"KUZA",City:"Rock Hill",State:"SC",Latitude:34.9833,Longitude:-81.05},KSSC:{StationId:"KSSC",City:"Shaw Afb/Sumter",State:"SC",Latitude:33.9666,Longitude:-80.4666},KSPA:{StationId:"KSPA",City:"Spartanburg",State:"SC",Latitude:34.9166,Longitude:-81.9333},KDYB:{StationId:"KDYB",City:"Summerville",State:"SC",Latitude:33.0666,Longitude:-80.2833},KSMS:{StationId:"KSMS",City:"Sumter",State:"SC",Latitude:34,Longitude:-80.3666},KRBW:{StationId:"KRBW",City:"Walterboro",State:"SC",Latitude:32.9166,Longitude:-80.6333},KFDW:{StationId:"KFDW",City:"Winnsboro",State:"SC",Latitude:34.3166,Longitude:-81.1166},KIGC:{StationId:"KIGC",City:"Charleston Afb",State:"SC",Latitude:32.9,Longitude:-80.0333},KXAA:{StationId:"KXAA",City:"Grnvl/Dnldsn",State:"SC",Latitude:34.75,Longitude:-82.3833},K49J:{StationId:"K49J",City:"Hilton Head",State:"SC",Latitude:32.2166,Longitude:-80.7},K29J:{StationId:"K29J",City:"Rock Hill",State:"SC",Latitude:34.9833,Longitude:-81.05},K2PJ:{StationId:"K2PJ",City:"Sumter/Poinsett",State:"SC",Latitude:33.85,Longitude:-80.4833},KABR:{StationId:"KABR",City:"Aberdeen",State:"SD",Latitude:45.45,Longitude:-98.4166},KEFC:{StationId:"KEFC",City:"Belle Fourche",State:"SD",Latitude:44.7166,Longitude:-103.8666},K6V5:{StationId:"K6V5",City:"Bison",State:"SD",Latitude:45.5166,Longitude:-102.4666},KBTN:{StationId:"KBTN",City:"Britton",State:"SD",Latitude:45.8166,Longitude:-97.75},KBKX:{StationId:"KBKX",City:"Brookings",State:"SD",Latitude:44.2833,Longitude:-96.8166},K2WX:{StationId:"K2WX",City:"Buffalo",State:"SD",Latitude:45.6,Longitude:-103.55},K9V9:{StationId:"K9V9",City:"Chamberlain",State:"SD",Latitude:43.7666,Longitude:-99.3166},K8D7:{StationId:"K8D7",City:"Clark",State:"SD",Latitude:44.9,Longitude:-97.7166},KCUT:{StationId:"KCUT",City:"Custer",State:"SD",Latitude:43.7333,Longitude:-103.6166},K6E5:{StationId:"K6E5",City:"Desmet",State:"SD",Latitude:44.4333,Longitude:-97.55},KDPR:{StationId:"KDPR",City:"Dupree",State:"SD",Latitude:45.0666,Longitude:-101.7},K84D:{StationId:"K84D",City:"Eagle Butte",State:"SD",Latitude:44.9833,Longitude:-101.25},KRCA:{StationId:"KRCA",City:"Ellsworth Afb",State:"SD",Latitude:44.1333,Longitude:-103.0833},KD07:{StationId:"KD07",City:"Faith",State:"SD",Latitude:45.0333,Longitude:-102.0166},K3FU:{StationId:"K3FU",City:"Faulkton",State:"SD",Latitude:45.0333,Longitude:-99.1166},K0D8:{StationId:"K0D8",City:"Gettysburg",State:"SD",Latitude:44.9833,Longitude:-99.95},K9D1:{StationId:"K9D1",City:"Gregory",State:"SD",Latitude:43.2166,Longitude:-99.4},KHSR:{StationId:"KHSR",City:"Hot Springs",State:"SD",Latitude:43.3666,Longitude:-103.3833},KHON:{StationId:"KHON",City:"Huron",State:"SD",Latitude:44.3833,Longitude:-98.2333},KY22:{StationId:"KY22",City:"Lemmon",State:"SD",Latitude:45.9166,Longitude:-102.1666},KMDS:{StationId:"KMDS",City:"Madison",State:"SD",Latitude:44.0166,Longitude:-97.0833},K9V6:{StationId:"K9V6",City:"Martin",State:"SD",Latitude:43.1666,Longitude:-101.7166},K1D1:{StationId:"K1D1",City:"Millbank",State:"SD",Latitude:45.2333,Longitude:-96.5666},KMKA:{StationId:"KMKA",City:"Miller",State:"SD",Latitude:44.5333,Longitude:-98.95},KMHE:{StationId:"KMHE",City:"Mitchell",State:"SD",Latitude:43.7666,Longitude:-98.0166},KMBG:{StationId:"KMBG",City:"Mobridge",State:"SD",Latitude:45.55,Longitude:-100.4166},K98D:{StationId:"K98D",City:"Onida",State:"SD",Latitude:44.7,Longitude:-100.1},K8V3:{StationId:"K8V3",City:"Parkston",State:"SD",Latitude:43.3833,Longitude:-97.9833},KPHP:{StationId:"KPHP",City:"Philip",State:"SD",Latitude:44.05,Longitude:-101.6},KPIR:{StationId:"KPIR",City:"Pierre",State:"SD",Latitude:44.3833,Longitude:-100.2833},KIEN:{StationId:"KIEN",City:"Pine Ridge",State:"SD",Latitude:43.0333,Longitude:-102.5166},K1D3:{StationId:"K1D3",City:"Platte",State:"SD",Latitude:43.4,Longitude:-98.8333},KUNR:{StationId:"KUNR",City:"Rapid City/Wfo",State:"SD",Latitude:44.0666,Longitude:-103.2},KRAP:{StationId:"KRAP",City:"Rapid City",State:"SD",Latitude:44.05,Longitude:-103.05},KUDX:{StationId:"KUDX",City:"Rapid/N Underwod",State:"SD",Latitude:44.1333,Longitude:-102.8333},KFSD:{StationId:"KFSD",City:"Sioux Falls",State:"SD",Latitude:43.5833,Longitude:-96.75},K8D3:{StationId:"K8D3",City:"Sisseton",State:"SD",Latitude:45.6666,Longitude:-96.9833},KSPF:{StationId:"KSPF",City:"Spearfish/Clyde",State:"SD",Latitude:44.4666,Longitude:-103.7666},K49B:{StationId:"K49B",City:"Sturgis",State:"SD",Latitude:44.4166,Longitude:-103.3833},KY14:{StationId:"KY14",City:"Tea",State:"SD",Latitude:43.45,Longitude:-96.8},KVMR:{StationId:"KVMR",City:"Vermillion",State:"SD",Latitude:42.7666,Longitude:-96.9333},KAGZ:{StationId:"KAGZ",City:"Wagner",State:"SD",Latitude:43.0666,Longitude:-98.3},K6V4:{StationId:"K6V4",City:"Wall",State:"SD",Latitude:44,Longitude:-102.25},KATY:{StationId:"KATY",City:"Watertown",State:"SD",Latitude:44.9,Longitude:-97.15},K1D7:{StationId:"K1D7",City:"Webster",State:"SD",Latitude:45.3,Longitude:-97.5166},K4X4:{StationId:"K4X4",City:"Wessington Sprin",State:"SD",Latitude:44.0666,Longitude:-98.5333},KICR:{StationId:"KICR",City:"Winner",State:"SD",Latitude:43.3833,Longitude:-99.85},KSFD:{StationId:"KSFD",City:"Winner",State:"SD",Latitude:43.3833,Longitude:-99.85},KYKN:{StationId:"KYKN",City:"Yankton",State:"SD",Latitude:42.9166,Longitude:-97.3666},KBEL:{StationId:"KBEL",City:"Belle Fourche",State:"SD",Latitude:44.8,Longitude:-104.05},KPAC:{StationId:"KPAC",City:"Jct Sd44 Us385",State:"SD",Latitude:44.1,Longitude:-103.5166},KEL0:{StationId:"KEL0",City:"Ellsworth I90",State:"SD",Latitude:44.1166,Longitude:-103.0833},KWTA:{StationId:"KWTA",City:"Wasta I90",State:"SD",Latitude:44.0833,Longitude:-102.4833},KSL0:{StationId:"KSL0",City:"Sheridan Lake Rd",State:"SD",Latitude:44.0333,Longitude:-103.4333},KED0:{StationId:"KED0",City:"Edgemont Us18",State:"SD",Latitude:43.2833,Longitude:-103.8833},KNE0:{StationId:"KNE0",City:"Sd-Wy Bordr Us85",State:"SD",Latitude:44.1833,Longitude:-104.05},KGLV:{StationId:"KGLV",City:"Glad Vly Sd20",State:"SD",Latitude:45.4,Longitude:-101.7833},KBAT:{StationId:"KBAT",City:"Batesland Us18",State:"SD",Latitude:43.1333,Longitude:-102.1},KLEM:{StationId:"KLEM",City:"Lemmon Us12",State:"SD",Latitude:45.9333,Longitude:-102.1833},KADR:{StationId:"KADR",City:"Andover",State:"SD",Latitude:45.4333,Longitude:-97.9333},KBVD:{StationId:"KBVD",City:"Belvidere",State:"SD",Latitude:43.9,Longitude:-101.1333},KBRA:{StationId:"KBRA",City:"Brandt",State:"SD",Latitude:44.6833,Longitude:-96.85},KCAC:{StationId:"KCAC",City:"Cactus Flats",State:"SD",Latitude:43.8333,Longitude:-101.7666},KKAD:{StationId:"KKAD",City:"Kadoka",State:"SD",Latitude:43.8666,Longitude:-101.8333},KFED:{StationId:"KFED",City:"Frederick",State:"SD",Latitude:45.9333,Longitude:-98.5666},KHRD:{StationId:"KHRD",City:"Harrold",State:"SD",Latitude:44.5333,Longitude:-99.7},KHER:{StationId:"KHER",City:"Herried",State:"SD",Latitude:45.85,Longitude:-100.1},KREL:{StationId:"KREL",City:"Reliance",State:"SD",Latitude:43.8666,Longitude:-99.5666},KSUM:{StationId:"KSUM",City:"Summit",State:"SD",Latitude:45.3333,Longitude:-97.0833},KTLS:{StationId:"KTLS",City:"Tolstoy",State:"SD",Latitude:45.2166,Longitude:-99.6666},KVIC:{StationId:"KVIC",City:"Victor",State:"SD",Latitude:45.9,Longitude:-96.8666},KVIV:{StationId:"KVIV",City:"Vivian",State:"SD",Latitude:44.2333,Longitude:-100.3666},K0V1:{StationId:"K0V1",City:"Custer",State:"SD",Latitude:43.7333,Longitude:-103.6166},KY26:{StationId:"KY26",City:"Mobridge",State:"SD",Latitude:45.5333,Longitude:-100.4333},KP05:{StationId:"KP05",City:"Philip",State:"SD",Latitude:44.0666,Longitude:-101.65},KREJ:{StationId:"KREJ",City:"Redig",State:"SD",Latitude:45.2666,Longitude:-103.5333},QABS:{StationId:"QABS",City:"Aberdeen",State:"SD",Latitude:45.4833,Longitude:-98.4666},QALS:{StationId:"QALS",City:"Alcester",State:"SD",Latitude:43.0166,Longitude:-96.6333},QBAS:{StationId:"QBAS",City:"Baltic",State:"SD",Latitude:43.7666,Longitude:-96.7333},QBRS:{StationId:"QBRS",City:"Brandon",State:"SD",Latitude:43.6,Longitude:-96.5833},QCES:{StationId:"QCES",City:"Ft Thompson",State:"SD",Latitude:44.0666,Longitude:-99.4333},QCLS:{StationId:"QCLS",City:"Clark",State:"SD",Latitude:44.8833,Longitude:-97.7333},QDPS:{StationId:"QDPS",City:"Redfield",State:"SD",Latitude:44.8833,Longitude:-98.5166},QDSS:{StationId:"QDSS",City:"Lead",State:"SD",Latitude:44.35,Longitude:-103.7833},QEKS:{StationId:"QEKS",City:"Elkton",State:"SD",Latitude:44.2333,Longitude:-96.4833},QESS:{StationId:"QESS",City:"Parkston",State:"SD",Latitude:43.4,Longitude:-97.9833},QETS:{StationId:"QETS",City:"Gettysburg",State:"SD",Latitude:45.0166,Longitude:-99.9666},QGAS:{StationId:"QGAS",City:"Garretson",State:"SD",Latitude:43.7166,Longitude:-96.5},QHAS:{StationId:"QHAS",City:"Chamberlain",State:"SD",Latitude:43.8,Longitude:-99.3333},QHHS:{StationId:"QHHS",City:"Britton",State:"SD",Latitude:45.7833,Longitude:-97.75},QHOS:{StationId:"QHOS",City:"Howard",State:"SD",Latitude:44.0166,Longitude:-97.5333},QHSS:{StationId:"QHSS",City:"Winner",State:"SD",Latitude:43.3833,Longitude:-99.8666},QHUS:{StationId:"QHUS",City:"Huron",State:"SD",Latitude:44.35,Longitude:-98.2333},QKAS:{StationId:"QKAS",City:"Kadoka",State:"SD",Latitude:43.8333,Longitude:-101.5166},QKGS:{StationId:"QKGS",City:"Brookings",State:"SD",Latitude:44.2833,Longitude:-96.7833},QLES:{StationId:"QLES",City:"Miller",State:"SD",Latitude:44.5166,Longitude:-98.9833},QLKS:{StationId:"QLKS",City:"Clear Lake",State:"SD",Latitude:44.75,Longitude:-96.6833},QLTS:{StationId:"QLTS",City:"Colton",State:"SD",Latitude:43.7333,Longitude:-96.9166},QMMS:{StationId:"QMMS",City:"Madison",State:"SD",Latitude:44.0166,Longitude:-97.1},QMIS:{StationId:"QMIS",City:"Milbank",State:"SD",Latitude:45.2,Longitude:-96.6333},QMSS:{StationId:"QMSS",City:"Mission",State:"SD",Latitude:43.3,Longitude:-100.6666},QOBS:{StationId:"QOBS",City:"Mobridge",State:"SD",Latitude:45.5333,Longitude:-100.4333},QPIS:{StationId:"QPIS",City:"Pierre",State:"SD",Latitude:44.3666,Longitude:-100.35},QPJS:{StationId:"QPJS",City:"Elk Point",State:"SD",Latitude:42.6833,Longitude:-96.6833},QRAS:{StationId:"QRAS",City:"Rapid City",State:"SD",Latitude:44.0666,Longitude:-103.2166},QRMS:{StationId:"QRMS",City:"Ramona",State:"SD",Latitude:44.1166,Longitude:-97.2166},QSAS:{StationId:"QSAS",City:"Fsd Ph",State:"SD",Latitude:43.5333,Longitude:-96.7166},QSBS:{StationId:"QSBS",City:"Fsd Pav",State:"SD",Latitude:43.5333,Longitude:-96.7333},QSDS:{StationId:"QSDS",City:"Eureka",State:"SD",Latitude:45.7666,Longitude:-99.6166},QSNS:{StationId:"QSNS",City:"Flandreau",State:"SD",Latitude:44.05,Longitude:-96.6},QTMS:{StationId:"QTMS",City:"Mitchell",State:"SD",Latitude:43.7166,Longitude:-98.0333},QTYS:{StationId:"QTYS",City:"Marty",State:"SD",Latitude:43,Longitude:-98.15},QVMS:{StationId:"QVMS",City:"Vermillion",State:"SD",Latitude:42.7833,Longitude:-96.9333},QWAS:{StationId:"QWAS",City:"Wall",State:"SD",Latitude:43.9833,Longitude:-102.2333},QWES:{StationId:"QWES",City:"Webster",State:"SD",Latitude:45.3333,Longitude:-97.5166},QWTS:{StationId:"QWTS",City:"Watertown",State:"SD",Latitude:44.9166,Longitude:-97.1},QYAS:{StationId:"QYAS",City:"Yankton",State:"SD",Latitude:42.8833,Longitude:-97.3833},QHBS:{StationId:"QHBS",City:"Harrisburg",State:"SD",Latitude:43.4166,Longitude:-96.7},QMRS:{StationId:"QMRS",City:"Marion",State:"SD",Latitude:43.3833,Longitude:-97.2833},QPTS:{StationId:"QPTS",City:"Platte",State:"SD",Latitude:43.3833,Longitude:-98.85},KMMI:{StationId:"KMMI",City:"Athens/Mcminn",State:"TN",Latitude:35.4,Longitude:-84.5666},KM08:{StationId:"KM08",City:"Bolivar/Whitehst",State:"TN",Latitude:35.2166,Longitude:-89.05},KTRI:{StationId:"KTRI",City:"Bristol",State:"TN",Latitude:36.4833,Longitude:-82.4},KCHA:{StationId:"KCHA",City:"Chattanooga",State:"TN",Latitude:35.0333,Longitude:-85.2},KGQO:{StationId:"KGQO",City:"Chattanooga Vor",State:"TN",Latitude:34.9666,Longitude:-85.15},KCKV:{StationId:"KCKV",City:"Clarksville",State:"TN",Latitude:36.6166,Longitude:-87.4166},KRZR:{StationId:"KRZR",City:"Cleveland Reg.",State:"TN",Latitude:35.2166,Longitude:-84.8},K3M3:{StationId:"K3M3",City:"Collegedale",State:"TN",Latitude:35.05,Longitude:-85.0166},KMRC:{StationId:"KMRC",City:"Columbia",State:"TN",Latitude:35.55,Longitude:-87.1833},KM04:{StationId:"KM04",City:"Covington Muni",State:"TN",Latitude:35.5833,Longitude:-89.5833},KCSV:{StationId:"KCSV",City:"Crossville",State:"TN",Latitude:35.95,Longitude:-85.0833},KM01:{StationId:"KM01",City:"Dewitt Spain/Mem",State:"TN",Latitude:35.2,Longitude:-90.05},KM02:{StationId:"KM02",City:"Dickson",State:"TN",Latitude:36.1333,Longitude:-87.4333},KDYR:{StationId:"KDYR",City:"Dyersburg",State:"TN",Latitude:36,Longitude:-89.4},K0A9:{StationId:"K0A9",City:"Elizabethton",State:"TN",Latitude:36.3666,Longitude:-82.1666},KFYM:{StationId:"KFYM",City:"Fayetteville",State:"TN",Latitude:35.0666,Longitude:-86.5666},KM52:{StationId:"KM52",City:"Franklin Wilkins",State:"TN",Latitude:35.65,Longitude:-88.3833},KM33:{StationId:"KM33",City:"Gallatin",State:"TN",Latitude:36.3833,Longitude:-86.4166},KHMV:{StationId:"KHMV",City:"Holston Mtn Vor",State:"TN",Latitude:36.4333,Longitude:-82.1333},KHZD:{StationId:"KHZD",City:"Huntingdon",State:"TN",Latitude:36.0833,Longitude:-88.4666},KMKL:{StationId:"KMKL",City:"Jackson",State:"TN",Latitude:35.6,Longitude:-88.9166},KTYS:{StationId:"KTYS",City:"Knoxville",State:"TN",Latitude:35.8166,Longitude:-83.9833},KVXV:{StationId:"KVXV",City:"Knoxville Vor",State:"TN",Latitude:35.9,Longitude:-83.8833},K2M2:{StationId:"K2M2",City:"Lawrenceburg",State:"TN",Latitude:35.2333,Longitude:-87.25},KM54:{StationId:"KM54",City:"Lebanon",State:"TN",Latitude:36.1833,Longitude:-86.3166},KLUG:{StationId:"KLUG",City:"Lewisburg",State:"TN",Latitude:35.5,Longitude:-86.8},K8A3:{StationId:"K8A3",City:"Livingston",State:"TN",Latitude:36.4166,Longitude:-85.3166},KRNC:{StationId:"KRNC",City:"Mcminnville",State:"TN",Latitude:35.7,Longitude:-85.85},KMEM:{StationId:"KMEM",City:"Memphis",State:"TN",Latitude:35.0666,Longitude:-89.9833},KMEG:{StationId:"KMEG",City:"Memphis/Wfo",State:"TN",Latitude:35.05,Longitude:-90},KZME:{StationId:"KZME",City:"Memphis/Artcc",State:"TN",Latitude:35.05,Longitude:-89.9833},KNQA:{StationId:"KNQA",City:"Millington/88D",State:"TN",Latitude:35.35,Longitude:-89.8666},K2M8:{StationId:"K2M8",City:"Millington",State:"TN",Latitude:35.2833,Longitude:-89.9333},KMRX:{StationId:"KMRX",City:"Morristown/Knox",State:"TN",Latitude:36.1666,Longitude:-83.4},KMBT:{StationId:"KMBT",City:"Murfreesboro",State:"TN",Latitude:35.8833,Longitude:-86.3833},KBNA:{StationId:"KBNA",City:"Nashville",State:"TN",Latitude:36.1166,Longitude:-86.6833},KJWN:{StationId:"KJWN",City:"Nashv/Jc Tune",State:"TN",Latitude:36.1833,Longitude:-86.8833},KOQT:{StationId:"KOQT",City:"Oak Ridge",State:"TN",Latitude:36.0166,Longitude:-84.2333},KOHX:{StationId:"KOHX",City:"Old Hickory/Nash",State:"TN",Latitude:36.25,Longitude:-86.5666},KPHT:{StationId:"KPHT",City:"Paris Henry Cty",State:"TN",Latitude:36.3333,Longitude:-88.3833},K1M5:{StationId:"K1M5",City:"Portland",State:"TN",Latitude:36.6,Longitude:-86.4833},KRKW:{StationId:"KRKW",City:"Rockwood",State:"TN",Latitude:35.9166,Longitude:-84.6833},KSNH:{StationId:"KSNH",City:"Savannah Hardin",State:"TN",Latitude:35.1666,Longitude:-88.2166},KSYI:{StationId:"KSYI",City:"Shelbyville",State:"TN",Latitude:35.5666,Longitude:-86.45},KMQY:{StationId:"KMQY",City:"Smyrna",State:"TN",Latitude:36.0166,Longitude:-86.5166},KSRB:{StationId:"KSRB",City:"Sparta",State:"TN",Latitude:36.05,Longitude:-85.5333},KTHA:{StationId:"KTHA",City:"Tullahoma",State:"TN",Latitude:35.3833,Longitude:-86.25},KUCY:{StationId:"KUCY",City:"Union City",State:"TN",Latitude:36.3833,Longitude:-88.9833},KBGF:{StationId:"KBGF",City:"Winchester",State:"TN",Latitude:35.1833,Longitude:-86.0666},KMGL:{StationId:"KMGL",City:"Monteagle",State:"TN",Latitude:35.25,Longitude:-85.85},KSZY:{StationId:"KSZY",City:"Selmer",State:"TN",Latitude:35.2,Longitude:-88.5},KDFW:{StationId:"KDFW",City:"Dallas/Ft Worth",State:"TX",Latitude:32.9,Longitude:-97.0166},KABI:{StationId:"KABI",City:"Abilene",State:"TX",Latitude:32.4166,Longitude:-99.6833},KALI:{StationId:"KALI",City:"Alice",State:"TX",Latitude:27.7333,Longitude:-98.0166},KE38:{StationId:"KE38",City:"Alpine-Casparis",State:"TX",Latitude:30.3833,Longitude:-103.6833},KAMA:{StationId:"KAMA",City:"Amarillo",State:"TX",Latitude:35.2166,Longitude:-101.7166},KE11:{StationId:"KE11",City:"Andrews",State:"TX",Latitude:32.3333,Longitude:-102.5333},KLBX:{StationId:"KLBX",City:"Angleton",State:"TX",Latitude:29.1166,Longitude:-95.4666},KGKY:{StationId:"KGKY",City:"Arlington",State:"TX",Latitude:32.6666,Longitude:-97.1},KF44:{StationId:"KF44",City:"Athens",State:"TX",Latitude:32.1666,Longitude:-95.8333},KAUS:{StationId:"KAUS",City:"Austin",State:"TX",Latitude:30.1833,Longitude:-97.6833},KEDC:{StationId:"KEDC",City:"Austin Exec",State:"TX",Latitude:30.4,Longitude:-97.5666},KATT:{StationId:"KATT",City:"Austin/Mabry",State:"TX",Latitude:30.3166,Longitude:-97.7666},KBYY:{StationId:"KBYY",City:"Bay City",State:"TX",Latitude:28.9666,Longitude:-95.8666},KBPT:{StationId:"KBPT",City:"Beaumont/Port Ar",State:"TX",Latitude:29.95,Longitude:-94.0333},KBMT:{StationId:"KBMT",City:"Beaumont",State:"TX",Latitude:30.0666,Longitude:-94.2166},KBEA:{StationId:"KBEA",City:"Beeville Muni",State:"TX",Latitude:28.3666,Longitude:-97.7833},KBPG:{StationId:"KBPG",City:"Big Spring",State:"TX",Latitude:32.2166,Longitude:-101.5166},KBGD:{StationId:"KBGD",City:"Borger",State:"TX",Latitude:35.7,Longitude:-101.4},K0F2:{StationId:"K0F2",City:"Bowie",State:"TX",Latitude:33.6,Longitude:-97.7833},KBBD:{StationId:"KBBD",City:"Brady",State:"TX",Latitude:31.1833,Longitude:-99.3166},KBKD:{StationId:"KBKD",City:"Breckenridge",State:"TX",Latitude:32.7166,Longitude:-98.8833},K11R:{StationId:"K11R",City:"Brenham",State:"TX",Latitude:30.2166,Longitude:-96.3666},KXBP:{StationId:"KXBP",City:"Bridgeport",State:"TX",Latitude:33.1833,Longitude:-97.8333},KBRO:{StationId:"KBRO",City:"Brownsville",State:"TX",Latitude:25.9166,Longitude:-97.4166},KBWD:{StationId:"KBWD",City:"Brownwood",State:"TX",Latitude:31.8,Longitude:-98.95},KCFD:{StationId:"KCFD",City:"Bryan",State:"TX",Latitude:30.7166,Longitude:-96.3333},KBMQ:{StationId:"KBMQ",City:"Burnet",State:"TX",Latitude:30.7333,Longitude:-98.2333},KRWV:{StationId:"KRWV",City:"Caldwell",State:"TX",Latitude:30.5166,Longitude:-96.7},KHHF:{StationId:"KHHF",City:"Canadian",State:"TX",Latitude:35.9,Longitude:-100.4},KT35:{StationId:"KT35",City:"Cameron",State:"TX",Latitude:30.8833,Longitude:-96.9666},KCVB:{StationId:"KCVB",City:"Castroville Muni",State:"TX",Latitude:29.35,Longitude:-98.85},KCWK:{StationId:"KCWK",City:"Centex (Austin)",State:"TX",Latitude:30.3833,Longitude:-97.5333},KCDS:{StationId:"KCDS",City:"Childress",State:"TX",Latitude:34.4333,Longitude:-100.2833},KLBR:{StationId:"KLBR",City:"Clarksville",State:"TX",Latitude:33.6,Longitude:-95.0666},KCPT:{StationId:"KCPT",City:"Cleburne",State:"TX",Latitude:32.35,Longitude:-97.4333},K6R3:{StationId:"K6R3",City:"Cleveland Muni",State:"TX",Latitude:30.35,Longitude:-95},KCOM:{StationId:"KCOM",City:"Coleman Muni",State:"TX",Latitude:31.8333,Longitude:-99.4},KCLL:{StationId:"KCLL",City:"College Station",State:"TX",Latitude:30.5833,Longitude:-96.3666},KMKN:{StationId:"KMKN",City:"Comanche",State:"TX",Latitude:31.9166,Longitude:-98.6},KCXO:{StationId:"KCXO",City:"Conroe",State:"TX",Latitude:30.35,Longitude:-95.4166},KCRP:{StationId:"KCRP",City:"Corpus Christi",State:"TX",Latitude:27.7666,Longitude:-97.5},KNGP:{StationId:"KNGP",City:"C. Christi Nas",State:"TX",Latitude:27.6833,Longitude:-97.2666},KCRS:{StationId:"KCRS",City:"Corsicana",State:"TX",Latitude:32.0333,Longitude:-96.4},KCOT:{StationId:"KCOT",City:"Cotulla",State:"TX",Latitude:28.45,Longitude:-99.2166},KDKR:{StationId:"KDKR",City:"Crockett",State:"TX",Latitude:31.3,Longitude:-95.4},KDHT:{StationId:"KDHT",City:"Dalhart",State:"TX",Latitude:36.0166,Longitude:-102.55},KDAL:{StationId:"KDAL",City:"Dallas/Love Fld",State:"TX",Latitude:32.85,Longitude:-96.85},KZFW:{StationId:"KZFW",City:"Dallas/Artcc",State:"TX",Latitude:32.8333,Longitude:-97.0666},KRBD:{StationId:"KRBD",City:"Dallas/Redbird",State:"TX",Latitude:32.6833,Longitude:-96.8666},KNBE:{StationId:"KNBE",City:"Dallas Nas/Hensl",State:"TX",Latitude:32.7166,Longitude:-96.9666},KADS:{StationId:"KADS",City:"Dallas/Addison",State:"TX",Latitude:32.9666,Longitude:-96.8166},KLUD:{StationId:"KLUD",City:"Decatur",State:"TX",Latitude:33.25,Longitude:-97.5833},KDRT:{StationId:"KDRT",City:"Del Rio",State:"TX",Latitude:29.3666,Longitude:-100.9166},KDTO:{StationId:"KDTO",City:"Denton",State:"TX",Latitude:33.2,Longitude:-97.2},KFTN:{StationId:"KFTN",City:"Dimmit",State:"TX",Latitude:28.2166,Longitude:-100.0166},K6R6:{StationId:"K6R6",City:"Dryden",State:"TX",Latitude:30.05,Longitude:-102.2166},KDUX:{StationId:"KDUX",City:"Dumas/Moore Cty",State:"TX",Latitude:35.85,Longitude:-102.0166},KDYS:{StationId:"KDYS",City:"Dyess Afb/Abilen",State:"TX",Latitude:32.4166,Longitude:-99.8333},KETN:{StationId:"KETN",City:"Eastland",State:"TX",Latitude:32.4166,Longitude:-98.8166},KEBG:{StationId:"KEBG",City:"Edinburg Intl",State:"TX",Latitude:26.45,Longitude:-98.1333},KELP:{StationId:"KELP",City:"El Paso",State:"TX",Latitude:31.8166,Longitude:-106.3833},KBKS:{StationId:"KBKS",City:"Falfurrias",State:"TX",Latitude:27.2,Longitude:-98.1166},KBIF:{StationId:"KBIF",City:"Fort Bliss",State:"TX",Latitude:31.85,Longitude:-106.3833},KFST:{StationId:"KFST",City:"Fort Stockton",State:"TX",Latitude:30.9166,Longitude:-102.9166},KFTW:{StationId:"KFTW",City:"Fort Worth",State:"TX",Latitude:32.8333,Longitude:-97.3666},KFWD:{StationId:"KFWD",City:"Fort Worth",State:"TX",Latitude:32.8166,Longitude:-97.2833},KFWR:{StationId:"KFWR",City:"Fort Worth/Rfc",State:"TX",Latitude:32.8333,Longitude:-97.3},KFWS:{StationId:"KFWS",City:"Fort Worth/88D",State:"TX",Latitude:32.5666,Longitude:-97.3},KNFW:{StationId:"KNFW",City:"Fort Worth Nas",State:"TX",Latitude:32.7833,Longitude:-97.4333},KT82:{StationId:"KT82",City:"Fredericksburg",State:"TX",Latitude:30.25,Longitude:-98.9166},KAFW:{StationId:"KAFW",City:"Ft Worth/Allianc",State:"TX",Latitude:32.9666,Longitude:-97.3166},KHLR:{StationId:"KHLR",City:"Ft Hood/Killeen",State:"TX",Latitude:31.1333,Longitude:-97.7166},KGLS:{StationId:"KGLS",City:"Galveston",State:"TX",Latitude:29.2666,Longitude:-94.8666},KGLE:{StationId:"KGLE",City:"Gainesville",State:"TX",Latitude:33.65,Longitude:-97.2},KUVA:{StationId:"KUVA",City:"Uvalde/Garner F",State:"TX",Latitude:29.2166,Longitude:-99.75},KGOP:{StationId:"KGOP",City:"Gatesville",State:"TX",Latitude:31.4166,Longitude:-97.8},KGTU:{StationId:"KGTU",City:"Georgetown",State:"TX",Latitude:30.6833,Longitude:-97.6833},KGYB:{StationId:"KGYB",City:"Giddings-Lee",State:"TX",Latitude:30.1666,Longitude:-96.9833},KJXI:{StationId:"KJXI",City:"Gilmer Muni",State:"TX",Latitude:32.7,Longitude:-94.95},KT20:{StationId:"KT20",City:"Gonzales Muni",State:"TX",Latitude:29.5166,Longitude:-97.4666},KRPH:{StationId:"KRPH",City:"Graham Muni",State:"TX",Latitude:33.1166,Longitude:-98.55},KGDJ:{StationId:"KGDJ",City:"Granbury Muni",State:"TX",Latitude:32.45,Longitude:-97.8166},KGPM:{StationId:"KGPM",City:"Grand Prairie",State:"TX",Latitude:32.7,Longitude:-97.05},KGVT:{StationId:"KGVT",City:"Greenville/Major",State:"TX",Latitude:33.0666,Longitude:-96.0666},KGDP:{StationId:"KGDP",City:"Guadalupe Pass",State:"TX",Latitude:31.8333,Longitude:-104.8166},KMNZ:{StationId:"KMNZ",City:"Hamilton Muni",State:"TX",Latitude:31.6666,Longitude:-98.15},KHRL:{StationId:"KHRL",City:"Harlingen",State:"TX",Latitude:26.2333,Longitude:-97.65},KLHB:{StationId:"KLHB",City:"Hearne Muni",State:"TX",Latitude:30.8666,Longitude:-96.6166},KHBV:{StationId:"KHBV",City:"Hebbronville",State:"TX",Latitude:27.35,Longitude:-98.7333},KRFI:{StationId:"KRFI",City:"Henderson Rusk C",State:"TX",Latitude:32.15,Longitude:-94.85},KHRX:{StationId:"KHRX",City:"Hereford Muni",State:"TX",Latitude:34.8666,Longitude:-102.3333},KINJ:{StationId:"KINJ",City:"Hillsboro",State:"TX",Latitude:32.0833,Longitude:-97.1},KHDO:{StationId:"KHDO",City:"Hondo",State:"TX",Latitude:29.3666,Longitude:-99.1666},KDZB:{StationId:"KDZB",City:"Horseshoe Bay",State:"TX",Latitude:30.5333,Longitude:-98.3666},KDWH:{StationId:"KDWH",City:"Houston/Dw Hooks",State:"TX",Latitude:30.0666,Longitude:-95.55},KHOU:{StationId:"KHOU",City:"Houston/Hobby",State:"TX",Latitude:29.6333,Longitude:-95.2833},KLVJ:{StationId:"KLVJ",City:"Houston",State:"TX",Latitude:29.5166,Longitude:-95.25},KTME:{StationId:"KTME",City:"Houston Exec",State:"TX",Latitude:29.8,Longitude:-95.9},KIAH:{StationId:"KIAH",City:"Houston/Intnl",State:"TX",Latitude:30,Longitude:-95.3666},KHGX:{StationId:"KHGX",City:"Houston/Dickinsn",State:"TX",Latitude:29.4666,Longitude:-95.0833},KEFD:{StationId:"KEFD",City:"Houston/Ellingto",State:"TX",Latitude:29.6,Longitude:-95.1666},KSGR:{StationId:"KSGR",City:"Houston/Sugar La",State:"TX",Latitude:29.6166,Longitude:-95.65},KZHU:{StationId:"KZHU",City:"Houston/Artcc",State:"TX",Latitude:29.65,Longitude:-95.2833},KMCJ:{StationId:"KMCJ",City:"Houston/Univ",State:"TX",Latitude:29.7166,Longitude:-95.4},KAXH:{StationId:"KAXH",City:"Houston/Southwst",State:"TX",Latitude:29.5166,Longitude:-95.4833},KIWS:{StationId:"KIWS",City:"West Houston",State:"TX",Latitude:29.8166,Longitude:-95.6666},KTFP:{StationId:"KTFP",City:"Ingleside/Tp Mcc",State:"TX",Latitude:27.9166,Longitude:-97.2166},KT43:{StationId:"KT43",City:"Ingleside/Tp Mcc",State:"TX",Latitude:27.9166,Longitude:-97.2166},KWNJ:{StationId:"KWNJ",City:"Johnson Space C",State:"TX",Latitude:29.6333,Longitude:-95.2833},KUTS:{StationId:"KUTS",City:"Huntsville",State:"TX",Latitude:30.75,Longitude:-95.5833},KJSO:{StationId:"KJSO",City:"Jacksonville",State:"TX",Latitude:31.8666,Longitude:-95.2166},KJAS:{StationId:"KJAS",City:"Jasper",State:"TX",Latitude:30.8833,Longitude:-94.0333},KJCT:{StationId:"KJCT",City:"Junction",State:"TX",Latitude:30.5,Longitude:-99.7666},KSKF:{StationId:"KSKF",City:"Kelly Afb",State:"TX",Latitude:29.3666,Longitude:-98.5666},KGRK:{StationId:"KGRK",City:"Gray/Ft Hood",State:"TX",Latitude:31.0666,Longitude:-97.8333},KERV:{StationId:"KERV",City:"Kerrville",State:"TX",Latitude:29.9833,Longitude:-99.0833},KCWC:{StationId:"KCWC",City:"Kickapoo",State:"TX",Latitude:33.85,Longitude:-98.4833},KILE:{StationId:"KILE",City:"Killeen Muni",State:"TX",Latitude:31.0666,Longitude:-97.6666},KNQI:{StationId:"KNQI",City:"Kingsville Nas",State:"TX",Latitude:27.5,Longitude:-97.8166},K3T5:{StationId:"K3T5",City:"La Grange",State:"TX",Latitude:29.9,Longitude:-96.95},KRYW:{StationId:"KRYW",City:"Lago Vista",State:"TX",Latitude:30.5,Longitude:-97.9666},KLZZ:{StationId:"KLZZ",City:"Lampasas",State:"TX",Latitude:31.1,Longitude:-98.2},KLNC:{StationId:"KLNC",City:"Lancaster",State:"TX",Latitude:32.5833,Longitude:-96.7166},KLRD:{StationId:"KLRD",City:"Laredo",State:"TX",Latitude:27.55,Longitude:-99.4666},KDLF:{StationId:"KDLF",City:"Laughlin Afb",State:"TX",Latitude:29.3666,Longitude:-100.7666},KDFX:{StationId:"KDFX",City:"Laughlin Afb/88D",State:"TX",Latitude:29.2666,Longitude:-100.2833},KAQO:{StationId:"KAQO",City:"Llano",State:"TX",Latitude:30.7833,Longitude:-98.6666},KGGG:{StationId:"KGGG",City:"Longview",State:"TX",Latitude:32.3833,Longitude:-94.7166},KLBB:{StationId:"KLBB",City:"Lubbock",State:"TX",Latitude:33.6666,Longitude:-101.8166},KLUB:{StationId:"KLUB",City:"Lubbock/Wfo",State:"TX",Latitude:33.65,Longitude:-101.8166},KLFK:{StationId:"KLFK",City:"Lufkin",State:"TX",Latitude:31.2333,Longitude:-94.75},KMRF:{StationId:"KMRF",City:"Marfa",State:"TX",Latitude:30.3666,Longitude:-104.0166},KASL:{StationId:"KASL",City:"Marshall",State:"TX",Latitude:32.5166,Longitude:-94.3},KTTT:{StationId:"KTTT",City:"Maverick (Dfw)",State:"TX",Latitude:32.8666,Longitude:-97.0333},KPWG:{StationId:"KPWG",City:"Mc Gregor",State:"TX",Latitude:31.4666,Longitude:-97.3166},KMFE:{StationId:"KMFE",City:"Mcallen",State:"TX",Latitude:26.1833,Longitude:-98.25},KTKI:{StationId:"KTKI",City:"Mckinney",State:"TX",Latitude:33.1833,Longitude:-96.5833},KHQZ:{StationId:"KHQZ",City:"Mesquite",State:"TX",Latitude:32.75,Longitude:-96.5333},KLXY:{StationId:"KLXY",City:"Mexia Limestone",State:"TX",Latitude:31.6333,Longitude:-96.5166},KMAF:{StationId:"KMAF",City:"Midland",State:"TX",Latitude:31.95,Longitude:-102.2},KMDD:{StationId:"KMDD",City:"Midland Airpark",State:"TX",Latitude:32.0333,Longitude:-102.1},KJWY:{StationId:"KJWY",City:"Midlothian/Wax",State:"TX",Latitude:32.45,Longitude:-96.9166},KJDD:{StationId:"KJDD",City:"Mineola/Quitman",State:"TX",Latitude:32.75,Longitude:-95.5},KMWL:{StationId:"KMWL",City:"Mineral Wells",State:"TX",Latitude:32.7833,Longitude:-98.0666},KOSA:{StationId:"KOSA",City:"Mount Pleasant",State:"TX",Latitude:33.1,Longitude:-94.9666},KOCH:{StationId:"KOCH",City:"Nacogdoches",State:"TX",Latitude:31.5666,Longitude:-94.7166},KBAZ:{StationId:"KBAZ",City:"New Braunfels",State:"TX",Latitude:29.7166,Longitude:-98.05},KEWX:{StationId:"KEWX",City:"New Braunfel 88D",State:"TX",Latitude:29.7,Longitude:-98.0333},KODO:{StationId:"KODO",City:"Odessa",State:"TX",Latitude:31.9166,Longitude:-102.4},KNOG:{StationId:"KNOG",City:"Orange Grove",State:"TX",Latitude:27.9,Longitude:-98.05},KORG:{StationId:"KORG",City:"Orange",State:"TX",Latitude:30.0666,Longitude:-93.8},KOZA:{StationId:"KOZA",City:"Ozona",State:"TX",Latitude:30.7333,Longitude:-101.2},KPSX:{StationId:"KPSX",City:"Palacios",State:"TX",Latitude:28.7166,Longitude:-96.25},KPSN:{StationId:"KPSN",City:"Palestine Muni",State:"TX",Latitude:31.7833,Longitude:-95.7},KPPA:{StationId:"KPPA",City:"Pampa",State:"TX",Latitude:35.6166,Longitude:-101},KBPC:{StationId:"KBPC",City:"Pampa M Vista R",State:"TX",Latitude:35.8833,Longitude:-101.0333},KPRX:{StationId:"KPRX",City:"Paris/Cox Field",State:"TX",Latitude:33.6166,Longitude:-95.45},KPEQ:{StationId:"KPEQ",City:"Pecos City",State:"TX",Latitude:31.3833,Longitude:-103.5166},KPYX:{StationId:"KPYX",City:"Perryton",State:"TX",Latitude:36.4166,Longitude:-100.75},K25T:{StationId:"K25T",City:"Phillips Oil",State:"TX",Latitude:26.9333,Longitude:-94.6833},KPVW:{StationId:"KPVW",City:"Plainview",State:"TX",Latitude:34.1666,Longitude:-101.7166},KPEZ:{StationId:"KPEZ",City:"Pleasanton Muni",State:"TX",Latitude:28.95,Longitude:-98.5166},KRAS:{StationId:"KRAS",City:"Port Aransas",State:"TX",Latitude:27.8166,Longitude:-97.0833},KPIL:{StationId:"KPIL",City:"Port Isabel",State:"TX",Latitude:26.1666,Longitude:-97.3333},KPKV:{StationId:"KPKV",City:"Port Lavaca",State:"TX",Latitude:28.65,Longitude:-96.6833},KPRS:{StationId:"KPRS",City:"Presidio/Lely In",State:"TX",Latitude:29.6333,Longitude:-104.35},KRND:{StationId:"KRND",City:"Randolph Afb",State:"TX",Latitude:29.5166,Longitude:-98.2666},KREE:{StationId:"KREE",City:"Reese Afb/Lubboc",State:"TX",Latitude:33.6,Longitude:-102.0333},KRBO:{StationId:"KRBO",City:"Robstown/Nueces",State:"TX",Latitude:27.7833,Longitude:-97.6833},KRKP:{StationId:"KRKP",City:"Rockport",State:"TX",Latitude:28.0833,Longitude:-97.05},KECU:{StationId:"KECU",City:"Rocksprings",State:"TX",Latitude:29.95,Longitude:-100.1666},KF46:{StationId:"KF46",City:"Rockwall",State:"TX",Latitude:32.9333,Longitude:-96.4333},KRPE:{StationId:"KRPE",City:"Sabine Pass",State:"TX",Latitude:29.6833,Longitude:-93.95},KSJT:{StationId:"KSJT",City:"San Angelo",State:"TX",Latitude:31.3666,Longitude:-100.5},KSSF:{StationId:"KSSF",City:"S Antonio/Stinsn",State:"TX",Latitude:29.3333,Longitude:-98.4666},KSAT:{StationId:"KSAT",City:"San Antonio",State:"TX",Latitude:29.5333,Longitude:-98.4666},K5C1:{StationId:"K5C1",City:"S Antonio-Boerne",State:"TX",Latitude:29.7166,Longitude:-98.7},KHYI:{StationId:"KHYI",City:"San Marcos",State:"TX",Latitude:29.8833,Longitude:-97.8666},KT98:{StationId:"KT98",City:"San Marcos",State:"TX",Latitude:29.8833,Longitude:-97.8666},KP07:{StationId:"KP07",City:"Sanderson (Ramos",State:"TX",Latitude:30.1666,Longitude:-102.4166},KGNC:{StationId:"KGNC",City:"Seminole",State:"TX",Latitude:32.6833,Longitude:-102.65},KDYX:{StationId:"KDYX",City:"Shackelford/Dyes",State:"TX",Latitude:32.5333,Longitude:-99.25},KGYI:{StationId:"KGYI",City:"Sherman/Denison",State:"TX",Latitude:33.7166,Longitude:-96.6666},KSNK:{StationId:"KSNK",City:"Snyder/Winston",State:"TX",Latitude:32.7,Longitude:-100.95},KSOA:{StationId:"KSOA",City:"Sonora",State:"TX",Latitude:30.5833,Longitude:-100.65},KSPL:{StationId:"KSPL",City:"South Padre Is",State:"TX",Latitude:26.0666,Longitude:-97.15},KSEP:{StationId:"KSEP",City:"Stephenville",State:"TX",Latitude:32.2166,Longitude:-98.1666},KSLR:{StationId:"KSLR",City:"Sulphur Springs",State:"TX",Latitude:33.1666,Longitude:-95.6166},KSWW:{StationId:"KSWW",City:"Sweetwater",State:"TX",Latitude:32.4666,Longitude:-100.4666},KTPL:{StationId:"KTPL",City:"Temple/Miller",State:"TX",Latitude:31.1333,Longitude:-97.4},KTRL:{StationId:"KTRL",City:"Terrell",State:"TX",Latitude:32.7166,Longitude:-96.2666},KTXO:{StationId:"KTXO",City:"Texico (Vor)",State:"TX",Latitude:34.5,Longitude:-102.8333},KTYR:{StationId:"KTYR",City:"Tyler",State:"TX",Latitude:32.3666,Longitude:-95.4},KF05:{StationId:"KF05",City:"Vernon Wilbarger",State:"TX",Latitude:34.2333,Longitude:-99.2833},KVCT:{StationId:"KVCT",City:"Victoria",State:"TX",Latitude:28.8666,Longitude:-96.9333},KACT:{StationId:"KACT",City:"Waco",State:"TX",Latitude:31.6166,Longitude:-97.2333},KCNW:{StationId:"KCNW",City:"Waco/Tsti",State:"TX",Latitude:31.6333,Longitude:-97.0666},KARM:{StationId:"KARM",City:"Wharton",State:"TX",Latitude:29.25,Longitude:-96.15},KSPS:{StationId:"KSPS",City:"Wichita Fall",State:"TX",Latitude:33.9833,Longitude:-98.5},KINK:{StationId:"KINK",City:"Wink",State:"TX",Latitude:31.7833,Longitude:-103.2},KT65:{StationId:"KT65",City:"Weslaco Midvally",State:"TX",Latitude:26.1833,Longitude:-97.9666},KAPY:{StationId:"KAPY",City:"Zapata",State:"TX",Latitude:26.9666,Longitude:-99.25},KBBF:{StationId:"KBBF",City:"Brazos 133B Oilp",State:"TX",Latitude:27.8333,Longitude:-96.0166},KGVX:{StationId:"KGVX",City:"Galveston424 Oil",State:"TX",Latitude:28.5833,Longitude:-94.9833},KHQI:{StationId:"KHQI",City:"H Island376 Oilp",State:"TX",Latitude:27.9333,Longitude:-93.6666},KBQX:{StationId:"KBQX",City:"Brazos 451 Oilp",State:"TX",Latitude:28.5,Longitude:-95.7166},KMIU:{StationId:"KMIU",City:"Mustang Is31 Oil",State:"TX",Latitude:27.2833,Longitude:-96.7333},KMZG:{StationId:"KMZG",City:"Mustang A85a Oil",State:"TX",Latitude:27.7333,Longitude:-96.1833},KCRH:{StationId:"KCRH",City:"W Cameron 368A",State:"TX",Latitude:28.9166,Longitude:-93.3},KVAF:{StationId:"KVAF",City:"E Breaks Boomvng",State:"TX",Latitude:27.35,Longitude:-94.6333},KHHV:{StationId:"KHHV",City:"Alaminos Canyon",State:"TX",Latitude:26.9333,Longitude:-94.6833},KF54:{StationId:"KF54",City:"Arlington",State:"TX",Latitude:32.6666,Longitude:-97.1},KBSM:{StationId:"KBSM",City:"Austin/Bergstrom",State:"TX",Latitude:30.1833,Longitude:-97.6833},K3R1:{StationId:"K3R1",City:"Bay City",State:"TX",Latitude:28.9666,Longitude:-95.8666},KNIR:{StationId:"KNIR",City:"Beeville",State:"TX",Latitude:28.3666,Longitude:-97.6666},KBGS:{StationId:"KBGS",City:"Big Spring",State:"TX",Latitude:32.2166,Longitude:-101.5166},K1F9:{StationId:"K1F9",City:"Bridgeport",State:"TX",Latitude:33.1833,Longitude:-97.8333},KT27:{StationId:"KT27",City:"Burnet Municipal",State:"TX",Latitude:30.7333,Longitude:-98.2166},KCRM:{StationId:"KCRM",City:"Carmen",State:"TX",Latitude:36.6,Longitude:-98.6166},KAWN:{StationId:"KAWN",City:"Carswell",State:"TX",Latitude:32.7833,Longitude:-97.4333},KT89:{StationId:"KT89",City:"Castroville Muni",State:"TX",Latitude:29.35,Longitude:-98.85},K7F6:{StationId:"K7F6",City:"Clarksville",State:"TX",Latitude:33.6,Longitude:-95.0666},KF18:{StationId:"KF18",City:"Cleburne",State:"TX",Latitude:32.35,Longitude:-97.4333},K7F9:{StationId:"K7F9",City:"Comanche",State:"TX",Latitude:31.9166,Longitude:-98.6},KT56:{StationId:"KT56",City:"Crockett",State:"TX",Latitude:31.3,Longitude:-95.4},K5R0:{StationId:"K5R0",City:"East Addition",State:"TX",Latitude:28.2166,Longitude:-93.75},K25R:{StationId:"K25R",City:"Edinburg",State:"TX",Latitude:26.45,Longitude:-98.1333},KFWH:{StationId:"KFWH",City:"Ft Worth/Nas",State:"TX",Latitude:32.7833,Longitude:-97.4333},K6T5:{StationId:"K6T5",City:"Freeport",State:"TX",Latitude:28.9833,Longitude:-95.3166},K05F:{StationId:"K05F",City:"Gatesville",State:"TX",Latitude:31.4166,Longitude:-97.8},KT04:{StationId:"KT04",City:"Georgetown",State:"TX",Latitude:30.6666,Longitude:-97.6666},K62H:{StationId:"K62H",City:"Giddings-Lee",State:"TX",Latitude:30.1666,Longitude:-96.9833},K4F4:{StationId:"K4F4",City:"Gilmer Muni",State:"TX",Latitude:32.7,Longitude:-94.95},KF55:{StationId:"KF55",City:"Granbury Muni",State:"TX",Latitude:32.45,Longitude:-97.8166},KT72:{StationId:"KT72",City:"Hearne Muni",State:"TX",Latitude:30.8666,Longitude:-96.6166},KF12:{StationId:"KF12",City:"Henderson Rusk C",State:"TX",Latitude:32.15,Longitude:-94.85},K5T5:{StationId:"K5T5",City:"Hillsboro Muni",State:"TX",Latitude:32.0833,Longitude:-97.1},KT02:{StationId:"KT02",City:"Houston",State:"TX",Latitude:29.5166,Longitude:-95.25},KT47:{StationId:"KT47",City:"Kickapoo",State:"TX",Latitude:33.85,Longitude:-98.4833},K5R3:{StationId:"K5R3",City:"Lago Vista",State:"TX",Latitude:30.5,Longitude:-97.9666},K6R9:{StationId:"K6R9",City:"Llano",State:"TX",Latitude:30.7833,Longitude:-98.6666},KF60:{StationId:"KF60",City:"Mc Gregor",State:"TX",Latitude:31.4666,Longitude:-97.3166},K3T1:{StationId:"K3T1",City:"Mineola/Quitman",State:"TX",Latitude:32.75,Longitude:-95.5},K3R5:{StationId:"K3R5",City:"New Braunfels",State:"TX",Latitude:29.7166,Longitude:-98.05},KE02:{StationId:"KE02",City:"Odessa",State:"TX",Latitude:31.9166,Longitude:-102.4},K2R8:{StationId:"K2R8",City:"Port Aransas",State:"TX",Latitude:27.8166,Longitude:-97.0833},KT31:{StationId:"KT31",City:"Port Isabel",State:"TX",Latitude:26.1666,Longitude:-97.3333},KT97:{StationId:"KT97",City:"Port Lavaca",State:"TX",Latitude:28.65,Longitude:-96.6833},KT05:{StationId:"KT05",City:"Port Mansfield",State:"TX",Latitude:26.5666,Longitude:-97.4333},KT77:{StationId:"KT77",City:"Presidio/Lely In",State:"TX",Latitude:29.6333,Longitude:-104.35},KT53:{StationId:"KT53",City:"Robstown Nueces",State:"TX",Latitude:27.7833,Longitude:-97.6833},K28T:{StationId:"K28T",City:"Sabine Pass",State:"TX",Latitude:29.7,Longitude:-93.95},K31F:{StationId:"K31F",City:"Seminole",State:"TX",Latitude:32.6833,Longitude:-102.65},K2F1:{StationId:"K2F1",City:"Shamrock",State:"TX",Latitude:35.2,Longitude:-100.25},KSHP:{StationId:"KSHP",City:"Sheppard Afb",State:"TX",Latitude:33.9666,Longitude:-98.4666},KF39:{StationId:"KF39",City:"Sherman/Denison",State:"TX",Latitude:33.7166,Longitude:-96.6666},KE29:{StationId:"KE29",City:"Sonora",State:"TX",Latitude:30.5833,Longitude:-100.65},KT46:{StationId:"KT46",City:"South Brazos",State:"TX",Latitude:28.0166,Longitude:-95.8666},K5R5:{StationId:"K5R5",City:"Wharton",State:"TX",Latitude:29.25,Longitude:-96.15},KT86:{StationId:"KT86",City:"Zapata",State:"TX",Latitude:26.9666,Longitude:-99.25},KEMK:{StationId:"KEMK",City:"E Breaks 165",State:"TX",Latitude:27.8166,Longitude:-94.3166},KGUL:{StationId:"KGUL",City:"Gunnison 668",State:"TX",Latitude:27.3,Longitude:-93.5333},KOPM:{StationId:"KOPM",City:"N Padre 975",State:"TX",Latitude:26.8333,Longitude:-96.9333},XFAS:{StationId:"XFAS",City:"Friona 2Ne",State:"TX",Latitude:34.65,Longitude:-102.6833},XDMS:{StationId:"XDMS",City:"Dimmitt 2Ne",State:"TX",Latitude:34.5666,Longitude:-102.3},XTIS:{StationId:"XTIS",City:"Tulia 2Ne",State:"TX",Latitude:34.55,Longitude:-101.7333},XSVS:{StationId:"XSVS",City:"Silverton 7E",State:"TX",Latitude:34.45,Longitude:-101.1833},XMUS:{StationId:"XMUS",City:"Muleshoe 2S",State:"TX",Latitude:34.2,Longitude:-102.75},XAMH:{StationId:"XAMH",City:"Amherst 1Ne",State:"TX",Latitude:34.0166,Longitude:-102.4},XPVS:{StationId:"XPVS",City:"Plainview 1S",State:"TX",Latitude:34.1833,Longitude:-101.7},XFLS:{StationId:"XFLS",City:"Floydada 2Ne",State:"TX",Latitude:34,Longitude:-101.3333},XRRS:{StationId:"XRRS",City:"Roaring S. 3N",State:"TX",Latitude:33.9333,Longitude:-100.85},XMNS:{StationId:"XMNS",City:"Morton 1Ne",State:"TX",Latitude:33.7333,Longitude:-102.7333},XLDS:{StationId:"XLDS",City:"Levelland 4S",State:"TX",Latitude:33.5333,Longitude:-102.3666},XREE:{StationId:"XREE",City:"Lubbock 12W",State:"TX",Latitude:33.6166,Longitude:-102.0666},XRLS:{StationId:"XRLS",City:"Ralls 1Se",State:"TX",Latitude:33.6666,Longitude:-101.3833},XPPS:{StationId:"XPPS",City:"Plains 3N",State:"TX",Latitude:33.2333,Longitude:-102.8333},XBWS:{StationId:"XBWS",City:"Brownfield 2S",State:"TX",Latitude:33.15,Longitude:-102.2666},XTAS:{StationId:"XTAS",City:"Tahoka 3Ne",State:"TX",Latitude:33.2,Longitude:-101.7833},XPTS:{StationId:"XPTS",City:"Post 1Ne",State:"TX",Latitude:33.2,Longitude:-101.3666},XSMS:{StationId:"XSMS",City:"Seminole 2N",State:"TX",Latitude:32.7333,Longitude:-102.6333},XSLS:{StationId:"XSLS",City:"Slaton 2Ne",State:"TX",Latitude:33.45,Longitude:-101.6166},XARS:{StationId:"XARS",City:"Abernathy 5Ne",State:"TX",Latitude:33.8833,Longitude:-101.75},XONS:{StationId:"XONS",City:"Olton 6S",State:"TX",Latitude:34.1,Longitude:-102.1166},XOES:{StationId:"XOES",City:"O'donnell 1N",State:"TX",Latitude:32.9833,Longitude:-101.8333},XSGV:{StationId:"XSGV",City:"Seagraves 1Sw",State:"TX",Latitude:32.9333,Longitude:-102.5666},XLES:{StationId:"XLES",City:"Lamesa 2Se",State:"TX",Latitude:32.7,Longitude:-101.9333},XHRS:{StationId:"XHRS",City:"Hart 3N",State:"TX",Latitude:34.4166,Longitude:-102.1},XGGS:{StationId:"XGGS",City:"Gail 2Se",State:"TX",Latitude:32.75,Longitude:-101.4166},XWVS:{StationId:"XWVS",City:"White R Lake 6Nw",State:"TX",Latitude:33.5333,Longitude:-101.1666},XGHS:{StationId:"XGHS",City:"Graham 5Sw",State:"TX",Latitude:33.0833,Longitude:-101.5166},XSDS:{StationId:"XSDS",City:"Sundown 8Sw",State:"TX",Latitude:33.3833,Longitude:-102.6166},XAOS:{StationId:"XAOS",City:"Anton 6S",State:"TX",Latitude:33.7333,Longitude:-102.1833},XFVS:{StationId:"XFVS",City:"Fluvanna 3W",State:"TX",Latitude:32.9,Longitude:-101.2},XSPR:{StationId:"XSPR",City:"Spur 1W",State:"TX",Latitude:33.4833,Longitude:-100.8833},XLBW:{StationId:"XLBW",City:"Lubbock 3W",State:"TX",Latitude:33.5833,Longitude:-101.9},XPFS:{StationId:"XPFS",City:"Guthrie 10W",State:"TX",Latitude:33.5666,Longitude:-100.4833},XCES:{StationId:"XCES",City:"Clarendon",State:"TX",Latitude:34.9166,Longitude:-100.9333},XPAD:{StationId:"XPAD",City:"Paduca 10Sw",State:"TX",Latitude:33.8833,Longitude:-100.4},XSYS:{StationId:"XSYS",City:"Snyder 3E",State:"TX",Latitude:32.7166,Longitude:-100.8666},XMES:{StationId:"XMES",City:"Memphis 1Ne",State:"TX",Latitude:34.7333,Longitude:-100.5333},XJTS:{StationId:"XJTS",City:"Jayton 1S",State:"TX",Latitude:33.2333,Longitude:-100.5666},XPMS:{StationId:"XPMS",City:"Pampa 2E",State:"TX",Latitude:35.5333,Longitude:-100.9333},XHES:{StationId:"XHES",City:"Hereford 2Nw",State:"TX",Latitude:34.8333,Longitude:-102.4166},XASR:{StationId:"XASR",City:"Aspermont 3Ne",State:"TX",Latitude:33.1666,Longitude:-100.2},XGDS:{StationId:"XGDS",City:"Goodlett 3W",State:"TX",Latitude:34.35,Longitude:-99.9333},XMCS:{StationId:"XMCS",City:"Mclean 1E",State:"TX",Latitude:35.2333,Longitude:-100.5666},XDVS:{StationId:"XDVS",City:"Denver City 7W",State:"TX",Latitude:32.9833,Longitude:-102.9333},XAHS:{StationId:"XAHS",City:"Lake Alan Henry",State:"TX",Latitude:33.0833,Longitude:-101.05},XWOS:{StationId:"XWOS",City:"Wolfforth 6Sw",State:"TX",Latitude:33.4166,Longitude:-102.05},XANS:{StationId:"XANS",City:"Andrews 2E",State:"TX",Latitude:32.3166,Longitude:-102.5166},XTUR:{StationId:"XTUR",City:"Turkey 2Wsw",State:"TX",Latitude:34.3833,Longitude:-100.9333},XCXS:{StationId:"XCXS",City:"Childress 2Nne",State:"TX",Latitude:34.45,Longitude:-100.2},XNOR:{StationId:"XNOR",City:"Northfield 1S",State:"TX",Latitude:34.2666,Longitude:-100.6},XASU:{StationId:"XASU",City:"San Angelo 7Nw",State:"TX",Latitude:31.55,Longitude:-100.5166},XST1:{StationId:"XST1",City:"St Lawrence 5Sw",State:"TX",Latitude:31.65,Longitude:-101.6},XHA1:{StationId:"XHA1",City:"Haskell 1Nw",State:"TX",Latitude:33.1666,Longitude:-99.75},XWA1:{StationId:"XWA1",City:"Wall 1E",State:"TX",Latitude:31.3666,Longitude:-100.2833},XSE1:{StationId:"XSE1",City:"Seymour 3Nw",State:"TX",Latitude:33.6333,Longitude:-99.2833},X3RF:{StationId:"X3RF",City:"Comanche Sprgs",State:"TX",Latitude:33.9833,Longitude:-99.95},XKN1:{StationId:"XKN1",City:"Knox City 3Nw",State:"TX",Latitude:33.45,Longitude:-99.8666},XGU1:{StationId:"XGU1",City:"Pine Sprngs Gmnp",State:"TX",Latitude:31.8833,Longitude:-104.8166},XOD1:{StationId:"XOD1",City:"Odell 4Ene",State:"TX",Latitude:34.3666,Longitude:-99.35},XCO1:{StationId:"XCO1",City:"Coyanosa 2N",State:"TX",Latitude:31.2833,Longitude:-103.0666},XQU1:{StationId:"XQU1",City:"Quitaque 3Nnw",State:"TX",Latitude:34.4166,Longitude:-101.0666},XBI1:{StationId:"XBI1",City:"Big Lake 1Wnw",State:"TX",Latitude:31.2,Longitude:-101.4666},XJU1:{StationId:"XJU1",City:"Junction 1Ssw",State:"TX",Latitude:30.4666,Longitude:-99.7833},XWE1:{StationId:"XWE1",City:"Weinert 2Nne",State:"TX",Latitude:33.35,Longitude:-99.6666},XCA1:{StationId:"XCA1",City:"Canadian 6E",State:"TX",Latitude:35.9166,Longitude:-100.2833},XPD1:{StationId:"XPD1",City:"Palo Duro Canyn",State:"TX",Latitude:34.9833,Longitude:-101.7},XBO1:{StationId:"XBO1",City:"Bootleg 11Wnw",State:"TX",Latitude:34.8833,Longitude:-102.9833},XSC1:{StationId:"XSC1",City:"Sterling County",State:"TX",Latitude:31.8333,Longitude:-101.05},XCL1:{StationId:"XCL1",City:"Claude 12Sw",State:"TX",Latitude:34.9833,Longitude:-101.5},XPG1:{StationId:"XPG1",City:"Persimmon Gap",State:"TX",Latitude:29.6666,Longitude:-103.1833},XAM1:{StationId:"XAM1",City:"Amarillo 7Sse",State:"TX",Latitude:35.1166,Longitude:-101.8},XUM1:{StationId:"XUM1",City:"Umbarger 3Nne",State:"TX",Latitude:34.9833,Longitude:-102.0833},XLO1:{StationId:"XLO1",City:"Lomax 1Sse",State:"TX",Latitude:32.1,Longitude:-101.6333},XAM2:{StationId:"XAM2",City:"Amarillo 9Nne",State:"TX",Latitude:35.3333,Longitude:-101.8},XAI1:{StationId:"XAI1",City:"Aiken 3Wsw",State:"TX",Latitude:34.1333,Longitude:-101.5666},XME1:{StationId:"XME1",City:"Mertzon",State:"TX",Latitude:31.3,Longitude:-100.8166},XSW1:{StationId:"XSW1",City:"Sweetwater 11Sw",State:"TX",Latitude:32.35,Longitude:-100.5333},XRAS:{StationId:"XRAS",City:"Ralls 1Se",State:"TX",Latitude:33.6666,Longitude:-101.3833},KSLC:{StationId:"KSLC",City:"Salt Lake City",State:"UT",Latitude:40.7666,Longitude:-111.9666},K4BL:{StationId:"K4BL",City:"Blanding",State:"UT",Latitude:37.6166,Longitude:-109.4666},KBDG:{StationId:"KBDG",City:"Blanding",State:"UT",Latitude:37.5833,Longitude:-109.4833},KBVL:{StationId:"KBVL",City:"Bonneville",State:"UT",Latitude:40.7166,Longitude:-113.75},KBCE:{StationId:"KBCE",City:"Bryce Canyon",State:"UT",Latitude:37.7,Longitude:-112.15},KCDC:{StationId:"KCDC",City:"Cedar City",State:"UT",Latitude:37.7,Longitude:-113.1},KICX:{StationId:"KICX",City:"Cedar City/88D",State:"UT",Latitude:37.5833,Longitude:-112.8666},KU24:{StationId:"KU24",City:"Delta",State:"UT",Latitude:39.3333,Longitude:-112.5833},KDTA:{StationId:"KDTA",City:"Delta",State:"UT",Latitude:39.3,Longitude:-112.5},KDPG:{StationId:"KDPG",City:"Dugway Prvg Grou",State:"UT",Latitude:40.2,Longitude:-112.9166},KU16:{StationId:"KU16",City:"Eagle Range",State:"UT",Latitude:41.05,Longitude:-113.0666},KMTX:{StationId:"KMTX",City:"Elder County/Slc",State:"UT",Latitude:41.2666,Longitude:-112.45},KU28:{StationId:"KU28",City:"Green River Rang",State:"UT",Latitude:39,Longitude:-110.1666},K4HV:{StationId:"K4HV",City:"Hanksville",State:"UT",Latitude:38.3666,Longitude:-110.7166},KHVE:{StationId:"KHVE",City:"Hanksville",State:"UT",Latitude:38.4166,Longitude:-110.7},K36U:{StationId:"K36U",City:"Heber/Russ Mcdon",State:"UT",Latitude:40.4833,Longitude:-111.4333},KHIF:{StationId:"KHIF",City:"Hill Afb/Ogden",State:"UT",Latitude:41.1166,Longitude:-111.9666},KLGU:{StationId:"KLGU",City:"Logan",State:"UT",Latitude:41.7833,Longitude:-111.85},KMLF:{StationId:"KMLF",City:"Milford",State:"UT",Latitude:38.4166,Longitude:-113.0166},KCNY:{StationId:"KCNY",City:"Moab",State:"UT",Latitude:38.7666,Longitude:-109.75},KMTU:{StationId:"KMTU",City:"Myton",State:"UT",Latitude:40.1333,Longitude:-110.1166},KOGD:{StationId:"KOGD",City:"Ogden",State:"UT",Latitude:41.2,Longitude:-112.0166},KPUC:{StationId:"KPUC",City:"Price",State:"UT",Latitude:39.6166,Longitude:-110.75},KPVU:{StationId:"KPVU",City:"Provo Muni",State:"UT",Latitude:40.2166,Longitude:-111.7166},KRIF:{StationId:"KRIF",City:"Richfield",State:"UT",Latitude:38.7333,Longitude:-112.1},KU67:{StationId:"KU67",City:"Roosevelt",State:"UT",Latitude:40.2833,Longitude:-109.9666},KSGU:{StationId:"KSGU",City:"Saint George",State:"UT",Latitude:37.0666,Longitude:-113.5166},KDXZ:{StationId:"KDXZ",City:"Saint George",State:"UT",Latitude:37.0833,Longitude:-113.6},KU42:{StationId:"KU42",City:"Salt Lake Muni",State:"UT",Latitude:40.6166,Longitude:-111.9833},KZLC:{StationId:"KZLC",City:"Salt Lake/Artcc",State:"UT",Latitude:40.7666,Longitude:-111.95},KT62:{StationId:"KT62",City:"Tooele",State:"UT",Latitude:40.3166,Longitude:-112.2833},KVEL:{StationId:"KVEL",City:"Vernal",State:"UT",Latitude:40.45,Longitude:-109.5166},KENV:{StationId:"KENV",City:"Wendover (Aut)",State:"UT",Latitude:40.7166,Longitude:-114.0166},KU17:{StationId:"KU17",City:"Bullfrog(Awrs)",State:"UT",Latitude:37.5,Longitude:-110.7},K7LI:{StationId:"K7LI",City:"Joseph",State:"UT",Latitude:38.6333,Longitude:-112.2},KROA:{StationId:"KROA",City:"Roanoke",State:"VA",Latitude:37.3166,Longitude:-79.9666},KVJI:{StationId:"KVJI",City:"Abingdon",State:"VA",Latitude:36.6666,Longitude:-82.0166},KBCB:{StationId:"KBCB",City:"Blacksburg/Va T.",State:"VA",Latitude:37.2166,Longitude:-80.4166},KCSN:{StationId:"KCSN",City:"Cassanova Vor",State:"VA",Latitude:38.6333,Longitude:-77.8666},KCHO:{StationId:"KCHO",City:"Charlottesville",State:"VA",Latitude:38.1333,Longitude:-78.45},KCPK:{StationId:"KCPK",City:"Chesapeake",State:"VA",Latitude:36.6666,Longitude:-76.3166},KCJR:{StationId:"KCJR",City:"Culpeper",State:"VA",Latitude:38.5333,Longitude:-77.8666},KDAN:{StationId:"KDAN",City:"Danville",State:"VA",Latitude:36.5666,Longitude:-79.3333},KPSK:{StationId:"KPSK",City:"Dublin/New Riv",State:"VA",Latitude:37.1166,Longitude:-80.6666},KEMV:{StationId:"KEMV",City:"Emporia",State:"VA",Latitude:36.6833,Longitude:-77.4833},KFVX:{StationId:"KFVX",City:"Farmville",State:"VA",Latitude:37.35,Longitude:-78.4166},KNFE:{StationId:"KNFE",City:"Fentress Naval",State:"VA",Latitude:36.7,Longitude:-76.1333},KDAA:{StationId:"KDAA",City:"Fort Belvoir/Dav",State:"VA",Latitude:38.7166,Longitude:-77.1666},KFKN:{StationId:"KFKN",City:"Franklin/J B Ros",State:"VA",Latitude:36.7,Longitude:-76.9},KEZF:{StationId:"KEZF",City:"Fredericksb/Shan",State:"VA",Latitude:38.2666,Longitude:-77.45},KFAF:{StationId:"KFAF",City:"Ft Eustis/Felker",State:"VA",Latitude:37.1166,Longitude:-76.6166},KHLX:{StationId:"KHLX",City:"Hillsville/Galax",State:"VA",Latitude:36.7666,Longitude:-80.8166},KHSP:{StationId:"KHSP",City:"Hot Springs/Inga",State:"VA",Latitude:37.95,Longitude:-79.8166},K0VG:{StationId:"K0VG",City:"Jonesville",State:"VA",Latitude:36.65,Longitude:-83.2166},KLFI:{StationId:"KLFI",City:"Langley Afb/Hamp",State:"VA",Latitude:37.0666,Longitude:-76.3666},KJYO:{StationId:"KJYO",City:"Leesburg/Godfrey",State:"VA",Latitude:39.0666,Longitude:-77.5666},KLKU:{StationId:"KLKU",City:"Louisa",State:"VA",Latitude:38.0166,Longitude:-77.9666},KLUA:{StationId:"KLUA",City:"Luray",State:"VA",Latitude:38.6666,Longitude:-78.5},KLYH:{StationId:"KLYH",City:"Lynchburg",State:"VA",Latitude:37.3166,Longitude:-79.2},KHEF:{StationId:"KHEF",City:"Manassas Muni",State:"VA",Latitude:38.7166,Longitude:-77.5166},KMKJ:{StationId:"KMKJ",City:"Marion / Wythevi",State:"VA",Latitude:36.8833,Longitude:-81.3333},KMTV:{StationId:"KMTV",City:"Martinsville",State:"VA",Latitude:36.6333,Longitude:-80.0166},KMFV:{StationId:"KMFV",City:"Melfa/Accomack",State:"VA",Latitude:37.6333,Longitude:-75.7666},KPHF:{StationId:"KPHF",City:"Newport News",State:"VA",Latitude:37.1333,Longitude:-76.5},KNGU:{StationId:"KNGU",City:"Norfolk Nas/Cham",State:"VA",Latitude:36.9166,Longitude:-76.2666},KORF:{StationId:"KORF",City:"Norfolk",State:"VA",Latitude:36.9,Longitude:-76.2},KAKQ:{StationId:"KAKQ",City:"Norfolk/Wakefld",State:"VA",Latitude:36.9833,Longitude:-77},KPVG:{StationId:"KPVG",City:"Norfolk/Hampton",State:"VA",Latitude:36.7833,Longitude:-76.45},KNTU:{StationId:"KNTU",City:"Oceana Nas/Souce",State:"VA",Latitude:36.8166,Longitude:-76.0166},KOMH:{StationId:"KOMH",City:"Orange",State:"VA",Latitude:38.25,Longitude:-78.05},KPTB:{StationId:"KPTB",City:"Petersburg",State:"VA",Latitude:37.1666,Longitude:-77.5166},KNYG:{StationId:"KNYG",City:"Quantico Mcaf",State:"VA",Latitude:38.5,Longitude:-77.2833},KOFP:{StationId:"KOFP",City:"Richmond/Hanover",State:"VA",Latitude:37.7,Longitude:-77.4333},KFCI:{StationId:"KFCI",City:"Richmond/Chester",State:"VA",Latitude:37.4,Longitude:-77.5166},KRIC:{StationId:"KRIC",City:"Richmond",State:"VA",Latitude:37.5166,Longitude:-77.3166},KRNK:{StationId:"KRNK",City:"Roanoke/Blacksbg",State:"VA",Latitude:37.2,Longitude:-80.4},KFCX:{StationId:"KFCX",City:"Roanoke/Floyd Cy",State:"VA",Latitude:37.0166,Longitude:-80.2666},KAVC:{StationId:"KAVC",City:"South Hill/Meckl",State:"VA",Latitude:36.6833,Longitude:-78.0333},KRMN:{StationId:"KRMN",City:"Stafford Regnl",State:"VA",Latitude:38.4,Longitude:-77.45},KSHD:{StationId:"KSHD",City:"Staunton/Shenand",State:"VA",Latitude:38.2666,Longitude:-78.9},KLWX:{StationId:"KLWX",City:"Sterling",State:"VA",Latitude:38.9833,Longitude:-77.4833},KSFQ:{StationId:"KSFQ",City:"Suffolk",State:"VA",Latitude:36.6833,Longitude:-76.6},KJFZ:{StationId:"KJFZ",City:"Richlands",State:"VA",Latitude:37.0666,Longitude:-81.8},KXSA:{StationId:"KXSA",City:"Tappahannock",State:"VA",Latitude:37.8666,Longitude:-76.9},KWAL:{StationId:"KWAL",City:"Wallops Island",State:"VA",Latitude:37.9333,Longitude:-75.4666},KHWY:{StationId:"KHWY",City:"Warrenton",State:"VA",Latitude:38.5833,Longitude:-77.7166},KIAD:{StationId:"KIAD",City:"Wash Dc/Dulles",State:"VA",Latitude:38.9333,Longitude:-77.45},KFYJ:{StationId:"KFYJ",City:"West Point",State:"VA",Latitude:37.5166,Longitude:-76.7666},KJGG:{StationId:"KJGG",City:"Williamsburg",State:"VA",Latitude:37.2333,Longitude:-76.7166},KOKV:{StationId:"KOKV",City:"Winchester Rgnl",State:"VA",Latitude:39.1333,Longitude:-78.15},KLNP:{StationId:"KLNP",City:"Wise/Lonesome Pi",State:"VA",Latitude:36.9666,Longitude:-82.5166},KW45:{StationId:"KW45",City:"Luray",State:"VA",Latitude:38.6666,Longitude:-78.5},K6V3:{StationId:"K6V3",City:"Richlands",State:"VA",Latitude:37.0666,Longitude:-81.8},KVQN:{StationId:"KVQN",City:"Volens",State:"VA",Latitude:36.95,Longitude:-78.9833},KW66:{StationId:"KW66",City:"Warrenton",State:"VA",Latitude:38.5833,Longitude:-77.7166},KW94:{StationId:"KW94",City:"Williamsburg",State:"VA",Latitude:37.3,Longitude:-76.6333},KDDH:{StationId:"KDDH",City:"Bennington",State:"VT",Latitude:42.9,Longitude:-73.25},KBTV:{StationId:"KBTV",City:"Burlington",State:"VT",Latitude:44.4666,Longitude:-73.15},KCXX:{StationId:"KCXX",City:"Colchester/88D",State:"VT",Latitude:44.5166,Longitude:-73.1666},KFSO:{StationId:"KFSO",City:"Highgate",State:"VT",Latitude:44.9333,Longitude:-73.1},KCDA:{StationId:"KCDA",City:"Lyndonville",State:"VT",Latitude:44.5666,Longitude:-72.0166},K6B0:{StationId:"K6B0",City:"Middlebury",State:"VT",Latitude:43.9833,Longitude:-73.1},KMVL:{StationId:"KMVL",City:"Morrisville",State:"VT",Latitude:44.5333,Longitude:-72.6166},KMPV:{StationId:"KMPV",City:"Montpelier/Barre",State:"VT",Latitude:44.2,Longitude:-72.5666},KEFK:{StationId:"KEFK",City:"Newport State",State:"VT",Latitude:44.8833,Longitude:-72.2333},KRUT:{StationId:"KRUT",City:"Rutland State",State:"VT",Latitude:43.5166,Longitude:-72.95},KVSF:{StationId:"KVSF",City:"Springfield",State:"VT",Latitude:43.35,Longitude:-72.5166},K1V4:{StationId:"K1V4",City:"St. Johnsbury",State:"VT",Latitude:44.4166,Longitude:-72.0166},K8B3:{StationId:"K8B3",City:"Ball Mountain",State:"VT",Latitude:43.1166,Longitude:-72.8},K5B5:{StationId:"K5B5",City:"Bennington",State:"VT",Latitude:42.8833,Longitude:-73.25},KVT1:{StationId:"KVT1",City:"Canaan",State:"VT",Latitude:44.9833,Longitude:-71.5},KJAY:{StationId:"KJAY",City:"Jay Peak",State:"VT",Latitude:44.9333,Longitude:-72.5333},K6B8:{StationId:"K6B8",City:"Lyndonville",State:"VT",Latitude:44.5666,Longitude:-72.0166},KPOW:{StationId:"KPOW",City:"Pownal",State:"VT",Latitude:42.7833,Longitude:-73.2166},KSOL:{StationId:"KSOL",City:"South Lincoln",State:"VT",Latitude:44.0666,Longitude:-72.9666},KVT2:{StationId:"KVT2",City:"West Burke",State:"VT",Latitude:44.65,Longitude:-71.9833},KWDO:{StationId:"KWDO",City:"West Dover",State:"VT",Latitude:42.9333,Longitude:-72.85},KMNW:{StationId:"KMNW",City:"Wilmington",State:"VT",Latitude:42.8666,Longitude:-72.1166},KAWO:{StationId:"KAWO",City:"Arlington Muni",State:"WA",Latitude:48.1666,Longitude:-122.1666},KBLI:{StationId:"KBLI",City:"Bellingham",State:"WA",Latitude:48.8,Longitude:-122.5333},KHUH:{StationId:"KHUH",City:"Whatcom (Bli)",State:"WA",Latitude:48.95,Longitude:-122.5833},KPWT:{StationId:"KPWT",City:"Bremerton Ntnl",State:"WA",Latitude:47.5,Longitude:-122.75},KBVS:{StationId:"KBVS",City:"Burlington/Mt V",State:"WA",Latitude:48.4666,Longitude:-122.4166},KCLS:{StationId:"KCLS",City:"Chehalis Central",State:"WA",Latitude:46.6833,Longitude:-122.9833},KCQV:{StationId:"KCQV",City:"Colville Municip",State:"WA",Latitude:48.5333,Longitude:-117.8666},KDEW:{StationId:"KDEW",City:"Deer Park",State:"WA",Latitude:47.9666,Longitude:-117.4333},KORS:{StationId:"KORS",City:"Eastsound/Orcas",State:"WA",Latitude:48.7,Longitude:-122.9166},KELN:{StationId:"KELN",City:"Ellensburg",State:"WA",Latitude:47.0333,Longitude:-120.5333},KEPH:{StationId:"KEPH",City:"Ephrata",State:"WA",Latitude:47.3,Longitude:-119.5166},KPAE:{StationId:"KPAE",City:"Everett",State:"WA",Latitude:47.9166,Longitude:-122.2833},KSKA:{StationId:"KSKA",City:"Fairchild Afb",State:"WA",Latitude:47.6166,Longitude:-117.65},KGRF:{StationId:"KGRF",City:"Fort Lewis/Gray",State:"WA",Latitude:47.0666,Longitude:-122.5666},KFHR:{StationId:"KFHR",City:"Friday Harbor",State:"WA",Latitude:48.5166,Longitude:-123.0333},KLGX:{StationId:"KLGX",City:"Grays Harbor",State:"WA",Latitude:47.1166,Longitude:-124.1},KHMS:{StationId:"KHMS",City:"Hanford",State:"WA",Latitude:46.5666,Longitude:-119.5833},KHQM:{StationId:"KHQM",City:"Hoquiam",State:"WA",Latitude:46.9666,Longitude:-123.9333},KKLS:{StationId:"KKLS",City:"Kelso Longveiw",State:"WA",Latitude:46.1166,Longitude:-122.9},KMWH:{StationId:"KMWH",City:"Moses Lake",State:"WA",Latitude:47.2,Longitude:-119.3166},KOKH:{StationId:"KOKH",City:"Oak Harbor Airpa",State:"WA",Latitude:48.25,Longitude:-122.6666},KOLM:{StationId:"KOLM",City:"Olympia",State:"WA",Latitude:46.9666,Longitude:-122.9},KOMK:{StationId:"KOMK",City:"Omak",State:"WA",Latitude:48.4666,Longitude:-119.5166},KPSC:{StationId:"KPSC",City:"Pasco",State:"WA",Latitude:46.2666,Longitude:-119.1166},KCLM:{StationId:"KCLM",City:"Port Angeles",State:"WA",Latitude:48.1166,Longitude:-123.5},KPUW:{StationId:"KPUW",City:"Pullman/Moscow",State:"WA",Latitude:46.75,Longitude:-117.1166},KPLU:{StationId:"KPLU",City:"Puyallup/Thun",State:"WA",Latitude:47.1,Longitude:-122.2833},KUIL:{StationId:"KUIL",City:"Quillayute",State:"WA",Latitude:47.9333,Longitude:-124.55},KRNT:{StationId:"KRNT",City:"Renton",State:"WA",Latitude:47.5,Longitude:-122.2166},KBFI:{StationId:"KBFI",City:"Seattle/Boeing",State:"WA",Latitude:47.55,Longitude:-122.3166},KSEA:{StationId:"KSEA",City:"Seattle/Metro",State:"WA",Latitude:47.45,Longitude:-122.3166},KSEW:{StationId:"KSEW",City:"Seattle/Wfo",State:"WA",Latitude:47.6833,Longitude:-122.25},KZSE:{StationId:"KZSE",City:"Seattle/Artcc",State:"WA",Latitude:47.2833,Longitude:-122.1833},KATX:{StationId:"KATX",City:"Seattle/Camano I",State:"WA",Latitude:48.2,Longitude:-122.5},KSHN:{StationId:"KSHN",City:"Shelton",State:"WA",Latitude:47.2333,Longitude:-123.1333},KOTX:{StationId:"KOTX",City:"Spokane",State:"WA",Latitude:47.6833,Longitude:-117.6333},KSFF:{StationId:"KSFF",City:"Spokane/Felts",State:"WA",Latitude:47.6833,Longitude:-117.3166},KGEG:{StationId:"KGEG",City:"Spokane/Metro",State:"WA",Latitude:47.6166,Longitude:-117.5333},KSMP:{StationId:"KSMP",City:"Stampede Pass",State:"WA",Latitude:47.2833,Longitude:-121.3333},KTIW:{StationId:"KTIW",City:"Tacoma",State:"WA",Latitude:47.2666,Longitude:-122.5833},KTCM:{StationId:"KTCM",City:"Tacoma/Mc Chord",State:"WA",Latitude:47.1166,Longitude:-122.4666},KTOU:{StationId:"KTOU",City:"Tatoosh/Vor",State:"WA",Latitude:48.3,Longitude:-124.6333},KTDO:{StationId:"KTDO",City:"Toledo Winlock M",State:"WA",Latitude:46.4666,Longitude:-122.7833},KVUO:{StationId:"KVUO",City:"Vancouver",State:"WA",Latitude:45.6166,Longitude:-122.65},KALW:{StationId:"KALW",City:"Walla Walla",State:"WA",Latitude:46.1,Longitude:-118.2833},KEAT:{StationId:"KEAT",City:"Wenatchee",State:"WA",Latitude:47.4,Longitude:-120.2},KNUW:{StationId:"KNUW",City:"Whidbey Is. Nas",State:"WA",Latitude:48.35,Longitude:-122.65},KYKM:{StationId:"KYKM",City:"Yakima",State:"WA",Latitude:46.5666,Longitude:-120.5333},K75S:{StationId:"K75S",City:"Burlington/Mt V",State:"WA",Latitude:48.4666,Longitude:-122.4166},K63S:{StationId:"K63S",City:"Colville",State:"WA",Latitude:48.5333,Longitude:-117.8666},K07S:{StationId:"K07S",City:"Deer Park",State:"WA",Latitude:47.9666,Longitude:-117.4333},K76S:{StationId:"K76S",City:"Oak Harbor Airpa",State:"WA",Latitude:48.25,Longitude:-122.6666},KNOW:{StationId:"KNOW",City:"Port Angeles Cg",State:"WA",Latitude:48.1333,Longitude:-123.4166},K60S:{StationId:"K60S",City:"Pearson/Vancouvr",State:"WA",Latitude:45.6166,Longitude:-122.65},K1YT:{StationId:"K1YT",City:"Yagabond Aaf",State:"WA",Latitude:46.6666,Longitude:-120.45},KAIG:{StationId:"KAIG",City:"Antigo/Langlade",State:"WI",Latitude:45.15,Longitude:-89.1166},KATW:{StationId:"KATW",City:"Appleton/Outagam",State:"WI",Latitude:44.2666,Longitude:-88.5166},KGRB:{StationId:"KGRB",City:"Ashwaubenon",State:"WI",Latitude:44.4833,Longitude:-88.1333},KASX:{StationId:"KASX",City:"Ashland",State:"WI",Latitude:46.55,Longitude:-90.9166},KBCK:{StationId:"KBCK",City:"Black River Fall",State:"WI",Latitude:44.25,Longitude:-90.85},KOVS:{StationId:"KOVS",City:"Boscobel",State:"WI",Latitude:43.15,Longitude:-90.6833},KBUU:{StationId:"KBUU",City:"Burlington",State:"WI",Latitude:42.6833,Longitude:-88.3},KY23:{StationId:"KY23",City:"Chetek",State:"WI",Latitude:45.3,Longitude:-91.6333},KCLI:{StationId:"KCLI",City:"Clintonville",State:"WI",Latitude:44.6166,Longitude:-88.7333},KUBE:{StationId:"KUBE",City:"Cumberland",State:"WI",Latitude:45.5,Longitude:-91.9833},KDLL:{StationId:"KDLL",City:"Dells/Baraboo",State:"WI",Latitude:43.5166,Longitude:-89.7666},KEGV:{StationId:"KEGV",City:"Eagle River",State:"WI",Latitude:45.9333,Longitude:-89.2666},KEAU:{StationId:"KEAU",City:"Eau Claire",State:"WI",Latitude:44.8666,Longitude:-91.4666},KFLD:{StationId:"KFLD",City:"Fond Du Lac",State:"WI",Latitude:43.7666,Longitude:-88.4833},KHYR:{StationId:"KHYR",City:"Hayward",State:"WI",Latitude:46.0166,Longitude:-91.45},KJVL:{StationId:"KJVL",City:"Janesville/Rock",State:"WI",Latitude:42.6166,Longitude:-89.05},KUNU:{StationId:"KUNU",City:"Juneau",State:"WI",Latitude:43.4166,Longitude:-88.7},KENW:{StationId:"KENW",City:"Kenosha",State:"WI",Latitude:42.6,Longitude:-87.9333},KLSE:{StationId:"KLSE",City:"La Crosse",State:"WI",Latitude:43.8833,Longitude:-91.25},KARX:{StationId:"KARX",City:"La Crosse/88D",State:"WI",Latitude:43.8166,Longitude:-91.1833},KRCX:{StationId:"KRCX",City:"Ladysmith/Rusk",State:"WI",Latitude:45.5,Longitude:-91},KLNL:{StationId:"KLNL",City:"Land O Lakes",State:"WI",Latitude:46.15,Longitude:-89.2166},KLNR:{StationId:"KLNR",City:"Lone Rock",State:"WI",Latitude:43.2166,Longitude:-90.1833},KMSN:{StationId:"KMSN",City:"Madison",State:"WI",Latitude:43.1333,Longitude:-89.35},KMTW:{StationId:"KMTW",City:"Manitowac Muni",State:"WI",Latitude:44.1166,Longitude:-87.6666},KD25:{StationId:"KD25",City:"Manitowish Water",State:"WI",Latitude:46.1166,Longitude:-89.8833},KMFI:{StationId:"KMFI",City:"Marshfield",State:"WI",Latitude:44.6333,Longitude:-90.1833},KMDZ:{StationId:"KMDZ",City:"Medford",State:"WI",Latitude:45.1,Longitude:-90.3},KLUM:{StationId:"KLUM",City:"Menomonie Muni",State:"WI",Latitude:44.9,Longitude:-91.8666},KRRL:{StationId:"KRRL",City:"Merrill",State:"WI",Latitude:45.2,Longitude:-89.7166},KC29:{StationId:"KC29",City:"Middleton",State:"WI",Latitude:43.1166,Longitude:-89.5333},KMKE:{StationId:"KMKE",City:"Milwaukee",State:"WI",Latitude:42.95,Longitude:-87.9},KMKX:{StationId:"KMKX",City:"Milwaukee/Dousmn",State:"WI",Latitude:42.9666,Longitude:-88.55},KMWC:{StationId:"KMWC",City:"Milwaukee/Lawren",State:"WI",Latitude:43.1166,Longitude:-88.0333},KBAE:{StationId:"KBAE",City:"Milwaukee Vor",State:"WI",Latitude:43.1166,Longitude:-88.2833},KMRJ:{StationId:"KMRJ",City:"Mineral Point",State:"WI",Latitude:42.8833,Longitude:-90.2333},KARV:{StationId:"KARV",City:"Minocqua/Woodruf",State:"WI",Latitude:45.9166,Longitude:-89.7166},KEFT:{StationId:"KEFT",City:"Monroe",State:"WI",Latitude:42.6166,Longitude:-89.6},KCWA:{StationId:"KCWA",City:"Mosinee/Central",State:"WI",Latitude:44.7833,Longitude:-89.6666},KRNH:{StationId:"KRNH",City:"New Richmond Mun",State:"WI",Latitude:45.15,Longitude:-92.5333},KOCQ:{StationId:"KOCQ",City:"Oconto",State:"WI",Latitude:44.8666,Longitude:-87.9166},KOEO:{StationId:"KOEO",City:"Osceola",State:"WI",Latitude:45.3166,Longitude:-92.7},KOSH:{StationId:"KOSH",City:"Oshkosh",State:"WI",Latitude:43.9666,Longitude:-88.55},KPBH:{StationId:"KPBH",City:"Phillips/Price",State:"WI",Latitude:45.7,Longitude:-90.4},KPVB:{StationId:"KPVB",City:"Platteville",State:"WI",Latitude:42.6833,Longitude:-90.4333},KPDC:{StationId:"KPDC",City:"Prairie Du Chien",State:"WI",Latitude:43.0166,Longitude:-91.1166},KRAC:{StationId:"KRAC",City:"Racine",State:"WI",Latitude:42.7666,Longitude:-87.8166},KC35:{StationId:"KC35",City:"Reedsburg",State:"WI",Latitude:43.5333,Longitude:-89.9833},KRHI:{StationId:"KRHI",City:"Rhinelander",State:"WI",Latitude:45.6333,Longitude:-89.4833},KRPD:{StationId:"KRPD",City:"Rice Lake",State:"WI",Latitude:45.4166,Longitude:-91.7666},KEZS:{StationId:"KEZS",City:"Shawano Muni",State:"WI",Latitude:44.7833,Longitude:-88.5666},KSBM:{StationId:"KSBM",City:"Sheboygan",State:"WI",Latitude:43.7833,Longitude:-87.85},KRZN:{StationId:"KRZN",City:"Siren",State:"WI",Latitude:45.8166,Longitude:-92.3666},KCMY:{StationId:"KCMY",City:"Sparta/Mccoy Aaf",State:"WI",Latitude:43.9666,Longitude:-90.7333},KSTE:{StationId:"KSTE",City:"Stevens Point",State:"WI",Latitude:44.55,Longitude:-89.5333},KSUE:{StationId:"KSUE",City:"Sturgeon Bay",State:"WI",Latitude:44.85,Longitude:-87.4166},KSUW:{StationId:"KSUW",City:"Superior",State:"WI",Latitude:46.6833,Longitude:-92.1},KTKV:{StationId:"KTKV",City:"Tomahawk Regnl",State:"WI",Latitude:45.4666,Longitude:-89.8166},KY51:{StationId:"KY51",City:"Viroqua Muni",State:"WI",Latitude:43.5833,Longitude:-90.9},KVOK:{StationId:"KVOK",City:"Volk/Camp Dougla",State:"WI",Latitude:43.9166,Longitude:-90.2666},KRYV:{StationId:"KRYV",City:"Watertown",State:"WI",Latitude:43.1666,Longitude:-88.7166},KUES:{StationId:"KUES",City:"Waukesha Cnty",State:"WI",Latitude:43.05,Longitude:-88.25},KPCZ:{StationId:"KPCZ",City:"Waupaca",State:"WI",Latitude:44.3333,Longitude:-89.0166},KAUW:{StationId:"KAUW",City:"Wausau",State:"WI",Latitude:44.9333,Longitude:-89.6166},KY50:{StationId:"KY50",City:"Wautoma",State:"WI",Latitude:44.0333,Longitude:-89.3},KETB:{StationId:"KETB",City:"West Bend",State:"WI",Latitude:43.4166,Longitude:-88.1333},KISW:{StationId:"KISW",City:"Wisconsin Rapids",State:"WI",Latitude:44.3666,Longitude:-89.8333},KC85:{StationId:"KC85",City:"Baraboo",State:"WI",Latitude:43.5333,Longitude:-89.7666},KC52:{StationId:"KC52",City:"Burlington",State:"WI",Latitude:42.6833,Longitude:-88.3},KW11:{StationId:"KW11",City:"Menomonie Muni",State:"WI",Latitude:44.9,Longitude:-91.8666},KEEW:{StationId:"KEEW",City:"Neenah",State:"WI",Latitude:44.2166,Longitude:-88.55},KPKF:{StationId:"KPKF",City:"Park Falls",State:"WI",Latitude:45.9333,Longitude:-90.45},KRIE:{StationId:"KRIE",City:"Rice Lake",State:"WI",Latitude:45.4833,Longitude:-91.7166},K3WO:{StationId:"K3WO",City:"Shawano Muni",State:"WI",Latitude:44.7833,Longitude:-88.5666},KT08:{StationId:"KT08",City:"Tomahawk Regnl",State:"WI",Latitude:45.4666,Longitude:-89.8},KBKW:{StationId:"KBKW",City:"Beckley",State:"WV",Latitude:37.8,Longitude:-81.1166},KBLF:{StationId:"KBLF",City:"Bluefield",State:"WV",Latitude:37.3,Longitude:-81.2},KW22:{StationId:"KW22",City:"Buckhannon",State:"WV",Latitude:39,Longitude:-80.2666},KCRW:{StationId:"KCRW",City:"Charleston",State:"WV",Latitude:38.3833,Longitude:-81.5833},KCKB:{StationId:"KCKB",City:"Clarksburg",State:"WV",Latitude:39.3,Longitude:-80.2166},KEKN:{StationId:"KEKN",City:"Elkins",State:"WV",Latitude:38.8833,Longitude:-79.85},KHNN:{StationId:"KHNN",City:"Henderson",State:"WV",Latitude:38.75,Longitude:-82.0166},KHTS:{StationId:"KHTS",City:"Huntington",State:"WV",Latitude:38.3666,Longitude:-82.55},KLWB:{StationId:"KLWB",City:"Lewisburg/Greenb",State:"WV",Latitude:37.8666,Longitude:-80.4},KMRB:{StationId:"KMRB",City:"Martinsburg",State:"WV",Latitude:39.4,Longitude:-77.9833},KMGW:{StationId:"KMGW",City:"Morgantown",State:"WV",Latitude:39.65,Longitude:-79.9166},KPKB:{StationId:"KPKB",City:"Parkersburg",State:"WV",Latitude:39.35,Longitude:-81.4166},K3I2:{StationId:"K3I2",City:"Pt Pleasant",State:"WV",Latitude:38.9166,Longitude:-82.1},KW99:{StationId:"KW99",City:"Petersburg",State:"WV",Latitude:39,Longitude:-79.15},KI16:{StationId:"KI16",City:"Pineville",State:"WV",Latitude:37.6,Longitude:-81.5666},KRLX:{StationId:"KRLX",City:"Ruthdale/Charles",State:"WV",Latitude:38.3166,Longitude:-81.7166},K48I:{StationId:"K48I",City:"Sutton/Braxton",State:"WV",Latitude:38.6833,Longitude:-80.65},KHLG:{StationId:"KHLG",City:"Wheeling",State:"WV",Latitude:40.1666,Longitude:-80.65},KSSU:{StationId:"KSSU",City:"White Sulphur Sp",State:"WV",Latitude:37.7666,Longitude:-80.3166},KAFO:{StationId:"KAFO",City:"Afton",State:"WY",Latitude:42.7166,Longitude:-110.95},KBPI:{StationId:"KBPI",City:"Big Piney",State:"WY",Latitude:42.5833,Longitude:-110.1},KBOY:{StationId:"KBOY",City:"Boysen (Vor)",State:"WY",Latitude:43.4666,Longitude:-108.3},KTBX:{StationId:"KTBX",City:"Boysen/Thermopol",State:"WY",Latitude:43.4666,Longitude:-108.2333},KBYG:{StationId:"KBYG",City:"Buffalo",State:"WY",Latitude:44.3833,Longitude:-106.7166},KCPR:{StationId:"KCPR",City:"Casper",State:"WY",Latitude:42.9,Longitude:-106.4666},KDDY:{StationId:"KDDY",City:"Casper(Vor)",State:"WY",Latitude:43.0833,Longitude:-106.2833},KCYS:{StationId:"KCYS",City:"Cheyenne",State:"WY",Latitude:41.15,Longitude:-104.8},KFEW:{StationId:"KFEW",City:"Warren Air Base",State:"WY",Latitude:41.1333,Longitude:-104.8666},KCOD:{StationId:"KCOD",City:"Cody",State:"WY",Latitude:44.5166,Longitude:-109.0166},KCZI:{StationId:"KCZI",City:"Crazy Woman/Vor",State:"WY",Latitude:44,Longitude:-106.4333},KDWX:{StationId:"KDWX",City:"Dixon",State:"WY",Latitude:41.0333,Longitude:-107.5},KDGW:{StationId:"KDGW",City:"Douglas",State:"WY",Latitude:42.8,Longitude:-105.3833},KDUB:{StationId:"KDUB",City:"Dubois Muni",State:"WY",Latitude:43.55,Longitude:-109.5166},KEHY:{StationId:"KEHY",City:"Elk Mountain",State:"WY",Latitude:41.7333,Longitude:-106.4666},KEVW:{StationId:"KEVW",City:"Evanston",State:"WY",Latitude:41.2666,Longitude:-111.0333},KFBR:{StationId:"KFBR",City:"Fort Bridger",State:"WY",Latitude:41.4,Longitude:-110.35},KGCC:{StationId:"KGCC",City:"Gillette",State:"WY",Latitude:44.3333,Longitude:-105.55},KGEY:{StationId:"KGEY",City:"Greybull",State:"WY",Latitude:44.5166,Longitude:-108.0833},KW43:{StationId:"KW43",City:"Hulett Muni",State:"WY",Latitude:44.6666,Longitude:-104.5666},KJAC:{StationId:"KJAC",City:"Jackson",State:"WY",Latitude:43.6166,Longitude:-110.7333},KEMM:{StationId:"KEMM",City:"Kemmerer",State:"WY",Latitude:41.8166,Longitude:-110.55},KLND:{StationId:"KLND",City:"Lander",State:"WY",Latitude:42.8166,Longitude:-108.7333},KLAR:{StationId:"KLAR",City:"Laramie",State:"WY",Latitude:41.3166,Longitude:-105.6666},KAJL:{StationId:"KAJL",City:"Lava Mountain",State:"WY",Latitude:43.6666,Longitude:-110.0333},KECS:{StationId:"KECS",City:"Newcastle Mondel",State:"WY",Latitude:43.8833,Longitude:-104.3166},KPNA:{StationId:"KPNA",City:"Pinedale R Wenz",State:"WY",Latitude:42.8,Longitude:-109.8},K82V:{StationId:"K82V",City:"Pine Bluffs Muni",State:"WY",Latitude:41.15,Longitude:-104.1333},KRWL:{StationId:"KRWL",City:"Rawlins Municipa",State:"WY",Latitude:41.7833,Longitude:-107.2},KRIW:{StationId:"KRIW",City:"Riverton",State:"WY",Latitude:43.0666,Longitude:-108.4666},KRKS:{StationId:"KRKS",City:"Rock Springs",State:"WY",Latitude:41.6,Longitude:-109.0666},KOCS:{StationId:"KOCS",City:"Rock Spngs(Vor)",State:"WY",Latitude:41.5833,Longitude:-109.0166},KSAA:{StationId:"KSAA",City:"Saratoga",State:"WY",Latitude:41.45,Longitude:-106.8333},KSHR:{StationId:"KSHR",City:"Sheridan",State:"WY",Latitude:44.7666,Longitude:-106.9666},KFWZ:{StationId:"KFWZ",City:"South Pass",State:"WY",Latitude:42.5166,Longitude:-108.7833},KJPD:{StationId:"KJPD",City:"Ten Sleep",State:"WY",Latitude:44.15,Longitude:-107.1666},KTOR:{StationId:"KTOR",City:"Torrington",State:"WY",Latitude:42.0666,Longitude:-104.15},KWRL:{StationId:"KWRL",City:"Worland",State:"WY",Latitude:43.9666,Longitude:-107.95},KP60:{StationId:"KP60",City:"Yellowstone Lake",State:"WY",Latitude:44.55,Longitude:-110.4166},K4DG:{StationId:"K4DG",City:"Douglas",State:"WY",Latitude:42.75,Longitude:-105.3833},K81V:{StationId:"K81V",City:"Moorcroft",State:"WY",Latitude:44.2666,Longitude:-104.95},KBRX:{StationId:"KBRX",City:"Bordeaux",State:"WY",Latitude:41.95,Longitude:-104.95},KCTD:{StationId:"KCTD",City:"Continental Div",State:"WY",Latitude:41.7166,Longitude:-107.7833},KVDW:{StationId:"KVDW",City:"Vedauwoo",State:"WY",Latitude:41.15,Longitude:-105.4},KPUM:{StationId:"KPUM",City:"Pumpkin Vine",State:"WY",Latitude:41.05,Longitude:-105.4666},KARL:{StationId:"KARL",City:"Arlington",State:"WY",Latitude:41.6,Longitude:-106.2166},KBIT:{StationId:"KBIT",City:"Bittercreek",State:"WY",Latitude:41.65,Longitude:-108.5833},KCMS:{StationId:"KCMS",City:"Cemetery Separa",State:"WY",Latitude:41.5333,Longitude:-109.4666},KFIR:{StationId:"KFIR",City:"First Divide",State:"WY",Latitude:41.3,Longitude:-110.7666},KIDV:{StationId:"KIDV",City:"I-25 Divide",State:"WY",Latitude:43.9333,Longitude:-106.65},KTMH:{StationId:"KTMH",City:"20 Mile Hill",State:"WY",Latitude:43.1166,Longitude:-106.3333},KDHS:{StationId:"KDHS",City:"Dead Horse",State:"WY",Latitude:44.2166,Longitude:-106.1},KIKA:{StationId:"KIKA",City:"Inyan Kara",State:"WY",Latitude:44.3,Longitude:-104.6333},KBFU:{StationId:"KBFU",City:"Belle Fourche",State:"WY",Latitude:43.9333,Longitude:-105.45},KWTR:{StationId:"KWTR",City:"Whitaker",State:"WY",Latitude:41.4166,Longitude:-104.8666},KPAT:{StationId:"KPAT",City:"Pathfinder Hill",State:"WY",Latitude:42.5666,Longitude:-106.85},KBVR:{StationId:"KBVR",City:"Beaver Rim",State:"WY",Latitude:42.5833,Longitude:-108.2833},KSIB:{StationId:"KSIB",City:"Sibley Peak",State:"WY",Latitude:42.45,Longitude:-105.0333},KPIN:{StationId:"KPIN",City:"Piney Creek",State:"WY",Latitude:44.5666,Longitude:-106.8166},KHLD:{StationId:"KHLD",City:"Hiland",State:"WY",Latitude:43.1,Longitude:-107.3166},KDRC:{StationId:"KDRC",City:"Deer Creek",State:"WY",Latitude:42.8333,Longitude:-105.8666},KSKL:{StationId:"KSKL",City:"Skyline",State:"WY",Latitude:41.1166,Longitude:-106.5666},KRIM:{StationId:"KRIM",City:"Rim / Pinedale",State:"WY",Latitude:43.1,Longitude:-110.3166},KSGE:{StationId:"KSGE",City:"Sage / Junction",State:"WY",Latitude:41.7833,Longitude:-110.5},KGUN:{StationId:"KGUN",City:"Gunbarrel",State:"WY",Latitude:41.4333,Longitude:-104.35},KCHJ:{StationId:"KCHJ",City:"Chief Joseph",State:"WY",Latitude:44.75,Longitude:-109.3666},KSHC:{StationId:"KSHC",City:"Shute Creek",State:"WY",Latitude:41.9333,Longitude:-109.9666},KMMM:{StationId:"KMMM",City:"Mammoth/Yellowst",State:"WY",Latitude:44.9833,Longitude:-110.7},KTOW:{StationId:"KTOW",City:"Tower Falls",State:"WY",Latitude:44.9,Longitude:-110.3833},KMTR:{StationId:"KMTR",City:"Meeteetse Rim",State:"WY",Latitude:44.2666,Longitude:-108.8666},KWBC:{StationId:"KWBC",City:"Nws Hdqtrs",State:"DC",Latitude:38.85,Longitude:-76.9333},KDCA:{StationId:"KDCA",City:"Washington/Natl",State:"DC",Latitude:38.85,Longitude:-77.0333},KZDC:{StationId:"KZDC",City:"Washington/Artcc",State:"DC",Latitude:39.1,Longitude:-77.55},CXAF:{StationId:"CXAF",City:"Abee Agdm",State:"AB",Latitude:54.2833,Longitude:-112.9666},CXAG:{StationId:"CXAG",City:"Andrew Agdm",State:"AB",Latitude:53.9166,Longitude:-112.2833},CXAJ:{StationId:"CXAJ",City:"Atmore Agdm",State:"AB",Latitude:54.7666,Longitude:-112.8166},CWZG:{StationId:"CWZG",City:"Banff (Mars)",State:"AB",Latitude:51.2,Longitude:-115.5333},CXBW:{StationId:"CXBW",City:"Barnwell Agdm",State:"AB",Latitude:49.8,Longitude:-112.3},CWBM:{StationId:"CWBM",City:"Beaverlodge",State:"AB",Latitude:55.2,Longitude:-119.4},CXBA:{StationId:"CXBA",City:"Bodo Agdm",State:"AB",Latitude:52.1166,Longitude:-110.1},CWXL:{StationId:"CWXL",City:"Bow Island",State:"AB",Latitude:49.7333,Longitude:-111.45},CWXA:{StationId:"CWXA",City:"Bow Valley",State:"AB",Latitude:51.0666,Longitude:-115.0666},CXBR:{StationId:"CXBR",City:"Brocket Agdm",State:"AB",Latitude:49.6166,Longitude:-113.8166},CWBO:{StationId:"CWBO",City:"Brooks (Autob)",State:"AB",Latitude:50.5333,Longitude:-111.8333},CYYC:{StationId:"CYYC",City:"Calgary Intnl Ar",State:"AB",Latitude:51.1166,Longitude:-114.0166},CPCI:{StationId:"CPCI",City:"Calgary Intl",State:"AB",Latitude:51.1166,Longitude:-114.0166},CYBW:{StationId:"CYBW",City:"Calgary/Springba",State:"AB",Latitude:51.1,Longitude:-114.3666},CWFJ:{StationId:"CWFJ",City:"Cardston (Aut)",State:"AB",Latitude:49.2,Longitude:-113.2666},CXCP:{StationId:"CXCP",City:"Champion Agdm",State:"AB",Latitude:50.2833,Longitude:-113.35},CWDK:{StationId:"CWDK",City:"Claresholm (Auto",State:"AB",Latitude:50.0166,Longitude:-113.6166},CXCD:{StationId:"CXCD",City:"Cleardale Agdm",State:"AB",Latitude:56.3166,Longitude:-119.75},CYOD:{StationId:"CYOD",City:"Cold Lake (Can",State:"AB",Latitude:54.4,Longitude:-110.2833},CXCS:{StationId:"CXCS",City:"Consort Agdm",State:"AB",Latitude:51.9333,Longitude:-110.7166},CWCT:{StationId:"CWCT",City:"Coronation(Aut)",State:"AB",Latitude:52.0666,Longitude:-111.4666},CWRT:{StationId:"CWRT",City:"Crowsnest",State:"AB",Latitude:49.6166,Longitude:-114.4666},CXDP:{StationId:"CXDP",City:"Dapp Agdm",State:"AB",Latitude:54.3166,Longitude:-113.95},CXDB:{StationId:"CXDB",City:"Del Bonita Agdm",State:"AB",Latitude:49.05,Longitude:-112.8166},CWDZ:{StationId:"CWDZ",City:"Drumheller East",State:"AB",Latitude:51.4166,Longitude:-112.6666},CYEG:{StationId:"CYEG",City:"Edmonton Intl Ar",State:"AB",Latitude:53.2833,Longitude:-113.5666},CXEG:{StationId:"CXEG",City:"Edmonton Intl Ar",State:"AB",Latitude:53.3,Longitude:-113.6},CXEC:{StationId:"CXEC",City:"Edmonton Muni",State:"AB",Latitude:53.5666,Longitude:-113.5166},CYXD:{StationId:"CYXD",City:"Edmonton Municip",State:"AB",Latitude:53.5666,Longitude:-113.5166},CYED:{StationId:"CYED",City:"Edmonton/Namao(M",State:"AB",Latitude:53.6666,Longitude:-113.4666},CWSE:{StationId:"CWSE",City:"Edmonton/Stony P",State:"AB",Latitude:53.5333,Longitude:-114.0833},CZED:{StationId:"CZED",City:"Edmonton/Stony P",State:"AB",Latitude:53.55,Longitude:-114.1},CXPS:{StationId:"CXPS",City:"Edmonton/Stony P",State:"AB",Latitude:53.55,Longitude:-114.1},CZVL:{StationId:"CZVL",City:"Edmonton/Villenu",State:"AB",Latitude:53.6666,Longitude:-113.85},CYET:{StationId:"CYET",City:"Edson Airport",State:"AB",Latitude:53.5666,Longitude:-116.4666},CZZJ:{StationId:"CZZJ",City:"Edson",State:"AB",Latitude:53.5833,Longitude:-116.4666},CWGY:{StationId:"CWGY",City:"Esther 1",State:"AB",Latitude:51.6666,Longitude:-110.2},CXFR:{StationId:"CXFR",City:"Fairview Agdm",State:"AB",Latitude:56.0833,Longitude:-118.4333},CXFM:{StationId:"CXFM",City:"Foremost Agdm",State:"AB",Latitude:49.4833,Longitude:-111.4833},CYPY:{StationId:"CYPY",City:"Fort Chipewyan A",State:"AB",Latitude:58.7666,Longitude:-111.1166},CYMM:{StationId:"CYMM",City:"Fort Mcmurray Ar",State:"AB",Latitude:56.65,Longitude:-111.2166},CXMM:{StationId:"CXMM",City:"Fort Mcmurray Ar",State:"AB",Latitude:56.65,Longitude:-111.2166},CXFV:{StationId:"CXFV",City:"Fort Vermillion",State:"AB",Latitude:58.3833,Longitude:-116.0333},CYQU:{StationId:"CYQU",City:"Grande Praire Ar",State:"AB",Latitude:55.1833,Longitude:-118.8833},CYOJ:{StationId:"CYOJ",City:"High Level Airpo",State:"AB",Latitude:58.6166,Longitude:-117.1666},CXHP:{StationId:"CXHP",City:"High Prairie Agd",State:"AB",Latitude:55.4,Longitude:-116.4833},CWHA:{StationId:"CWHA",City:"Highvale",State:"AB",Latitude:53.45,Longitude:-114.4666},CXHD:{StationId:"CXHD",City:"Holden Agdm",State:"AB",Latitude:53.1833,Longitude:-112.25},CXHR:{StationId:"CXHR",City:"Hussar Agdm",State:"AB",Latitude:51.1833,Longitude:-112.5},CWJW:{StationId:"CWJW",City:"Jasper Warden (A",State:"AB",Latitude:52.9333,Longitude:-118.0333},CXKM:{StationId:"CXKM",City:"Killam Agdm",State:"AB",Latitude:52.8166,Longitude:-111.85},CWLB:{StationId:"CWLB",City:"Lac La Biche (Ma",State:"AB",Latitude:54.7666,Longitude:-112.0166},CYQL:{StationId:"CYQL",City:"Lethbridge Vor",State:"AB",Latitude:49.6333,Longitude:-112.8},CYLL:{StationId:"CYLL",City:"Lloydminster Arp",State:"AB",Latitude:53.3166,Longitude:-110.0666},CXMG:{StationId:"CXMG",City:"Manning Agdm",State:"AB",Latitude:56.9666,Longitude:-117.45},CXMN:{StationId:"CXMN",City:"Masinasin Agdm",State:"AB",Latitude:49.1166,Longitude:-111.65},CYXH:{StationId:"CYXH",City:"Medicine Hat",State:"AB",Latitude:50.0166,Longitude:-110.7166},CXMH:{StationId:"CXMH",City:"Medicine Hat",State:"AB",Latitude:50.0333,Longitude:-110.7166},CWRY:{StationId:"CWRY",City:"Milk River",State:"AB",Latitude:49.1166,Longitude:-112.0333},CXMO:{StationId:"CXMO",City:"Morrin Agdm",State:"AB",Latitude:51.6666,Longitude:-112.6833},CZMU:{StationId:"CZMU",City:"Mundare Agdm",State:"AB",Latitude:53.5666,Longitude:-112.3},CXND:{StationId:"CXND",City:"Nordegg Cs",State:"AB",Latitude:52.4666,Longitude:-116.0833},CXOL:{StationId:"CXOL",City:"Olds Agdm",State:"AB",Latitude:51.7666,Longitude:-114.0833},CZOL:{StationId:"CZOL",City:"Oliver Agdm",State:"AB",Latitude:53.65,Longitude:-113.35},CXOY:{StationId:"CXOY",City:"Oyen Agdm",State:"AB",Latitude:51.3833,Longitude:-110.35},CWOE:{StationId:"CWOE",City:"Onefour (Autob)",State:"AB",Latitude:49.1166,Longitude:-110.4666},CYPE:{StationId:"CYPE",City:"Peace River Airp",State:"AB",Latitude:56.2166,Longitude:-117.45},CXPA:{StationId:"CXPA",City:"Peoria Agdm",State:"AB",Latitude:55.6166,Longitude:-118.3},CZPC:{StationId:"CZPC",City:"Pincher Creek(M",State:"AB",Latitude:49.5166,Longitude:-114},CXPL:{StationId:"CXPL",City:"Pollockville Agd",State:"AB",Latitude:51.1333,Longitude:-111.7},CXPV:{StationId:"CXPV",City:"Prairie River",State:"AB",Latitude:58.45,Longitude:-111.6666},CZPS:{StationId:"CZPS",City:"Prentiss",State:"AB",Latitude:52.4333,Longitude:-113.6},CWIQ:{StationId:"CWIQ",City:"Primrose Lake",State:"AB",Latitude:54.75,Longitude:-110.0333},CWOU:{StationId:"CWOU",City:"Primrose Lake 2",State:"AB",Latitude:54.7666,Longitude:-110.0666},CYQF:{StationId:"CYQF",City:"Red Deer Airport",State:"AB",Latitude:52.1666,Longitude:-113.9},CXRL:{StationId:"CXRL",City:"Rich Lake Agdm",State:"AB",Latitude:54.5,Longitude:-111.7},CWRM:{StationId:"CWRM",City:"Rocky House (Mar",State:"AB",Latitude:52.4166,Longitude:-114.9166},CXSC:{StationId:"CXSC",City:"Schuler Agdm",State:"AB",Latitude:50.3,Longitude:-110.0833},CXBU:{StationId:"CXBU",City:"Schuler Radar",State:"AB",Latitude:50.4833,Longitude:-110.2},CYZH:{StationId:"CYZH",City:"Slave Lake Airpo",State:"AB",Latitude:55.2833,Longitude:-114.7666},CXSL:{StationId:"CXSL",City:"Smoky Lake Agdm",State:"AB",Latitude:54.2833,Longitude:-112.5},CXSR:{StationId:"CXSR",City:"Spirit River",State:"AB",Latitude:55.7,Longitude:-119.2333},CXAK:{StationId:"CXAK",City:"Stettler Agdm",State:"AB",Latitude:52.35,Longitude:-112.6},CXSP:{StationId:"CXSP",City:"St Paul Agdm",State:"AB",Latitude:54.0166,Longitude:-111.2666},CYSD:{StationId:"CYSD",City:"Suffield Airport",State:"AB",Latitude:50.2666,Longitude:-111.1666},CWAV:{StationId:"CWAV",City:"Sundre",State:"AB",Latitude:51.7666,Longitude:-114.6666},CWHI:{StationId:"CWHI",City:"Three Hills",State:"AB",Latitude:51.7,Longitude:-113.2166},CWQA:{StationId:"CWQA",City:"Turtle Mtn Cs",State:"AB",Latitude:49.5833,Longitude:-114.4166},CXTH:{StationId:"CXTH",City:"Two Hills Agdm",State:"AB",Latitude:53.6333,Longitude:-111.6833},CXVW:{StationId:"CXVW",City:"Valleyview Agdm",State:"AB",Latitude:55.1,Longitude:-117.2},CWVI:{StationId:"CWVI",City:"Vegreville (Auto",State:"AB",Latitude:53.5166,Longitude:-112.1},CXVM:{StationId:"CXVM",City:"Vermilion Agdm",State:"AB",Latitude:53.35,Longitude:-110.8833},CPVI:{StationId:"CPVI",City:"Vilna Ag",State:"AB",Latitude:54.1333,Longitude:-111.9166},CWGM:{StationId:"CWGM",City:"Waterton Park Ga",State:"AB",Latitude:49.1333,Longitude:-113.7833},CYZU:{StationId:"CYZU",City:"Whitecourt Airpo",State:"AB",Latitude:54.15,Longitude:-115.7833},CXZU:{StationId:"CXZU",City:"Whitecourt Airpo",State:"AB",Latitude:54.15,Longitude:-115.7833},CXWM:{StationId:"CXWM",City:"Wrenthan Agdm",State:"AB",Latitude:49.5,Longitude:-112.1166},CWYL:{StationId:"CWYL",City:"Yoho Park (Autob",State:"AB",Latitude:51.45,Longitude:-116.3166},CPBT:{StationId:"CPBT",City:"Blood Tribe Agdm",State:"AB",Latitude:49.5666,Longitude:-113.05},CPEH:{StationId:"CPEH",City:"Enchant Agdm",State:"AB",Latitude:50.1833,Longitude:-112.4333},CPFI:{StationId:"CPFI",City:"Fincastle Agdm",State:"AB",Latitude:49.8,Longitude:-112.0333},CPIR:{StationId:"CPIR",City:"Iron Springs",State:"AB",Latitude:49.9,Longitude:-112.7333},CPQL:{StationId:"CPQL",City:"Lethbridge Demo",State:"AB",Latitude:49.6833,Longitude:-112.75},CPRO:{StationId:"CPRO",City:"Rosemary Agdm",State:"AB",Latitude:50.8333,Longitude:-112.05},CPRY:{StationId:"CPRY",City:"Raymond Agdm",State:"AB",Latitude:49.4833,Longitude:-112.6833},CPST:{StationId:"CPST",City:"Strathmore Agdm",State:"AB",Latitude:51.0333,Longitude:-113.2833},CPSV:{StationId:"CPSV",City:"Seven Persons",State:"AB",Latitude:49.9166,Longitude:-110.9166},CPXL:{StationId:"CPXL",City:"Bow Island Agdm",State:"AB",Latitude:49.8666,Longitude:-111.3833},CYXX:{StationId:"CYXX",City:"Abbotsford Airpo",State:"BC",Latitude:49.0333,Longitude:-122.3833},CWCZ:{StationId:"CWCZ",City:"Addenbroke Isl (",State:"BC",Latitude:51.6,Longitude:-127.8666},CWZA:{StationId:"CWZA",City:"Agassiz (Auto)",State:"BC",Latitude:49.25,Longitude:-121.7666},CWAN:{StationId:"CWAN",City:"Amphitrite Point",State:"BC",Latitude:48.9166,Longitude:-125.5333},CVAS:{StationId:"CVAS",City:"Ashcroft",State:"BC",Latitude:50.7166,Longitude:-121.2833},CWGB:{StationId:"CWGB",City:"Ballenas Il Auto",State:"BC",Latitude:49.35,Longitude:-124.1666},CYBD:{StationId:"CYBD",City:"Bella Coola Arpt",State:"BC",Latitude:52.3666,Longitude:-126.5666},CBBC:{StationId:"CBBC",City:"Bella Bella",State:"BC",Latitude:52.1833,Longitude:-128.15},CWBG:{StationId:"CWBG",City:"Big Creek(Auto)",State:"BC",Latitude:51.25,Longitude:-123.0666},CYIN:{StationId:"CYIN",City:"Bleibler Ranch",State:"BC",Latitude:51.2666,Longitude:-121.6833},CYCP:{StationId:"CYCP",City:"Blue River (Man)",State:"BC",Latitude:52.1333,Longitude:-119.2833},CWSV:{StationId:"CWSV",City:"Blue River (Mars",State:"BC",Latitude:52.1,Longitude:-119.2833},CWZM:{StationId:"CWZM",City:"Boat Bluff (Lgt",State:"BC",Latitude:52.65,Longitude:-128.5166},CWWL:{StationId:"CWWL",City:"Bonilla Isl (Map",State:"BC",Latitude:53.5,Longitude:-130.6333},CWVB:{StationId:"CWVB",City:"Bonilla Island (",State:"BC",Latitude:53.5,Longitude:-130.6333},CWPZ:{StationId:"CWPZ",City:"Burns Lake",State:"BC",Latitude:54.3833,Longitude:-125.9666},CYBL:{StationId:"CYBL",City:"Campbell River A",State:"BC",Latitude:49.95,Longitude:-125.2666},CWAD:{StationId:"CWAD",City:"Cape Mudge (Lgt",State:"BC",Latitude:50,Longitude:-125.2},CWES:{StationId:"CWES",City:"Cape Scott (Lgt",State:"BC",Latitude:50.7666,Longitude:-128.4166},CWZV:{StationId:"CWZV",City:"Cape St James",State:"BC",Latitude:51.9333,Longitude:-131.0166},CYCG:{StationId:"CYCG",City:"Castlegar Airpor",State:"BC",Latitude:49.2833,Longitude:-117.6166},CWME:{StationId:"CWME",City:"Cathedral Pt(Map",State:"BC",Latitude:52.1833,Longitude:-127.4666},CWFM:{StationId:"CWFM",City:"Chatham Point (L",State:"BC",Latitude:50.3333,Longitude:-125.45},CYCQ:{StationId:"CYCQ",City:"Chetwynd Airport",State:"BC",Latitude:55.7,Longitude:-121.6166},CWCL:{StationId:"CWCL",City:"Clinton (Mars)",State:"BC",Latitude:51.1333,Longitude:-121.5},CYQQ:{StationId:"CYQQ",City:"Comox (Can Mil)",State:"BC",Latitude:49.7166,Longitude:-124.9},CYXC:{StationId:"CYXC",City:"Cranbrook",State:"BC",Latitude:49.6,Longitude:-115.7666},CWJR:{StationId:"CWJR",City:"Creston (Autob)",State:"BC",Latitude:49.0666,Longitude:-116.5},CWZL:{StationId:"CWZL",City:"Cumshewa Isl (Ma",State:"BC",Latitude:53.0333,Longitude:-131.6},CYDQ:{StationId:"CYDQ",City:"Dawson Creek Arp",State:"BC",Latitude:55.75,Longitude:-120.1666},CWDL:{StationId:"CWDL",City:"Dease Lake",State:"BC",Latitude:58.4333,Longitude:-130.0166},CYDL:{StationId:"CYDL",City:"Dease Lake",State:"BC",Latitude:58.4166,Longitude:-130.0166},CWKX:{StationId:"CWKX",City:"Dease Lake Cs",State:"BC",Latitude:58.4333,Longitude:-130.0166},CWDR:{StationId:"CWDR",City:"Discovery Island",State:"BC",Latitude:48.4166,Longitude:-123.2333},CWAU:{StationId:"CWAU",City:"Dryad Point (Lgt",State:"BC",Latitude:52.1833,Longitude:-128.1166},CWEM:{StationId:"CWEM",City:"Egg Island",State:"BC",Latitude:51.25,Longitude:-127.8333},CWEL:{StationId:"CWEL",City:"Entrance Il Auto",State:"BC",Latitude:49.2166,Longitude:-123.7833},CWPF:{StationId:"CWPF",City:"Esquimalt Metoc",State:"BC",Latitude:48.4333,Longitude:-123.4333},CWEB:{StationId:"CWEB",City:"Estevan Pt. (Mar",State:"BC",Latitude:49.3833,Longitude:-126.55},CXFA:{StationId:"CXFA",City:"Fanny Island",State:"BC",Latitude:50.45,Longitude:-126},CYYE:{StationId:"CYYE",City:"Fort Nelson Airp",State:"BC",Latitude:58.8166,Longitude:-122.5666},CYXJ:{StationId:"CYXJ",City:"Fort St. John Ar",State:"BC",Latitude:56.25,Longitude:-120.7333},CYGE:{StationId:"CYGE",City:"Golden Arpt",State:"BC",Latitude:51.3,Longitude:-116.9833},CWNJ:{StationId:"CWNJ",City:"Green Island (Mt",State:"BC",Latitude:54.5666,Longitude:-130.7},CWEK:{StationId:"CWEK",City:"Grey Islet (Maps",State:"BC",Latitude:54.5833,Longitude:-130.7},CWXM:{StationId:"CWXM",City:"Helmcken Isl(Map",State:"BC",Latitude:50.3833,Longitude:-125.8666},CWLP:{StationId:"CWLP",City:"Herbert Isl (Map",State:"BC",Latitude:50.9333,Longitude:-127.6333},CWXH:{StationId:"CWXH",City:"Holberg Ccr",State:"BC",Latitude:50.6333,Longitude:-128.1333},CWHL:{StationId:"CWHL",City:"Holland Rock(Aut",State:"BC",Latitude:54.1666,Longitude:-130.35},CYHE:{StationId:"CYHE",City:"Hope Airport (Ma",State:"BC",Latitude:49.3666,Longitude:-121.5},CWKV:{StationId:"CWKV",City:"Hope Slide",State:"BC",Latitude:49.2666,Longitude:-121.2166},CWFR:{StationId:"CWFR",City:"Horsefly R.7176",State:"BC",Latitude:52.2666,Longitude:-121.0333},CWZK:{StationId:"CWZK",City:"Hoskins Islet",State:"BC",Latitude:52.5333,Longitude:-131.55},CWIO:{StationId:"CWIO",City:"Iskut River(Auto",State:"BC",Latitude:56.7166,Longitude:-131.6666},CWJG:{StationId:"CWJG",City:"Ivory Island",State:"BC",Latitude:52.2666,Longitude:-128.4166},CYKA:{StationId:"CYKA",City:"Kamloops Airport",State:"BC",Latitude:50.7,Longitude:-120.45},CZKA:{StationId:"CZKA",City:"Kamloops",State:"BC",Latitude:50.7,Longitude:-120.4333},CYLW:{StationId:"CYLW",City:"Kelowna Apt",State:"BC",Latitude:49.95,Longitude:-119.3666},CWZO:{StationId:"CWZO",City:"Kelp Reefs 71036",State:"BC",Latitude:48.55,Longitude:-123.2333},CWQS:{StationId:"CWQS",City:"Kindakun Rocks(A",State:"BC",Latitude:53.3166,Longitude:-132.7666},CWJU:{StationId:"CWJU",City:"Langara",State:"BC",Latitude:54.25,Longitude:-133.0666},CWLA:{StationId:"CWLA",City:"Langara",State:"BC",Latitude:54.25,Longitude:-133.0666},CWLC:{StationId:"CWLC",City:"Lucy Isl (Lgt H)",State:"BC",Latitude:54.3,Longitude:-130.6166},CWLY:{StationId:"CWLY",City:"Lytton (Readac)",State:"BC",Latitude:50.2166,Longitude:-121.5833},CYZY:{StationId:"CYZY",City:"Mackenzie Airpor",State:"BC",Latitude:55.2833,Longitude:-123.1166},CWKH:{StationId:"CWKH",City:"Malahat (Autob)",State:"BC",Latitude:48.5666,Longitude:-123.55},CZMT:{StationId:"CZMT",City:"Masset",State:"BC",Latitude:54.0333,Longitude:-132.1333},CWMS:{StationId:"CWMS",City:"Mcinnes Island",State:"BC",Latitude:52.2666,Longitude:-128.7166},CWMR:{StationId:"CWMR",City:"Merry Island",State:"BC",Latitude:49.4666,Longitude:-123.9166},CXSI:{StationId:"CXSI",City:"Mt Sicker Radar",State:"BC",Latitude:48.8666,Longitude:-123.75},CWWQ:{StationId:"CWWQ",City:"Muncho Lake",State:"BC",Latitude:58.9333,Longitude:-125.7666},CWNP:{StationId:"CWNP",City:"Nakusp (Autob)",State:"BC",Latitude:50.2666,Longitude:-117.8166},CYCD:{StationId:"CYCD",City:"Nanaimo Airport",State:"BC",Latitude:49.05,Longitude:-123.8666},CWNX:{StationId:"CWNX",City:"Nechako River Au",State:"BC",Latitude:53.6666,Longitude:-124.8166},CWNM:{StationId:"CWNM",City:"Nelson (Autob)",State:"BC",Latitude:49.5,Longitude:-117.2833},CWAC:{StationId:"CWAC",City:"Nitinat Lake (Ma",State:"BC",Latitude:48.6666,Longitude:-124.8333},CWCV:{StationId:"CWCV",City:"Nootka Lightstat",State:"BC",Latitude:49.6,Longitude:-126.6166},CWYY:{StationId:"CWYY",City:"Osoyoos (Autob)",State:"BC",Latitude:49.0333,Longitude:-119.4333},CWMM:{StationId:"CWMM",City:"P. Meadows Cs Au",State:"BC",Latitude:49.2166,Longitude:-122.6833},CWGP:{StationId:"CWGP",City:"Pemberton (Autob",State:"BC",Latitude:50.3,Longitude:-122.7333},CYPS:{StationId:"CYPS",City:"Pemberton (Autob",State:"BC",Latitude:50.3,Longitude:-122.7333},CYYF:{StationId:"CYYF",City:"Penticton Airpor",State:"BC",Latitude:49.4666,Longitude:-119.5833},CWPI:{StationId:"CWPI",City:"Pine Island (Map",State:"BC",Latitude:50.9833,Longitude:-127.7333},CWQC:{StationId:"CWQC",City:"Port Alberni (Ma",State:"BC",Latitude:49.3166,Longitude:-124.9333},CYZT:{StationId:"CYZT",City:"Port Hardy Airpo",State:"BC",Latitude:50.6666,Longitude:-127.3666},CYPW:{StationId:"CYPW",City:"Powell River Arp",State:"BC",Latitude:49.8166,Longitude:-124.5},CYXS:{StationId:"CYXS",City:"Prince George",State:"BC",Latitude:53.9,Longitude:-122.6833},CXPG:{StationId:"CXPG",City:"Prince George",State:"BC",Latitude:53.6166,Longitude:-122.95},CYPR:{StationId:"CYPR",City:"Prince Rupert Ar",State:"BC",Latitude:54.2833,Longitude:-130.4166},CWPR:{StationId:"CWPR",City:"Princeton",State:"BC",Latitude:49.4666,Longitude:-120.5166},CYDC:{StationId:"CYDC",City:"Princeton",State:"BC",Latitude:49.4666,Longitude:-120.5166},CWPU:{StationId:"CWPU",City:"Puntzi Mtn (Mars",State:"BC",Latitude:52.1166,Longitude:-124.1166},CWIF:{StationId:"CWIF",City:"Quatsino (Lgt St",State:"BC",Latitude:50.4333,Longitude:-128.0333},CYQZ:{StationId:"CYQZ",City:"Quesnel Airport",State:"BC",Latitude:53.0166,Longitude:-122.5166},CWQK:{StationId:"CWQK",City:"Race Rocks Autob",State:"BC",Latitude:48.3,Longitude:-123.5333},CYRV:{StationId:"CYRV",City:"Revelstoke Airpo",State:"BC",Latitude:50.9666,Longitude:-118.1666},CWRO:{StationId:"CWRO",City:"Rose Spit (Maps)",State:"BC",Latitude:54.1666,Longitude:-131.6666},CWSL:{StationId:"CWSL",City:"Salmon Arm Autob",State:"BC",Latitude:50.7,Longitude:-119.2666},CWVF:{StationId:"CWVF",City:"Sand Heads (Ls)",State:"BC",Latitude:49.1,Longitude:-123.3},CYZP:{StationId:"CYZP",City:"Sandspit Airport",State:"BC",Latitude:53.25,Longitude:-131.8166},CWFG:{StationId:"CWFG",City:"Sartine Isl (Map",State:"BC",Latitude:50.8166,Longitude:-128.9},CWEZ:{StationId:"CWEZ",City:"Saturna Isl (Map",State:"BC",Latitude:48.7833,Longitude:-123.05},CWZD:{StationId:"CWZD",City:"Scudder Point",State:"BC",Latitude:52.45,Longitude:-131.2333},CWSP:{StationId:"CWSP",City:"Sheringham Autob",State:"BC",Latitude:48.3833,Longitude:-123.9166},CXSS:{StationId:"CXSS",City:"Silver Star Radr",State:"BC",Latitude:50.3666,Longitude:-119.0666},CWKS:{StationId:"CWKS",City:"Sikanni Chief Au",State:"BC",Latitude:57.25,Longitude:-122.7166},CWGT:{StationId:"CWGT",City:"Sisters Il Autob",State:"BC",Latitude:49.4833,Longitude:-124.4333},CYYD:{StationId:"CYYD",City:"Smithers Airport",State:"BC",Latitude:54.8166,Longitude:-127.1833},CWRU:{StationId:"CWRU",City:"Solander Isl (Ma",State:"BC",Latitude:50.1166,Longitude:-127.9333},CWGW:{StationId:"CWGW",City:"Sparwood (Autob)",State:"BC",Latitude:49.75,Longitude:-114.9},CWSW:{StationId:"CWSW",City:"Sparwood/Elk Val",State:"BC",Latitude:49.75,Longitude:-114.8666},CWSK:{StationId:"CWSK",City:"Squamish (Autob)",State:"BC",Latitude:49.7833,Longitude:-123.1666},CYSE:{StationId:"CYSE",City:"Squamish (Autob)",State:"BC",Latitude:49.7833,Longitude:-123.1666},CZST:{StationId:"CZST",City:"Stewart Airport",State:"BC",Latitude:55.9333,Longitude:-129.9833},CWUS:{StationId:"CWUS",City:"Summerland (Auto",State:"BC",Latitude:49.5666,Longitude:-119.65},CXTL:{StationId:"CXTL",City:"Tatlayoko Lake",State:"BC",Latitude:51.6666,Longitude:-124.4},CYXT:{StationId:"CYXT",City:"Terrace Airport",State:"BC",Latitude:54.4666,Longitude:-128.5666},CWTH:{StationId:"CWTH",City:"Tetsa River",State:"BC",Latitude:58.65,Longitude:-124.2333},CYAZ:{StationId:"CYAZ",City:"Tofino Airport",State:"BC",Latitude:49.0833,Longitude:-125.7666},CWTI:{StationId:"CWTI",City:"Triple Island (L",State:"BC",Latitude:54.3,Longitude:-130.8833},CWHC:{StationId:"CWHC",City:"Vancouver (Autob",State:"BC",Latitude:49.2833,Longitude:-123.1166},CYVR:{StationId:"CYVR",City:"Vancouver Intl A",State:"BC",Latitude:49.1666,Longitude:-123.1666},CWJV:{StationId:"CWJV",City:"Vernon (Autob)",State:"BC",Latitude:50.2166,Longitude:-119.1833},CWVK:{StationId:"CWVK",City:"Vernon Bridge",State:"BC",Latitude:50.2166,Longitude:-119.2666},CWVV:{StationId:"CWVV",City:"Vic. Hartland Au",State:"BC",Latitude:48.5166,Longitude:-123.4666},CWLM:{StationId:"CWLM",City:"Victoria (Autob)",State:"BC",Latitude:48.4166,Longitude:-123.3166},CYWH:{StationId:"CYWH",City:"Victoria Harbour",State:"BC",Latitude:48.4166,Longitude:-123.3833},CYYJ:{StationId:"CYYJ",City:"Victoria Intl Ar",State:"BC",Latitude:48.65,Longitude:-123.4333},CWYJ:{StationId:"CWYJ",City:"Victoria Univ",State:"BC",Latitude:48.45,Longitude:-123.3},CWWA:{StationId:"CWWA",City:"W Vancouver Auto",State:"BC",Latitude:49.35,Longitude:-123.1666},CWAE:{StationId:"CWAE",City:"Whistler",State:"BC",Latitude:50.1333,Longitude:-122.95},CWWK:{StationId:"CWWK",City:"White Rock Autob",State:"BC",Latitude:49.0166,Longitude:-122.7833},CYWL:{StationId:"CYWL",City:"Williams Lake Ar",State:"BC",Latitude:52.1833,Longitude:-122.0666},CWRE:{StationId:"CWRE",City:"Arnes",State:"MB",Latitude:50.8,Longitude:-96.95},CYBV:{StationId:"CYBV",City:"Berens River Apt",State:"MB",Latitude:52.35,Longitude:-97.0333},CWCF:{StationId:"CWCF",City:"Berens River Apt",State:"MB",Latitude:52.35,Longitude:-97.0333},CYBR:{StationId:"CYBR",City:"Brandon Airport",State:"MB",Latitude:49.9166,Longitude:-99.95},CWNK:{StationId:"CWNK",City:"Carman U Of M",State:"MB",Latitude:49.5,Longitude:-98.0333},CYYQ:{StationId:"CYYQ",City:"Churchill Airpor",State:"MB",Latitude:58.75,Longitude:-94.0666},CYDN:{StationId:"CYDN",City:"Dauphin",State:"MB",Latitude:51.1,Longitude:-100.05},CXDW:{StationId:"CXDW",City:"Deerwood Rcs",State:"MB",Latitude:49.4,Longitude:-98.3166},CZUG:{StationId:"CZUG",City:"Delta Marsh Cs",State:"MB",Latitude:50.1833,Longitude:-98.3833},CWEX:{StationId:"CWEX",City:"Emerson",State:"MB",Latitude:49,Longitude:-97.2333},CWSZ:{StationId:"CWSZ",City:"Fisher Branch(Ma",State:"MB",Latitude:51.0666,Longitude:-97.5333},CYFO:{StationId:"CYFO",City:"Flin Flon Airpor",State:"MB",Latitude:54.6666,Longitude:-101.6666},CXFW:{StationId:"CXFW",City:"Foxwarren Radar",State:"MB",Latitude:50.55,Longitude:-101.1},CWWS:{StationId:"CWWS",City:"George Isl (Maps",State:"MB",Latitude:52.8166,Longitude:-97.6166},CYGX:{StationId:"CYGX",City:"Gillam Airport",State:"MB",Latitude:56.35,Longitude:-94.7},CWGX:{StationId:"CWGX",City:"Gillam Airport",State:"MB",Latitude:56.35,Longitude:-94.7},CYGM:{StationId:"CYGM",City:"Gimli",State:"MB",Latitude:50.6166,Longitude:-97.0166},CXGH:{StationId:"CXGH",City:"Gimli Harbour",State:"MB",Latitude:50.6333,Longitude:-97},CWJD:{StationId:"CWJD",City:"Grand Rapids (Ma",State:"MB",Latitude:53.1666,Longitude:-99.2666},CWGN:{StationId:"CWGN",City:"Gretna (Mars)",State:"MB",Latitude:49.0166,Longitude:-97.5666},CWHH:{StationId:"CWHH",City:"Hunters Point Ma",State:"MB",Latitude:53.0333,Longitude:-100.9333},CYIV:{StationId:"CYIV",City:"Island Lake Airp",State:"MB",Latitude:53.85,Longitude:-94.65},CZKD:{StationId:"CZKD",City:"Kelsey Dam Cs",State:"MB",Latitude:56.0333,Longitude:-96.5166},CYYL:{StationId:"CYYL",City:"Lynn Lake Airpor",State:"MB",Latitude:56.8666,Longitude:-101.0666},CWEI:{StationId:"CWEI",City:"Melita",State:"MB",Latitude:49.2833,Longitude:-100.9833},CXMD:{StationId:"CXMD",City:"Morden",State:"MB",Latitude:49.2166,Longitude:-98.0833},CWPO:{StationId:"CWPO",City:"Pilot Mound (Mar",State:"MB",Latitude:49.2,Longitude:-98.9},CYPG:{StationId:"CYPG",City:"Portage Southpor",State:"MB",Latitude:49.8833,Longitude:-98.2666},CWLO:{StationId:"CWLO",City:"Shilo",State:"MB",Latitude:49.7666,Longitude:-99.6166},CWEQ:{StationId:"CWEQ",City:"Swan River (Mars",State:"MB",Latitude:52.1166,Longitude:-101.2166},CXBQ:{StationId:"CXBQ",City:"Tadoule Lake Cs",State:"MB",Latitude:58.7,Longitude:-98.5},CYBQ:{StationId:"CYBQ",City:"Tadoule Lake",State:"MB",Latitude:58.7,Longitude:-98.5},CYQD:{StationId:"CYQD",City:"The Pas Airport",State:"MB",Latitude:53.9666,Longitude:-101.0833},CYTH:{StationId:"CYTH",City:"Thompson Airport",State:"MB",Latitude:55.7833,Longitude:-97.8666},CWII:{StationId:"CWII",City:"Victoria Beach",State:"MB",Latitude:50.7,Longitude:-96.5666},CWVJ:{StationId:"CWVJ",City:"Vivian Radar",State:"MB",Latitude:49.8833,Longitude:-96.4666},CYWG:{StationId:"CYWG",City:"Winnipeg Intl Ar",State:"MB",Latitude:49.8833,Longitude:-97.2166},CXWI:{StationId:"CXWI",City:"Winnipeg",State:"MB",Latitude:49.8833,Longitude:-97.1333},CXWN:{StationId:"CXWN",City:"Winnipeg Forks",State:"MB",Latitude:49.8833,Longitude:-97.1333},CYNE:{StationId:"CYNE",City:"Norway House Arp",State:"MB",Latitude:53.9666,Longitude:-97.8166},CZBF:{StationId:"CZBF",City:"Bathurst Arpt(Aw",State:"NB",Latitude:47.6166,Longitude:-65.75},CZCR:{StationId:"CZCR",City:"Charlo Airport",State:"NB",Latitude:47.9666,Longitude:-66.3166},CXNC:{StationId:"CXNC",City:"Chipman Radar",State:"NB",Latitude:46.2166,Longitude:-65.7},CERM:{StationId:"CERM",City:"Edmunston",State:"NB",Latitude:47.4166,Longitude:-68.3166},CYFC:{StationId:"CYFC",City:"Fredericton Airp",State:"NB",Latitude:45.8666,Longitude:-66.5166},CYCX:{StationId:"CYCX",City:"Gagetown (Can M",State:"NB",Latitude:45.8166,Longitude:-66.4166},CXGM:{StationId:"CXGM",City:"Grand Manan",State:"NB",Latitude:44.7166,Longitude:-66.8},CWMK:{StationId:"CWMK",City:"Mechanic Settle",State:"NB",Latitude:45.7,Longitude:-65.1666},CACQ:{StationId:"CACQ",City:"Miramichi",State:"NB",Latitude:47.0166,Longitude:-65.4666},CWMI:{StationId:"CWMI",City:"Miscou Isl (Mars",State:"NB",Latitude:48.0166,Longitude:-64.5},CYQM:{StationId:"CYQM",City:"Moncton Airport",State:"NB",Latitude:46.1166,Longitude:-64.6666},CWPE:{StationId:"CWPE",City:"Point Lepreau",State:"NB",Latitude:45.0666,Longitude:-66.4666},CWPJ:{StationId:"CWPJ",City:"Pt. Escuminac(Ma",State:"NB",Latitude:47.0666,Longitude:-64.7833},CYSJ:{StationId:"CYSJ",City:"Saint John",State:"NB",Latitude:45.3166,Longitude:-65.8666},CYSL:{StationId:"CYSL",City:"Saint Leonard Ar",State:"NB",Latitude:47.1333,Longitude:-67.8166},CWIY:{StationId:"CWIY",City:"St Leonard Autob",State:"NB",Latitude:47.1333,Longitude:-67.8166},CWSS:{StationId:"CWSS",City:"St. Stephen (Mar",State:"NB",Latitude:45.2,Longitude:-67.25},CYCL:{StationId:"CYCL",City:"Charlo Airport",State:"NB",Latitude:47.9833,Longitude:-66.3333},CYCH:{StationId:"CYCH",City:"Chatham",State:"NB",Latitude:47,Longitude:-65.45},CWCQ:{StationId:"CWCQ",City:"Miramichi (Au8)",State:"NB",Latitude:47,Longitude:-65.4666},CWAR:{StationId:"CWAR",City:"Argentia (Mars)",State:"NL",Latitude:47.2833,Longitude:-54},CWDI:{StationId:"CWDI",City:"Badger (Mars)",State:"NL",Latitude:48.9666,Longitude:-56.0666},CWVA:{StationId:"CWVA",City:"Bonavista",State:"NL",Latitude:48.6666,Longitude:-53.1166},CWBF:{StationId:"CWBF",City:"Burgeo",State:"NL",Latitude:47.6166,Longitude:-57.6333},CWKW:{StationId:"CWKW",City:"Cape Kakkiviak",State:"NL",Latitude:59.9666,Longitude:-64.1666},CWYK:{StationId:"CWYK",City:"Cape Kiglapait",State:"NL",Latitude:57.1166,Longitude:-61.4666},CWRA:{StationId:"CWRA",City:"Cape Race (Mars)",State:"NL",Latitude:46.6333,Longitude:-53.0666},CWCA:{StationId:"CWCA",City:"Cartwright",State:"NL",Latitude:53.7,Longitude:-57.0166},CYCA:{StationId:"CYCA",City:"Cartwright",State:"NL",Latitude:53.6833,Longitude:-57.0333},CZUM:{StationId:"CZUM",City:"Churchill Falls",State:"NL",Latitude:53.5333,Longitude:-64.0833},CWDH:{StationId:"CWDH",City:"Daniel's Harbour",State:"NL",Latitude:50.2166,Longitude:-57.5666},CYDF:{StationId:"CYDF",City:"Deer Lake Airpor",State:"NL",Latitude:49.2166,Longitude:-57.4},CWDA:{StationId:"CWDA",City:"Englee (Maps)",State:"NL",Latitude:50.7166,Longitude:-56.1166},CWXI:{StationId:"CWXI",City:"Ferolle Pt. (Map",State:"NL",Latitude:51.0166,Longitude:-57.1},CYQX:{StationId:"CYQX",City:"Gander Intl Airp",State:"NL",Latitude:48.95,Longitude:-54.5833},CYYR:{StationId:"CYYR",City:"Goose Bay Airpor",State:"NL",Latitude:53.3166,Longitude:-60.4166},CWVW:{StationId:"CWVW",City:"Grates Cove",State:"NL",Latitude:48.1666,Longitude:-52.9333},CWTP:{StationId:"CWTP",City:"Holyrood Radar",State:"NL",Latitude:47.3333,Longitude:-53.1833},CWHO:{StationId:"CWHO",City:"Hopedale (Maps)",State:"NL",Latitude:55.45,Longitude:-60.2166},CWAG:{StationId:"CWAG",City:"La Scie",State:"NL",Latitude:49.9166,Longitude:-55.6666},CWWU:{StationId:"CWWU",City:"Long Pond",State:"NL",Latitude:47.5166,Longitude:-52.9833},CYFT:{StationId:"CYFT",City:"Makkovik Airport",State:"NL",Latitude:55.0666,Longitude:-59.1666},CXME:{StationId:"CXME",City:"Marble Mtn Radar",State:"NL",Latitude:48.9333,Longitude:-57.8333},CYMH:{StationId:"CYMH",City:"Mary's Harbour",State:"NL",Latitude:52.2833,Longitude:-55.85},CYDP:{StationId:"CYDP",City:"Nain Airport",State:"NL",Latitude:56.5333,Longitude:-61.6666},CWZB:{StationId:"CWZB",City:"Port Aux Basques",State:"NL",Latitude:47.5666,Longitude:-59.1666},CXRH:{StationId:"CXRH",City:"Rocky Harbour",State:"NL",Latitude:49.5666,Longitude:-57.8833},CWZZ:{StationId:"CWZZ",City:"Saglek (Bay)",State:"NL",Latitude:58.3166,Longitude:-62.5666},CWZN:{StationId:"CWZN",City:"Sagona Isl (Maps",State:"NL",Latitude:47.3666,Longitude:-55.8},CWAX:{StationId:"CWAX",City:"Saint Anthony",State:"NL",Latitude:51.3833,Longitude:-56.0833},CWDW:{StationId:"CWDW",City:"Saint Anthony",State:"NL",Latitude:51.3833,Longitude:-56.1},CYAY:{StationId:"CYAY",City:"Saint Anthony Ar",State:"NL",Latitude:51.3833,Longitude:-56.0666},CYYT:{StationId:"CYYT",City:"St Johns Arp",State:"NL",Latitude:47.6166,Longitude:-52.7166},CXSW:{StationId:"CXSW",City:"St Johns West",State:"NL",Latitude:47.5166,Longitude:-52.7833},CYJT:{StationId:"CYJT",City:"Stephenville Arp",State:"NL",Latitude:48.55,Longitude:-58.5666},CXTP:{StationId:"CXTP",City:"Terra Nova",State:"NL",Latitude:48.55,Longitude:-53.9666},CWTU:{StationId:"CWTU",City:"Tukialik Bay",State:"NL",Latitude:54.7166,Longitude:-58.35},CWDO:{StationId:"CWDO",City:"Twillingate (Map",State:"NL",Latitude:49.6666,Longitude:-54.7833},CYWK:{StationId:"CYWK",City:"Wabush Lake Airp",State:"NL",Latitude:52.9166,Longitude:-66.8666},CXWR:{StationId:"CXWR",City:"Wreckhouse",State:"NL",Latitude:47.7166,Longitude:-59.3166},LFVP:{StationId:"LFVP",City:"St Pierre-France",State:"NL",Latitude:46.7666,Longitude:-56.1833},CWAH:{StationId:"CWAH",City:"Amherst (Mars)",State:"NS",Latitude:45.85,Longitude:-64.2666},CWBV:{StationId:"CWBV",City:"Beaver Island(Ma",State:"NS",Latitude:44.8166,Longitude:-62.3166},CWVU:{StationId:"CWVU",City:"Brier Island(Aut",State:"NS",Latitude:44.2833,Longitude:-66.3333},CWGU:{StationId:"CWGU",City:"Cape George (Aut",State:"NS",Latitude:45.8666,Longitude:-61.9},CWBK:{StationId:"CWBK",City:"Caribou Point(Ma",State:"NS",Latitude:45.7666,Longitude:-62.6666},CXCH:{StationId:"CXCH",City:"Cheticamp",State:"NS",Latitude:46.6333,Longitude:-60.95},CZDB:{StationId:"CZDB",City:"Debert",State:"NS",Latitude:45.4166,Longitude:-63.4666},CYID:{StationId:"CYID",City:"Digby Arpt (Awrs",State:"NS",Latitude:44.5333,Longitude:-65.7666},CWRW:{StationId:"CWRW",City:"Fourchu Head(Map",State:"NS",Latitude:45.7166,Longitude:-60.2166},CWZQ:{StationId:"CWZQ",City:"Grand Etang (Aut",State:"NS",Latitude:46.5333,Longitude:-61.05},CYZX:{StationId:"CYZX",City:"Greenwood (Can M",State:"NS",Latitude:44.9833,Longitude:-64.9166},CYHZ:{StationId:"CYHZ",City:"Halifax Intl Arp",State:"NS",Latitude:44.8666,Longitude:-63.5},CWRN:{StationId:"CWRN",City:"Hart Island (Map",State:"NS",Latitude:45.35,Longitude:-60.9833},CXIB:{StationId:"CXIB",City:"Ingonish Beach",State:"NS",Latitude:46.6666,Longitude:-60.3833},CWKG:{StationId:"CWKG",City:"Kejimkujik (Au8)",State:"NS",Latitude:44.4333,Longitude:-65.2},CXKT:{StationId:"CXKT",City:"Kentville (Autob",State:"NS",Latitude:45.0666,Longitude:-64.4833},CXLB:{StationId:"CXLB",City:"Lunenburg",State:"NS",Latitude:44.3666,Longitude:-64.3},CXMY:{StationId:"CXMY",City:"Malay Falls",State:"NS",Latitude:44.9833,Longitude:-62.4833},CXMB:{StationId:"CXMB",City:"Marion Bridge",State:"NS",Latitude:45.95,Longitude:-60.2},CXMI:{StationId:"CXMI",City:"Mcnabs Island",State:"NS",Latitude:44.6,Longitude:-63.5333},CXNP:{StationId:"CXNP",City:"Nappan (Auto)",State:"NS",Latitude:45.75,Longitude:-64.2333},CXNM:{StationId:"CXNM",City:"North Mountain",State:"NS",Latitude:46.8166,Longitude:-60.6666},CYPD:{StationId:"CYPD",City:"Port Hawkesbury",State:"NS",Latitude:45.6666,Longitude:-61.3666},CWXO:{StationId:"CWXO",City:"Rowan Gorilla Ii",State:"NS",Latitude:43.8666,Longitude:-60.5333},CWSA:{StationId:"CWSA",City:"Sable Island",State:"NS",Latitude:43.9333,Longitude:-60},CYSA:{StationId:"CYSA",City:"Sable Island(Apt",State:"NS",Latitude:43.9166,Longitude:-60},CYAW:{StationId:"CYAW",City:"Shearwater(Can M",State:"NS",Latitude:44.6333,Longitude:-63.5},CWOS:{StationId:"CWOS",City:"Shelburne",State:"NS",Latitude:43.7166,Longitude:-65.25},CWEF:{StationId:"CWEF",City:"St. Paul Isl(Map",State:"NS",Latitude:47.2166,Longitude:-60.1166},CYQY:{StationId:"CYQY",City:"Sydney Airport",State:"NS",Latitude:46.1666,Longitude:-60.0333},CXTD:{StationId:"CXTD",City:"Tracadie",State:"NS",Latitude:45.6166,Longitude:-61.6833},CYTN:{StationId:"CYTN",City:"Trenton Municipa",State:"NS",Latitude:45.6166,Longitude:-62.6166},CWUR:{StationId:"CWUR",City:"Truro (Mars)",State:"NS",Latitude:45.3666,Longitude:-63.2666},CWWE:{StationId:"CWWE",City:"Western Head (Ma",State:"NS",Latitude:43.9666,Longitude:-64.6666},CYQI:{StationId:"CYQI",City:"Yarmouth Airport",State:"NS",Latitude:43.8333,Longitude:-66.0833},CYKD:{StationId:"CYKD",City:"Aklavik Airport",State:"NT",Latitude:68.2166,Longitude:-135},CZCP:{StationId:"CZCP",City:"Cape Parry Auto4",State:"NT",Latitude:70.1666,Longitude:-124.7166},CXDK:{StationId:"CXDK",City:"Deadman Valley",State:"NT",Latitude:61.2666,Longitude:-124.4666},CXDE:{StationId:"CXDE",City:"Deline",State:"NT",Latitude:65.2166,Longitude:-123.4333},CYOA:{StationId:"CYOA",City:"Ekati (Pws)",State:"NT",Latitude:64.7,Longitude:-110.6166},CYWJ:{StationId:"CYWJ",City:"Fort Franklin Ar",State:"NT",Latitude:65.2166,Longitude:-123.4333},CYGH:{StationId:"CYGH",City:"Fort Good Hope A",State:"NT",Latitude:66.2666,Longitude:-128.6166},CYJF:{StationId:"CYJF",City:"Fort Liard Airpo",State:"NT",Latitude:60.2166,Longitude:-123.4666},CZFM:{StationId:"CZFM",City:"Fort Mcpherson A",State:"NT",Latitude:67.4,Longitude:-134.8666},CZFN:{StationId:"CZFN",City:"Fort Norman Airp",State:"NT",Latitude:64.9166,Longitude:-125.5666},CWID:{StationId:"CWID",City:"Fort Providence",State:"NT",Latitude:61.3166,Longitude:-117.6},CYFR:{StationId:"CYFR",City:"Fort Resolution",State:"NT",Latitude:61.1666,Longitude:-113.6666},CYFS:{StationId:"CYFS",City:"Fort Simpson Arp",State:"NT",Latitude:61.75,Longitude:-121.2166},CXFS:{StationId:"CXFS",City:"Ft Simpson 71681",State:"NT",Latitude:61.75,Longitude:-121.2333},CZFS:{StationId:"CZFS",City:"Fort Simpson",State:"NT",Latitude:61.7666,Longitude:-121.2333},CYSM:{StationId:"CYSM",City:"Fort Smith Airpo",State:"NT",Latitude:60.0333,Longitude:-111.9666},CZSM:{StationId:"CZSM",City:"Fort Smith",State:"NT",Latitude:60.0333,Longitude:-111.9333},CNGH:{StationId:"CNGH",City:"Gateshead Island",State:"NT",Latitude:70.6333,Longitude:-100.2666},CYHY:{StationId:"CYHY",City:"Hay River Airpor",State:"NT",Latitude:60.8166,Longitude:-115.7666},CZHY:{StationId:"CZHY",City:"Hay River",State:"NT",Latitude:60.8333,Longitude:-115.7833},CWQY:{StationId:"CWQY",City:"Hanbury River",State:"NT",Latitude:63.6,Longitude:-105.1333},CYHI:{StationId:"CYHI",City:"Holman Island Ar",State:"NT",Latitude:70.7666,Longitude:-117.7833},CXHI:{StationId:"CXHI",City:"Holman Cs",State:"NT",Latitude:70.7666,Longitude:-117.8},CWIE:{StationId:"CWIE",City:"Indian River",State:"NT",Latitude:64.3833,Longitude:-115.0166},CYEV:{StationId:"CYEV",City:"Inuvik Airport",State:"NT",Latitude:68.3166,Longitude:-133.5},CZEV:{StationId:"CZEV",City:"Inuvik",State:"NT",Latitude:68.3166,Longitude:-133.5166},CXJM:{StationId:"CXJM",City:"Jean Marier",State:"NT",Latitude:61.35,Longitude:-120.7833},CWKP:{StationId:"CWKP",City:"Keats Point",State:"NT",Latitude:69.6666,Longitude:-121.6666},CWMT:{StationId:"CWMT",City:"Lac La Martre",State:"NT",Latitude:63.1333,Longitude:-117.25},CXLL:{StationId:"CXLL",City:"Lindberg Landing",State:"NT",Latitude:61.1166,Longitude:-122.85},CWLI:{StationId:"CWLI",City:"Liverpool Bay",State:"NT",Latitude:69.5833,Longitude:-130.9},CXLC:{StationId:"CXLC",City:"Lower Carp Lake",State:"NT",Latitude:63.6,Longitude:-113.85},CYLK:{StationId:"CYLK",City:"Lutsel Ke Arpt (",State:"NT",Latitude:62.4166,Longitude:-110.6666},CXLU:{StationId:"CXLU",City:"Lutsel Ke Cs",State:"NT",Latitude:62.4166,Longitude:-110.6666},CYMD:{StationId:"CYMD",City:"Mould Bay",State:"NT",Latitude:76.2166,Longitude:-119.3166},CWMD:{StationId:"CWMD",City:"Mould Bay Camp",State:"NT",Latitude:76.2166,Longitude:-119.3166},CYVQ:{StationId:"CYVQ",City:"Norman Wells Arp",State:"NT",Latitude:65.2666,Longitude:-126.7833},CYPC:{StationId:"CYPC",City:"Paulatuk Airport",State:"NT",Latitude:69.3666,Longitude:-124.0666},CWND:{StationId:"CWND",City:"Pelly Island",State:"NT",Latitude:69.6333,Longitude:-135.4333},CXQA:{StationId:"CXQA",City:"Qavvik Lake",State:"NT",Latitude:68.25,Longitude:-122.1},CYRA:{StationId:"CYRA",City:"Rae Lakes",State:"NT",Latitude:64.1166,Longitude:-117.3166},CWYH:{StationId:"CWYH",City:"Rae Lakes",State:"NT",Latitude:64.1166,Longitude:-117.3666},CWTD:{StationId:"CWTD",City:"Robertson Lake",State:"NT",Latitude:65.1,Longitude:-102.4333},CYSY:{StationId:"CYSY",City:"Sachs Harbour(M",State:"NT",Latitude:72,Longitude:-125.2666},CXTV:{StationId:"CXTV",City:"Trail Valley",State:"NT",Latitude:68.75,Longitude:-133.5},CYUB:{StationId:"CYUB",City:"Tuktoyaktuk",State:"NT",Latitude:69.45,Longitude:-133.0166},CXTN:{StationId:"CXTN",City:"Tuktut Nogait Np",State:"NT",Latitude:69.2,Longitude:-122.35},CYWE:{StationId:"CYWE",City:"Wekweeti",State:"NT",Latitude:64.1833,Longitude:-114.0833},CYWY:{StationId:"CYWY",City:"Wrigley Airport",State:"NT",Latitude:63.2166,Longitude:-123.4166},CYZF:{StationId:"CYZF",City:"Yellowknife Airp",State:"NT",Latitude:62.4666,Longitude:-114.45},CXYH:{StationId:"CXYH",City:"Yohin",State:"NT",Latitude:61.25,Longitude:-123.75},CZVE:{StationId:"CZVE",City:"Canada/Artcc",State:"NT",Latitude:70.1666,Longitude:-124.6833},CWLT:{StationId:"CWLT",City:"Alert",State:"NU",Latitude:82.5,Longitude:-62.3166},CYLT:{StationId:"CYLT",City:"Alert Airport",State:"NU",Latitude:82.5166,Longitude:-62.2666},CZLT:{StationId:"CZLT",City:"Alert",State:"NU",Latitude:82.5,Longitude:-62.3333},CXAT:{StationId:"CXAT",City:"Arctic Bay Cs",State:"NU",Latitude:73,Longitude:-85.0333},CYAB:{StationId:"CYAB",City:"Arctic Bay",State:"NU",Latitude:73,Longitude:-85.05},CYEK:{StationId:"CYEK",City:"Arviat Airport",State:"NU",Latitude:61.1,Longitude:-94.0666},CXAR:{StationId:"CXAR",City:"Arviat Climate",State:"NU",Latitude:61.1,Longitude:-94.0666},CYBK:{StationId:"CYBK",City:"Baker Lake Airpo",State:"NU",Latitude:64.2833,Longitude:-96.0666},CXBL:{StationId:"CXBL",City:"Baker Lake",State:"NU",Latitude:64.3166,Longitude:-96},CWOB:{StationId:"CWOB",City:"Brevoort Island",State:"NU",Latitude:63.3166,Longitude:-64.15},CYVM:{StationId:"CYVM",City:"Qikiqtarjuaq",State:"NU",Latitude:67.5333,Longitude:-64.0166},CWVD:{StationId:"CWVD",City:"Broughton Island",State:"NU",Latitude:67.5166,Longitude:-63.7666},CWBR:{StationId:"CWBR",City:"Brown River",State:"NU",Latitude:66.0333,Longitude:-91.8333},CYCB:{StationId:"CYCB",City:"Cambridge Bay Ar",State:"NU",Latitude:69.0833,Longitude:-105.1166},CXCM:{StationId:"CXCM",City:"Cambridge Bay",State:"NU",Latitude:69.1,Longitude:-105.1333},CYTE:{StationId:"CYTE",City:"Cape Dorset Airp",State:"NU",Latitude:64.2166,Longitude:-76.5166},CWFD:{StationId:"CWFD",City:"Cape Dyer Airpor",State:"NU",Latitude:66.5666,Longitude:-61.5833},CWUP:{StationId:"CWUP",City:"Cape Hooper",State:"NU",Latitude:68.4666,Longitude:-66.8166},CWYM:{StationId:"CWYM",City:"Cape Mercy",State:"NU",Latitude:64.95,Longitude:-63.5666},CWPX:{StationId:"CWPX",City:"Cape Peel West",State:"NU",Latitude:69.0166,Longitude:-107.8166},CYCS:{StationId:"CYCS",City:"Chesterfield Inl",State:"NU",Latitude:63.35,Longitude:-90.7166},CYCO:{StationId:"CYCO",City:"Coppermine Airpo",State:"NU",Latitude:67.8166,Longitude:-115.15},CYZS:{StationId:"CYZS",City:"Coral Harbour Ar",State:"NU",Latitude:64.2,Longitude:-83.3666},CWXR:{StationId:"CWXR",City:"Croker River",State:"NU",Latitude:69.2666,Longitude:-119.2166},CYCY:{StationId:"CYCY",City:"Cylde Airport",State:"NU",Latitude:70.4666,Longitude:-68.5166},CWUW:{StationId:"CWUW",City:"Dewar Lakes",State:"NU",Latitude:68.65,Longitude:-71.1666},CWJC:{StationId:"CWJC",City:"Ennadai Lake (Ma",State:"NU",Latitude:61.1333,Longitude:-100.9},CWEU:{StationId:"CWEU",City:"Eureka",State:"NU",Latitude:80,Longitude:-85.9166},CYEU:{StationId:"CYEU",City:"Eureka",State:"NU",Latitude:80,Longitude:-85.8166},CYFB:{StationId:"CYFB",City:"Frobisher/Iqalui",State:"NU",Latitude:63.75,Longitude:-68.55},CYHK:{StationId:"CYHK",City:"Gjoa Haven Airpo",State:"NU",Latitude:68.6166,Longitude:-95.8333},CZHK:{StationId:"CZHK",City:"Gjoa Haven",State:"NU",Latitude:68.6333,Longitude:-95.85},CWGZ:{StationId:"CWGZ",City:"Grise Fiord Air",State:"NU",Latitude:76.4166,Longitude:-82.9},CYUX:{StationId:"CYUX",City:"Hall Beach Airpo",State:"NU",Latitude:68.7666,Longitude:-81.25},CXUX:{StationId:"CXUX",City:"Hall Beach",State:"NU",Latitude:68.7833,Longitude:-81.25},CWIL:{StationId:"CWIL",City:"Hat Island",State:"NU",Latitude:68.3166,Longitude:-100.0666},CYGT:{StationId:"CYGT",City:"Igloolik Airport",State:"NU",Latitude:69.3666,Longitude:-81.8166},CWIC:{StationId:"CWIC",City:"Isachsen (Maps)",State:"NU",Latitude:78.7833,Longitude:-103.55},CYUJ:{StationId:"CYUJ",City:"Lady Franklin Po",State:"NU",Latitude:68.5,Longitude:-113.2166},CYLC:{StationId:"CYLC",City:"Lake Harbour Arp",State:"NU",Latitude:62.85,Longitude:-69.8666},CWLX:{StationId:"CWLX",City:"Longstaff Bluff",State:"NU",Latitude:68.9,Longitude:-75.15},CYWO:{StationId:"CYWO",City:"Lupin Arpt (Sawr",State:"NU",Latitude:65.7666,Longitude:-111.25},CWIJ:{StationId:"CWIJ",City:"Lupin (Maps)",State:"NU",Latitude:65.7666,Longitude:-111.2333},CYSR:{StationId:"CYSR",City:"Nanisivik Airpor",State:"NU",Latitude:72.9666,Longitude:-84.6166},CYXP:{StationId:"CYXP",City:"Pangnirtung Airp",State:"NU",Latitude:66.15,Longitude:-65.7166},CWRF:{StationId:"CWRF",City:"Pelly Bay 1",State:"NU",Latitude:69.4166,Longitude:-89.7166},CYBB:{StationId:"CYBB",City:"Pelly Bay Airpor",State:"NU",Latitude:68.5166,Longitude:-89.8166},CYIO:{StationId:"CYIO",City:"Pond Inlet Airpo",State:"NU",Latitude:72.6666,Longitude:-77.9666},CZRP:{StationId:"CZRP",City:"Rae Point",State:"NU",Latitude:75.3666,Longitude:-105.7166},CYRT:{StationId:"CYRT",City:"Rankin Inlet Arp",State:"NU",Latitude:62.8166,Longitude:-92.1166},CYUT:{StationId:"CYUT",City:"Repulse Bay Airp",State:"NU",Latitude:66.5166,Longitude:-86.25},CYRB:{StationId:"CYRB",City:"Resolute Airport",State:"NU",Latitude:74.7166,Longitude:-94.9666},CXRB:{StationId:"CXRB",City:"Resolute Cs",State:"NU",Latitude:74.7166,Longitude:-94.9833},CWRH:{StationId:"CWRH",City:"Resolution Is",State:"NU",Latitude:61.5666,Longitude:-64.65},CWRX:{StationId:"CWRX",City:"Rowley Island",State:"NU",Latitude:69.0666,Longitude:-79.0166},CYSK:{StationId:"CYSK",City:"Sanikiluaq Airpo",State:"NU",Latitude:56.5333,Longitude:-79.25},CYUS:{StationId:"CYUS",City:"Shepherd Bay Arp",State:"NU",Latitude:68.8166,Longitude:-93.4166},CYYH:{StationId:"CYYH",City:"Spence Bay Airpo",State:"NU",Latitude:69.5333,Longitude:-93.5666},CXSE:{StationId:"CXSE",City:"Stefansson Is",State:"NU",Latitude:73.7666,Longitude:-105.2833},CXWB:{StationId:"CXWB",City:"Wager Bay",State:"NU",Latitude:65.8833,Longitude:-89.45},CYXN:{StationId:"CYXN",City:"Whale Cove Airpo",State:"NU",Latitude:62.2166,Longitude:-92.5833},CXFB:{StationId:"CXFB",City:"Iqaluit Climate",State:"NU",Latitude:63.75,Longitude:-68.55},CWCH:{StationId:"CWCH",City:"Atikokan (Aut)",State:"ON",Latitude:48.75,Longitude:-91.6166},CWRK:{StationId:"CWRK",City:"Bancroft Autob",State:"ON",Latitude:45.0666,Longitude:-77.8666},CWCU:{StationId:"CWCU",City:"Barrie (Mars)",State:"ON",Latitude:44.3666,Longitude:-79.7666},CXBI:{StationId:"CXBI",City:"Barrie-Oro",State:"ON",Latitude:44.4833,Longitude:-79.55},CWPB:{StationId:"CWPB",City:"Beausoleil Isl A",State:"ON",Latitude:44.85,Longitude:-79.8666},CWDD:{StationId:"CWDD",City:"Belle River Aut0",State:"ON",Latitude:42.2833,Longitude:-82.7},CWTL:{StationId:"CWTL",City:"Big Trout Lake",State:"ON",Latitude:53.8166,Longitude:-89.8833},CYTL:{StationId:"CYTL",City:"Big Trout Lake",State:"ON",Latitude:53.8166,Longitude:-89.8833},CYBN:{StationId:"CYBN",City:"Borden",State:"ON",Latitude:44.2666,Longitude:-79.9166},CWBI:{StationId:"CWBI",City:"Britt (Mars)",State:"ON",Latitude:45.8,Longitude:-80.5333},CWWB:{StationId:"CWWB",City:"Burlington Piers",State:"ON",Latitude:43.3,Longitude:-79.7833},CXCA:{StationId:"CXCA",City:"Cameron Falls",State:"ON",Latitude:49.15,Longitude:-88.35},CWCI:{StationId:"CWCI",City:"Caribou Isl (Map",State:"ON",Latitude:47.3166,Longitude:-85.8166},CYLD:{StationId:"CYLD",City:"Chapleau Arpt(Sa",State:"ON",Latitude:47.8166,Longitude:-83.3333},CWNC:{StationId:"CWNC",City:"Cobourg (Mars)",State:"ON",Latitude:43.95,Longitude:-78.1666},CWCO:{StationId:"CWCO",City:"Collingwood (Aut",State:"ON",Latitude:44.45,Longitude:-80.1666},CWWX:{StationId:"CWWX",City:"Cove Island (Map",State:"ON",Latitude:45.3166,Longitude:-81.7333},CXCY:{StationId:"CXCY",City:"Cyprus Lake Cs",State:"ON",Latitude:45.2333,Longitude:-81.5333},CXDI:{StationId:"CXDI",City:"Delhi Cs (Aut)",State:"ON",Latitude:42.8666,Longitude:-80.55},CYHD:{StationId:"CYHD",City:"Dryden Airport",State:"ON",Latitude:49.8166,Longitude:-92.75},CXDR:{StationId:"CXDR",City:"Dryden",State:"ON",Latitude:49.85,Longitude:-92.8},CXEA:{StationId:"CXEA",City:"Ear Falls (Aut)",State:"ON",Latitude:50.6333,Longitude:-93.2166},CYXR:{StationId:"CYXR",City:"Earlton Airport",State:"ON",Latitude:47.7,Longitude:-79.8333},CZXR:{StationId:"CZXR",City:"Earlton",State:"ON",Latitude:47.7,Longitude:-79.8333},CXET:{StationId:"CXET",City:"Egbert Cs",State:"ON",Latitude:44.2333,Longitude:-79.7833},CWET:{StationId:"CWET",City:"Egbert (Maps)",State:"ON",Latitude:44.2333,Longitude:-79.7833},CYEL:{StationId:"CYEL",City:"Elliot Lake (Saw",State:"ON",Latitude:46.35,Longitude:-82.5666},CZEL:{StationId:"CZEL",City:"Elora Rcs",State:"ON",Latitude:43.65,Longitude:-80.4166},CWAJ:{StationId:"CWAJ",City:"Erieau (Maps)",State:"ON",Latitude:42.25,Longitude:-81.9},CWSO:{StationId:"CWSO",City:"Exeter Radar",State:"ON",Latitude:43.3666,Longitude:-81.3833},CYER:{StationId:"CYER",City:"Ft Severn",State:"ON",Latitude:56.0166,Longitude:-87.6833},CXFT:{StationId:"CXFT",City:"Franktown",State:"ON",Latitude:45.0333,Longitude:-76.1},CYGQ:{StationId:"CYGQ",City:"Geraldton Airpor",State:"ON",Latitude:49.7666,Longitude:-86.9166},CWGD:{StationId:"CWGD",City:"Goderich (Autob)",State:"ON",Latitude:43.7666,Longitude:-81.7166},CYZE:{StationId:"CYZE",City:"Gore Bay Airport",State:"ON",Latitude:45.8666,Longitude:-82.5666},CWNL:{StationId:"CWNL",City:"Great Duck Islan",State:"ON",Latitude:45.6166,Longitude:-82.9666},CWGH:{StationId:"CWGH",City:"Grenadier Island",State:"ON",Latitude:44.4166,Longitude:-75.85},CYHM:{StationId:"CYHM",City:"Hamilton Airport",State:"ON",Latitude:43.1666,Longitude:-79.9333},CXHM:{StationId:"CXHM",City:"Hamilton Rbg Cs",State:"ON",Latitude:43.2833,Longitude:-79.9},CXHA:{StationId:"CXHA",City:"Harrow Cda",State:"ON",Latitude:42.0333,Longitude:-82.9},CYYU:{StationId:"CYYU",City:"Kapuskasing Airp",State:"ON",Latitude:49.4166,Longitude:-82.4666},CXKA:{StationId:"CXKA",City:"Kapuskasing Cda",State:"ON",Latitude:49.4,Longitude:-82.45},CWKK:{StationId:"CWKK",City:"Katatota Island",State:"ON",Latitude:49.7166,Longitude:-88.3333},CXKE:{StationId:"CXKE",City:"Kemptville",State:"ON",Latitude:45,Longitude:-75.6333},CYQK:{StationId:"CYQK",City:"Kenora Airport",State:"ON",Latitude:49.7666,Longitude:-94.3666},CWBE:{StationId:"CWBE",City:"Killarney (Maps)",State:"ON",Latitude:45.9833,Longitude:-81.4833},CYGK:{StationId:"CYGK",City:"Kingston Arpt (M",State:"ON",Latitude:44.2166,Longitude:-76.5833},CXKI:{StationId:"CXKI",City:"Kirkland Lake",State:"ON",Latitude:48.2166,Longitude:-80},CXLA:{StationId:"CXLA",City:"Ladrienne Radar",State:"ON",Latitude:48.55,Longitude:-77.8},CWGL:{StationId:"CWGL",City:"Lagoon City",State:"ON",Latitude:44.5166,Longitude:-79.2166},CWLF:{StationId:"CWLF",City:"Lansdowne House",State:"ON",Latitude:52.2166,Longitude:-87.8666},CYLF:{StationId:"CYLF",City:"Lansdowne House",State:"ON",Latitude:52.2333,Longitude:-87.8833},CYLH:{StationId:"CYLH",City:"Lansdowne 71697",State:"ON",Latitude:52.2,Longitude:-87.9333},CWSN:{StationId:"CWSN",City:"London Cs",State:"ON",Latitude:43.0333,Longitude:-81.15},CYXU:{StationId:"CYXU",City:"London Airport",State:"ON",Latitude:43.0166,Longitude:-81.15},CWPS:{StationId:"CWPS",City:"Long Point (Maps",State:"ON",Latitude:42.5666,Longitude:-80.0333},CYSP:{StationId:"CYSP",City:"Marathon",State:"ON",Latitude:48.75,Longitude:-86.35},CWGJ:{StationId:"CWGJ",City:"Montreal Riv Har",State:"ON",Latitude:47.2333,Longitude:-84.5833},CZGJ:{StationId:"CZGJ",City:"Montreal Riv",State:"ON",Latitude:47.25,Longitude:-84.6},CYMO:{StationId:"CYMO",City:"Moosonee (Sawr)",State:"ON",Latitude:51.2833,Longitude:-80.6166},CWZC:{StationId:"CWZC",City:"Moosonee",State:"ON",Latitude:51.2833,Longitude:-80.6},CXZC:{StationId:"CXZC",City:"Moosonee Rcs",State:"ON",Latitude:51.3,Longitude:-80.6166},CWLS:{StationId:"CWLS",City:"Mount Forest(Mar",State:"ON",Latitude:43.9666,Longitude:-80.75},CYQA:{StationId:"CYQA",City:"Muskoka Airport",State:"ON",Latitude:44.9666,Longitude:-79.2833},CZMD:{StationId:"CZMD",City:"Muskrat Dam",State:"ON",Latitude:53.4333,Longitude:-91.7666},CWNZ:{StationId:"CWNZ",City:"Nagagami (Mars)",State:"ON",Latitude:49.75,Longitude:-84.1666},CYYB:{StationId:"CYYB",City:"North Bay Airpor",State:"ON",Latitude:46.35,Longitude:-79.4166},CXTI:{StationId:"CXTI",City:"Northeast Ont",State:"ON",Latitude:49.2833,Longitude:-81.7833},CWDF:{StationId:"CWDF",City:"Oliphant (Autob)",State:"ON",Latitude:44.7166,Longitude:-81.2666},CYOO:{StationId:"CYOO",City:"Oshawa",State:"ON",Latitude:43.9166,Longitude:-78.9},CYOW:{StationId:"CYOW",City:"Ottawa Intl",State:"ON",Latitude:45.3166,Longitude:-75.6666},CXOA:{StationId:"CXOA",City:"Ottawa Cda Rcs",State:"ON",Latitude:45.3833,Longitude:-75.7166},CXQT:{StationId:"CXQT",City:"N Ontario Portab",State:"ON",Latitude:48.4333,Longitude:-89.2166},CXPC:{StationId:"CXPC",City:"Parry Sound",State:"ON",Latitude:45.35,Longitude:-80.05},CYWA:{StationId:"CYWA",City:"Petawawa",State:"ON",Latitude:45.95,Longitude:-77.3166},CYPQ:{StationId:"CYPQ",City:"Peterborough Arp",State:"ON",Latitude:44.2166,Longitude:-78.3666},CYPL:{StationId:"CYPL",City:"Pickle Lake",State:"ON",Latitude:51.4666,Longitude:-90.2},CWQP:{StationId:"CWQP",City:"Point Petre (Mar",State:"ON",Latitude:43.8333,Longitude:-77.15},CWPC:{StationId:"CWPC",City:"Port Colborne(Au",State:"ON",Latitude:42.8666,Longitude:-79.25},CWWZ:{StationId:"CWWZ",City:"Port Weller (Mar",State:"ON",Latitude:43.25,Longitude:-79.2166},CWCJ:{StationId:"CWCJ",City:"Pukaskwa Park",State:"ON",Latitude:48.6,Longitude:-86.2833},CYTA:{StationId:"CYTA",City:"Rawson Lake",State:"ON",Latitude:49.6666,Longitude:-93.7333},CTRA:{StationId:"CTRA",City:"Rawson Lake",State:"ON",Latitude:49.6666,Longitude:-93.7333},CYRL:{StationId:"CYRL",City:"Red Lake Airport",State:"ON",Latitude:51.0666,Longitude:-93.7833},CXRG:{StationId:"CXRG",City:"Ridgetown Rcs",State:"ON",Latitude:42.45,Longitude:-81.8833},CWGQ:{StationId:"CWGQ",City:"Roquemaure",State:"ON",Latitude:48.6166,Longitude:-79.45},CWNB:{StationId:"CWNB",City:"S.E. Shoal (Maps",State:"ON",Latitude:41.8166,Longitude:-82.4666},CZSJ:{StationId:"CZSJ",City:"Sandy Lake",State:"ON",Latitude:53.0666,Longitude:-93.35},CYZR:{StationId:"CYZR",City:"Sarnia Airport",State:"ON",Latitude:43,Longitude:-82.3},CYAM:{StationId:"CYAM",City:"Sault Ste Marie",State:"ON",Latitude:46.4666,Longitude:-84.5166},CYXL:{StationId:"CYXL",City:"Sioux Lookout Ar",State:"ON",Latitude:50.1166,Longitude:-91.9},CYSN:{StationId:"CYSN",City:"St. Catharines A",State:"ON",Latitude:43.2,Longitude:-79.1666},CYQC:{StationId:"CYQC",City:"Sterling",State:"QC",Latitude:46.3166,Longitude:-77.6333},CYSB:{StationId:"CYSB",City:"Sudbury Airport",State:"ON",Latitude:46.6333,Longitude:-80.8},CXNI:{StationId:"CXNI",City:"Superior W Radar",State:"ON",Latitude:48.85,Longitude:-89.1166},CYTJ:{StationId:"CYTJ",City:"Terrace Bay (Saw",State:"ON",Latitude:48.8166,Longitude:-87.0833},CYQT:{StationId:"CYQT",City:"Thunder Bay",State:"ON",Latitude:48.3666,Longitude:-89.3166},CZTB:{StationId:"CZTB",City:"Thunder Bay",State:"ON",Latitude:48.3666,Longitude:-89.3166},CYTS:{StationId:"CYTS",City:"Timmins Airport",State:"ON",Latitude:48.5666,Longitude:-81.3666},CYKZ:{StationId:"CYKZ",City:"Toronto Buttonvi",State:"ON",Latitude:43.8666,Longitude:-79.3666},CYTZ:{StationId:"CYTZ",City:"Toronto Il Vor",State:"ON",Latitude:43.6333,Longitude:-79.4},CYYZ:{StationId:"CYYZ",City:"Toronto/Pearson",State:"ON",Latitude:43.6666,Longitude:-79.6166},CXTO:{StationId:"CXTO",City:"Toronto City",State:"ON",Latitude:43.6666,Longitude:-79.4},CYTR:{StationId:"CYTR",City:"Trenton (Can Mil",State:"ON",Latitude:44.1166,Longitude:-77.5166},CWAB:{StationId:"CWAB",City:"Trowbridge (Maps",State:"ON",Latitude:48.2833,Longitude:-88.8666},CWJM:{StationId:"CWJM",City:"Upper Rideau Lak",State:"ON",Latitude:44.7,Longitude:-76.2833},CWDV:{StationId:"CWDV",City:"Upsala (Mars)",State:"ON",Latitude:49.0166,Longitude:-90.4666},CWIM:{StationId:"CWIM",City:"Upsala (Radar)",State:"ON",Latitude:49.0333,Longitude:-90.4166},CXVN:{StationId:"CXVN",City:"Vineland (Au8)",State:"ON",Latitude:43.1833,Longitude:-79.4},CYKF:{StationId:"CYKF",City:"Waterloo Well",State:"ON",Latitude:43.4666,Longitude:-80.3833},CYXZ:{StationId:"CYXZ",City:"Wawa Airport",State:"ON",Latitude:47.9666,Longitude:-84.7666},CWEC:{StationId:"CWEC",City:"Welcome Island",State:"ON",Latitude:48.3666,Longitude:-89.1166},CWMZ:{StationId:"CWMZ",City:"Western Isl (Map",State:"ON",Latitude:45.0166,Longitude:-80.3666},CYVV:{StationId:"CYVV",City:"Wiarton Air",State:"ON",Latitude:44.75,Longitude:-81.0833},CYQG:{StationId:"CYQG",City:"Windsor Airport",State:"ON",Latitude:42.2666,Longitude:-82.9666},CWSI:{StationId:"CWSI",City:"Simcoe (Mars)",State:"ON",Latitude:42.85,Longitude:-80.2666},CVBI:{StationId:"CVBI",City:"Kenora/Ont Vor",State:"ON",Latitude:49.4666,Longitude:-94.0333},CWPL:{StationId:"CWPL",City:"Pickle Lake",State:"ON",Latitude:51.4666,Longitude:-90.2},CTAE:{StationId:"CTAE",City:"Alfred",State:"ON",Latitude:45.55,Longitude:-74.8833},CTAL:{StationId:"CTAL",City:"Alexandria 71393",State:"ON",Latitude:45.3166,Longitude:-74.6166},CTCK:{StationId:"CTCK",City:"Moose Creek",State:"ON",Latitude:45.25,Longitude:-74.9666},CTCW:{StationId:"CTCW",City:"Cornwall",State:"ON",Latitude:45.0333,Longitude:-74.6833},CTNK:{StationId:"CTNK",City:"Algonquin Park",State:"ON",Latitude:45.5333,Longitude:-78.2666},CTWN:{StationId:"CTWN",City:"Winchester",State:"ON",Latitude:45.05,Longitude:-75.3333},CYYG:{StationId:"CYYG",City:"Charlottetown Ar",State:"PE",Latitude:46.2666,Longitude:-63.1166},CXBP:{StationId:"CXBP",City:"Confederation Br",State:"PE",Latitude:46.2333,Longitude:-63.7333},CWEP:{StationId:"CWEP",City:"East Point (Mars",State:"PE",Latitude:46.45,Longitude:-61.9666},CXMP:{StationId:"CXMP",City:"Maple Plains Pei",State:"PE",Latitude:46.3,Longitude:-63.5833},CWNE:{StationId:"CWNE",City:"North Point (Aut",State:"PE",Latitude:47.0666,Longitude:-64},CZSP:{StationId:"CZSP",City:"St Peters",State:"PE",Latitude:46.45,Longitude:-62.5833},CWSD:{StationId:"CWSD",City:"Summerside (Auto",State:"PE",Latitude:46.4166,Longitude:-63.85},CYSU:{StationId:"CYSU",City:"Summerside(Can M",State:"PE",Latitude:46.4166,Longitude:-63.8166},CAHR:{StationId:"CAHR",City:"Harrington Cda",State:"PE",Latitude:46.35,Longitude:-63.1666},CWZS:{StationId:"CWZS",City:"Amqui",State:"QC",Latitude:48.4666,Longitude:-67.4333},CYKO:{StationId:"CYKO",City:"Akulivik Airport",State:"QC",Latitude:60.8166,Longitude:-78.15},CYLA:{StationId:"CYLA",City:"Aupaluk",State:"QC",Latitude:59.2833,Longitude:-69.5833},CYBG:{StationId:"CYBG",City:"Bagotville(Can M",State:"QC",Latitude:48.3333,Longitude:-70.9833},CYBC:{StationId:"CYBC",City:"Baie Comeau Airp",State:"QC",Latitude:49.1166,Longitude:-68.2},CWRC:{StationId:"CWRC",City:"Barrage Angliers",State:"QC",Latitude:47.55,Longitude:-79.2333},CWHV:{StationId:"CWHV",City:"Beauceville",State:"QC",Latitude:46.2,Longitude:-70.7666},CXBO:{StationId:"CXBO",City:"Beauport",State:"QC",Latitude:46.8333,Longitude:-71.2},CYBX:{StationId:"CYBX",City:"Blanc Sablon Arp",State:"QC",Latitude:51.45,Longitude:-57.1666},CWKD:{StationId:"CWKD",City:"Bonnard(Auto)",State:"QC",Latitude:50.7333,Longitude:-71.0166},CWTB:{StationId:"CWTB",City:"Border (Maps)",State:"QC",Latitude:55.3166,Longitude:-63.2166},CWSG:{StationId:"CWSG",City:"Cap Chat (Maps)",State:"QC",Latitude:49.1166,Longitude:-66.65},CWRZ:{StationId:"CWRZ",City:"Cap D'espoir (Ma",State:"QC",Latitude:48.4166,Longitude:-64.3166},CWSF:{StationId:"CWSF",City:"Cap Madeleine(Ma",State:"QC",Latitude:49.25,Longitude:-65.3166},CWTN:{StationId:"CWTN",City:"Cap Tourmente",State:"QC",Latitude:47.0666,Longitude:-70.7833},CWEE:{StationId:"CWEE",City:"Chamouchouane Au",State:"QC",Latitude:49.2666,Longitude:-73.3333},CWUK:{StationId:"CWUK",City:"Chapais",State:"QC",Latitude:49.8166,Longitude:-74.9833},CWIS:{StationId:"CWIS",City:"Charlevoix (Mrx)",State:"QC",Latitude:47.2833,Longitude:-70.6333},CYML:{StationId:"CYML",City:"Charlevoix Airpo",State:"QC",Latitude:47.6,Longitude:-70.2166},CMBB:{StationId:"CMBB",City:"Chatham Brownbrg",State:"QC",Latitude:45.6166,Longitude:-74.4166},CWDM:{StationId:"CWDM",City:"Chevery (Mars)",State:"QC",Latitude:50.4666,Longitude:-59.6166},CYMT:{StationId:"CYMT",City:"Chibougamau Chap",State:"QC",Latitude:49.7666,Longitude:-74.5166},CWDT:{StationId:"CWDT",City:"Chute Des Passes",State:"QC",Latitude:49.8833,Longitude:-71.25},CWHQ:{StationId:"CWHQ",City:"Deschambaults",State:"QC",Latitude:46.6833,Longitude:-71.9666},CZEM:{StationId:"CZEM",City:"Eastmain River A",State:"QC",Latitude:52.2166,Longitude:-78.5166},CWFQ:{StationId:"CWFQ",City:"Frelighsburg",State:"QC",Latitude:45.0333,Longitude:-72.8166},CYGP:{StationId:"CYGP",City:"Gaspe Airport",State:"QC",Latitude:48.7666,Longitude:-64.4666},CYND:{StationId:"CYND",City:"Gatineau Airport",State:"QC",Latitude:45.5166,Longitude:-75.5666},CMHN:{StationId:"CMHN",City:"Harrington",State:"QC",Latitude:45.8,Longitude:-74.65},CYGV:{StationId:"CYGV",City:"Havre St Pierre",State:"QC",Latitude:50.2666,Longitude:-63.6166},CWHP:{StationId:"CWHP",City:"Heath Point (Map",State:"QC",Latitude:49.0666,Longitude:-61.7},CXHF:{StationId:"CXHF",City:"High Falls Cs (A",State:"QC",Latitude:45.8333,Longitude:-75.65},CWIG:{StationId:"CWIG",City:"Ice Aux Grues",State:"QC",Latitude:47.0666,Longitude:-70.5333},CWQR:{StationId:"CWQR",City:"Ice Aux Perroque",State:"QC",Latitude:50.2166,Longitude:-64.2166},CWQO:{StationId:"CWQO",City:"Ile Bicquette",State:"QC",Latitude:48.4166,Longitude:-68.9},CWVZ:{StationId:"CWVZ",City:"Ile Charron",State:"QC",Latitude:45.5833,Longitude:-73.5},CWER:{StationId:"CWER",City:"Ile D'orleans(Au",State:"QC",Latitude:47,Longitude:-70.8166},CWAF:{StationId:"CWAF",City:"Ile Rouge(Maps)",State:"QC",Latitude:48.0666,Longitude:-69.5333},CYGR:{StationId:"CYGR",City:"Iles De La Madel",State:"QC",Latitude:47.4166,Longitude:-61.7666},CWGR:{StationId:"CWGR",City:"Iles-De-La-Madel",State:"QC",Latitude:47.4166,Longitude:-61.8},CYPH:{StationId:"CYPH",City:"Inukjuak",State:"QC",Latitude:58.4666,Longitude:-78.0833},CYIK:{StationId:"CYIK",City:"Ivujivik Arpt(Sa",State:"QC",Latitude:62.4166,Longitude:-77.9333},CWJO:{StationId:"CWJO",City:"Jonquiere(Auto)",State:"QC",Latitude:48.4333,Longitude:-71.15},CYLU:{StationId:"CYLU",City:"Kangiksualujjuaq",State:"QC",Latitude:58.7166,Longitude:-65.9666},CYKG:{StationId:"CYKG",City:"Kangiqsujuaq(Saw",State:"QC",Latitude:61.5666,Longitude:-71.9166},CYAS:{StationId:"CYAS",City:"Kangirsuk (Sawr)",State:"QC",Latitude:60.0166,Longitude:-70},CYVP:{StationId:"CYVP",City:"Kuujjuaq Airport",State:"QC",Latitude:58.1166,Longitude:-68.4166},CYGW:{StationId:"CYGW",City:"Kuujjuarapik Arp",State:"QC",Latitude:55.2666,Longitude:-77.7666},CWIZ:{StationId:"CWIZ",City:"L'acadie",State:"QC",Latitude:45.2833,Longitude:-73.3333},CWEW:{StationId:"CWEW",City:"L'assomption",State:"QC",Latitude:45.8166,Longitude:-73.4333},CWUX:{StationId:"CWUX",City:"La Baie",State:"QC",Latitude:48.3,Longitude:-70.9333},CYAD:{StationId:"CYAD",City:"La Grande Iii(Sa",State:"QC",Latitude:53.5666,Longitude:-76.2},CYAH:{StationId:"CYAH",City:"La Grande Iv Arp",State:"QC",Latitude:53.75,Longitude:-73.6666},CYGL:{StationId:"CYGL",City:"La Grande Rivier",State:"QC",Latitude:53.6166,Longitude:-77.7},CWST:{StationId:"CWST",City:"La Pocatiere",State:"QC",Latitude:47.35,Longitude:-70.0166},CWDQ:{StationId:"CWDQ",City:"La Tuque",State:"QC",Latitude:47.4166,Longitude:-72.7833},CWEO:{StationId:"CWEO",City:"Lac Eon (Maps)",State:"QC",Latitude:51.8666,Longitude:-63.2666},CWTT:{StationId:"CWTT",City:"Lac Memphremagog",State:"QC",Latitude:45.2666,Longitude:-72.1666},CWBS:{StationId:"CWBS",City:"Lac St Pierre (A",State:"QC",Latitude:46.1833,Longitude:-72.9166},CXLT:{StationId:"CXLT",City:"Laterriere",State:"QC",Latitude:48.3,Longitude:-71.1333},CWLU:{StationId:"CWLU",City:"Lauzon",State:"QC",Latitude:46.8333,Longitude:-71.1666},CWQH:{StationId:"CWQH",City:"Lennoxville",State:"QC",Latitude:45.3666,Longitude:-71.8166},CMHB:{StationId:"CMHB",City:"Lochaber",State:"QC",Latitude:45.6333,Longitude:-75.2},CWBT:{StationId:"CWBT",City:"Longue Pt De Mon",State:"QC",Latitude:50.2666,Longitude:-64.2333},CWMJ:{StationId:"CWMJ",City:"Maniwaki",State:"QC",Latitude:46.2666,Longitude:-76},CWMW:{StationId:"CWMW",City:"Maniwaki",State:"QC",Latitude:46.3666,Longitude:-75.9666},CYNM:{StationId:"CYNM",City:"Matagami Airport",State:"QC",Latitude:49.7666,Longitude:-77.8166},CWMN:{StationId:"CWMN",City:"Mcgill Radar",State:"QC",Latitude:45.4166,Longitude:-73.9333},CWTA:{StationId:"CWTA",City:"Mc Tavish (Aut)",State:"QC",Latitude:45.5,Longitude:-73.5833},CWIX:{StationId:"CWIX",City:"Mistook (Aut)",State:"QC",Latitude:48.6,Longitude:-71.7166},CYYY:{StationId:"CYYY",City:"Mont Joli Airpor",State:"QC",Latitude:48.6,Longitude:-68.2166},CWHY:{StationId:"CWHY",City:"Mont Orford",State:"QC",Latitude:45.3166,Longitude:-72.25},CWPQ:{StationId:"CWPQ",City:"Montreal Est",State:"QC",Latitude:45.6333,Longitude:-73.5},CYUL:{StationId:"CYUL",City:"Montreal/Dorval",State:"QC",Latitude:45.4666,Longitude:-73.7333},CWTQ:{StationId:"CWTQ",City:"Montreal/Dorval",State:"QC",Latitude:45.4666,Longitude:-73.75},CYMX:{StationId:"CYMX",City:"Montreal/Mirabel",State:"QC",Latitude:45.6666,Longitude:-74.0166},CYNA:{StationId:"CYNA",City:"Natashquan Airp",State:"QC",Latitude:50.1666,Longitude:-61.8166},CYHH:{StationId:"CYHH",City:"Nemiscau Arpt(Sa",State:"QC",Latitude:51.7,Longitude:-76.1166},CWOC:{StationId:"CWOC",City:"New Carlisle1",State:"QC",Latitude:48.0166,Longitude:-65.3166},CWNQ:{StationId:"CWNQ",City:"Nicolet (Autob)",State:"QC",Latitude:46.2166,Longitude:-72.65},CWOD:{StationId:"CWOD",City:"Normandin",State:"QC",Latitude:48.85,Longitude:-72.55},CWXC:{StationId:"CWXC",City:"Onatchiway",State:"QC",Latitude:48.8833,Longitude:-71.0333},CWPD:{StationId:"CWPD",City:"Parc Des Laurent",State:"QC",Latitude:47.5666,Longitude:-71.2166},CWPK:{StationId:"CWPK",City:"Parent (Mars)",State:"QC",Latitude:47.9166,Longitude:-74.6166},CWTG:{StationId:"CWTG",City:"Pointe Des Monts",State:"QC",Latitude:49.3166,Longitude:-67.3666},CWIP:{StationId:"CWIP",City:"Pointe Noires Cs",State:"QC",Latitude:50.1666,Longitude:-66.4333},CWBY:{StationId:"CWBY",City:"Port Menier (Mar",State:"QC",Latitude:49.8166,Longitude:-64.2833},CYPX:{StationId:"CYPX",City:"Puvirgnituq",State:"QC",Latitude:60.0333,Longitude:-77.2666},CWQV:{StationId:"CWQV",City:"Pointe Claveau",State:"QC",Latitude:48.2666,Longitude:-70.1166},CYHA:{StationId:"CYHA",City:"Quaqtaq Airport",State:"QC",Latitude:61.0333,Longitude:-69.6166},CYQB:{StationId:"CYQB",City:"Quebec",State:"QC",Latitude:46.7833,Longitude:-71.3666},CMWD:{StationId:"CMWD",City:"Rawdon",State:"QC",Latitude:46.0166,Longitude:-73.8166},CWNH:{StationId:"CWNH",City:"Riviere Du Loup",State:"QC",Latitude:47.7833,Longitude:-69.5333},CYRJ:{StationId:"CYRJ",City:"Roberval Airport",State:"QC",Latitude:48.5166,Longitude:-72.2666},CYUY:{StationId:"CYUY",City:"Rouyn Airport",State:"QC",Latitude:48.2,Longitude:-78.8166},CYHU:{StationId:"CYHU",City:"Saint Hubert Arp",State:"QC",Latitude:45.5166,Longitude:-73.4166},CMLI:{StationId:"CMLI",City:"Saint Louis",State:"QC",Latitude:45.8666,Longitude:-73},CYZG:{StationId:"CYZG",City:"Salliut Arpt (Sa",State:"QC",Latitude:62.1666,Longitude:-75.6666},CYKL:{StationId:"CYKL",City:"Schefferville Ar",State:"QC",Latitude:54.7833,Longitude:-66.8166},CYZV:{StationId:"CYZV",City:"Sept Iles Airpor",State:"QC",Latitude:50.2166,Longitude:-66.2666},CXZV:{StationId:"CXZV",City:"Sept Iles",State:"QC",Latitude:50.2166,Longitude:-66.25},CXSH:{StationId:"CXSH",City:"Shawinigan",State:"QC",Latitude:46.5833,Longitude:-72.7333},CYSC:{StationId:"CYSC",City:"Sherbrooke",State:"QC",Latitude:45.4333,Longitude:-71.6833},CWBZ:{StationId:"CWBZ",City:"St Anicet",State:"QC",Latitude:45.1166,Longitude:-74.2666},CWJB:{StationId:"CWJB",City:"St Foy/U Laval",State:"QC",Latitude:46.7833,Longitude:-71.2666},CWIU:{StationId:"CWIU",City:"St Gedeon",State:"QC",Latitude:48.4833,Longitude:-71.7833},CWIA:{StationId:"CWIA",City:"St Henri",State:"QC",Latitude:48.65,Longitude:-71.85},CWJT:{StationId:"CWJT",City:"St Jovite (Autob",State:"QC",Latitude:46.0666,Longitude:-74.5666},CWIT:{StationId:"CWIT",City:"St Clothilde (A",State:"QC",Latitude:45.1666,Longitude:-73.6666},CWVQ:{StationId:"CWVQ",City:"Ste Anne De Bell",State:"QC",Latitude:45.4166,Longitude:-73.9166},CYTQ:{StationId:"CYTQ",City:"Tasiujaq A",State:"QC",Latitude:58.6666,Longitude:-69.95},CWBA:{StationId:"CWBA",City:"Temiscaminque",State:"QC",Latitude:46.7166,Longitude:-79.1},CWTY:{StationId:"CWTY",City:"Trois Rivieres",State:"QC",Latitude:46.35,Longitude:-72.5166},CYMU:{StationId:"CYMU",City:"Umiujaq",State:"QC",Latitude:56.5166,Longitude:-76.5166},CYVO:{StationId:"CYVO",City:"Val D'or Airport",State:"QC",Latitude:48.0666,Longitude:-77.7666},CYOY:{StationId:"CYOY",City:"Valcartier Airpo",State:"QC",Latitude:46.8833,Longitude:-71.5},CWHM:{StationId:"CWHM",City:"Varennes",State:"QC",Latitude:45.7166,Longitude:-73.3666},CWVY:{StationId:"CWVY",City:"Villeroy Radar",State:"QC",Latitude:46.45,Longitude:-71.9166},CYKQ:{StationId:"CYKQ",City:"Waskaganish Airp",State:"QC",Latitude:51.4666,Longitude:-78.75},CYNC:{StationId:"CYNC",City:"Wemindji",State:"QC",Latitude:53.0166,Longitude:-78.8166},CWPH:{StationId:"CWPH",City:"Inukjuak",State:"QC",Latitude:58.45,Longitude:-78.1166},CWQG:{StationId:"CWQG",City:"Valcartier",State:"QC",Latitude:46.8833,Longitude:-71.5},CXAM:{StationId:"CXAM",City:"Val D Irene Radr",State:"QC",Latitude:48.4833,Longitude:-67.6},CMBR:{StationId:"CMBR",City:"Beauharnos",State:"QC",Latitude:45.3166,Longitude:-73.9166},CMCT:{StationId:"CMCT",City:"St Constant",State:"QC",Latitude:45.3333,Longitude:-73.5833},CMCW:{StationId:"CMCW",City:"Covey Hill",State:"QC",Latitude:45.0166,Longitude:-73.8666},CMFM:{StationId:"CMFM",City:"Foret Montmorenc",State:"QC",Latitude:47.3166,Longitude:-71.15},CMGB:{StationId:"CMGB",City:"Granby",State:"QC",Latitude:45.3666,Longitude:-72.7666},CMHW:{StationId:"CMHW",City:"Howick",State:"QC",Latitude:45.1666,Longitude:-73.8666},CMLA:{StationId:"CMLA",City:"L Artifice",State:"QC",Latitude:45.0666,Longitude:-73.8333},CMPD:{StationId:"CMPD",City:"Piedmont",State:"QC",Latitude:45.8833,Longitude:-74.1},CMPL:{StationId:"CMPL",City:"S Polycarpe71306",State:"QC",Latitude:45.3,Longitude:-74.3},CMRG:{StationId:"CMRG",City:"Rougemont",State:"QC",Latitude:45.4166,Longitude:-73.05},CMRI:{StationId:"CMRI",City:"Rigaud",State:"QC",Latitude:45.4833,Longitude:-74.3},CMRU:{StationId:"CMRU",City:"Russeltown",State:"QC",Latitude:45.05,Longitude:-73.8},CMRY:{StationId:"CMRY",City:"Ruisseau Cranb",State:"QC",Latitude:45.1166,Longitude:-73.6833},CMSB:{StationId:"CMSB",City:"St Sabine",State:"QC",Latitude:45.2166,Longitude:-73.0166},CMSC:{StationId:"CMSC",City:"St Celestin",State:"QC",Latitude:46.2,Longitude:-72.45},CMSX:{StationId:"CMSX",City:"St M-D-Napiervil",State:"QC",Latitude:45.1833,Longitude:-73.6166},CMYT:{StationId:"CMYT",City:"St Chrysostome",State:"QC",Latitude:45.1333,Longitude:-73.7666},CWJI:{StationId:"CWJI",City:"Assiniboia Arpt",State:"SK",Latitude:49.7166,Longitude:-105.9166},CWIK:{StationId:"CWIK",City:"Broadview",State:"SK",Latitude:50.3666,Longitude:-102.5833},CXBK:{StationId:"CXBK",City:"Bratts Lake",State:"SK",Latitude:50.2,Longitude:-104.7},CWXU:{StationId:"CWXU",City:"Broadview Cs",State:"SK",Latitude:50.3833,Longitude:-102.6833},CWVT:{StationId:"CWVT",City:"Buffalo Narrows",State:"SK",Latitude:55.8166,Longitude:-108.4166},CYVT:{StationId:"CYVT",City:"Buffalo Narrows",State:"SK",Latitude:55.8166,Longitude:-108.4166},CWLZ:{StationId:"CWLZ",City:"Candle Lake",State:"SK",Latitude:53.7333,Longitude:-105.2666},CXXX:{StationId:"CXXX",City:"Cluff Lake",State:"SK",Latitude:58.3833,Longitude:-109.5166},CWAQ:{StationId:"CWAQ",City:"Coronach Spc",State:"SK",Latitude:49.05,Longitude:-105.4833},CWVP:{StationId:"CWVP",City:"Cypress Hills Pa",State:"SK",Latitude:49.6333,Longitude:-109.5166},CWEH:{StationId:"CWEH",City:"Eastend Cypress",State:"SK",Latitude:49.4166,Longitude:-108.9666},CWOK:{StationId:"CWOK",City:"Elbow (Mars)",State:"SK",Latitude:51.1166,Longitude:-106.5666},CYEN:{StationId:"CYEN",City:"Estevan Airport",State:"SK",Latitude:49.2166,Longitude:-102.9666},CYHB:{StationId:"CYHB",City:"Hudson Bay",State:"SK",Latitude:52.8166,Longitude:-102.3166},CWBD:{StationId:"CWBD",City:"Indian Head Cda",State:"SK",Latitude:50.55,Longitude:-103.65},CWHN:{StationId:"CWHN",City:"Jimmy Lake",State:"SK",Latitude:54.8833,Longitude:-109.9666},CYKJ:{StationId:"CYKJ",City:"Key Lake",State:"SK",Latitude:57.25,Longitude:-105.6166},CYKY:{StationId:"CYKY",City:"Kindersley",State:"SK",Latitude:51.5166,Longitude:-109.1666},CYVC:{StationId:"CYVC",City:"La Ronge Airport",State:"SK",Latitude:55.15,Longitude:-105.2666},CXOX:{StationId:"CXOX",City:"La Ronge Airport",State:"SK",Latitude:55.15,Longitude:-105.2666},CWJX:{StationId:"CWJX",City:"Leader Arpt (Aut",State:"SK",Latitude:50.8833,Longitude:-109.5},CWLE:{StationId:"CWLE",City:"Lucky Lake (Auto",State:"SK",Latitude:50.95,Longitude:-107.15},CWMQ:{StationId:"CWMQ",City:"Maplecreek (Auto",State:"SK",Latitude:49.9,Longitude:-109.4666},CYLJ:{StationId:"CYLJ",City:"Meadow Lake Airp",State:"SK",Latitude:54.1166,Longitude:-108.5166},CWFF:{StationId:"CWFF",City:"Melfort (Autob)",State:"SK",Latitude:52.8166,Longitude:-104.5833},CYMJ:{StationId:"CYMJ",City:"Moose Jaw (Can M",State:"SK",Latitude:50.3166,Longitude:-105.5333},CZMJ:{StationId:"CZMJ",City:"Moose Jaw",State:"SK",Latitude:50.3333,Longitude:-105.5666},CYBU:{StationId:"CYBU",City:"Nipawin Airport",State:"SK",Latitude:53.3166,Longitude:-104},CWBU:{StationId:"CWBU",City:"Nipawin",State:"SK",Latitude:53.3333,Longitude:-104.0166},CYQW:{StationId:"CYQW",City:"North Battleford",State:"SK",Latitude:52.7666,Longitude:-108.25},CYPA:{StationId:"CYPA",City:"Prince Albert Ar",State:"SK",Latitude:53.2166,Longitude:-105.6666},CYQR:{StationId:"CYQR",City:"Regina Airport",State:"SK",Latitude:50.4333,Longitude:-104.6666},CWDJ:{StationId:"CWDJ",City:"Regina Universit",State:"SK",Latitude:50.4,Longitude:-104.5833},CWKO:{StationId:"CWKO",City:"Rockglen (Mars)",State:"SK",Latitude:49.1666,Longitude:-105.9666},CWRJ:{StationId:"CWRJ",City:"Rosetown East (A",State:"SK",Latitude:51.5666,Longitude:-107.9166},CYXE:{StationId:"CYXE",City:"Saskatoon Airpor",State:"SK",Latitude:52.1666,Longitude:-106.7},CWJH:{StationId:"CWJH",City:"Southend (Autob)",State:"SK",Latitude:56.3166,Longitude:-103.2666},CWSR:{StationId:"CWSR",City:"Spiritwood West",State:"SK",Latitude:53.3666,Longitude:-107.5333},CYSF:{StationId:"CYSF",City:"Stony Rapids Arp",State:"SK",Latitude:59.25,Longitude:-105.8166},CYYN:{StationId:"CYYN",City:"Swift Curren",State:"SK",Latitude:50.2666,Longitude:-107.6666},CWDC:{StationId:"CWDC",City:"Uranium City(Mar",State:"SK",Latitude:59.5666,Longitude:-108.4666},CWVN:{StationId:"CWVN",City:"Val Marie Se(Aut",State:"SK",Latitude:49.0666,Longitude:-107.5666},CWIW:{StationId:"CWIW",City:"Watrous East (Au",State:"SK",Latitude:51.6666,Longitude:-105.4},CWWF:{StationId:"CWWF",City:"Weyburn (Autob)",State:"SK",Latitude:49.7,Longitude:-103.8},CWOY:{StationId:"CWOY",City:"Wynyard (Aut)",State:"SK",Latitude:51.7666,Longitude:-104.2},CYQV:{StationId:"CYQV",City:"Yorkton Airport",State:"SK",Latitude:51.2666,Longitude:-102.4666},CYDR:{StationId:"CYDR",City:"Waldron Vor",State:"SK",Latitude:50.3666,Longitude:-102.5333},CZFD:{StationId:"CZFD",City:"Canada Artcc",State:"SK",Latitude:59.3166,Longitude:-107.1833},CYXQ:{StationId:"CYXQ",City:"Beaver Creek Arp",State:"YT",Latitude:62.4166,Longitude:-140.8666},CYDB:{StationId:"CYDB",City:"Burwash",State:"YT",Latitude:61.3666,Longitude:-139.05},CXCK:{StationId:"CXCK",City:"Carmacks",State:"YT",Latitude:62.1166,Longitude:-136.2},CYDA:{StationId:"CYDA",City:"Dawson Airport",State:"YT",Latitude:64.0333,Longitude:-139.1166},CWUM:{StationId:"CWUM",City:"Faro (Mars)",State:"YT",Latitude:62.2166,Longitude:-133.3333},CZFA:{StationId:"CZFA",City:"Faro Apt Artcc",State:"YT",Latitude:62.2,Longitude:-133.3666},CWHT:{StationId:"CWHT",City:"Haines Junction",State:"YT",Latitude:60.7666,Longitude:-137.5833},CWJN:{StationId:"CWJN",City:"Herschel Island",State:"YT",Latitude:69.5666,Longitude:-138.9166},CWKM:{StationId:"CWKM",City:"Komakuk Beach",State:"YT",Latitude:69.6,Longitude:-140.1666},CWZR:{StationId:"CWZR",City:"Margaret Lake",State:"YT",Latitude:68.8,Longitude:-140.85},CYMA:{StationId:"CYMA",City:"Mayo Airport",State:"YT",Latitude:63.6166,Longitude:-135.8666},CYOC:{StationId:"CYOC",City:"Old Crow Airport",State:"YT",Latitude:67.5666,Longitude:-139.8166},CYUA:{StationId:"CYUA",City:"Shingle Point Ar",State:"YT",Latitude:68.95,Longitude:-137.2833},CWVH:{StationId:"CWVH",City:"Storm Hills",State:"YT",Latitude:68.9,Longitude:-133.9333},CWZW:{StationId:"CWZW",City:"Teslin (Mars)",State:"YT",Latitude:60.1666,Longitude:-132.7333},CYZW:{StationId:"CYZW",City:"Teslin Arpt (Aut",State:"YT",Latitude:60.1666,Longitude:-132.75},CYQH:{StationId:"CYQH",City:"Watson Lake Airp",State:"YT",Latitude:60.1166,Longitude:-128.8166},CXQH:{StationId:"CXQH",City:"Watson Lake",State:"YT",Latitude:60.1166,Longitude:-128.8166},CYXY:{StationId:"CYXY",City:"Whitehorse Airpo",State:"YT",Latitude:60.7166,Longitude:-135.0666},PGUM:{StationId:"PGUM",City:"Agana",State:"GU",Latitude:13.4833,Longitude:144.8},PGUA:{StationId:"PGUA",City:"Mariana/Andersen",State:"GU",Latitude:13.5666,Longitude:144.9166},PGAC:{StationId:"PGAC",City:"Taguac",State:"GU",Latitude:13.55,Longitude:144.8166},PGWT:{StationId:"PGWT",City:"Peipeinimaru/Tin",State:"GU",Latitude:14.9833,Longitude:145.6166},PAGP:{StationId:"PAGP",City:"Pagan/N. Mariana",State:"UM",Latitude:18,Longitude:145.4166},PGNT:{StationId:"PGNT",City:"Sabanettan/Tinia",State:"UM",Latitude:15,Longitude:145.6166},PGTI:{StationId:"PGTI",City:"West Tinian",State:"UM",Latitude:15,Longitude:145.6166},PJON:{StationId:"PJON",City:"Johnston Island",State:"UM",Latitude:16.7333,Longitude:-169.5166},PWAK:{StationId:"PWAK",City:"Wake Island Airf",State:"UM",Latitude:19.2833,Longitude:166.65},PLCH:{StationId:"PLCH",City:"Christmas/Cassid",State:"UM",Latitude:1.9833,Longitude:-157.35},PLFA:{StationId:"PLFA",City:"Fanning Island",State:"UM",Latitude:3.85,Longitude:-159.3666},PLPA:{StationId:"PLPA",City:"Palmyra/Cooper(A",State:"UM",Latitude:5.8666,Longitude:-162.05},PKMA:{StationId:"PKMA",City:"Eniwetok Aux Af",State:"UM",Latitude:11.3333,Longitude:162.3333},PLUR:{StationId:"PLUR",City:"Jarvis Island (A",State:"UM",Latitude:-.3666,Longitude:-160.0166},PKMJ:{StationId:"PKMJ",City:"Majuro Wso Airpo",State:"MH",Latitude:7.0666,Longitude:171.2666},PKMR:{StationId:"PKMR",City:"Majuro Atoll/Nws",State:"MH",Latitude:7.0833,Longitude:171.3833},PKWA:{StationId:"PKWA",City:"Kwajalein/Buchol",State:"MH",Latitude:8.7166,Longitude:167.7166},MLIP:{StationId:"MLIP",City:"Mili/Marshall Is",State:"MH",Latitude:6,Longitude:172},TJBQ:{StationId:"TJBQ",City:"Aguadilla/Borinq",State:"PR",Latitude:18.5,Longitude:-67.1333},TJIG:{StationId:"TJIG",City:"Fern Luis Ribas",State:"PR",Latitude:18.45,Longitude:-66.1},TJMZ:{StationId:"TJMZ",City:"Mayaguez/Eugenio",State:"PR",Latitude:18.2666,Longitude:-67.15},TJNR:{StationId:"TJNR",City:"Roosevelt Rd Nas",State:"PR",Latitude:18.25,Longitude:-65.6333},TJPS:{StationId:"TJPS",City:"Ponce/Mercedita",State:"PR",Latitude:18.0166,Longitude:-66.5666},TJUA:{StationId:"TJUA",City:"San Juan/Cayey",State:"PR",Latitude:18.1166,Longitude:-66.0833},TJSJ:{StationId:"TJSJ",City:"San Juan/Wfo",State:"PR",Latitude:18.4333,Longitude:-66.0166}},draw=(()=>{const t=(t,e,i,a,n,o,d,u=0,S="start")=>{t.textAlign=S,t.font=i+` '${e}'`,t.shadowColor="#000000",t.shadowOffsetX=u,t.shadowOffsetY=u,t.strokeStyle="#000000",t.lineWidth=2,t.strokeText(d,n,o),t.fillStyle=a,t.fillText(d,n,o),t.fillStyle="",t.strokeStyle="",t.shadowOffsetX=0,t.shadowOffsetY=0};return{horizontalGradient:(t,e,i,a,n,o,d)=>{const u=t.createLinearGradient(0,i,0,n);u.addColorStop(0,o),u.addColorStop(.4,d),u.addColorStop(.6,d),u.addColorStop(1,o),t.fillStyle=u,t.fillRect(e,i,a-e,n-i)},horizontalGradientSingle:(t,e,i,a,n,o,d)=>{const u=t.createLinearGradient(0,i,0,n);u.addColorStop(0,o),u.addColorStop(1,d),t.fillStyle=u,t.fillRect(e,i,a-e,n-i)},triangle:(t,e,i,a,n,o,d,u)=>{t.fillStyle=e,t.beginPath(),t.moveTo(i,a),t.lineTo(n,o),t.lineTo(d,u),t.fill()},titleText:(e,i,a)=>{const n="Star4000",o="24pt",d="#ffff00";let u=55;a?(t(e,n,o,d,170,u,i,3),u+=30,t(e,n,o,d,170,u,a,3),u+=30):(u+=15,t(e,n,o,d,170,u,i,3),u+=30)},text:t,box:(t,e,i,a,n,o)=>{t.fillStyle=e,t.fillRect(i,a,n,o)},border:(t,e,i,a,n,o,d)=>{t.strokeStyle=e,t.lineWidth=i,t.strokeRect(a,n,o,d)},theme:1,topColor1:"rgb(192, 91, 2)",topColor2:"rgb(72, 34, 64)",sideColor1:"rgb(46, 18, 80)",sideColor2:"rgb(192, 91, 2)"}})(),STATUS={loading:Symbol("loading"),loaded:Symbol("loaded"),failed:Symbol("failed"),noData:Symbol("noData")};class WeatherDisplay{constructor(t,e,i,a){this.navId=t,this.elemId=void 0,this.gifs=[],this.data=void 0,this.loadingStatus=STATUS.loading,this.timing={totalScreens:1,baseDelay:5e3,delay:1},this.navBaseCount=0,this.screenIndex=0,this.setStatus(STATUS.loading),this.createCanvas(e,i,a)}setStatus(t){this.status=t,navigation.updateStatus({id:this.navId,status:this.status})}get status(){return this.loadingStatus}set status(t){this.loadingStatus=t}createCanvas(t,e=640,i=480){if(this.elemId)return;this.elemId=t;document.getElementById("container").innerHTML+=`<canvas id='${t+"Canvas"}' width='${e}' height='${i}'/ style='display: none;'>`}getData(){if(this.data=void 0,this.setStatus(STATUS.loading),Array.isArray(this.timing.delay)&&"number"==typeof this.timing.delay[0]&&!this.timing.fullDelay){let t=0;this.timing.fullDelay=this.timing.delay.map(e=>{const i=t+e;return t+=e,i})}Array.isArray(this.timing.delay)&&(this.timing.totalScreens=this.timing.delay.length)}drawCanvas(){this.gifs.forEach(t=>t.pause()),this.gifs.length=0,this.canvas=document.getElementById(this.elemId+"Canvas"),this.context=this.canvas.getContext("2d"),this.context.clearRect(0,0,this.canvas.width,this.canvas.height)}finishDraw(){let t=!0,e=!0,i=!0,a=!0,n=void 0;"almanac"===this.elemId&&(e=!1),"travelForecast"===this.elemId&&(e=!1),"regionalForecast0"===this.elemId&&(e=!1),"regionalForecast1"===this.elemId&&(e=!1),"regionalForecast2"===this.elemId&&(e=!1),"radar"===this.elemId&&(t=!1,i=!1,e=!1),"hazards"===this.elemId&&(e=!1,n=!0,a=!1),i&&(this.drawCurrentDateTime(n),this.dateTimeInterval||setInterval(()=>this.drawCurrentDateTime(n),100)),a&&this.drawLogoImage(),e&&this.drawNoaaImage()}drawCurrentDateTime(t){if(!this.isActive())return;const{DateTime:e}=luxon,i="Star4000 Small",a="24pt",n="#ffffff";if(!this.dateTimeBackground){const t=this.context.getImageData(410,30,175,60);if(0===t.data[0])return;this.dateTimeBackground=t}t?draw.box(this.context,"rgb(25, 50, 112)",0,389,640,16):this.context.putImageData(this.dateTimeBackground,410,30);const o=e.local(),d=o.toLocaleString(e.TIME_WITH_SECONDS).padStart(11," ");let u,S;t?(u=400,S=402):(u=410,S=65),navigation.units()===UNITS.metric&&(u+=45),draw.text(this.context,i,a,n,u,S,d.toUpperCase(),2);const r=o.toFormat(" ccc LLL ")+o.day.toString().padStart(2," ");t?(u=55,S=402):(u=410,S=85),draw.text(this.context,i,a,n,u,S,r.toUpperCase(),2)}async drawNoaaImage(){this.drawNoaaImage.image||(this.drawNoaaImage.image=utils.image.load("images/noaa5.gif"));const t=await this.drawNoaaImage.image;this.context.drawImage(t,356,39)}async drawLogoImage(){this.drawLogoImage.image||(this.drawLogoImage.image=utils.image.load("images/Logo3.png"));const t=await this.drawLogoImage.image;this.context.drawImage(t,50,30,85,67)}showCanvas(t){if(t===navigation.msg.command.firstFrame&&this.navNext(t),t===navigation.msg.command.lastFrame&&this.navPrev(t),"block"===this.canvas.style.display)return!1;this.canvas.style.display="block",this.startNavCount(navigation.isPlaying()),t||t&&this.drawCanvas()}hideCanvas(){this.stopNavBaseCount(!0),this.canvas&&(this.canvas.style.display="none")}isActive(){return null!==document.getElementById(this.elemId+"Canvas").offsetParent}navBaseTime(){if(navigation.isPlaying()&&this.isActive())if(this.navBaseCount++,this.baseCountChange&&this.baseCountChange(this.navBaseCount),"number"!=typeof this.timing.delay){if(Array.isArray(this.timing.delay)&&"number"==typeof this.timing.delay[0]){if(this.timing.fullDelay.indexOf(this.navBaseCount)<0&&this.navBaseCount<=this.timing.fullDelay[this.timing.totalScreens-1])return;this.navNext()}}else this.navNext()}navNext(t){if(t===navigation.msg.command.firstFrame?this.resetNavBaseCount():this.screenIndex++,this.screenIndex>=this.timing.totalScreens)return this.screenIndex=this.timing.totalScreens-1,this.sendNavDisplayMessage(navigation.msg.response.next),void this.stopNavBaseCount();this.baseCountFromScreenIndex(),this.screenIndexChange?this.screenIndexChange(this.screenIndex):this.drawCanvas()}navPrev(t){if(t===navigation.msg.command.lastFrame?this.screenIndex=this.timing.totalScreens-1:this.screenIndex--,this.screenIndex<0)return this.screenIndex=0,void this.sendNavDisplayMessage(navigation.msg.response.previous);this.baseCountFromScreenIndex(),this.screenIndexChange?this.screenIndexChange(this.screenIndex):this.drawCanvas()}baseCountFromScreenIndex(){Array.isArray(this.timing.delay)&&(0!==this.screenIndex?this.navBaseCount=this.timing.fullDelay[this.screenIndex]:this.navBaseCount=0)}startNavCount(t){t&&this.resetNavBaseCount(),this.navInterval||(this.navInterval=setInterval(()=>this.navBaseTime(),this.timing.baseDelay))}stopNavBaseCount(t){clearInterval(this.navInterval),this.navInterval=void 0,t&&this.resetNavBaseCount()}resetNavBaseCount(){this.navBaseCount=0,this.screenIndex=0}sendNavDisplayMessage(t){navigation.displayNavMessage({id:this.navId,type:t})}}const icons=(()=>{const t=t=>"images/r/"+t;return{getWeatherIconFromIconLink:function(e,i=!0){let a=e.toLowerCase().match(/[^/]+$/)[0].match(/(.*?)[,?&.]/)[1];if("dualimage"===a){a=e.match(/&j=(.*)&/)[1]}switch(a+(i?"":"-n")){case"skc":return t("Sunny.gif");case"skc-n":return t("Clear.gif");case"cc_mostlycloudy1.gif":return t("Mostly-Cloudy.gif");case"cc_mostlycloudy0.gif":return t("Partly-Clear.gif");case"cc_partlycloudy1.gif":return t("Partly-Cloudy.gif");case"cc_partlycloudy0.gif":return t("Mostly-Clear.gif");case"cc_cloudy.gif":return t("Cloudy.gif");case"cc_fog.gif":return t("Fog.gif");case"sleet.gif":return t("Sleet.gif");case"ef_scatshowers.gif":return t("Scattered-Showers.gif");case"cc_showers.gif":return t("Shower.gif");case"cc_rain.gif":return t("Rain.gif");case"light-snow.gif":return t("Light-Snow.gif");case"cc_snowshowers.gif":return t("Heavy-Snow.gif");case"cc_snow.gif":case"heavy-snow.gif":return t("Heavy-Snow.gif");case"cc_rainsnow.gif":return t("Rain-Snow.gif");case"cc_freezingrain.gif":return t("Freezing-Rain.gif");case"cc_mix.gif":return t("Wintry-Mix.gif");case"freezing-rain-sleet.gif":return t("Freezing-Rain-Sleet.gif");case"snow-sleet.gif":return t("Snow-Sleet.gif");case"ef_scattstorms.gif":return t("Scattered-Tstorms.gif");case"ef_scatsnowshowers.gif":return t("Scattered-Snow-Showers.gif");case"cc_tstorm.gif":case"ef_isolatedtstorms.gif":return t("Thunderstorm.gif");case"cc_windy.gif":case"cc_windy2.gif":return t("Windy.gif");case"blowing-snow.gif":return t("Blowing-Snow.gif");default:return console.error("Unable to locate icon for '"+e+"'"),!1}},getWeatherRegionalIconFromIconLink:(e,i)=>{void 0===i&&(i=e.indexOf("/night/")>=0);let a=e.toLowerCase().match(/[^/]+$/)[0].match(/(.*?)[,?&.]/)[1];if("dualimage"===a){a=e.match(/&j=(.*)&/)[1]}switch(a+(i?"-n":"")){case"skc":case"hot":case"haze":return t("Sunny.gif");case"skc-n":case"nskc":case"nskc-n":return t("Clear-1992.gif");case"bkn":return t("Mostly-Cloudy-1994-2.gif");case"bkn-n":case"few-n":case"nfew-n":case"nfew":return t("Partly-Clear-1994-2.gif");case"sct":case"few":return t("Partly-Cloudy.gif");case"sct-n":case"nsct":case"nsct-n":return t("Mostly-Clear.gif");case"ovc":return t("Cloudy.gif");case"fog":return t("Fog.gif");case"rain_sleet":return t("Sleet.gif");case"rain_showers":case"rain_showers_high":return t("Scattered-Showers-1994-2.gif");case"rain_showers-n":case"rain_showers_high-n":return t("Scattered-Showers-Night-1994-2.gif");case"rain":return t("Rain-1992.gif");case"snow":return t("Heavy-Snow-1994-2.gif");case"rain_snow":return t("Rain-Snow-1992.gif");case"snow_fzra":return t("Freezing-Rain-Snow-1992.gif");case"fzra":return t("Freezing-Rain-1992.gif");case"snow_sleet":return t("Wintry-Mix-1992.gif");case"tsra_sct":case"tsra":return t("Scattered-Tstorms-1994-2.gif");case"tsra_sct-n":case"tsra-n":return t("Scattered-Tstorms-Night-1994-2.gif");case"tsra_hi":case"tsra_hi-n":case"hurricane":return t("Thunderstorm.gif");case"wind_few":case"wind_sct":case"wind_bkn":case"wind_ovc":return t("Wind.gif");case"wind_skc":return t("Sunny-Wind-1994.gif");case"wind_skc-n":return t("Clear-Wind-1994.gif");case"blizzard":return t("Blowing Snow.gif");default:return console.log(`Unable to locate regional icon for ${e} ${i}`),!1}}}})(),utils=(()=>{Math.round2=(t,e)=>Number(Math.round(t+"e"+e)+"e-"+e);const t=t=>{switch(t){case"EST":return-5;case"EDT":return-4;case"CST":return-6;case"CDT":return-5;case"MST":return-7;case"MDT":return-6;case"PST":return-8;case"PDT":return-7;case"AST":case"AKST":return-9;case"ADT":case"AKDT":return-8;case"HST":return-10;case"HDT":return-9;default:return null}};Date.prototype.getTimeZone=function(){const t=this.toLocaleTimeString("en-us",{timeZoneName:"short"}).split(" ")[2];if(null===t)switch(this.toTimeString().split(" ")[2]){case"(Eastern":return"EST";case"(Central":return"CST";case"(Mountain":return"MST";case"(Pacific":return"PST";case"(Alaskan":return"AST";case"(Hawaiian":return"HST"}else if(4===t.length)return t.substr(1);return t},Date.prototype.addHours=function(t){var e=new Date(this.valueOf());return e.setHours(e.getHours()+t),e},Date.prototype.getDayShortName=function(){return["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][this.getDay()]},Date.prototype.getMonthShortName=function(){return["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][this.getMonth()]};Date.prototype.getFormattedTime=function(){let t,e,i;switch(_Units){case Units.English:return t=0===this.getHours()?"12":this.getHours()>12?this.getHours()-12:this.getHours(),e=(this.getMinutes()<10?"0":"")+this.getMinutes(),i=this.getHours()<12?"am":"pm",t+":"+e+" "+i;default:return t=(this.getHours()<10?" ":"")+this.getHours(),e=(this.getMinutes()<10?"0":"")+this.getMinutes(),t+":"+e}},Date.prototype.toTimeAMPM=function(){let t=this.getHours(),e=this.getMinutes(),i=t>=12?"pm":"am";return t%=12,t=t||12,e=e<10?"0"+e:e,t+":"+e+" "+i};return String.prototype.startsWith||(String.prototype.startsWith=function(t,e){return e=e||0,this.substr(e,t.length)===t}),String.prototype.endsWith||(String.prototype.endsWith=function(t,e){var i=this.toString();("number"!=typeof e||!isFinite(e)||Math.floor(e)!==e||e>i.length)&&(e=i.length),e-=t.length;var a=i.lastIndexOf(t,e);return-1!==a&&a===e}),String.prototype.wordWrap=function(){let t,e,i,a,n,o=this,d=arguments.length>=1?arguments[0]:75,u=arguments.length>=2?arguments[1]:"\n",S=arguments.length>=3&&arguments[2];if(o+="",d<1)return o;for(t=-1,i=(n=o.split(/\r\n|\n|\r/)).length;++t<i;n[t]+=a)for(a=n[t],n[t]="";a.length>d;n[t]+=a.slice(0,e)+((a=a.slice(e)).length?u:""))e=2===S||(e=a.slice(0,d+1).match(/\S*(\s)?$/))[1]?d:e.input.length-e[0].length||!0===S&&d||e.input.length+(e=a.slice(d).match(/^\S*/))[0].length;return n.join("\n").replace(/\n /g,"\n")},{image:{load:t=>new Promise(e=>{const i=new Image;i.onload=t=>{e(t.target)},t instanceof Blob?i.src=window.URL.createObjectURL(t):i.src=t}),superGifAsync:t=>new Promise(e=>{const i=new SuperGif(t);i.load(()=>e(i))})},weather:{getPoint:async(t,e)=>{try{return await $.ajax({type:"GET",url:`https://api.weather.gov/points/${t},${e}`,dataType:"json",crossDomain:!0})}catch(i){return console.error("Unable to get point"),console.error(t,e),console.error(i),!1}}},units:{mphToKph:t=>Math.round(1.60934*t),kphToMph:t=>Math.round(t/1.60934),celsiusToFahrenheit:t=>Math.round(9*t/5+32),fahrenheitToCelsius:t=>Math.round2(5*(t-32)/9,1),milesToKilometers:t=>Math.round(1.60934*t),kilometersToMiles:t=>Math.round(t/1.60934),feetToMeters:t=>Math.round(.3048*t),metersToFeet:t=>Math.round(t/.3048),inchesToCentimeters:t=>Math.round2(2.54*t,2),pascalToInHg:t=>Math.round2(2953e-7*t,2)},calc:{relativeHumidity:(t,e)=>{const i=t,a=e;return Math.round(Math.exp(17.625*a/(243.04+a))/Math.exp(17.625*i/(243.04+i))*100)},heatIndex:(t,e)=>{const i=t,a=e;let n,o=.5*(i+61+1.2*(i-68)+.094*a);return i>=80&&(o=2.04901523*i-42.379+10.14333127*a-.22475541*i*a-.00683783*i*i-.05481717*a*a+.00122874*i*i*a+85282e-8*i*a*a-199e-8*i*i*a*a,a<13&&i>80&&i<112?(n=(13-a)/4*Math.sqrt((17-Math.abs(i-95))/17),o-=n):a>85&&i>80&&i<87&&(n=(a-85)/10*((87-i)/5),o+=n)),o<t&&(o=t),Math.round(o)},windChill:(t,e)=>{if("0"===e||"Calm"===e||"NA"===e)return"";const i=t,a=e;return Math.round(35.74+.6215*i-35.75*Math.pow(a,.16)+.4275*i*Math.pow(a,.16))},directionToNSEW:t=>["N","NNE","NE","ENE","E","ESE","SE","SSE","S","SSW","SW","WSW","W","WNW","NW","NNW"][Math.floor(t/22.5+.5)%16],distance:(t,e,i,a)=>Math.sqrt((i-=t)*i+(a-=e)*a),wrap:(t,e)=>(t%e+e)%e},dateTime:{getDateFromUTC:(t,e)=>{const i=e.split(":");return new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),i[0],i[1],0))},getTimeZoneOffsetFromUTC:t,dateToTimeZone:(e,i)=>{const a=t(e.getTimeZone()),n=t(i);let o=new Date(e);return o=o.addHours(-1*a),o=o.addHours(n),o},getDateFromTime:(e,i,a)=>{const n=i.split(":");if(a){const i=-1*t(a);return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),n[0],n[1],0)).addHours(i)}return new Date(e.getFullYear(),e.getMonth(),e.getDate(),n[0],n[1],0)},xmlDateToJsDate:t=>{let e=t.split(/[-T:+]/g);void 0===e[5]&&console.log("bit[5] is undefined"),e[5]=e[5].replace("Z","");const i=new Date(e[0],e[1]-1,e[2]);i.setHours(e[3],e[4],e[5]),e.length<8&&(e.push("00"),e.push("00"));const a=("-"===(/\d\d-\d\d:\d\d$/.test(t)?"-":"+")?-1:1)*(60*e[6]+Number(e[7]));return i.setMinutes(i.getMinutes()-a-i.getTimezoneOffset())},timeTo24Hour:t=>{const e=t.substr(t.length-2),i=t.split(":")[1].substr(0,2);let a=t.split(":")[0];switch(e.toLowerCase()){case"am":"12"===a&&(a="0");break;case"pm":"12"!==a&&(a=(parseInt(a)+12).toString())}return a+":"+i}},object:{shallowEqual:(t,e)=>{if("object"!=typeof t)return!1;if("object"!=typeof e)return!1;const i=Object.keys(t),a=Object.keys(e);if(i.length!==a.length)return!1;for(const a of i)if("object"!=typeof t[a]&&t[a]!==e[a])return!1;return!0}}}})();$.ajaxCORS=function(t){return t.url=t.url.replace("https://api.weather.gov/",""),$.ajax(t)};class CurrentWeather extends WeatherDisplay{constructor(t,e,i){super(t,e),this.backgroundImage=utils.image.load("images/BackGround1_1.png"),this.getData(i)}async getData(t){let e,i;super.getData();try{const a=$.ajaxCORS({type:"GET",url:`https://api.weather.gov/stations/${t.stationId}/observations`,data:{limit:2},dataType:"json",crossDomain:!0}),n=$.ajax({type:"GET",url:"https://api.weather.gov/stations/"+t.stationId,dataType:"json",crossDomain:!0});[e,i]=await Promise.all([a,n])}catch(t){return console.error("Unable to get current observations"),console.error(t),void this.setStatus(STATUS.error)}this.data=Object.assign({},e,{station:i}),this.drawCanvas()}async drawCanvas(){super.drawCanvas();const t=this.data.features[0].properties;let e=Math.round(t.temperature.value),i=Math.round(t.dewpoint.value),a=Math.round(t.cloudLayers[0].base.value),n="m.",o=Math.round(t.visibility.value/1e3),d=" km.",u=Math.round(t.windSpeed.value);const S=utils.calc.directionToNSEW(t.windDirection.value);let r=Math.round(t.barometricPressure.value),L=Math.round(t.heatIndex.value),C=Math.round(t.windChill.value),s=Math.round(t.windGust.value),g=Math.round(t.relativeHumidity.value);const l=icons.getWeatherRegionalIconFromIconLink(t.icon);let K="";const y=t.textDescription,I=t.barometricPressure.value-this.data.features[1].properties.barometricPressure.value;I>150&&(K="R"),I<-150&&(K="F"),navigation.units()===UNITS.english&&(e=utils.units.celsiusToFahrenheit(e),i=utils.units.celsiusToFahrenheit(i),a=100*Math.round(utils.units.metersToFeet(a)/100),n="ft.",o=utils.units.kilometersToMiles(t.visibility.value/1e3),d=" mi.",u=utils.units.kphToMph(u),r=utils.units.pascalToInHg(r),L=utils.units.celsiusToFahrenheit(L),C=utils.units.celsiusToFahrenheit(C),s=utils.units.kphToMph(s)),this.context.drawImage(await this.backgroundImage,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),draw.horizontalGradientSingle(this.context,0,90,52,399,draw.sideColor1,draw.sideColor2),draw.horizontalGradientSingle(this.context,584,90,640,399,draw.sideColor1,draw.sideColor2),draw.titleText(this.context,"Current","Conditions"),draw.text(this.context,"Star4000 Large","24pt","#FFFFFF",170,135,e+String.fromCharCode(176),2);let c=t.textDescription;switch(y.length>15&&(c=this.shortConditions(c)),draw.text(this.context,"Star4000 Extended","24pt","#FFFFFF",195,170,c,2,"center"),draw.text(this.context,"Star4000 Extended","24pt","#FFFFFF",80,330,"Wind:",2),draw.text(this.context,"Star4000 Extended","24pt","#FFFFFF",300,330,S+" "+u,2,"right"),s&&draw.text(this.context,"Star4000 Extended","24pt","#FFFFFF",80,375,"Gusts to "+s,2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFF00",315,120,this.data.station.properties.name.substr(0,20),2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,165,"Humidity:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",560,165,g+"%",2,"right"),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,205,"Dewpoint:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",560,205,i+String.fromCharCode(176),2,"right"),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,245,"Ceiling:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",560,245,""===a?"Unlimited":a+n,2,"right"),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,285,"Visibility:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",560,285,o+d,2,"right"),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,325,"Pressure:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",535,325,r,2,"right"),K){case"R":draw.triangle(this.context,"#000000",552,302,542,312,562,312),draw.box(this.context,"#000000",549,312,6,15),draw.triangle(this.context,"#000000",550,300,540,310,560,310),draw.box(this.context,"#000000",547,310,6,15),draw.triangle(this.context,"#FFFF00",550,301,541,309,559,309),draw.box(this.context,"#FFFF00",548,309,4,15);break;case"F":draw.triangle(this.context,"#000000",552,327,542,317,562,317),draw.box(this.context,"#000000",549,302,6,15),draw.triangle(this.context,"#000000",550,325,540,315,560,315),draw.box(this.context,"#000000",547,300,6,15),draw.triangle(this.context,"#FFFF00",550,324,541,314,559,314),draw.box(this.context,"#FFFF00",548,301,4,15)}t.heatIndex.value&&L!==e?(draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,365,"Heat Index:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",560,365,L+String.fromCharCode(176),2,"right")):t.windChill.value&&""!==C&&C<e&&(draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",340,365,"Wind Chill:",2),draw.text(this.context,"Star4000 Large","bold 16pt","#FFFFFF",560,365,C+String.fromCharCode(176),2,"right")),this.gifs.push(await utils.image.superGifAsync({src:l,loop_delay:100,auto_play:!0,canvas:this.canvas,x:140,y:175,max_width:126})),this.finishDraw(),this.setStatus(STATUS.loaded)}shortConditions(t){return t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace(/Light/g,"L")).replace(/Heavy/g,"H")).replace(/Partly/g,"P")).replace(/Mostly/g,"M")).replace(/Few/g,"F")).replace(/Thunderstorm/g,"T'storm")).replace(/ in /g,"")).replace(/Vicinity/g,"")).replace(/ and /g," ")).replace(/Freezing Rain/g,"Frz Rn")).replace(/Freezing/g,"Frz")).replace(/Unknown Precip/g,"")).replace(/L Snow Fog/g,"L Snw/Fog")).replace(/ with /g,"/")}}class LatestObservations extends WeatherDisplay{constructor(t,e,i){super(t,e),this.backgroundImage=utils.image.load("images/BackGround1_1.png"),this.MaximumRegionalStations=7,this.getData(i)}async getData(t){super.getData();const e=Object.keys(_StationInfo).map(e=>{const i=_StationInfo[e],a=utils.calc.distance(i.Latitude,i.Longitude,t.latitude,t.longitude);return Object.assign({},i,{distance:a})}).sort((t,e)=>t.distance-e.distance).slice(0,30),i=(await Promise.all(e.map(async t=>{try{const e=await $.ajax({type:"GET",url:`https://api.weather.gov/stations/${t.StationId}/observations/latest`,dataType:"json",crossDomain:!0});return Object.assign({},e.properties,{StationId:t.StationId,City:t.City})}catch(e){return void console.log("Unable to get latest observations for "+t.StationId)}}))).filter(t=>t);this.data=i.slice(0,this.MaximumRegionalStations),this.drawCanvas()}async drawCanvas(){super.drawCanvas();const t=this.data.sort((t,e)=>t.Name<e.Name?-1:t.Name>e.Name?1:0);this.context.drawImage(await this.backgroundImage,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),draw.horizontalGradientSingle(this.context,0,90,52,399,draw.sideColor1,draw.sideColor2),draw.horizontalGradientSingle(this.context,584,90,640,399,draw.sideColor1,draw.sideColor2),draw.titleText(this.context,"Latest","Observations"),navigation.units()===UNITS.english?draw.text(this.context,"Star4000 Small","24pt","#FFFFFF",295,105,String.fromCharCode(176)+"F",2):draw.text(this.context,"Star4000 Small","24pt","#FFFFFF",295,105,String.fromCharCode(176)+"C",2),draw.text(this.context,"Star4000 Small","24pt","#FFFFFF",345,105,"WEATHER",2),draw.text(this.context,"Star4000 Small","24pt","#FFFFFF",495,105,"WIND",2);let e=140;t.forEach(t=>{let i=t.temperature.value,a=t.windSpeed.value;const n=utils.calc.directionToNSEW(t.windDirection.value);navigation.units()===UNITS.english&&(i=utils.units.celsiusToFahrenheit(i),a=utils.units.kphToMph(a)),draw.text(this.context,"Star4000","24pt","#FFFFFF",65,e,t.City.substr(0,14),2),draw.text(this.context,"Star4000","24pt","#FFFFFF",345,e,this.shortenCurrentConditions(t.textDescription).substr(0,9),2),a>0?draw.text(this.context,"Star4000","24pt","#FFFFFF",495,e,n+Array(6-n.length-a.toString().length).join(" ")+a.toString(),2):"NA"===a?draw.text(this.context,"Star4000","24pt","#FFFFFF",495,e,"NA",2):draw.text(this.context,"Star4000","24pt","#FFFFFF",495,e,"Calm",2);const o=325-15*i.toString().length;draw.text(this.context,"Star4000","24pt","#FFFFFF",o,e,i,2),e+=40}),this.finishDraw(),this.setStatus(STATUS.loaded)}shortenCurrentConditions(t){return t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace(/Light/,"L")).replace(/Heavy/,"H")).replace(/Partly/,"P")).replace(/Mostly/,"M")).replace(/Few/,"F")).replace(/Thunderstorm/,"T'storm")).replace(/ in /,"")).replace(/Vicinity/,"")).replace(/ and /," ")).replace(/Freezing Rain/,"Frz Rn")).replace(/Freezing/,"Frz")).replace(/Unknown Precip/,"")).replace(/L Snow Fog/,"L Snw/Fog")).replace(/ with /,"/")}}class TravelForecast extends WeatherDisplay{constructor(t,e,i){super(t,e),this.backgroundImage=utils.image.load("images/BackGround6_1.png"),this.cityHeight=72,this.timing.baseDelay=20;const a=_TravelCities.length/4,n=Math.floor(a)-2,o=n%1,d=4*this.cityHeight;this.timing.delay=[150+d];for(let t=0;t<n;t++)this.timing.delay.push(d);0!==o&&this.timing.delay.push(Math.round(this.extra*this.cityHeight)),this.timing.delay.push(150),this.getData(i)}async getData(){super.getData();const t=_TravelCities.map(async t=>{try{const e=await utils.weather.getPoint(t.Latitude,t.Longitude),i=await $.ajax({url:e.properties.forecast,dataType:"json",crossDomain:!0}),a=i.properties.periods[0].isDaytime?0:1;return{today:0===a,high:i.properties.periods[a].temperature,low:i.properties.periods[a+1].temperature,name:t.Name,icon:icons.getWeatherRegionalIconFromIconLink(i.properties.periods[a].icon)}}catch(e){return console.error(`GetTravelWeather for ${t.Name} failed`),console.error(e),{name:t.Name}}}),e=await Promise.all(t);this.data=e,this.drawCanvas(!0)}async drawCanvas(t){super.drawCanvas(),this.longCanvas||(this.longCanvas=document.createElement("canvas"),this.longCanvas.width=640,this.longCanvas.height=1728,this.longContext=this.longCanvas.getContext("2d"));const e=this.data;if(t){this.longContext.clearRect(0,0,this.longCanvas.width,this.longCanvas.height),draw.box(this.longContext,"rgb(35, 50, 112)",0,0,640,_TravelCities.length*this.cityHeight);for(let t=0;t<=4;t++){const e=346*t;draw.horizontalGradient(this.longContext,0,e,640,e+346,"#102080","#001040")}await Promise.all(e.map(async(t,e)=>{const i=50+this.cityHeight*e;if(draw.text(this.longContext,"Star4000 Large Compressed","24pt","#FFFF00",80,i,t.name,2),t.icon){let{low:e,high:a}=t;navigation.units()===UNITS.metric&&(e=utils.units.fahrenheitToCelsius(e),a=utils.units.fahrenheitToCelsius(a));const n=Math.round(e).toString(),o=Math.round(a).toString(),d=500-20*n.length;draw.text(this.longContext,"Star4000 Large","24pt","#FFFF00",d,i,n,2);const u=560-20*o.length;draw.text(this.longContext,"Star4000 Large","24pt","#FFFF00",u,i,o,2),this.gifs.push(await utils.image.superGifAsync({src:t.icon,loop_delay:100,auto_play:!0,canvas:this.longCanvas,x:330,y:i-35,max_width:47}))}else draw.text(this.longContext,"Star4000 Small","24pt","#FFFFFF",400,i-18,"NO TRAVEL",2),draw.text(this.longContext,"Star4000 Small","24pt","#FFFFFF",400,i,"DATA AVAILABLE",2)}))}this.context.drawImage(await this.backgroundImage,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),draw.titleText(this.context,"Travel Forecast","For "+this.getTravelCitiesDayName(e)),draw.text(this.context,"Star4000 Small","24pt","#FFFF00",455,105,"LOW",2),draw.text(this.context,"Star4000 Small","24pt","#FFFF00",510,105,"HIGH",2),this.context.drawImage(this.longCanvas,0,0,640,289,0,110,640,289),this.finishDraw(),this.setStatus(STATUS.loaded)}screenIndexChange(){this.baseCountChange(this.navBaseCount)}baseCountChange(t){const e=this.getLongCanvas();let i=Math.min(e.height-289,t-150);i<0&&(i=0),this.context.drawImage(e,0,i,640,289,0,110,640,289)}getTravelCitiesDayName(t){const{DateTime:e}=luxon;return t.reduce((t,i)=>{if(i&&""===t){return e.local().plus({days:i.today?0:1}).toLocaleString({weekday:"long"})}return t},"")}getLongCanvas(){return this.longCanvas}}const RegionalForecastData=(()=>{let t,e;const i=async t=>{const e={x:240,y:117},i=o(t.latitude,t.longitude,e.x,e.y,t.state),d=S(i.x,i.y,e.x,e.y,t.state);let u=2.5;"HI"===t.State&&(u=1);const r=Object.keys(_StationInfo).map(t=>Object.assign({},_StationInfo[t],{Name:_StationInfo[t].City,targetDistance:u})),L=[..._RegionalCities,...r],s=[];L.forEach(t=>{if(t.Latitude>d.minLat&&t.Latitude<d.maxLat&&t.Longitude>d.minLon&&t.Longitude<d.maxLon-1){const e=t.targetDistance||1;s.reduce((i,a)=>{const n=utils.calc.distance(t.Longitude,t.Latitude,a.Longitude,a.Latitude);return i&&n>=e},!0)&&s.push(t)}});const g=s.map(async e=>{try{const i=await utils.weather.getPoint(e.Latitude,e.Longitude),o=n(i,e),u=await $.ajax({url:i.properties.forecast,dataType:"json",crossDomain:!0}),S=C(e,d.maxLat,d.minLon,t.state),r=await o;return[{daytime:!!r.icon.match(/\/day\//),temperature:utils.units.celsiusToFahrenheit(r.temperature.value),name:e.Name,icon:r.icon,x:S.x,y:S.y},a(u.properties.periods[1],e,S),a(u.properties.periods[2],e,S)]}catch(t){return console.log(`No regional forecast data for '${e.Name}'`),console.error(t),!1}});return{regionalData:(await Promise.all(g)).filter(t=>t),offsetXY:e,sourceXY:i}},a=(t,e,i)=>({daytime:t.isDaytime,temperature:t.temperature||0,name:e.Name,icon:t.icon,x:i.x,y:i.y}),n=async(t,e)=>{try{const e=(await $.ajax({type:"GET",url:t.properties.observationStations,dataType:"json",crossDomain:!0})).features[0].id;return(await $.ajax({type:"GET",url:e+"/observations/latest",dataType:"json",crossDomain:!0})).properties}catch(t){return console.log("Unable to get regional observations for "+e.Name),console.error(t),!1}},o=(t,e,i,a,n)=>{if("AK"===n)return d(...arguments);if("HI"===n)return u(...arguments);let o=0,S=0;return o=55.2*(50.5-t),o-=a,o>1600-2*a?o=1600-2*a:o<0&&(o=0),S=41.775*(-127.5-e)*-1,S-=i,S>2550-2*i?S=2550-2*i:S<0&&(S=0),{x:S,y:o}},d=(t,e,i,a)=>{let n=0,o=0;return n=56*(73-t),n-=a,n>1142-2*a?n=1142-2*a:n<0&&(n=0),o=25*(-175-e)*-1,o-=i,o>1200-2*i?o=1200-2*i:o<0&&(o=0),{x:o,y:n}},u=(t,e,i,a)=>{let n=0,o=0;return n=55.2*(25-t),n-=a,n>571-2*a?n=571-2*a:n<0&&(n=0),o=41.775*(-164.5-e)*-1,o-=i,o>600-2*i?o=600-2*i:o<0&&(o=0),{x:o,y:n}},S=function(t,e,i,a,n){if("AK"===n)return r(...arguments);if("HI"===n)return L(...arguments);const o=-1*(e/55.2-50.5),d=-1*((e+2*a)/55.2-50.5),u=-1*(-1*t/41.775+127.5),S=-1*(-1*(t+2*i)/41.775+127.5);return{minLat:d,maxLat:o,minLon:u,maxLon:S}},r=(t,e,i,a)=>({minLat:-1*((e+2*a)/56-73),maxLat:-1*(e/56-73),minLon:-1*(-1*t/25+175),maxLon:-1*(-1*(t+2*i)/25+175)}),L=(t,e,i,a)=>({minLat:-1*((e+2*a)/55.2-25),maxLat:-1*(e/55.2-25),minLon:-1*(-1*t/41.775+164.5),maxLon:-1*(-1*(t+2*i)/41.775+164.5)}),C=(t,e,i,a)=>{"AK"===a&&s(...arguments),"HI"===a&&g(...arguments);let n=57*(t.Longitude-i),o=70*(e-t.Latitude);return o<30&&(o=30),o>282&&(o=282),n<40&&(n=40),n>580&&(n=580),{x:n,y:o}},s=(t,e,i)=>{let a=37*(t.Longitude-i),n=70*(e-t.Latitude);return n<30&&(n=30),n>282&&(n=282),a<40&&(a=40),a>580&&(a=580),{x:a,y:n}},g=(t,e,i)=>{let a=57*(t.Longitude-i),n=70*(e-t.Latitude);return n<30&&(n=30),n>282&&(n=282),a<40&&(a=40),a>580&&(a=580),{x:a,y:n}};return{updateData:a=>(utils.object.shallowEqual(e,a)||(e=a,t=i(a)),t),getDataPromise:()=>t}})();class RegionalForecast extends WeatherDisplay{constructor(t,e,i,a){super(t,e),this.period=a,this.backgroundImage=utils.image.load("images/BackGround5_1.png"),this.getData(i)}async getData(t){super.getData();let e="images/Basemap2.png";"HI"===t.State?e="images/HawaiiRadarMap4.png":"AK"===t.State&&(e="images/AlaskaRadarMap6.png"),this.baseMap=utils.image.load(e),this.data=await RegionalForecastData.updateData(t),this.drawCanvas()}async drawCanvas(){super.drawCanvas();const{regionalData:t,sourceXY:e,offsetXY:i}=this.data,{DateTime:a}=luxon;if(this.context.drawImage(await this.backgroundImage,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),0===this.period)draw.titleText(this.context,"Regional","Observations");else{let e=a.local();const i=t[0][1].daytime;i&&1===this.period&&(e=e.plus({days:1})),i&&this.period,!i&&this.period,i||2!==this.period||(e=e.plus({days:1}));const n=e.toLocaleString({weekday:"long"});t[0][this.period].daytime?draw.titleText(this.context,"Forecast for",n):draw.titleText(this.context,"Forecast for",n+" Night")}this.context.drawImage(await this.baseMap,e.x,e.y,2*i.x,2*i.y,0,90,640,312),await Promise.all(t.map(async t=>{const e=t[this.period],i=icons.getWeatherRegionalIconFromIconLink(e.icon,!e.daytime);i&&this.gifs.push(await utils.image.superGifAsync({src:i,max_width:42,loop_delay:100,auto_play:!0,canvas:this.canvas,x:e.x,y:e.y-15+90})),draw.text(this.context,"Star4000","20px","#ffffff",e.x-40,e.y-15+90,e.name,2);let a=e.temperature;navigation.units()===UNITS.metric&&(a=Math.round(utils.units.fahrenheitToCelsius(a))),draw.text(this.context,"Star4000 Large Compressed","28px","#ffff00",e.x-15*a.toString().length,e.y+20+90,a,2)})),this.finishDraw(),this.setStatus(STATUS.loaded)}}class LocalForecast extends WeatherDisplay{constructor(t,e,i){super(t,e),this.timing.baseDelay=5e3,this.backgroundImage=utils.image.load("images/BackGround1_1.png"),this.getData(i)}async getData(t){super.getData();const e=await this.getRawData(t),i=this.parseLocalForecast(e);this.screenTexts=[],i.forEach(t=>{let e=t.DayName.toUpperCase()+"...",i=t.Text;navigation.units()===UNITS.metric&&(i=t.TextC),e+=i.toUpperCase().replace("..."," "),e=e.wordWrap(32,"\n");const a=e.split("\n"),n=a.length;let o="";let d=0;for(let t=0;t<=n-1;t++)""!==a[t]&&(d>6&&(this.screenTexts.push(o),o="",d=0),o+=a[t]+"\n",d++);this.screenTexts.push(o)}),this.currentScreen=0,this.timing.totalScreens=this.screenTexts.length,this.drawCanvas()}async getRawData(t){let e="us";navigation.units()===UNITS.metric&&(e="si");try{return await $.ajax({type:"GET",url:t.forecast,data:{units:e},dataType:"json",crossDomain:!0})}catch(e){return console.error("GetWeatherForecast failed: "+t.forecast),console.error(e),!1}}async drawCanvas(){super.drawCanvas(),this.context.drawImage(await this.backgroundImage,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),draw.horizontalGradientSingle(this.context,0,90,52,399,draw.sideColor1,draw.sideColor2),draw.horizontalGradientSingle(this.context,584,90,640,399,draw.sideColor1,draw.sideColor2),draw.titleText(this.context,"Local ","Forecast"),draw.box(this.context,"rgb(33, 40, 90)",65,105,505,280),this.screenTexts[this.screenIndex].split("\n").forEach((t,e)=>{draw.text(this.context,"Star4000","24pt","#FFFFFF",75,140+40*e,t,2)}),this.finishDraw(),this.setStatus(STATUS.loaded)}parseLocalForecast(t){return t.properties.periods.slice(0,6).map(t=>({DayName:t.name.toUpperCase(),Text:t.detailedForecast}))}}class ExtendedForecast extends WeatherDisplay{constructor(t,e,i){super(t,e),this.timing.totalScreens=2,this.backgroundImage=utils.image.load("images/BackGround2_1.png"),this.getData(i)}async getData(t){super.getData();let e,i="us";navigation.units()===UNITS.metric&&(i="si");try{e=await $.ajax({type:"GET",url:t.forecast,data:{units:i},dataType:"json",crossDomain:!0})}catch(t){return console.error("Unable to get extended forecast"),console.error(t),void this.setStatus(STATUS.error)}this.data=this.parseExtendedForecast(e.properties.periods),this.screnIndex=0,this.drawCanvas()}parseExtendedForecast(t){const e=[0,1,2,3,4,5,6].map(t=>luxon.DateTime.local().startOf("day").plus({days:t}).toLocaleString({weekday:"short"}));let i=0;const a=[];return t.forEach(t=>{a[i]||a.push({dayName:"",low:void 0,high:void 0,text:void 0,icon:void 0});const n=a[i];n.icon=icons.getWeatherRegionalIconFromIconLink(t.icon),n.text=this.shortenExtendedForecastText(t.shortForecast),n.dayName=e[i],t.isDaytime?(n.high=t.temperature,i++):n.low=t.temperature}),a}shortenExtendedForecastText(t){let e=t;e=e.replace(/ and /g," "),e=e.replace(/Slight /g,""),e=e.replace(/Chance /g,""),e=e.replace(/Very /g,""),e=e.replace(/Patchy /g,""),e=e.replace(/Areas /g,""),e=e.replace(/Dense /g,"");let i=e.split(" ");-1!==e.indexOf("then")&&(i=e.split(" then "),i=i[1].split(" "));let a=i[0].substr(0,10),n="";return i[1]&&(a.endsWith(".")?a=a.replace(/\./,""):n=i[1].substr(0,10),"Blowing"===n&&(n="")),e=a,""!==n&&(e+=" "+n),[e,a,n]}async drawCanvas(){super.drawCanvas();const t=this.data.slice(0+3*this.screenIndex,3+3*this.screenIndex),e=await this.backgroundImage;this.context.drawImage(e,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),draw.horizontalGradientSingle(this.context,0,90,640,399,draw.sideColor1,draw.sideColor2),this.context.drawImage(e,38,100,174,297,38,100,174,297),this.context.drawImage(e,232,100,174,297,232,100,174,297),this.context.drawImage(e,426,100,174,297,426,100,174,297),draw.titleText(this.context,"Extended","Forecast"),await Promise.all(t.map(async(t,e)=>{const i=195*e;draw.text(this.context,"Star4000","24pt","#FFFF00",100+i,135,t.dayName.toUpperCase(),2),draw.text(this.context,"Star4000","24pt","#8080FF",85+i,345,"Lo",2,"center"),draw.text(this.context,"Star4000","24pt","#FFFF00",165+i,345,"Hi",2,"center");let a=t.low;void 0!==a&&(navigation.units()===UNITS.metric&&(a=utils.units.rahrenheitToCelsius(a)),draw.text(this.context,"Star4000 Large","24pt","#FFFFFF",85+i,385,a,2,"center"));let n=t.high;navigation.units()===UNITS.metric&&(n=utils.units.rahrenheitToCelsius(n)),draw.text(this.context,"Star4000 Large","24pt","#FFFFFF",165+i,385,n,2,"center"),draw.text(this.context,"Star4000","24pt","#FFFFFF",120+i,270,t.text[1],2,"center"),draw.text(this.context,"Star4000","24pt","#FFFFFF",120+i,310,t.text[2],2,"center"),this.gifs.push(await utils.image.superGifAsync({src:t.icon,loop_delay:100,auto_play:!0,canvas:this.canvas,x:70+195*e,y:150,max_height:75}))})),this.finishDraw(),this.setStatus(STATUS.loaded)}}class Almanac extends WeatherDisplay{constructor(t,e,i){super(t,e),this.backgroundImage=utils.image.load("images/BackGround1_1.png"),this.moonImages=[utils.image.load("images/2/Full-Moon.gif"),utils.image.load("images/2/Last-Quarter.gif"),utils.image.load("images/2/New-Moon.gif"),utils.image.load("images/2/First-Quarter.gif")],this.backgroundImage=utils.image.load("images/BackGround3_1.png"),this.getData(i)}getData(t){super.getData();const{DateTime:e}=luxon,i=[SunCalc.getTimes(new Date,t.latitude,t.longitude),SunCalc.getTimes(e.local().plus({days:1}).toJSDate(),t.latitude,t.longitude)],a=[];let n=e.local().minus({days:1}),o=SunCalc.getMoonIllumination(n.toJSDate()).phase,d=0;do{const t=o;n=n.plus({days:1}),o=SunCalc.getMoonIllumination(n.toJSDate()).phase,t<.25&&o>=.25&&a.push(this.getMoonTransition(.25,"First",n)),t<.5&&o>=.5&&a.push(this.getMoonTransition(.5,"Full",n)),t<.75&&o>=.75&&a.push(this.getMoonTransition(.75,"Last",n)),t>o&&a.push(this.getMoonTransition(0,"New",n)),d++}while(d<=30&&a.length<4);this.data={sun:i,moon:a},this.drawCanvas()}getMoonTransition(t,e,i,a=0){let n=i,o=SunCalc.getMoonIllumination(n.toJSDate()).phase,d=0;const u={hours:0===a?-1:0,minutes:1===a?1:0,seconds:2===a?-1:0,milliseconds:3===a?1:0};let S=(t,e,i)=>t<i&&e>=i;a%2==0&&(S=(t,e,i)=>t>i&&e<=i);do{const i=o;if(n=n.plus(u),o=SunCalc.getMoonIllumination(n.toJSDate()).phase,o>.9&&(o-=1),S(i,o,t)){if(a>=3)break;return this.getMoonTransition(t,e,n,a+1)}d++}while(d<1e3);return{phase:e,date:n}}async drawCanvas(){super.drawCanvas();const t=this.data,{DateTime:e}=luxon,[i,a,n,o]=await Promise.all(this.moonImages);this.context.drawImage(await this.backgroundImage,0,0),draw.horizontalGradientSingle(this.context,0,30,500,90,draw.topColor1,draw.topColor2),draw.triangle(this.context,"rgb(28, 10, 87)",500,30,450,90,500,90),draw.horizontalGradientSingle(this.context,0,90,640,190,draw.sideColor1,draw.sideColor2),draw.titleText(this.context,"Almanac","Astronomical");const d=e.local(),u=d.plus({days:1});draw.text(this.context,"Star4000","24pt","#FFFF00",320,120,d.toLocaleString({weekday:"long"}),2,"center"),draw.text(this.context,"Star4000","24pt","#FFFF00",500,120,u.toLocaleString({weekday:"long"}),2,"center"),draw.text(this.context,"Star4000","24pt","#FFFFFF",70,150,"Sunrise:",2),draw.text(this.context,"Star4000","24pt","#FFFFFF",270,150,e.fromJSDate(t.sun[0].sunrise).toLocaleString(e.TIME_SIMPLE).toLowerCase(),2),draw.text(this.context,"Star4000","24pt","#FFFFFF",450,150,e.fromJSDate(t.sun[1].sunrise).toLocaleString(e.TIME_SIMPLE).toLowerCase(),2),draw.text(this.context,"Star4000","24pt","#FFFFFF",70,180," Sunset:",2),draw.text(this.context,"Star4000","24pt","#FFFFFF",270,180,e.fromJSDate(t.sun[0].sunset).toLocaleString(e.TIME_SIMPLE).toLowerCase(),2),draw.text(this.context,"Star4000","24pt","#FFFFFF",450,180,e.fromJSDate(t.sun[1].sunset).toLocaleString(e.TIME_SIMPLE).toLowerCase(),2),draw.text(this.context,"Star4000","24pt","#FFFF00",70,220,"Moon Data:",2),t.moon.forEach((t,e)=>{const d=t.date.toLocaleString({month:"short",day:"numeric"});draw.text(this.context,"Star4000","24pt","#FFFFFF",120+130*e,260,t.phase,2,"center"),draw.text(this.context,"Star4000","24pt","#FFFFFF",120+130*e,390,d,2,"center");const u=(()=>{switch(t.phase){case"Full":return i;case"Last":return a;case"New":return n;case"First":default:return o}})();this.context.drawImage(u,75+130*e,270)}),this.finishDraw(),this.setStatus(STATUS.loaded)}}class Radar extends WeatherDisplay{constructor(t,e,i){super(t,e),this.dopplerRadarImageMax=6,this.timing.baseDelay=350,this.timing.delay=[4,1,1,1,1,1,12],this.backgroundImage=utils.image.load("images/BackGround4_1.png"),this.getData(i)}async getData(t){if(super.getData(),"AK"===t.state)return void this.setStatus(STATUS.noData);let e="images/4000RadarMap2.jpg";"HI"===t.State&&(e="images/HawaiiRadarMap2.png"),this.baseMap=await utils.image.load(e);const i="Conus/RadarImg/";let a;try{a=await $.ajax({type:"GET",url:i,dataType:"text",crossDomain:!0})}catch(t){return console.error("Unable to get list of radars"),console.error(t),void this.setStatus(STATUS.error)}const n=$(a).find("a[href]").map((t,e)=>e.innerHTML).get();let o=/^Conus_\d/;"HI"===t.State&&(o=/hawaii_\d/);const d=n.filter(t=>t.match(o)).slice(-this.dopplerRadarImageMax);let u,S,r,L=120,C=69;"HI"===t.State?(S=600,r=571,u=this.getXYFromLatitudeLongitudeHI(t.latitude,t.longitude,L,C)):(S=2550,r=1600,L*=2,C*=2,u=this.getXYFromLatitudeLongitudeDoppler(t.latitude,t.longitude,L,C));const s=document.createElement("canvas");s.width=S,s.height=r;const g=s.getContext("2d");g.imageSmoothingEnabled=!1;let l=117,K=60,y=this.getXYFromLatitudeLongitudeDoppler(t.latitude,t.longitude,L,C),I=y.x/2,c=y.y/2;"HI"===t.State&&(l=120,K=69,y=this.getXYFromLatitudeLongitudeHI(t.latitude,t.longitude,L,C),I=y.x,c=y.y);const h=await Promise.all(d.map(async e=>{const a=document.createElement("canvas");a.width=640,a.height=367;const n=a.getContext("2d");n.imageSmoothingEnabled=!1;const o=await $.ajaxCORS({type:"GET",url:i+e,xhrFields:{responseType:"blob"},crossDomain:!0}),d=await utils.image.load(o);return"HI"===t.State?g.drawImage(d,0,0,571,600):g.drawImage(d,0,0,2550,1600),this.removeDopplerRadarImageNoise(g),n.drawImage(await this.baseMap,u.x,u.y,2*L,2*C,0,0,640,367),n.drawImage(s,I,c,2*l,2.33*K,0,0,640,367),a}));this.timing.totalScreens=h.length,this.data=h,this.drawCanvas()}async drawCanvas(){super.drawCanvas(),this.context.drawImage(await this.backgroundImage,0,0),draw.text(this.context,"Arial","bold 28pt","#ffffff",175,65,"Local",2),draw.text(this.context,"Arial","bold 28pt","#ffffff",175,100,"Radar",2),draw.text(this.context,"Arial","bold 18pt","#ffffff",390,49,"PRECIP",2),draw.text(this.context,"Arial","bold 18pt","#ffffff",298,73,"Light",2),draw.text(this.context,"Arial","bold 18pt","#ffffff",517,73,"Heavy",2);let t=362;const e=52;draw.box(this.context,"#000000",t-2,50,154,28),draw.box(this.context,"rgb(49, 210, 22)",t,e,17,24),t+=19,draw.box(this.context,"rgb(28, 138, 18)",t,e,17,24),t+=19,draw.box(this.context,"rgb(20, 90, 15)",t,e,17,24),t+=19,draw.box(this.context,"rgb(10, 40, 10)",t,e,17,24),t+=19,draw.box(this.context,"rgb(196, 179, 70)",t,e,17,24),t+=19,draw.box(this.context,"rgb(190, 72, 19)",t,e,17,24),t+=19,draw.box(this.context,"rgb(171, 14, 14)",t,e,17,24),t+=19,draw.box(this.context,"rgb(115, 31, 4)",t,e,17,24),t+=19,draw.box(this.context,"rgb(143, 73, 95)",318,83,32,24),draw.box(this.context,"rgb(250, 122, 232)",320,85,28,20),draw.text(this.context,"Arial","bold 18pt","#ffffff",355,105,"= Incomplete Data",2),this.context.drawImage(this.data[this.screenIndex],0,0,640,367,0,113,640,367),this.finishDraw(),this.setStatus(STATUS.loaded)}getXYFromLatitudeLongitude(t,e,i,a,n){if("HI"===n)return this.getXYFromLatitudeLongitudeHI(...arguments);let o=0,d=0;return o=55.2*(50.5-t),o-=a,o>1600-2*a?o=1600-2*a:o<0&&(o=0),d=41.775*(-127.5-e)*-1,d-=i,d>2550-2*i?d=2550-2*i:d<0&&(d=0),{x:d,y:o}}getXYFromLatitudeLongitudeHI(t,e,i,a){let n=0,o=0;return n=55.2*(25-t),n-=a,n>571-2*a?n=571-2*a:n<0&&(n=0),o=41.775*(-164.5-e)*-1,o-=i,o>600-2*i?o=600-2*i:o<0&&(o=0),{x:o,y:n}}getXYFromLatitudeLongitudeDoppler(t,e,i,a){let n=0,o=0;return n=55.2*(51.75-t),n-=a,n>3200-2*a?n=3200-2*a:n<0&&(n=0),o=41.775*(-130.37-e)*-1,o-=i,o>5100-2*i?o=5100-2*i:o<0&&(o=0),{x:2*o,y:2*n}}removeDopplerRadarImageNoise(t){const e=t.getImageData(0,0,t.canvas.width,t.canvas.height);for(let t=0;t<e.data.length;t+=4){let[i,a,n,o]=e.data.slice(t,t+4);1===i&&159===a&&244===n||i>=200&&a>=200&&n>=200||4===i&&233===a&&231===n||3===i&&0===a&&244===n?(i=0,a=0,n=0,o=0):2===i&&253===a&&2===n?(i=49,a=210,n=22,o=255):1===i&&197===a&&1===n?(i=0,a=142,n=0,o=255):0===i&&142===a&&0===n?(i=20,a=90,n=15,o=255):253===i&&248===a&&2===n?(i=10,a=40,n=10,o=255):229===i&&188===a&&0===n?(i=196,a=179,n=70,o=255):253===i&&139===a&&0===n?(i=190,a=72,n=19,o=255):212===i&&0===a&&0===n?(i=171,a=14,n=14,o=255):188===i&&0===a&&0===n&&(i=115,a=31,n=4,o=255),e.data[t]=i,e.data[t+1]=a,e.data[t+2]=n,e.data[t+3]=o}t.putImageData(e,0,0)}}document.addEventListener("DOMContentLoaded",()=>{navigation.init()});const UNITS={english:Symbol("english"),metric:Symbol("metric")},navigation=(()=>{let t={},e=[],i=!1,a=UNITS.english,n=!1;const o=(t,e={})=>{window.parent.postMessage(JSON.stringify({type:t,message:e},window.location.origin))},d=async a=>{i=!1;const n=await utils.weather.getPoint(a.lat,a.lon),d=await $.ajax({type:"GET",url:n.properties.observationStations,dataType:"json",crossDomain:!0}),u=d.features[0].properties.stationIdentifier;let S=n.properties.relativeLocation.properties.city;u in _StationInfo&&(S=_StationInfo[u].City,S=S.split("/")[0]),t.latitude=a.lat,t.longitude=a.lon,t.zoneId=n.properties.forecastZone.substr(-6),t.radarId=n.properties.radarStation.substr(-3),t.stationId=u,t.weatherOffice=n.properties.cwa,t.city=S,t.state=n.properties.relativeLocation.properties.state,t.timeZone=n.properties.relativeLocation.properties.timeZone,t.forecast=n.properties.forecast,t.stations=d.features,o("weatherParameters",t),0===e.length?e=[new CurrentWeather(0,"currentWeather",t),new LatestObservations(1,"latestObservations",t),new TravelForecast(2,"travelForecast",t),new RegionalForecast(3,"regionalForecast0",t,0),new RegionalForecast(4,"regionalForecast1",t,1),new RegionalForecast(5,"regionalForecast2",t,2),new LocalForecast(6,"localForecast",t),new ExtendedForecast(7,"extendedForecast",t),new Almanac(8,"almanac",t),new Radar(8,"radar",t)]:e.forEach(e=>e.getData(t))},u=()=>{e.forEach(t=>t.hideCanvas())},S=t=>{const e=t.toLowerCase();a="english"===e?UNITS.english:UNITS.metric},r={response:{previous:Symbol("previous"),inProgress:Symbol("inProgress"),next:Symbol("next")},command:{firstFrame:Symbol("firstFrame"),previousFrame:Symbol("previousFrame"),nextFrame:Symbol("nextFrame"),lastFrame:Symbol("lastFrame")}},L=t=>{t===r.command.nextFrame&&g().navNext(),t===r.command.previousFrame&&g().navPrev()},C=t=>{const i=e.length,a=s();let n;for(let o=0;o<i&&(n=utils.calc.wrap(a+(o+1)*t,i),e[n].status!==STATUS.loaded);o++);const o=e[n];u(),t<0&&o.showCanvas(r.command.lastFrame),t>0&&o.showCanvas(r.command.firstFrame)},s=()=>{const t=e.findIndex(t=>t.isActive());return void 0===t&&console.error("No active display"),t},g=()=>e[s()],l=t=>{n=t,o("isPlaying",n)},K=t=>{switch(t){case"playToggle":l(!n);break;case"next":l(!1),L(r.command.nextFrame);break;case"previous":l(!1),L(r.command.previousFrame);break;default:console.error("Unknown navButton "+t)}};return{init:()=>{window.addEventListener("message",t=>{if(!t.isTrusted)return;const e=JSON.parse(t.data);if(e.type)switch(e.type){case"latLon":d(e.message);break;case"units":S(e.message);break;case"navButton":K(e.message);break;default:console.error("Unknown event "+e.type)}},!1)},updateStatus:t=>{i||t.status===STATUS.loaded&&(i=!0,setTimeout(()=>{u(),e[t.id].showCanvas()},1),o("loaded"))},units:()=>a,isPlaying:()=>n,displayNavMessage:t=>{t.type===r.response.previous&&C(-1),t.type===r.response.next&&C(1)},msg:r}})();