// $Id: jquery.js,v 1.12.2.3 2008/06/25 09:38:39 goba Exp $ 

/*
 * jQuery 1.2.6 - New Wave Javascript
 *
 * Copyright (c) 2008 John Resig (jquery.com)
 * Dual licensed under the MIT (MIT-LICENSE.txt)
 * and GPL (GPL-LICENSE.txt) licenses.
 *
 * Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008)
 * Rev: 5685
 */
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(H(){J w=1b.4M,3m$=1b.$;J D=1b.4M=1b.$=H(a,b){I 2B D.17.5j(a,b)};J u=/^[^<]*(<(.|\\s)+>)[^>]*$|^#(\\w+)$/,62=/^.[^:#\\[\\.]*$/,12;D.17=D.44={5j:H(d,b){d=d||S;G(d.16){7[0]=d;7.K=1;I 7}G(1j d=="23"){J c=u.2D(d);G(c&&(c[1]||!b)){G(c[1])d=D.4h([c[1]],b);N{J a=S.61(c[3]);G(a){G(a.2v!=c[3])I D().2q(d);I D(a)}d=[]}}N I D(b).2q(d)}N G(D.1D(d))I D(S)[D.17.27?"27":"43"](d);I 7.6Y(D.2d(d))},5w:"1.2.6",8G:H(){I 7.K},K:0,3p:H(a){I a==12?D.2d(7):7[a]},2I:H(b){J a=D(b);a.5n=7;I a},6Y:H(a){7.K=0;2p.44.1p.1w(7,a);I 7},P:H(a,b){I D.P(7,a,b)},5i:H(b){J a=-1;I D.2L(b&&b.5w?b[0]:b,7)},1K:H(c,a,b){J d=c;G(c.1q==56)G(a===12)I 7[0]&&D[b||"1K"](7[0],c);N{d={};d[c]=a}I 7.P(H(i){R(c 1n d)D.1K(b?7.V:7,c,D.1i(7,d[c],b,i,c))})},1g:H(b,a){G((b==\'2h\'||b==\'1Z\')&&3d(a)<0)a=12;I 7.1K(b,a,"2a")},1r:H(b){G(1j b!="49"&&b!=U)I 7.4E().3v((7[0]&&7[0].2z||S).5F(b));J a="";D.P(b||7,H(){D.P(7.3t,H(){G(7.16!=8)a+=7.16!=1?7.76:D.17.1r([7])})});I a},5z:H(b){G(7[0])D(b,7[0].2z).5y().39(7[0]).2l(H(){J a=7;1B(a.1x)a=a.1x;I a}).3v(7);I 7},8Y:H(a){I 7.P(H(){D(7).6Q().5z(a)})},8R:H(a){I 7.P(H(){D(7).5z(a)})},3v:H(){I 7.3W(19,M,Q,H(a){G(7.16==1)7.3U(a)})},6F:H(){I 7.3W(19,M,M,H(a){G(7.16==1)7.39(a,7.1x)})},6E:H(){I 7.3W(19,Q,Q,H(a){7.1d.39(a,7)})},5q:H(){I 7.3W(19,Q,M,H(a){7.1d.39(a,7.2H)})},3l:H(){I 7.5n||D([])},2q:H(b){J c=D.2l(7,H(a){I D.2q(b,a)});I 7.2I(/[^+>] [^+>]/.11(b)||b.1h("..")>-1?D.4r(c):c)},5y:H(e){J f=7.2l(H(){G(D.14.1f&&!D.4n(7)){J a=7.6o(M),5h=S.3h("1v");5h.3U(a);I D.4h([5h.4H])[0]}N I 7.6o(M)});J d=f.2q("*").5c().P(H(){G(7[E]!=12)7[E]=U});G(e===M)7.2q("*").5c().P(H(i){G(7.16==3)I;J c=D.L(7,"3w");R(J a 1n c)R(J b 1n c[a])D.W.1e(d[i],a,c[a][b],c[a][b].L)});I f},1E:H(b){I 7.2I(D.1D(b)&&D.3C(7,H(a,i){I b.1k(a,i)})||D.3g(b,7))},4Y:H(b){G(b.1q==56)G(62.11(b))I 7.2I(D.3g(b,7,M));N b=D.3g(b,7);J a=b.K&&b[b.K-1]!==12&&!b.16;I 7.1E(H(){I a?D.2L(7,b)<0:7!=b})},1e:H(a){I 7.2I(D.4r(D.2R(7.3p(),1j a==\'23\'?D(a):D.2d(a))))},3F:H(a){I!!a&&D.3g(a,7).K>0},7T:H(a){I 7.3F("."+a)},6e:H(b){G(b==12){G(7.K){J c=7[0];G(D.Y(c,"2A")){J e=c.64,63=[],15=c.15,2V=c.O=="2A-2V";G(e<0)I U;R(J i=2V?e:0,2f=2V?e+1:15.K;i<2f;i++){J d=15[i];G(d.2W){b=D.14.1f&&!d.at.2x.an?d.1r:d.2x;G(2V)I b;63.1p(b)}}I 63}N I(7[0].2x||"").1o(/\\r/g,"")}I 12}G(b.1q==4L)b+=\'\';I 7.P(H(){G(7.16!=1)I;G(b.1q==2p&&/5O|5L/.11(7.O))7.4J=(D.2L(7.2x,b)>=0||D.2L(7.34,b)>=0);N G(D.Y(7,"2A")){J a=D.2d(b);D("9R",7).P(H(){7.2W=(D.2L(7.2x,a)>=0||D.2L(7.1r,a)>=0)});G(!a.K)7.64=-1}N 7.2x=b})},2K:H(a){I a==12?(7[0]?7[0].4H:U):7.4E().3v(a)},7b:H(a){I 7.5q(a).21()},79:H(i){I 7.3s(i,i+1)},3s:H(){I 7.2I(2p.44.3s.1w(7,19))},2l:H(b){I 7.2I(D.2l(7,H(a,i){I b.1k(a,i,a)}))},5c:H(){I 7.1e(7.5n)},L:H(d,b){J a=d.1R(".");a[1]=a[1]?"."+a[1]:"";G(b===12){J c=7.5C("9z"+a[1]+"!",[a[0]]);G(c===12&&7.K)c=D.L(7[0],d);I c===12&&a[1]?7.L(a[0]):c}N I 7.1P("9u"+a[1]+"!",[a[0],b]).P(H(){D.L(7,d,b)})},3b:H(a){I 7.P(H(){D.3b(7,a)})},3W:H(g,f,h,d){J e=7.K>1,3x;I 7.P(H(){G(!3x){3x=D.4h(g,7.2z);G(h)3x.9o()}J b=7;G(f&&D.Y(7,"1T")&&D.Y(3x[0],"4F"))b=7.3H("22")[0]||7.3U(7.2z.3h("22"));J c=D([]);D.P(3x,H(){J a=e?D(7).5y(M)[0]:7;G(D.Y(a,"1m"))c=c.1e(a);N{G(a.16==1)c=c.1e(D("1m",a).21());d.1k(b,a)}});c.P(6T)})}};D.17.5j.44=D.17;H 6T(i,a){G(a.4d)D.3Y({1a:a.4d,31:Q,1O:"1m"});N D.5u(a.1r||a.6O||a.4H||"");G(a.1d)a.1d.37(a)}H 1z(){I+2B 8J}D.1l=D.17.1l=H(){J b=19[0]||{},i=1,K=19.K,4x=Q,15;G(b.1q==8I){4x=b;b=19[1]||{};i=2}G(1j b!="49"&&1j b!="H")b={};G(K==i){b=7;--i}R(;i<K;i++)G((15=19[i])!=U)R(J c 1n 15){J a=b[c],2w=15[c];G(b===2w)6M;G(4x&&2w&&1j 2w=="49"&&!2w.16)b[c]=D.1l(4x,a||(2w.K!=U?[]:{}),2w);N G(2w!==12)b[c]=2w}I b};J E="4M"+1z(),6K=0,5r={},6G=/z-?5i|8B-?8A|1y|6B|8v-?1Z/i,3P=S.3P||{};D.1l({8u:H(a){1b.$=3m$;G(a)1b.4M=w;I D},1D:H(a){I!!a&&1j a!="23"&&!a.Y&&a.1q!=2p&&/^[\\s[]?H/.11(a+"")},4n:H(a){I a.1C&&!a.1c||a.2j&&a.2z&&!a.2z.1c},5u:H(a){a=D.3k(a);G(a){J b=S.3H("6w")[0]||S.1C,1m=S.3h("1m");1m.O="1r/4t";G(D.14.1f)1m.1r=a;N 1m.3U(S.5F(a));b.39(1m,b.1x);b.37(1m)}},Y:H(b,a){I b.Y&&b.Y.2r()==a.2r()},1Y:{},L:H(c,d,b){c=c==1b?5r:c;J a=c[E];G(!a)a=c[E]=++6K;G(d&&!D.1Y[a])D.1Y[a]={};G(b!==12)D.1Y[a][d]=b;I d?D.1Y[a][d]:a},3b:H(c,b){c=c==1b?5r:c;J a=c[E];G(b){G(D.1Y[a]){2U D.1Y[a][b];b="";R(b 1n D.1Y[a])1X;G(!b)D.3b(c)}}N{1U{2U c[E]}1V(e){G(c.5l)c.5l(E)}2U D.1Y[a]}},P:H(d,a,c){J e,i=0,K=d.K;G(c){G(K==12){R(e 1n d)G(a.1w(d[e],c)===Q)1X}N R(;i<K;)G(a.1w(d[i++],c)===Q)1X}N{G(K==12){R(e 1n d)G(a.1k(d[e],e,d[e])===Q)1X}N R(J b=d[0];i<K&&a.1k(b,i,b)!==Q;b=d[++i]){}}I d},1i:H(b,a,c,i,d){G(D.1D(a))a=a.1k(b,i);I a&&a.1q==4L&&c=="2a"&&!6G.11(d)?a+"2X":a},1F:{1e:H(c,b){D.P((b||"").1R(/\\s+/),H(i,a){G(c.16==1&&!D.1F.3T(c.1F,a))c.1F+=(c.1F?" ":"")+a})},21:H(c,b){G(c.16==1)c.1F=b!=12?D.3C(c.1F.1R(/\\s+/),H(a){I!D.1F.3T(b,a)}).6s(" "):""},3T:H(b,a){I D.2L(a,(b.1F||b).6r().1R(/\\s+/))>-1}},6q:H(b,c,a){J e={};R(J d 1n c){e[d]=b.V[d];b.V[d]=c[d]}a.1k(b);R(J d 1n c)b.V[d]=e[d]},1g:H(d,e,c){G(e=="2h"||e=="1Z"){J b,3X={30:"5x",5g:"1G",18:"3I"},35=e=="2h"?["5e","6k"]:["5G","6i"];H 5b(){b=e=="2h"?d.8f:d.8c;J a=0,2C=0;D.P(35,H(){a+=3d(D.2a(d,"57"+7,M))||0;2C+=3d(D.2a(d,"2C"+7+"4b",M))||0});b-=29.83(a+2C)}G(D(d).3F(":4j"))5b();N D.6q(d,3X,5b);I 29.2f(0,b)}I D.2a(d,e,c)},2a:H(f,l,k){J e,V=f.V;H 3E(b){G(!D.14.2k)I Q;J a=3P.54(b,U);I!a||a.52("3E")==""}G(l=="1y"&&D.14.1f){e=D.1K(V,"1y");I e==""?"1":e}G(D.14.2G&&l=="18"){J d=V.50;V.50="0 7Y 7W";V.50=d}G(l.1I(/4i/i))l=y;G(!k&&V&&V[l])e=V[l];N G(3P.54){G(l.1I(/4i/i))l="4i";l=l.1o(/([A-Z])/g,"-$1").3y();J c=3P.54(f,U);G(c&&!3E(f))e=c.52(l);N{J g=[],2E=[],a=f,i=0;R(;a&&3E(a);a=a.1d)2E.6h(a);R(;i<2E.K;i++)G(3E(2E[i])){g[i]=2E[i].V.18;2E[i].V.18="3I"}e=l=="18"&&g[2E.K-1]!=U?"2F":(c&&c.52(l))||"";R(i=0;i<g.K;i++)G(g[i]!=U)2E[i].V.18=g[i]}G(l=="1y"&&e=="")e="1"}N G(f.4g){J h=l.1o(/\\-(\\w)/g,H(a,b){I b.2r()});e=f.4g[l]||f.4g[h];G(!/^\\d+(2X)?$/i.11(e)&&/^\\d/.11(e)){J j=V.1A,66=f.65.1A;f.65.1A=f.4g.1A;V.1A=e||0;e=V.aM+"2X";V.1A=j;f.65.1A=66}}I e},4h:H(l,h){J k=[];h=h||S;G(1j h.3h==\'12\')h=h.2z||h[0]&&h[0].2z||S;D.P(l,H(i,d){G(!d)I;G(d.1q==4L)d+=\'\';G(1j d=="23"){d=d.1o(/(<(\\w+)[^>]*?)\\/>/g,H(b,a,c){I c.1I(/^(aK|4f|7E|aG|4T|7A|aB|3n|az|ay|av)$/i)?b:a+"></"+c+">"});J f=D.3k(d).3y(),1v=h.3h("1v");J e=!f.1h("<au")&&[1,"<2A 7w=\'7w\'>","</2A>"]||!f.1h("<ar")&&[1,"<7v>","</7v>"]||f.1I(/^<(aq|22|am|ak|ai)/)&&[1,"<1T>","</1T>"]||!f.1h("<4F")&&[2,"<1T><22>","</22></1T>"]||(!f.1h("<af")||!f.1h("<ad"))&&[3,"<1T><22><4F>","</4F></22></1T>"]||!f.1h("<7E")&&[2,"<1T><22></22><7q>","</7q></1T>"]||D.14.1f&&[1,"1v<1v>","</1v>"]||[0,"",""];1v.4H=e[1]+d+e[2];1B(e[0]--)1v=1v.5T;G(D.14.1f){J g=!f.1h("<1T")&&f.1h("<22")<0?1v.1x&&1v.1x.3t:e[1]=="<1T>"&&f.1h("<22")<0?1v.3t:[];R(J j=g.K-1;j>=0;--j)G(D.Y(g[j],"22")&&!g[j].3t.K)g[j].1d.37(g[j]);G(/^\\s/.11(d))1v.39(h.5F(d.1I(/^\\s*/)[0]),1v.1x)}d=D.2d(1v.3t)}G(d.K===0&&(!D.Y(d,"3V")&&!D.Y(d,"2A")))I;G(d[0]==12||D.Y(d,"3V")||d.15)k.1p(d);N k=D.2R(k,d)});I k},1K:H(d,f,c){G(!d||d.16==3||d.16==8)I 12;J e=!D.4n(d),40=c!==12,1f=D.14.1f;f=e&&D.3X[f]||f;G(d.2j){J g=/5Q|4d|V/.11(f);G(f=="2W"&&D.14.2k)d.1d.64;G(f 1n d&&e&&!g){G(40){G(f=="O"&&D.Y(d,"4T")&&d.1d)7p"O a3 a1\'t 9V 9U";d[f]=c}G(D.Y(d,"3V")&&d.7i(f))I d.7i(f).76;I d[f]}G(1f&&e&&f=="V")I D.1K(d.V,"9T",c);G(40)d.9Q(f,""+c);J h=1f&&e&&g?d.4G(f,2):d.4G(f);I h===U?12:h}G(1f&&f=="1y"){G(40){d.6B=1;d.1E=(d.1E||"").1o(/7f\\([^)]*\\)/,"")+(3r(c)+\'\'=="9L"?"":"7f(1y="+c*7a+")")}I d.1E&&d.1E.1h("1y=")>=0?(3d(d.1E.1I(/1y=([^)]*)/)[1])/7a)+\'\':""}f=f.1o(/-([a-z])/9H,H(a,b){I b.2r()});G(40)d[f]=c;I d[f]},3k:H(a){I(a||"").1o(/^\\s+|\\s+$/g,"")},2d:H(b){J a=[];G(b!=U){J i=b.K;G(i==U||b.1R||b.4I||b.1k)a[0]=b;N 1B(i)a[--i]=b[i]}I a},2L:H(b,a){R(J i=0,K=a.K;i<K;i++)G(a[i]===b)I i;I-1},2R:H(a,b){J i=0,T,2S=a.K;G(D.14.1f){1B(T=b[i++])G(T.16!=8)a[2S++]=T}N 1B(T=b[i++])a[2S++]=T;I a},4r:H(a){J c=[],2o={};1U{R(J i=0,K=a.K;i<K;i++){J b=D.L(a[i]);G(!2o[b]){2o[b]=M;c.1p(a[i])}}}1V(e){c=a}I c},3C:H(c,a,d){J b=[];R(J i=0,K=c.K;i<K;i++)G(!d!=!a(c[i],i))b.1p(c[i]);I b},2l:H(d,a){J c=[];R(J i=0,K=d.K;i<K;i++){J b=a(d[i],i);G(b!=U)c[c.K]=b}I c.7d.1w([],c)}});J v=9B.9A.3y();D.14={5B:(v.1I(/.+(?:9y|9x|9w|9v)[\\/: ]([\\d.]+)/)||[])[1],2k:/75/.11(v),2G:/2G/.11(v),1f:/1f/.11(v)&&!/2G/.11(v),42:/42/.11(v)&&!/(9s|75)/.11(v)};J y=D.14.1f?"7o":"72";D.1l({71:!D.14.1f||S.70=="6Z",3X:{"R":"9n","9k":"1F","4i":y,72:y,7o:y,9h:"9f",9e:"9d",9b:"99"}});D.P({6W:H(a){I a.1d},97:H(a){I D.4S(a,"1d")},95:H(a){I D.3a(a,2,"2H")},91:H(a){I D.3a(a,2,"4l")},8Z:H(a){I D.4S(a,"2H")},8X:H(a){I D.4S(a,"4l")},8W:H(a){I D.5v(a.1d.1x,a)},8V:H(a){I D.5v(a.1x)},6Q:H(a){I D.Y(a,"8U")?a.8T||a.8S.S:D.2d(a.3t)}},H(c,d){D.17[c]=H(b){J a=D.2l(7,d);G(b&&1j b=="23")a=D.3g(b,a);I 7.2I(D.4r(a))}});D.P({6P:"3v",8Q:"6F",39:"6E",8P:"5q",8O:"7b"},H(c,b){D.17[c]=H(){J a=19;I 7.P(H(){R(J i=0,K=a.K;i<K;i++)D(a[i])[b](7)})}});D.P({8N:H(a){D.1K(7,a,"");G(7.16==1)7.5l(a)},8M:H(a){D.1F.1e(7,a)},8L:H(a){D.1F.21(7,a)},8K:H(a){D.1F[D.1F.3T(7,a)?"21":"1e"](7,a)},21:H(a){G(!a||D.1E(a,[7]).r.K){D("*",7).1e(7).P(H(){D.W.21(7);D.3b(7)});G(7.1d)7.1d.37(7)}},4E:H(){D(">*",7).21();1B(7.1x)7.37(7.1x)}},H(a,b){D.17[a]=H(){I 7.P(b,19)}});D.P(["6N","4b"],H(i,c){J b=c.3y();D.17[b]=H(a){I 7[0]==1b?D.14.2G&&S.1c["5t"+c]||D.14.2k&&1b["5s"+c]||S.70=="6Z"&&S.1C["5t"+c]||S.1c["5t"+c]:7[0]==S?29.2f(29.2f(S.1c["4y"+c],S.1C["4y"+c]),29.2f(S.1c["2i"+c],S.1C["2i"+c])):a==12?(7.K?D.1g(7[0],b):U):7.1g(b,a.1q==56?a:a+"2X")}});H 25(a,b){I a[0]&&3r(D.2a(a[0],b,M),10)||0}J C=D.14.2k&&3r(D.14.5B)<8H?"(?:[\\\\w*3m-]|\\\\\\\\.)":"(?:[\\\\w\\8F-\\8E*3m-]|\\\\\\\\.)",6L=2B 4v("^>\\\\s*("+C+"+)"),6J=2B 4v("^("+C+"+)(#)("+C+"+)"),6I=2B 4v("^([#.]?)("+C+"*)");D.1l({6H:{"":H(a,i,m){I m[2]=="*"||D.Y(a,m[2])},"#":H(a,i,m){I a.4G("2v")==m[2]},":":{8D:H(a,i,m){I i<m[3]-0},8C:H(a,i,m){I i>m[3]-0},3a:H(a,i,m){I m[3]-0==i},79:H(a,i,m){I m[3]-0==i},3o:H(a,i){I i==0},3S:H(a,i,m,r){I i==r.K-1},6D:H(a,i){I i%2==0},6C:H(a,i){I i%2},"3o-4u":H(a){I a.1d.3H("*")[0]==a},"3S-4u":H(a){I D.3a(a.1d.5T,1,"4l")==a},"8z-4u":H(a){I!D.3a(a.1d.5T,2,"4l")},6W:H(a){I a.1x},4E:H(a){I!a.1x},8y:H(a,i,m){I(a.6O||a.8x||D(a).1r()||"").1h(m[3])>=0},4j:H(a){I"1G"!=a.O&&D.1g(a,"18")!="2F"&&D.1g(a,"5g")!="1G"},1G:H(a){I"1G"==a.O||D.1g(a,"18")=="2F"||D.1g(a,"5g")=="1G"},8w:H(a){I!a.3R},3R:H(a){I a.3R},4J:H(a){I a.4J},2W:H(a){I a.2W||D.1K(a,"2W")},1r:H(a){I"1r"==a.O},5O:H(a){I"5O"==a.O},5L:H(a){I"5L"==a.O},5p:H(a){I"5p"==a.O},3Q:H(a){I"3Q"==a.O},5o:H(a){I"5o"==a.O},6A:H(a){I"6A"==a.O},6z:H(a){I"6z"==a.O},2s:H(a){I"2s"==a.O||D.Y(a,"2s")},4T:H(a){I/4T|2A|6y|2s/i.11(a.Y)},3T:H(a,i,m){I D.2q(m[3],a).K},8t:H(a){I/h\\d/i.11(a.Y)},8s:H(a){I D.3C(D.3O,H(b){I a==b.T}).K}}},6x:[/^(\\[) *@?([\\w-]+) *([!*$^~=]*) *(\'?"?)(.*?)\\4 *\\]/,/^(:)([\\w-]+)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/,2B 4v("^([:.#]*)("+C+"+)")],3g:H(a,c,b){J d,1t=[];1B(a&&a!=d){d=a;J f=D.1E(a,c,b);a=f.t.1o(/^\\s*,\\s*/,"");1t=b?c=f.r:D.2R(1t,f.r)}I 1t},2q:H(t,o){G(1j t!="23")I[t];G(o&&o.16!=1&&o.16!=9)I[];o=o||S;J d=[o],2o=[],3S,Y;1B(t&&3S!=t){J r=[];3S=t;t=D.3k(t);J l=Q,3j=6L,m=3j.2D(t);G(m){Y=m[1].2r();R(J i=0;d[i];i++)R(J c=d[i].1x;c;c=c.2H)G(c.16==1&&(Y=="*"||c.Y.2r()==Y))r.1p(c);d=r;t=t.1o(3j,"");G(t.1h(" ")==0)6M;l=M}N{3j=/^([>+~])\\s*(\\w*)/i;G((m=3j.2D(t))!=U){r=[];J k={};Y=m[2].2r();m=m[1];R(J j=0,3i=d.K;j<3i;j++){J n=m=="~"||m=="+"?d[j].2H:d[j].1x;R(;n;n=n.2H)G(n.16==1){J g=D.L(n);G(m=="~"&&k[g])1X;G(!Y||n.Y.2r()==Y){G(m=="~")k[g]=M;r.1p(n)}G(m=="+")1X}}d=r;t=D.3k(t.1o(3j,""));l=M}}G(t&&!l){G(!t.1h(",")){G(o==d[0])d.4s();2o=D.2R(2o,d);r=d=[o];t=" "+t.6v(1,t.K)}N{J h=6J;J m=h.2D(t);G(m){m=[0,m[2],m[3],m[1]]}N{h=6I;m=h.2D(t)}m[2]=m[2].1o(/\\\\/g,"");J f=d[d.K-1];G(m[1]=="#"&&f&&f.61&&!D.4n(f)){J p=f.61(m[2]);G((D.14.1f||D.14.2G)&&p&&1j p.2v=="23"&&p.2v!=m[2])p=D(\'[@2v="\'+m[2]+\'"]\',f)[0];d=r=p&&(!m[3]||D.Y(p,m[3]))?[p]:[]}N{R(J i=0;d[i];i++){J a=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];G(a=="*"&&d[i].Y.3y()=="49")a="3n";r=D.2R(r,d[i].3H(a))}G(m[1]==".")r=D.5m(r,m[2]);G(m[1]=="#"){J e=[];R(J i=0;r[i];i++)G(r[i].4G("2v")==m[2]){e=[r[i]];1X}r=e}d=r}t=t.1o(h,"")}}G(t){J b=D.1E(t,r);d=r=b.r;t=D.3k(b.t)}}G(t)d=[];G(d&&o==d[0])d.4s();2o=D.2R(2o,d);I 2o},5m:H(r,m,a){m=" "+m+" ";J c=[];R(J i=0;r[i];i++){J b=(" "+r[i].1F+" ").1h(m)>=0;G(!a&&b||a&&!b)c.1p(r[i])}I c},1E:H(t,r,h){J d;1B(t&&t!=d){d=t;J p=D.6x,m;R(J i=0;p[i];i++){m=p[i].2D(t);G(m){t=t.8r(m[0].K);m[2]=m[2].1o(/\\\\/g,"");1X}}G(!m)1X;G(m[1]==":"&&m[2]=="4Y")r=62.11(m[3])?D.1E(m[3],r,M).r:D(r).4Y(m[3]);N G(m[1]==".")r=D.5m(r,m[2],h);N G(m[1]=="["){J g=[],O=m[3];R(J i=0,3i=r.K;i<3i;i++){J a=r[i],z=a[D.3X[m[2]]||m[2]];G(z==U||/5Q|4d|2W/.11(m[2]))z=D.1K(a,m[2])||\'\';G((O==""&&!!z||O=="="&&z==m[5]||O=="!="&&z!=m[5]||O=="^="&&z&&!z.1h(m[5])||O=="$="&&z.6v(z.K-m[5].K)==m[5]||(O=="*="||O=="~=")&&z.1h(m[5])>=0)^h)g.1p(a)}r=g}N G(m[1]==":"&&m[2]=="3a-4u"){J e={},g=[],11=/(-?)(\\d*)n((?:\\+|-)?\\d*)/.2D(m[3]=="6D"&&"2n"||m[3]=="6C"&&"2n+1"||!/\\D/.11(m[3])&&"8q+"+m[3]||m[3]),3o=(11[1]+(11[2]||1))-0,d=11[3]-0;R(J i=0,3i=r.K;i<3i;i++){J j=r[i],1d=j.1d,2v=D.L(1d);G(!e[2v]){J c=1;R(J n=1d.1x;n;n=n.2H)G(n.16==1)n.4q=c++;e[2v]=M}J b=Q;G(3o==0){G(j.4q==d)b=M}N G((j.4q-d)%3o==0&&(j.4q-d)/3o>=0)b=M;G(b^h)g.1p(j)}r=g}N{J f=D.6H[m[1]];G(1j f=="49")f=f[m[2]];G(1j f=="23")f=6u("Q||H(a,i){I "+f+";}");r=D.3C(r,H(a,i){I f(a,i,m,r)},h)}}I{r:r,t:t}},4S:H(b,c){J a=[],1t=b[c];1B(1t&&1t!=S){G(1t.16==1)a.1p(1t);1t=1t[c]}I a},3a:H(a,e,c,b){e=e||1;J d=0;R(;a;a=a[c])G(a.16==1&&++d==e)1X;I a},5v:H(n,a){J r=[];R(;n;n=n.2H){G(n.16==1&&n!=a)r.1p(n)}I r}});D.W={1e:H(f,i,g,e){G(f.16==3||f.16==8)I;G(D.14.1f&&f.4I)f=1b;G(!g.24)g.24=7.24++;G(e!=12){J h=g;g=7.3M(h,H(){I h.1w(7,19)});g.L=e}J j=D.L(f,"3w")||D.L(f,"3w",{}),1H=D.L(f,"1H")||D.L(f,"1H",H(){G(1j D!="12"&&!D.W.5k)I D.W.1H.1w(19.3L.T,19)});1H.T=f;D.P(i.1R(/\\s+/),H(c,b){J a=b.1R(".");b=a[0];g.O=a[1];J d=j[b];G(!d){d=j[b]={};G(!D.W.2t[b]||D.W.2t[b].4p.1k(f)===Q){G(f.3K)f.3K(b,1H,Q);N G(f.6t)f.6t("4o"+b,1H)}}d[g.24]=g;D.W.26[b]=M});f=U},24:1,26:{},21:H(e,h,f){G(e.16==3||e.16==8)I;J i=D.L(e,"3w"),1L,5i;G(i){G(h==12||(1j h=="23"&&h.8p(0)=="."))R(J g 1n i)7.21(e,g+(h||""));N{G(h.O){f=h.2y;h=h.O}D.P(h.1R(/\\s+/),H(b,a){J c=a.1R(".");a=c[0];G(i[a]){G(f)2U i[a][f.24];N R(f 1n i[a])G(!c[1]||i[a][f].O==c[1])2U i[a][f];R(1L 1n i[a])1X;G(!1L){G(!D.W.2t[a]||D.W.2t[a].4A.1k(e)===Q){G(e.6p)e.6p(a,D.L(e,"1H"),Q);N G(e.6n)e.6n("4o"+a,D.L(e,"1H"))}1L=U;2U i[a]}}})}R(1L 1n i)1X;G(!1L){J d=D.L(e,"1H");G(d)d.T=U;D.3b(e,"3w");D.3b(e,"1H")}}},1P:H(h,c,f,g,i){c=D.2d(c);G(h.1h("!")>=0){h=h.3s(0,-1);J a=M}G(!f){G(7.26[h])D("*").1e([1b,S]).1P(h,c)}N{G(f.16==3||f.16==8)I 12;J b,1L,17=D.1D(f[h]||U),W=!c[0]||!c[0].32;G(W){c.6h({O:h,2J:f,32:H(){},3J:H(){},4C:1z()});c[0][E]=M}c[0].O=h;G(a)c[0].6m=M;J d=D.L(f,"1H");G(d)b=d.1w(f,c);G((!17||(D.Y(f,\'a\')&&h=="4V"))&&f["4o"+h]&&f["4o"+h].1w(f,c)===Q)b=Q;G(W)c.4s();G(i&&D.1D(i)){1L=i.1w(f,b==U?c:c.7d(b));G(1L!==12)b=1L}G(17&&g!==Q&&b!==Q&&!(D.Y(f,\'a\')&&h=="4V")){7.5k=M;1U{f[h]()}1V(e){}}7.5k=Q}I b},1H:H(b){J a,1L,38,5f,4m;b=19[0]=D.W.6l(b||1b.W);38=b.O.1R(".");b.O=38[0];38=38[1];5f=!38&&!b.6m;4m=(D.L(7,"3w")||{})[b.O];R(J j 1n 4m){J c=4m[j];G(5f||c.O==38){b.2y=c;b.L=c.L;1L=c.1w(7,19);G(a!==Q)a=1L;G(1L===Q){b.32();b.3J()}}}I a},6l:H(b){G(b[E]==M)I b;J d=b;b={8o:d};J c="8n 8m 8l 8k 2s 8j 47 5d 6j 5E 8i L 8h 8g 4K 2y 5a 59 8e 8b 58 6f 8a 88 4k 87 86 84 6d 2J 4C 6c O 82 81 35".1R(" ");R(J i=c.K;i;i--)b[c[i]]=d[c[i]];b[E]=M;b.32=H(){G(d.32)d.32();d.80=Q};b.3J=H(){G(d.3J)d.3J();d.7Z=M};b.4C=b.4C||1z();G(!b.2J)b.2J=b.6d||S;G(b.2J.16==3)b.2J=b.2J.1d;G(!b.4k&&b.4K)b.4k=b.4K==b.2J?b.6c:b.4K;G(b.58==U&&b.5d!=U){J a=S.1C,1c=S.1c;b.58=b.5d+(a&&a.2e||1c&&1c.2e||0)-(a.6b||0);b.6f=b.6j+(a&&a.2c||1c&&1c.2c||0)-(a.6a||0)}G(!b.35&&((b.47||b.47===0)?b.47:b.5a))b.35=b.47||b.5a;G(!b.59&&b.5E)b.59=b.5E;G(!b.35&&b.2s)b.35=(b.2s&1?1:(b.2s&2?3:(b.2s&4?2:0)));I b},3M:H(a,b){b.24=a.24=a.24||b.24||7.24++;I b},2t:{27:{4p:H(){55();I},4A:H(){I}},3D:{4p:H(){G(D.14.1f)I Q;D(7).2O("53",D.W.2t.3D.2y);I M},4A:H(){G(D.14.1f)I Q;D(7).4e("53",D.W.2t.3D.2y);I M},2y:H(a){G(F(a,7))I M;a.O="3D";I D.W.1H.1w(7,19)}},3N:{4p:H(){G(D.14.1f)I Q;D(7).2O("51",D.W.2t.3N.2y);I M},4A:H(){G(D.14.1f)I Q;D(7).4e("51",D.W.2t.3N.2y);I M},2y:H(a){G(F(a,7))I M;a.O="3N";I D.W.1H.1w(7,19)}}}};D.17.1l({2O:H(c,a,b){I c=="4X"?7.2V(c,a,b):7.P(H(){D.W.1e(7,c,b||a,b&&a)})},2V:H(d,b,c){J e=D.W.3M(c||b,H(a){D(7).4e(a,e);I(c||b).1w(7,19)});I 7.P(H(){D.W.1e(7,d,e,c&&b)})},4e:H(a,b){I 7.P(H(){D.W.21(7,a,b)})},1P:H(c,a,b){I 7.P(H(){D.W.1P(c,a,7,M,b)})},5C:H(c,a,b){I 7[0]&&D.W.1P(c,a,7[0],Q,b)},2m:H(b){J c=19,i=1;1B(i<c.K)D.W.3M(b,c[i++]);I 7.4V(D.W.3M(b,H(a){7.4Z=(7.4Z||0)%i;a.32();I c[7.4Z++].1w(7,19)||Q}))},7X:H(a,b){I 7.2O(\'3D\',a).2O(\'3N\',b)},27:H(a){55();G(D.2Q)a.1k(S,D);N D.3A.1p(H(){I a.1k(7,D)});I 7}});D.1l({2Q:Q,3A:[],27:H(){G(!D.2Q){D.2Q=M;G(D.3A){D.P(D.3A,H(){7.1k(S)});D.3A=U}D(S).5C("27")}}});J x=Q;H 55(){G(x)I;x=M;G(S.3K&&!D.14.2G)S.3K("69",D.27,Q);G(D.14.1f&&1b==1S)(H(){G(D.2Q)I;1U{S.1C.7V("1A")}1V(3e){3B(19.3L,0);I}D.27()})();G(D.14.2G)S.3K("69",H(){G(D.2Q)I;R(J i=0;i<S.4W.K;i++)G(S.4W[i].3R){3B(19.3L,0);I}D.27()},Q);G(D.14.2k){J a;(H(){G(D.2Q)I;G(S.3f!="68"&&S.3f!="1J"){3B(19.3L,0);I}G(a===12)a=D("V, 7A[7U=7S]").K;G(S.4W.K!=a){3B(19.3L,0);I}D.27()})()}D.W.1e(1b,"43",D.27)}D.P(("7R,7Q,43,85,4y,4X,4V,7P,"+"7O,7N,89,53,51,7M,2A,"+"5o,7L,7K,8d,3e").1R(","),H(i,b){D.17[b]=H(a){I a?7.2O(b,a):7.1P(b)}});J F=H(a,c){J b=a.4k;1B(b&&b!=c)1U{b=b.1d}1V(3e){b=c}I b==c};D(1b).2O("4X",H(){D("*").1e(S).4e()});D.17.1l({67:D.17.43,43:H(g,d,c){G(1j g!=\'23\')I 7.67(g);J e=g.1h(" ");G(e>=0){J i=g.3s(e,g.K);g=g.3s(0,e)}c=c||H(){};J f="2P";G(d)G(D.1D(d)){c=d;d=U}N{d=D.3n(d);f="6g"}J h=7;D.3Y({1a:g,O:f,1O:"2K",L:d,1J:H(a,b){G(b=="1W"||b=="7J")h.2K(i?D("<1v/>").3v(a.4U.1o(/<1m(.|\\s)*?\\/1m>/g,"")).2q(i):a.4U);h.P(c,[a.4U,b,a])}});I 7},aL:H(){I D.3n(7.7I())},7I:H(){I 7.2l(H(){I D.Y(7,"3V")?D.2d(7.aH):7}).1E(H(){I 7.34&&!7.3R&&(7.4J||/2A|6y/i.11(7.Y)||/1r|1G|3Q/i.11(7.O))}).2l(H(i,c){J b=D(7).6e();I b==U?U:b.1q==2p?D.2l(b,H(a,i){I{34:c.34,2x:a}}):{34:c.34,2x:b}}).3p()}});D.P("7H,7G,7F,7D,7C,7B".1R(","),H(i,o){D.17[o]=H(f){I 7.2O(o,f)}});J B=1z();D.1l({3p:H(d,b,a,c){G(D.1D(b)){a=b;b=U}I D.3Y({O:"2P",1a:d,L:b,1W:a,1O:c})},aE:H(b,a){I D.3p(b,U,a,"1m")},aD:H(c,b,a){I D.3p(c,b,a,"3z")},aC:H(d,b,a,c){G(D.1D(b)){a=b;b={}}I D.3Y({O:"6g",1a:d,L:b,1W:a,1O:c})},aA:H(a){D.1l(D.60,a)},60:{1a:5Z.5Q,26:M,O:"2P",2T:0,7z:"4R/x-ax-3V-aw",7x:M,31:M,L:U,5Y:U,3Q:U,4Q:{2N:"4R/2N, 1r/2N",2K:"1r/2K",1m:"1r/4t, 4R/4t",3z:"4R/3z, 1r/4t",1r:"1r/as",4w:"*/*"}},4z:{},3Y:H(s){s=D.1l(M,s,D.1l(M,{},D.60,s));J g,2Z=/=\\?(&|$)/g,1u,L,O=s.O.2r();G(s.L&&s.7x&&1j s.L!="23")s.L=D.3n(s.L);G(s.1O=="4P"){G(O=="2P"){G(!s.1a.1I(2Z))s.1a+=(s.1a.1I(/\\?/)?"&":"?")+(s.4P||"7u")+"=?"}N G(!s.L||!s.L.1I(2Z))s.L=(s.L?s.L+"&":"")+(s.4P||"7u")+"=?";s.1O="3z"}G(s.1O=="3z"&&(s.L&&s.L.1I(2Z)||s.1a.1I(2Z))){g="4P"+B++;G(s.L)s.L=(s.L+"").1o(2Z,"="+g+"$1");s.1a=s.1a.1o(2Z,"="+g+"$1");s.1O="1m";1b[g]=H(a){L=a;1W();1J();1b[g]=12;1U{2U 1b[g]}1V(e){}G(i)i.37(h)}}G(s.1O=="1m"&&s.1Y==U)s.1Y=Q;G(s.1Y===Q&&O=="2P"){J j=1z();J k=s.1a.1o(/(\\?|&)3m=.*?(&|$)/,"$ap="+j+"$2");s.1a=k+((k==s.1a)?(s.1a.1I(/\\?/)?"&":"?")+"3m="+j:"")}G(s.L&&O=="2P"){s.1a+=(s.1a.1I(/\\?/)?"&":"?")+s.L;s.L=U}G(s.26&&!D.4O++)D.W.1P("7H");J n=/^(?:\\w+:)?\\/\\/([^\\/?#]+)/;G(s.1O=="1m"&&O=="2P"&&n.11(s.1a)&&n.2D(s.1a)[1]!=5Z.al){J i=S.3H("6w")[0];J h=S.3h("1m");h.4d=s.1a;G(s.7t)h.aj=s.7t;G(!g){J l=Q;h.ah=h.ag=H(){G(!l&&(!7.3f||7.3f=="68"||7.3f=="1J")){l=M;1W();1J();i.37(h)}}}i.3U(h);I 12}J m=Q;J c=1b.7s?2B 7s("ae.ac"):2B 7r();G(s.5Y)c.6R(O,s.1a,s.31,s.5Y,s.3Q);N c.6R(O,s.1a,s.31);1U{G(s.L)c.4B("ab-aa",s.7z);G(s.5S)c.4B("a9-5R-a8",D.4z[s.1a]||"a7, a6 a5 a4 5N:5N:5N a2");c.4B("X-9Z-9Y","7r");c.4B("9W",s.1O&&s.4Q[s.1O]?s.4Q[s.1O]+", */*":s.4Q.4w)}1V(e){}G(s.7m&&s.7m(c,s)===Q){s.26&&D.4O--;c.7l();I Q}G(s.26)D.W.1P("7B",[c,s]);J d=H(a){G(!m&&c&&(c.3f==4||a=="2T")){m=M;G(f){7k(f);f=U}1u=a=="2T"&&"2T"||!D.7j(c)&&"3e"||s.5S&&D.7h(c,s.1a)&&"7J"||"1W";G(1u=="1W"){1U{L=D.6X(c,s.1O,s.9S)}1V(e){1u="5J"}}G(1u=="1W"){J b;1U{b=c.5I("7g-5R")}1V(e){}G(s.5S&&b)D.4z[s.1a]=b;G(!g)1W()}N D.5H(s,c,1u);1J();G(s.31)c=U}};G(s.31){J f=4I(d,13);G(s.2T>0)3B(H(){G(c){c.7l();G(!m)d("2T")}},s.2T)}1U{c.9P(s.L)}1V(e){D.5H(s,c,U,e)}G(!s.31)d();H 1W(){G(s.1W)s.1W(L,1u);G(s.26)D.W.1P("7C",[c,s])}H 1J(){G(s.1J)s.1J(c,1u);G(s.26)D.W.1P("7F",[c,s]);G(s.26&&!--D.4O)D.W.1P("7G")}I c},5H:H(s,a,b,e){G(s.3e)s.3e(a,b,e);G(s.26)D.W.1P("7D",[a,s,e])},4O:0,7j:H(a){1U{I!a.1u&&5Z.9O=="5p:"||(a.1u>=7e&&a.1u<9N)||a.1u==7c||a.1u==9K||D.14.2k&&a.1u==12}1V(e){}I Q},7h:H(a,c){1U{J b=a.5I("7g-5R");I a.1u==7c||b==D.4z[c]||D.14.2k&&a.1u==12}1V(e){}I Q},6X:H(a,c,b){J d=a.5I("9J-O"),2N=c=="2N"||!c&&d&&d.1h("2N")>=0,L=2N?a.9I:a.4U;G(2N&&L.1C.2j=="5J")7p"5J";G(b)L=b(L,c);G(c=="1m")D.5u(L);G(c=="3z")L=6u("("+L+")");I L},3n:H(a){J s=[];G(a.1q==2p||a.5w)D.P(a,H(){s.1p(3u(7.34)+"="+3u(7.2x))});N R(J j 1n a)G(a[j]&&a[j].1q==2p)D.P(a[j],H(){s.1p(3u(j)+"="+3u(7))});N s.1p(3u(j)+"="+3u(D.1D(a[j])?a[j]():a[j]));I s.6s("&").1o(/%20/g,"+")}});D.17.1l({1N:H(c,b){I c?7.2g({1Z:"1N",2h:"1N",1y:"1N"},c,b):7.1E(":1G").P(H(){7.V.18=7.5D||"";G(D.1g(7,"18")=="2F"){J a=D("<"+7.2j+" />").6P("1c");7.V.18=a.1g("18");G(7.V.18=="2F")7.V.18="3I";a.21()}}).3l()},1M:H(b,a){I b?7.2g({1Z:"1M",2h:"1M",1y:"1M"},b,a):7.1E(":4j").P(H(){7.5D=7.5D||D.1g(7,"18");7.V.18="2F"}).3l()},78:D.17.2m,2m:H(a,b){I D.1D(a)&&D.1D(b)?7.78.1w(7,19):a?7.2g({1Z:"2m",2h:"2m",1y:"2m"},a,b):7.P(H(){D(7)[D(7).3F(":1G")?"1N":"1M"]()})},9G:H(b,a){I 7.2g({1Z:"1N"},b,a)},9F:H(b,a){I 7.2g({1Z:"1M"},b,a)},9E:H(b,a){I 7.2g({1Z:"2m"},b,a)},9D:H(b,a){I 7.2g({1y:"1N"},b,a)},9M:H(b,a){I 7.2g({1y:"1M"},b,a)},9C:H(c,a,b){I 7.2g({1y:a},c,b)},2g:H(k,j,i,g){J h=D.77(j,i,g);I 7[h.36===Q?"P":"36"](H(){G(7.16!=1)I Q;J f=D.1l({},h),p,1G=D(7).3F(":1G"),46=7;R(p 1n k){G(k[p]=="1M"&&1G||k[p]=="1N"&&!1G)I f.1J.1k(7);G(p=="1Z"||p=="2h"){f.18=D.1g(7,"18");f.33=7.V.33}}G(f.33!=U)7.V.33="1G";f.45=D.1l({},k);D.P(k,H(c,a){J e=2B D.28(46,f,c);G(/2m|1N|1M/.11(a))e[a=="2m"?1G?"1N":"1M":a](k);N{J b=a.6r().1I(/^([+-]=)?([\\d+-.]+)(.*)$/),2b=e.1t(M)||0;G(b){J d=3d(b[2]),2M=b[3]||"2X";G(2M!="2X"){46.V[c]=(d||1)+2M;2b=((d||1)/e.1t(M))*2b;46.V[c]=2b+2M}G(b[1])d=((b[1]=="-="?-1:1)*d)+2b;e.3G(2b,d,2M)}N e.3G(2b,a,"")}});I M})},36:H(a,b){G(D.1D(a)||(a&&a.1q==2p)){b=a;a="28"}G(!a||(1j a=="23"&&!b))I A(7[0],a);I 7.P(H(){G(b.1q==2p)A(7,a,b);N{A(7,a).1p(b);G(A(7,a).K==1)b.1k(7)}})},9X:H(b,c){J a=D.3O;G(b)7.36([]);7.P(H(){R(J i=a.K-1;i>=0;i--)G(a[i].T==7){G(c)a[i](M);a.7n(i,1)}});G(!c)7.5A();I 7}});J A=H(b,c,a){G(b){c=c||"28";J q=D.L(b,c+"36");G(!q||a)q=D.L(b,c+"36",D.2d(a))}I q};D.17.5A=H(a){a=a||"28";I 7.P(H(){J q=A(7,a);q.4s();G(q.K)q[0].1k(7)})};D.1l({77:H(b,a,c){J d=b&&b.1q==a0?b:{1J:c||!c&&a||D.1D(b)&&b,2u:b,41:c&&a||a&&a.1q!=9t&&a};d.2u=(d.2u&&d.2u.1q==4L?d.2u:D.28.5K[d.2u])||D.28.5K.74;d.5M=d.1J;d.1J=H(){G(d.36!==Q)D(7).5A();G(D.1D(d.5M))d.5M.1k(7)};I d},41:{73:H(p,n,b,a){I b+a*p},5P:H(p,n,b,a){I((-29.9r(p*29.9q)/2)+0.5)*a+b}},3O:[],48:U,28:H(b,c,a){7.15=c;7.T=b;7.1i=a;G(!c.3Z)c.3Z={}}});D.28.44={4D:H(){G(7.15.2Y)7.15.2Y.1k(7.T,7.1z,7);(D.28.2Y[7.1i]||D.28.2Y.4w)(7);G(7.1i=="1Z"||7.1i=="2h")7.T.V.18="3I"},1t:H(a){G(7.T[7.1i]!=U&&7.T.V[7.1i]==U)I 7.T[7.1i];J r=3d(D.1g(7.T,7.1i,a));I r&&r>-9p?r:3d(D.2a(7.T,7.1i))||0},3G:H(c,b,d){7.5V=1z();7.2b=c;7.3l=b;7.2M=d||7.2M||"2X";7.1z=7.2b;7.2S=7.4N=0;7.4D();J e=7;H t(a){I e.2Y(a)}t.T=7.T;D.3O.1p(t);G(D.48==U){D.48=4I(H(){J a=D.3O;R(J i=0;i<a.K;i++)G(!a[i]())a.7n(i--,1);G(!a.K){7k(D.48);D.48=U}},13)}},1N:H(){7.15.3Z[7.1i]=D.1K(7.T.V,7.1i);7.15.1N=M;7.3G(0,7.1t());G(7.1i=="2h"||7.1i=="1Z")7.T.V[7.1i]="9m";D(7.T).1N()},1M:H(){7.15.3Z[7.1i]=D.1K(7.T.V,7.1i);7.15.1M=M;7.3G(7.1t(),0)},2Y:H(a){J t=1z();G(a||t>7.15.2u+7.5V){7.1z=7.3l;7.2S=7.4N=1;7.4D();7.15.45[7.1i]=M;J b=M;R(J i 1n 7.15.45)G(7.15.45[i]!==M)b=Q;G(b){G(7.15.18!=U){7.T.V.33=7.15.33;7.T.V.18=7.15.18;G(D.1g(7.T,"18")=="2F")7.T.V.18="3I"}G(7.15.1M)7.T.V.18="2F";G(7.15.1M||7.15.1N)R(J p 1n 7.15.45)D.1K(7.T.V,p,7.15.3Z[p])}G(b)7.15.1J.1k(7.T);I Q}N{J n=t-7.5V;7.4N=n/7.15.2u;7.2S=D.41[7.15.41||(D.41.5P?"5P":"73")](7.4N,n,0,1,7.15.2u);7.1z=7.2b+((7.3l-7.2b)*7.2S);7.4D()}I M}};D.1l(D.28,{5K:{9l:9j,9i:7e,74:9g},2Y:{2e:H(a){a.T.2e=a.1z},2c:H(a){a.T.2c=a.1z},1y:H(a){D.1K(a.T.V,"1y",a.1z)},4w:H(a){a.T.V[a.1i]=a.1z+a.2M}}});D.17.2i=H(){J b=0,1S=0,T=7[0],3q;G(T)ao(D.14){J d=T.1d,4a=T,1s=T.1s,1Q=T.2z,5U=2k&&3r(5B)<9c&&!/9a/i.11(v),1g=D.2a,3c=1g(T,"30")=="3c";G(T.7y){J c=T.7y();1e(c.1A+29.2f(1Q.1C.2e,1Q.1c.2e),c.1S+29.2f(1Q.1C.2c,1Q.1c.2c));1e(-1Q.1C.6b,-1Q.1C.6a)}N{1e(T.5X,T.5W);1B(1s){1e(1s.5X,1s.5W);G(42&&!/^t(98|d|h)$/i.11(1s.2j)||2k&&!5U)2C(1s);G(!3c&&1g(1s,"30")=="3c")3c=M;4a=/^1c$/i.11(1s.2j)?4a:1s;1s=1s.1s}1B(d&&d.2j&&!/^1c|2K$/i.11(d.2j)){G(!/^96|1T.*$/i.11(1g(d,"18")))1e(-d.2e,-d.2c);G(42&&1g(d,"33")!="4j")2C(d);d=d.1d}G((5U&&(3c||1g(4a,"30")=="5x"))||(42&&1g(4a,"30")!="5x"))1e(-1Q.1c.5X,-1Q.1c.5W);G(3c)1e(29.2f(1Q.1C.2e,1Q.1c.2e),29.2f(1Q.1C.2c,1Q.1c.2c))}3q={1S:1S,1A:b}}H 2C(a){1e(D.2a(a,"6V",M),D.2a(a,"6U",M))}H 1e(l,t){b+=3r(l,10)||0;1S+=3r(t,10)||0}I 3q};D.17.1l({30:H(){J a=0,1S=0,3q;G(7[0]){J b=7.1s(),2i=7.2i(),4c=/^1c|2K$/i.11(b[0].2j)?{1S:0,1A:0}:b.2i();2i.1S-=25(7,\'94\');2i.1A-=25(7,\'aF\');4c.1S+=25(b,\'6U\');4c.1A+=25(b,\'6V\');3q={1S:2i.1S-4c.1S,1A:2i.1A-4c.1A}}I 3q},1s:H(){J a=7[0].1s;1B(a&&(!/^1c|2K$/i.11(a.2j)&&D.1g(a,\'30\')==\'93\'))a=a.1s;I D(a)}});D.P([\'5e\',\'5G\'],H(i,b){J c=\'4y\'+b;D.17[c]=H(a){G(!7[0])I;I a!=12?7.P(H(){7==1b||7==S?1b.92(!i?a:D(1b).2e(),i?a:D(1b).2c()):7[c]=a}):7[0]==1b||7[0]==S?46[i?\'aI\':\'aJ\']||D.71&&S.1C[c]||S.1c[c]:7[0][c]}});D.P(["6N","4b"],H(i,b){J c=i?"5e":"5G",4f=i?"6k":"6i";D.17["5s"+b]=H(){I 7[b.3y()]()+25(7,"57"+c)+25(7,"57"+4f)};D.17["90"+b]=H(a){I 7["5s"+b]()+25(7,"2C"+c+"4b")+25(7,"2C"+4f+"4b")+(a?25(7,"6S"+c)+25(7,"6S"+4f):0)}})})();',62,669,'|||||||this|||||||||||||||||||||||||||||||||||if|function|return|var|length|data|true|else|type|each|false|for|document|elem|null|style|event||nodeName|||test|undefined||browser|options|nodeType|fn|display|arguments|url|window|body|parentNode|add|msie|css|indexOf|prop|typeof|call|extend|script|in|replace|push|constructor|text|offsetParent|cur|status|div|apply|firstChild|opacity|now|left|while|documentElement|isFunction|filter|className|hidden|handle|match|complete|attr|ret|hide|show|dataType|trigger|doc|split|top|table|try|catch|success|break|cache|height||remove|tbody|string|guid|num|global|ready|fx|Math|curCSS|start|scrollTop|makeArray|scrollLeft|max|animate|width|offset|tagName|safari|map|toggle||done|Array|find|toUpperCase|button|special|duration|id|copy|value|handler|ownerDocument|select|new|border|exec|stack|none|opera|nextSibling|pushStack|target|html|inArray|unit|xml|bind|GET|isReady|merge|pos|timeout|delete|one|selected|px|step|jsre|position|async|preventDefault|overflow|name|which|queue|removeChild|namespace|insertBefore|nth|removeData|fixed|parseFloat|error|readyState|multiFilter|createElement|rl|re|trim|end|_|param|first|get|results|parseInt|slice|childNodes|encodeURIComponent|append|events|elems|toLowerCase|json|readyList|setTimeout|grep|mouseenter|color|is|custom|getElementsByTagName|block|stopPropagation|addEventListener|callee|proxy|mouseleave|timers|defaultView|password|disabled|last|has|appendChild|form|domManip|props|ajax|orig|set|easing|mozilla|load|prototype|curAnim|self|charCode|timerId|object|offsetChild|Width|parentOffset|src|unbind|br|currentStyle|clean|float|visible|relatedTarget|previousSibling|handlers|isXMLDoc|on|setup|nodeIndex|unique|shift|javascript|child|RegExp|_default|deep|scroll|lastModified|teardown|setRequestHeader|timeStamp|update|empty|tr|getAttribute|innerHTML|setInterval|checked|fromElement|Number|jQuery|state|active|jsonp|accepts|application|dir|input|responseText|click|styleSheets|unload|not|lastToggle|outline|mouseout|getPropertyValue|mouseover|getComputedStyle|bindReady|String|padding|pageX|metaKey|keyCode|getWH|andSelf|clientX|Left|all|visibility|container|index|init|triggered|removeAttribute|classFilter|prevObject|submit|file|after|windowData|inner|client|globalEval|sibling|jquery|absolute|clone|wrapAll|dequeue|version|triggerHandler|oldblock|ctrlKey|createTextNode|Top|handleError|getResponseHeader|parsererror|speeds|checkbox|old|00|radio|swing|href|Modified|ifModified|lastChild|safari2|startTime|offsetTop|offsetLeft|username|location|ajaxSettings|getElementById|isSimple|values|selectedIndex|runtimeStyle|rsLeft|_load|loaded|DOMContentLoaded|clientTop|clientLeft|toElement|srcElement|val|pageY|POST|unshift|Bottom|clientY|Right|fix|exclusive|detachEvent|cloneNode|removeEventListener|swap|toString|join|attachEvent|eval|substr|head|parse|textarea|reset|image|zoom|odd|even|before|prepend|exclude|expr|quickClass|quickID|uuid|quickChild|continue|Height|textContent|appendTo|contents|open|margin|evalScript|borderTopWidth|borderLeftWidth|parent|httpData|setArray|CSS1Compat|compatMode|boxModel|cssFloat|linear|def|webkit|nodeValue|speed|_toggle|eq|100|replaceWith|304|concat|200|alpha|Last|httpNotModified|getAttributeNode|httpSuccess|clearInterval|abort|beforeSend|splice|styleFloat|throw|colgroup|XMLHttpRequest|ActiveXObject|scriptCharset|callback|fieldset|multiple|processData|getBoundingClientRect|contentType|link|ajaxSend|ajaxSuccess|ajaxError|col|ajaxComplete|ajaxStop|ajaxStart|serializeArray|notmodified|keypress|keydown|change|mouseup|mousedown|dblclick|focus|blur|stylesheet|hasClass|rel|doScroll|black|hover|solid|cancelBubble|returnValue|wheelDelta|view|round|shiftKey|resize|screenY|screenX|relatedNode|mousemove|prevValue|originalTarget|offsetHeight|keyup|newValue|offsetWidth|eventPhase|detail|currentTarget|cancelable|bubbles|attrName|attrChange|altKey|originalEvent|charAt|0n|substring|animated|header|noConflict|line|enabled|innerText|contains|only|weight|font|gt|lt|uFFFF|u0128|size|417|Boolean|Date|toggleClass|removeClass|addClass|removeAttr|replaceAll|insertAfter|prependTo|wrap|contentWindow|contentDocument|iframe|children|siblings|prevAll|wrapInner|nextAll|outer|prev|scrollTo|static|marginTop|next|inline|parents|able|cellSpacing|adobeair|cellspacing|522|maxLength|maxlength|readOnly|400|readonly|fast|600|class|slow|1px|htmlFor|reverse|10000|PI|cos|compatible|Function|setData|ie|ra|it|rv|getData|userAgent|navigator|fadeTo|fadeIn|slideToggle|slideUp|slideDown|ig|responseXML|content|1223|NaN|fadeOut|300|protocol|send|setAttribute|option|dataFilter|cssText|changed|be|Accept|stop|With|Requested|Object|can|GMT|property|1970|Jan|01|Thu|Since|If|Type|Content|XMLHTTP|th|Microsoft|td|onreadystatechange|onload|cap|charset|colg|host|tfoot|specified|with|1_|thead|leg|plain|attributes|opt|embed|urlencoded|www|area|hr|ajaxSetup|meta|post|getJSON|getScript|marginLeft|img|elements|pageYOffset|pageXOffset|abbr|serialize|pixelLeft'.split('|'),0,{}));
// $Id: drupal.js,v 1.41.2.4 2009/07/21 08:59:10 goba Exp $

var Drupal = Drupal || { 'settings': {}, 'behaviors': {}, 'themes': {}, 'locale': {} };

/**
 * Set the variable that indicates if JavaScript behaviors should be applied
 */
Drupal.jsEnabled = document.getElementsByTagName && document.createElement && document.createTextNode && document.documentElement && document.getElementById;

/**
 * Attach all registered behaviors to a page element.
 *
 * Behaviors are event-triggered actions that attach to page elements, enhancing
 * default non-Javascript UIs. Behaviors are registered in the Drupal.behaviors
 * object as follows:
 * @code
 *    Drupal.behaviors.behaviorName = function () {
 *      ...
 *    };
 * @endcode
 *
 * Drupal.attachBehaviors is added below to the jQuery ready event and so
 * runs on initial page load. Developers implementing AHAH/AJAX in their
 * solutions should also call this function after new page content has been
 * loaded, feeding in an element to be processed, in order to attach all
 * behaviors to the new content.
 *
 * Behaviors should use a class in the form behaviorName-processed to ensure
 * the behavior is attached only once to a given element. (Doing so enables
 * the reprocessing of given elements, which may be needed on occasion despite
 * the ability to limit behavior attachment to a particular element.)
 *
 * @param context
 *   An element to attach behaviors to. If none is given, the document element
 *   is used.
 */
Drupal.attachBehaviors = function(context) {
  context = context || document;
  if (Drupal.jsEnabled) {
    // Execute all of them.
    jQuery.each(Drupal.behaviors, function() {
      this(context);
    });
  }
};

/**
 * Encode special characters in a plain-text string for display as HTML.
 */
Drupal.checkPlain = function(str) {
  str = String(str);
  var replace = { '&': '&amp;', '"': '&quot;', '<': '&lt;', '>': '&gt;' };
  for (var character in replace) {
    var regex = new RegExp(character, 'g');
    str = str.replace(regex, replace[character]);
  }
  return str;
};

/**
 * Translate strings to the page language or a given language.
 *
 * See the documentation of the server-side t() function for further details.
 *
 * @param str
 *   A string containing the English string to translate.
 * @param args
 *   An object of replacements pairs to make after translation. Incidences
 *   of any key in this array are replaced with the corresponding value.
 *   Based on the first character of the key, the value is escaped and/or themed:
 *    - !variable: inserted as is
 *    - @variable: escape plain text to HTML (Drupal.checkPlain)
 *    - %variable: escape text and theme as a placeholder for user-submitted
 *      content (checkPlain + Drupal.theme('placeholder'))
 * @return
 *   The translated string.
 */
Drupal.t = function(str, args) {
  // Fetch the localized version of the string.
  if (Drupal.locale.strings && Drupal.locale.strings[str]) {
    str = Drupal.locale.strings[str];
  }

  if (args) {
    // Transform arguments before inserting them
    for (var key in args) {
      switch (key.charAt(0)) {
        // Escaped only
        case '@':
          args[key] = Drupal.checkPlain(args[key]);
        break;
        // Pass-through
        case '!':
          break;
        // Escaped and placeholder
        case '%':
        default:
          args[key] = Drupal.theme('placeholder', args[key]);
          break;
      }
      str = str.replace(key, args[key]);
    }
  }
  return str;
};

/**
 * Format a string containing a count of items.
 *
 * This function ensures that the string is pluralized correctly. Since Drupal.t() is
 * called by this function, make sure not to pass already-localized strings to it.
 *
 * See the documentation of the server-side format_plural() function for further details.
 *
 * @param count
 *   The item count to display.
 * @param singular
 *   The string for the singular case. Please make sure it is clear this is
 *   singular, to ease translation (e.g. use "1 new comment" instead of "1 new").
 *   Do not use @count in the singular string.
 * @param plural
 *   The string for the plural case. Please make sure it is clear this is plural,
 *   to ease translation. Use @count in place of the item count, as in "@count
 *   new comments".
 * @param args
 *   An object of replacements pairs to make after translation. Incidences
 *   of any key in this array are replaced with the corresponding value.
 *   Based on the first character of the key, the value is escaped and/or themed:
 *    - !variable: inserted as is
 *    - @variable: escape plain text to HTML (Drupal.checkPlain)
 *    - %variable: escape text and theme as a placeholder for user-submitted
 *      content (checkPlain + Drupal.theme('placeholder'))
 *   Note that you do not need to include @count in this array.
 *   This replacement is done automatically for the plural case.
 * @return
 *   A translated string.
 */
Drupal.formatPlural = function(count, singular, plural, args) {
  var args = args || {};
  args['@count'] = count;
  // Determine the index of the plural form.
  var index = Drupal.locale.pluralFormula ? Drupal.locale.pluralFormula(args['@count']) : ((args['@count'] == 1) ? 0 : 1);

  if (index == 0) {
    return Drupal.t(singular, args);
  }
  else if (index == 1) {
    return Drupal.t(plural, args);
  }
  else {
    args['@count['+ index +']'] = args['@count'];
    delete args['@count'];
    return Drupal.t(plural.replace('@count', '@count['+ index +']'));
  }
};

/**
 * Generate the themed representation of a Drupal object.
 *
 * All requests for themed output must go through this function. It examines
 * the request and routes it to the appropriate theme function. If the current
 * theme does not provide an override function, the generic theme function is
 * called.
 *
 * For example, to retrieve the HTML that is output by theme_placeholder(text),
 * call Drupal.theme('placeholder', text).
 *
 * @param func
 *   The name of the theme function to call.
 * @param ...
 *   Additional arguments to pass along to the theme function.
 * @return
 *   Any data the theme function returns. This could be a plain HTML string,
 *   but also a complex object.
 */
Drupal.theme = function(func) {
  for (var i = 1, args = []; i < arguments.length; i++) {
    args.push(arguments[i]);
  }

  return (Drupal.theme[func] || Drupal.theme.prototype[func]).apply(this, args);
};

/**
 * Parse a JSON response.
 *
 * The result is either the JSON object, or an object with 'status' 0 and 'data' an error message.
 */
Drupal.parseJson = function (data) {
  if ((data.substring(0, 1) != '{') && (data.substring(0, 1) != '[')) {
    return { status: 0, data: data.length ? data : Drupal.t('Unspecified error') };
  }
  return eval('(' + data + ');');
};

/**
 * Freeze the current body height (as minimum height). Used to prevent
 * unnecessary upwards scrolling when doing DOM manipulations.
 */
Drupal.freezeHeight = function () {
  Drupal.unfreezeHeight();
  var div = document.createElement('div');
  $(div).css({
    position: 'absolute',
    top: '0px',
    left: '0px',
    width: '1px',
    height: $('body').css('height')
  }).attr('id', 'freeze-height');
  $('body').append(div);
};

/**
 * Unfreeze the body height
 */
Drupal.unfreezeHeight = function () {
  $('#freeze-height').remove();
};

/**
 * Wrapper around encodeURIComponent() which avoids Apache quirks (equivalent of
 * drupal_urlencode() in PHP). This function should only be used on paths, not
 * on query string arguments.
 */
Drupal.encodeURIComponent = function (item, uri) {
  uri = uri || location.href;
  item = encodeURIComponent(item).replace(/%2F/g, '/');
  return (uri.indexOf('?q=') != -1) ? item : item.replace(/%26/g, '%2526').replace(/%23/g, '%2523').replace(/\/\//g, '/%252F');
};

/**
 * Get the text selection in a textarea.
 */
Drupal.getSelection = function (element) {
  if (typeof(element.selectionStart) != 'number' && document.selection) {
    // The current selection
    var range1 = document.selection.createRange();
    var range2 = range1.duplicate();
    // Select all text.
    range2.moveToElementText(element);
    // Now move 'dummy' end point to end point of original range.
    range2.setEndPoint('EndToEnd', range1);
    // Now we can calculate start and end points.
    var start = range2.text.length - range1.text.length;
    var end = start + range1.text.length;
    return { 'start': start, 'end': end };
  }
  return { 'start': element.selectionStart, 'end': element.selectionEnd };
};

/**
 * Build an error message from ahah response.
 */
Drupal.ahahError = function(xmlhttp, uri) {
  if (xmlhttp.status == 200) {
    if (jQuery.trim($(xmlhttp.responseText).text())) {
      var message = Drupal.t("An error occurred. \n@uri\n@text", {'@uri': uri, '@text': xmlhttp.responseText });
    }
    else {
      var message = Drupal.t("An error occurred. \n@uri\n(no information available).", {'@uri': uri, '@text': xmlhttp.responseText });
    }
  }
  else {
    var message = Drupal.t("An HTTP error @status occurred. \n@uri", {'@uri': uri, '@status': xmlhttp.status });
  }
  return message;
}

// Global Killswitch on the <html> element
if (Drupal.jsEnabled) {
  // Global Killswitch on the <html> element
  $(document.documentElement).addClass('js');
  // 'js enabled' cookie
  document.cookie = 'has_js=1; path=/';
  // Attach all behaviors.
  $(document).ready(function() {
    Drupal.attachBehaviors(this);
  });
}

/**
 * The default themes.
 */
Drupal.theme.prototype = {

  /**
   * Formats text for emphasized display in a placeholder inside a sentence.
   *
   * @param str
   *   The text to format (plain-text).
   * @return
   *   The formatted text (html).
   */
  placeholder: function(str) {
    return '<em>' + Drupal.checkPlain(str) + '</em>';
  }
};
;
/*
    http://www.JSON.org/json2.js
    2010-03-20

    Public Domain.

    NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.

    See http://www.JSON.org/js.html


    This code should be minified before deployment.
    See http://javascript.crockford.com/jsmin.html

    USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO
    NOT CONTROL.


    This file creates a global JSON object containing two methods: stringify
    and parse.

        JSON.stringify(value, replacer, space)
            value       any JavaScript value, usually an object or array.

            replacer    an optional parameter that determines how object
                        values are stringified for objects. It can be a
                        function or an array of strings.

            space       an optional parameter that specifies the indentation
                        of nested structures. If it is omitted, the text will
                        be packed without extra whitespace. If it is a number,
                        it will specify the number of spaces to indent at each
                        level. If it is a string (such as '\t' or '&nbsp;'),
                        it contains the characters used to indent at each level.

            This method produces a JSON text from a JavaScript value.

            When an object value is found, if the object contains a toJSON
            method, its toJSON method will be called and the result will be
            stringified. A toJSON method does not serialize: it returns the
            value represented by the name/value pair that should be serialized,
            or undefined if nothing should be serialized. The toJSON method
            will be passed the key associated with the value, and this will be
            bound to the value

            For example, this would serialize Dates as ISO strings.

                Date.prototype.toJSON = function (key) {
                    function f(n) {
                        // Format integers to have at least two digits.
                        return n < 10 ? '0' + n : n;
                    }

                    return this.getUTCFullYear()   + '-' +
                         f(this.getUTCMonth() + 1) + '-' +
                         f(this.getUTCDate())      + 'T' +
                         f(this.getUTCHours())     + ':' +
                         f(this.getUTCMinutes())   + ':' +
                         f(this.getUTCSeconds())   + 'Z';
                };

            You can provide an optional replacer method. It will be passed the
            key and value of each member, with this bound to the containing
            object. The value that is returned from your method will be
            serialized. If your method returns undefined, then the member will
            be excluded from the serialization.

            If the replacer parameter is an array of strings, then it will be
            used to select the members to be serialized. It filters the results
            such that only members with keys listed in the replacer array are
            stringified.

            Values that do not have JSON representations, such as undefined or
            functions, will not be serialized. Such values in objects will be
            dropped; in arrays they will be replaced with null. You can use
            a replacer function to replace those with JSON values.
            JSON.stringify(undefined) returns undefined.

            The optional space parameter produces a stringification of the
            value that is filled with line breaks and indentation to make it
            easier to read.

            If the space parameter is a non-empty string, then that string will
            be used for indentation. If the space parameter is a number, then
            the indentation will be that many spaces.

            Example:

            text = JSON.stringify(['e', {pluribus: 'unum'}]);
            // text is '["e",{"pluribus":"unum"}]'


            text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\t');
            // text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]'

            text = JSON.stringify([new Date()], function (key, value) {
                return this[key] instanceof Date ?
                    'Date(' + this[key] + ')' : value;
            });
            // text is '["Date(---current time---)"]'


        JSON.parse(text, reviver)
            This method parses a JSON text to produce an object or array.
            It can throw a SyntaxError exception.

            The optional reviver parameter is a function that can filter and
            transform the results. It receives each of the keys and values,
            and its return value is used instead of the original value.
            If it returns what it received, then the structure is not modified.
            If it returns undefined then the member is deleted.

            Example:

            // Parse the text. Values that look like ISO date strings will
            // be converted to Date objects.

            myData = JSON.parse(text, function (key, value) {
                var a;
                if (typeof value === 'string') {
                    a =
/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value);
                    if (a) {
                        return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],
                            +a[5], +a[6]));
                    }
                }
                return value;
            });

            myData = JSON.parse('["Date(09/09/2001)"]', function (key, value) {
                var d;
                if (typeof value === 'string' &&
                        value.slice(0, 5) === 'Date(' &&
                        value.slice(-1) === ')') {
                    d = new Date(value.slice(5, -1));
                    if (d) {
                        return d;
                    }
                }
                return value;
            });


    This is a reference implementation. You are free to copy, modify, or
    redistribute.
*/

/*jslint evil: true, strict: false */

/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply,
    call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,
    getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,
    lastIndex, length, parse, prototype, push, replace, slice, stringify,
    test, toJSON, toString, valueOf
*/


// Create a JSON object only if one does not already exist. We create the
// methods in a closure to avoid creating global variables.

if (!this.JSON) {
    this.JSON = {};
}

(function () {

    function f(n) {
        // Format integers to have at least two digits.
        return n < 10 ? '0' + n : n;
    }

    if (typeof Date.prototype.toJSON !== 'function') {

        Date.prototype.toJSON = function (key) {

            return isFinite(this.valueOf()) ?
                   this.getUTCFullYear()   + '-' +
                 f(this.getUTCMonth() + 1) + '-' +
                 f(this.getUTCDate())      + 'T' +
                 f(this.getUTCHours())     + ':' +
                 f(this.getUTCMinutes())   + ':' +
                 f(this.getUTCSeconds())   + 'Z' : null;
        };

        String.prototype.toJSON =
        Number.prototype.toJSON =
        Boolean.prototype.toJSON = function (key) {
            return this.valueOf();
        };
    }

    var cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
        escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
        gap,
        indent,
        meta = {    // table of character substitutions
            '\b': '\\b',
            '\t': '\\t',
            '\n': '\\n',
            '\f': '\\f',
            '\r': '\\r',
            '"' : '\\"',
            '\\': '\\\\'
        },
        rep;


    function quote(string) {

// If the string contains no control characters, no quote characters, and no
// backslash characters, then we can safely slap some quotes around it.
// Otherwise we must also replace the offending characters with safe escape
// sequences.

        escapable.lastIndex = 0;
        return escapable.test(string) ?
            '"' + string.replace(escapable, function (a) {
                var c = meta[a];
                return typeof c === 'string' ? c :
                    '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
            }) + '"' :
            '"' + string + '"';
    }


    function str(key, holder) {

// Produce a string from holder[key].

        var i,          // The loop counter.
            k,          // The member key.
            v,          // The member value.
            length,
            mind = gap,
            partial,
            value = holder[key];

// If the value has a toJSON method, call it to obtain a replacement value.

        if (value && typeof value === 'object' &&
                typeof value.toJSON === 'function') {
            value = value.toJSON(key);
        }

// If we were called with a replacer function, then call the replacer to
// obtain a replacement value.

        if (typeof rep === 'function') {
            value = rep.call(holder, key, value);
        }

// What happens next depends on the value's type.

        switch (typeof value) {
        case 'string':
            return quote(value);

        case 'number':

// JSON numbers must be finite. Encode non-finite numbers as null.

            return isFinite(value) ? String(value) : 'null';

        case 'boolean':
        case 'null':

// If the value is a boolean or null, convert it to a string. Note:
// typeof null does not produce 'null'. The case is included here in
// the remote chance that this gets fixed someday.

            return String(value);

// If the type is 'object', we might be dealing with an object or an array or
// null.

        case 'object':

// Due to a specification blunder in ECMAScript, typeof null is 'object',
// so watch out for that case.

            if (!value) {
                return 'null';
            }

// Make an array to hold the partial results of stringifying this object value.

            gap += indent;
            partial = [];

// Is the value an array?

            if (Object.prototype.toString.apply(value) === '[object Array]') {

// The value is an array. Stringify every element. Use null as a placeholder
// for non-JSON values.

                length = value.length;
                for (i = 0; i < length; i += 1) {
                    partial[i] = str(i, value) || 'null';
                }

// Join all of the elements together, separated with commas, and wrap them in
// brackets.

                v = partial.length === 0 ? '[]' :
                    gap ? '[\n' + gap +
                            partial.join(',\n' + gap) + '\n' +
                                mind + ']' :
                          '[' + partial.join(',') + ']';
                gap = mind;
                return v;
            }

// If the replacer is an array, use it to select the members to be stringified.

            if (rep && typeof rep === 'object') {
                length = rep.length;
                for (i = 0; i < length; i += 1) {
                    k = rep[i];
                    if (typeof k === 'string') {
                        v = str(k, value);
                        if (v) {
                            partial.push(quote(k) + (gap ? ': ' : ':') + v);
                        }
                    }
                }
            } else {

// Otherwise, iterate through all of the keys in the object.

                for (k in value) {
                    if (Object.hasOwnProperty.call(value, k)) {
                        v = str(k, value);
                        if (v) {
                            partial.push(quote(k) + (gap ? ': ' : ':') + v);
                        }
                    }
                }
            }

// Join all of the member texts together, separated with commas,
// and wrap them in braces.

            v = partial.length === 0 ? '{}' :
                gap ? '{\n' + gap + partial.join(',\n' + gap) + '\n' +
                        mind + '}' : '{' + partial.join(',') + '}';
            gap = mind;
            return v;
        }
    }

// If the JSON object does not yet have a stringify method, give it one.

    if (typeof JSON.stringify !== 'function') {
        JSON.stringify = function (value, replacer, space) {

// The stringify method takes a value and an optional replacer, and an optional
// space parameter, and returns a JSON text. The replacer can be a function
// that can replace values, or an array of strings that will select the keys.
// A default replacer method can be provided. Use of the space parameter can
// produce text that is more easily readable.

            var i;
            gap = '';
            indent = '';

// If the space parameter is a number, make an indent string containing that
// many spaces.

            if (typeof space === 'number') {
                for (i = 0; i < space; i += 1) {
                    indent += ' ';
                }

// If the space parameter is a string, it will be used as the indent string.

            } else if (typeof space === 'string') {
                indent = space;
            }

// If there is a replacer, it must be a function or an array.
// Otherwise, throw an error.

            rep = replacer;
            if (replacer && typeof replacer !== 'function' &&
                    (typeof replacer !== 'object' ||
                     typeof replacer.length !== 'number')) {
                throw new Error('JSON.stringify');
            }

// Make a fake root object containing our value under the key of ''.
// Return the result of stringifying the value.

            return str('', {'': value});
        };
    }


// If the JSON object does not yet have a parse method, give it one.

    if (typeof JSON.parse !== 'function') {
        JSON.parse = function (text, reviver) {

// The parse method takes a text and an optional reviver function, and returns
// a JavaScript value if the text is a valid JSON text.

            var j;

            function walk(holder, key) {

// The walk method is used to recursively walk the resulting structure so
// that modifications can be made.

                var k, v, value = holder[key];
                if (value && typeof value === 'object') {
                    for (k in value) {
                        if (Object.hasOwnProperty.call(value, k)) {
                            v = walk(value, k);
                            if (v !== undefined) {
                                value[k] = v;
                            } else {
                                delete value[k];
                            }
                        }
                    }
                }
                return reviver.call(holder, key, value);
            }


// Parsing happens in four stages. In the first stage, we replace certain
// Unicode characters with escape sequences. JavaScript handles many characters
// incorrectly, either silently deleting them, or treating them as line endings.

            text = String(text);
            cx.lastIndex = 0;
            if (cx.test(text)) {
                text = text.replace(cx, function (a) {
                    return '\\u' +
                        ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
                });
            }

// In the second stage, we run the text against regular expressions that look
// for non-JSON patterns. We are especially concerned with '()' and 'new'
// because they can cause invocation, and '=' because it can cause mutation.
// But just to be safe, we want to reject all unexpected forms.

// We split the second stage into 4 regexp operations in order to work around
// crippling inefficiencies in IE's and Safari's regexp engines. First we
// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we
// replace all simple value tokens with ']' characters. Third, we delete all
// open brackets that follow a colon or comma or that begin the text. Finally,
// we look to see that the remaining characters are only whitespace or ']' or
// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.

            if (/^[\],:{}\s]*$/.
test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@').
replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']').
replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {

// In the third stage we use the eval function to compile the text into a
// JavaScript structure. The '{' operator is subject to a syntactic ambiguity
// in JavaScript: it can begin a block or an object literal. We wrap the text
// in parens to eliminate the ambiguity.

                j = eval('(' + text + ')');

// In the optional fourth stage, we recursively walk the new structure, passing
// each name/value pair to a reviver function for possible transformation.

                return typeof reviver === 'function' ?
                    walk({'': j}, '') : j;
            }

// If the text is not JSON parseable, then a SyntaxError is thrown.

            throw new SyntaxError('JSON.parse');
        };
    }
}());
;
var cities = [
{airport: "Braganca", city: "Braganca", country: "Portugal", code: "BGC"},
{airport: "Faro", city: "Faro", country: "Portugal", code: "FAO"},
{airport: "Flores", city: "Flores (Flores Isl.)", country: "Portugal", code: "FLW"},
{airport: "Graciosa", city: "Graciosa Island", country: "Portugal", code: "GRW"},
{airport: "Horta", city: "Horta", country: "Portugal", code: "HOR"},
{airport: "Lajes", city: "Lajes (Terceira Island)", country: "Portugal", code: "TER"},
{airport: "Pico", city: "Pico", country: "Portugal", code: "PIX"},
{airport: "Ponta Delgada", city: "Ponta Delgada", country: "Portugal", code: "PDL"},
{airport: "Porto", city: "Porto", country: "Portugal", code: "OPO"},
{airport: "Santa Maria", city: "Santa Maria (Island)", country: "Portugal", code: "STM"},
{airport: "Sao Jorge", city: "Sao Jorge Island", country: "Portugal", code: "SJZ"},
{airport: "Vila Real", city: "Vila Real", country: "Portugal", code: "VRL"},
{airport: "Herat", city: "Herat", country: "Afghanistan", code: "HEA"},
{airport: "Jalalabad", city: "Jalalabad", country: "Afghanistan", code: "JAA"},
{airport: "Kabul International", city: "Kabul", country: "Afghanistan", code: "KBL"},
{airport: "Kandahar", city: "Kandahar", country: "Afghanistan", code: "KDH"},
{airport: "Kunduz", city: "Kunduz", country: "Afghanistan", code: "UND"},
{airport: "Maimana", city: "Maimama", country: "Afghanistan", code: "MMZ"},
{airport: "Mazar I Sharif", city: "Mazar-I-Sharif", country: "Afghanistan", code: "MZR"},
{airport: "Tirana Rinas", city: "Tirana", country: "Albania", code: "TIA"},
{airport: "Touat Cheikh Sidi Mohamed Belkebir", city: "Adrar", country: "Algeria", code: "AZR"},
{airport: "Houari Boumediene", city: "Algier", country: "Algeria", code: "ALG"},
{airport: "Annaba", city: "Annaba", country: "Algeria", code: "AAE"},
{airport: "Soummam", city: "Bejaja", country: "Algeria", code: "BJA"},
{airport: "Biskra", city: "Biskra", country: "Algeria", code: "BSK"},
{airport: "Mohamed Boudiaf International", city: "Constantine", country: "Algeria", code: "CZL"},
{airport: "Tiska", city: "Djanet", country: "Algeria", code: "DJG"},
{airport: "Ech Cheliff", city: "Ech-Cheliff", country: "Algeria", code: "QAS"},
{airport: "El Golea", city: "El Golea", country: "Algeria", code: "ELG"},
{airport: "Noumerate", city: "Ghardaia", country: "Algeria", code: "GHA"},
{airport: "Ghriss", city: "Ghriss", country: "Algeria", code: "MUW"},
{airport: "Oued Irara", city: "Hassi-Messaoud", country: "Algeria", code: "HME"},
{airport: "Illizi", city: "Illizi", country: "Algeria", code: "VVZ"},
{airport: "In Salah", city: "In Salah", country: "Algeria", code: "INZ"},
{airport: "Jijel", city: "Jijel", country: "Algeria", code: "GJL"},
{airport: "Laghouat", city: "Laghouat", country: "Algeria", code: "LOO"},
{airport: "Es Senia", city: "Oran", country: "Algeria", code: "ORN"},
{airport: "Tafaraoui", city: "Oran", country: "Algeria", code: "TAF"},
{airport: "Ouargla", city: "Ouargla", country: "Algeria", code: "OGX"},
{airport: "Setif Ain Arnat", city: "Setif", country: "Algeria", code: "GSF"},
{airport: "Tamanrasset", city: "Tamanrasset", country: "Algeria", code: "TMR"},
{airport: "Cheikh Larbi Tebessi", city: "Tebessa", country: "Algeria", code: "TEE"},
{airport: "Bou Chekif", city: "Tiaret", country: "Algeria", code: "TID"},
{airport: "Hassi R Mel", city: "Tilrempt", country: "Algeria", code: "HRM"},
{airport: "Timimoun", city: "Timimoun", country: "Algeria", code: "TMX"},
{airport: "Tindouf", city: "Tindouf", country: "Algeria", code: "TIN"},
{airport: "Zenata", city: "Tlemcen", country: "Algeria", code: "TLM"},
{airport: "Sidi Mahdi", city: "Touggourt", country: "Algeria", code: "TGR"},
{airport: "In Amenas", city: "Zarzaitine", country: "Algeria", code: "IAM"},
{airport: "Benguela", city: "Benguela", country: "Angola", code: "BUG"},
{airport: "Cabinda", city: "Cabinda", country: "Angola", code: "CAB"},
{airport: "Cazombo", city: "Cazombo", country: "Angola", code: "CAV"},
{airport: "Chitato", city: "Chitato", country: "Angola", code: "PGI"},
{airport: "Huambo", city: "Huambo", country: "Angola", code: "NOV"},
{airport: "Kuito", city: "Kuito", country: "Angola", code: "SVP"},
{airport: "Luanda 4 De Fevereiro", city: "Luanda", country: "Angola", code: "LAD"},
{airport: "Luena", city: "Luena", country: "Angola", code: "LUO"},
{airport: "Mbanza Congo", city: "M'Banza-Congo", country: "Angola", code: "SSY"},
{airport: "Malanje", city: "Malanje", country: "Angola", code: "MEG"},
{airport: "Menongue", city: "Menongue", country: "Angola", code: "SPP"},
{airport: "Ngiva", city: "N'Giva", country: "Angola", code: "NGV"},
{airport: "Negage", city: "Negage", country: "Angola", code: "GXG"},
{airport: "Porto Amboim", city: "Porto Amboim", country: "Angola", code: "PBN"},
{airport: "Saurimo", city: "Saurimo", country: "Angola", code: "VHC"},
{airport: "Soyo", city: "Soyo", country: "Angola", code: "SZA"},
{airport: "Uige", city: "Uige", country: "Angola", code: "UGO"},
{airport: "Xangongo", city: "Xangongo", country: "Angola", code: "XGN"},
{airport: "Wallblake", city: "The Valley", country: "Anguilla Isl.", code: "AXA"},
{airport: "Le Lamentin", city: "Fort-De-France", country: "Antilles", code: "FDF"},
{airport: "Flamingo", city: "Kralendijk", country: "Antilles", code: "BON"},
{airport: "F D Roosevelt", city: "Oranjestad", country: "Antilles", code: "EUX"},
{airport: "Princess Juliana International", city: "Philipsburg", country: "Antilles", code: "SXM"},
{airport: "Le Raizet", city: "Pointe-A-Pitre", country: "Antilles", code: "PTP"},
{airport: "Grand Case", city: "St. Martin", country: "Antilles", code: "SFG"},
{airport: "Gustavia/St.Barthel", city: "St.-Barthelemy", country: "Antilles", code: "SBH"},
{airport: "Hato", city: "Willemstad", country: "Antilles", code: "CUR"},
{airport: "Comandante Espora", city: "Bahia Blanca", country: "Argentina", code: "BHI"},
{airport: "Aeroparque Jorge Newbery", city: "Buenos Aires", country: "Argentina", code: "AEP"},
{airport: "Catamarca", city: "Catamarca", country: "Argentina", code: "CTC"},
{airport: "Comodoro Rivadavia", city: "Comodoro Rivadavia", country: "Argentina", code: "CRD"},
{airport: "Comodoro Pierrestegui", city: "Concordia", country: "Argentina", code: "COC"},
{airport: "Ambrosio L V Taravella", city: "Cordoba", country: "Argentina", code: "COR"},
{airport: "Corrientes", city: "Corrientes", country: "Argentina", code: "CNQ"},
{airport: "El Bolson", city: "El Bolson", country: "Argentina", code: "EHL"},
{airport: "El Maiten", city: "El Maiten", country: "Argentina", code: "EMX"},
{airport: "Esquel", city: "Esquel", country: "Argentina", code: "EQS"},
{airport: "Formosa", city: "Formosa", country: "Argentina", code: "FMA"},
{airport: "Gualeguaychu", city: "Gualeguaychu", country: "Argentina", code: "GHU"},
{airport: "Cataratas Del Iguazu", city: "Iguazu Falls", country: "Argentina", code: "IGR"},
{airport: "Jose De San Martin", city: "Jose De San Martin", country: "Argentina", code: "JSM"},
{airport: "Jujuy", city: "Jujuy", country: "Argentina", code: "JUJ"},
{airport: "La Plata", city: "La Plata", country: "Argentina", code: "LPG"},
{airport: "La Rioja", city: "La Rioja", country: "Argentina", code: "IRJ"},
{airport: "Lago Argentino", city: "Lago Argentino", country: "Argentina", code: "ING"},
{airport: "Malargue", city: "Malargue", country: "Argentina", code: "LGS"},
{airport: "Mar Del Plata", city: "Mar Del Plata", country: "Argentina", code: "MDQ"},
{airport: "El Plumerillo", city: "Mendoza", country: "Argentina", code: "MDZ"},
{airport: "Presidente Peron", city: "Neuquen", country: "Argentina", code: "NQN"},
{airport: "Oran", city: "Oran", country: "Argentina", code: "ORA"},
{airport: "General Urquiza", city: "Parana", country: "Argentina", code: "PRA"},
{airport: "Paso De Los Libres", city: "Paso De Los Libres", country: "Argentina", code: "AOL"},
{airport: "Posadas", city: "Posadas", country: "Argentina", code: "PSS"},
{airport: "Puerto Deseado", city: "Puerto Deseado", country: "Argentina", code: "PUD"},
{airport: "El Tehuelche", city: "Puerto Madryn", country: "Argentina", code: "PMY"},
{airport: "Resistencia", city: "Resistencia", country: "Argentina", code: "RES"},
{airport: "Rio Cuarto Area De Material", city: "Rio Cuarto", country: "Argentina", code: "RCU"},
{airport: "Rio Gallegos", city: "Rio Gallegos", country: "Argentina", code: "RGL"},
{airport: "Rio Grande", city: "Rio Grande", country: "Argentina", code: "RIG"},
{airport: "El Turbio", city: "Rio Turbio", country: "Argentina", code: "RYO"},
{airport: "Rosario", city: "Rosario", country: "Argentina", code: "ROS"},
{airport: "Salta", city: "Salta", country: "Argentina", code: "SLA"},
{airport: "San Carlos De Bariloche", city: "San Carlos De Bariloch", country: "Argentina", code: "BRC"},
{airport: "San Juan", city: "San Julian", country: "Argentina", code: "UAQ"},
{airport: "San Julian", city: "San Julian", country: "Argentina", code: "ULA"},
{airport: "San Luis", city: "San Luis", country: "Argentina", code: "IPI"},
{airport: "Aviador C Campos", city: "San Martin Des Andes", country: "Argentina", code: "CPC"},
{airport: "San Rafael", city: "San Rafael", country: "Argentina", code: "AFA"},
{airport: "Santa Cruz", city: "Santa Cruz", country: "Argentina", code: "STU"},
{airport: "Sauce Viejo", city: "Santa Fe", country: "Argentina", code: "SFN"},
{airport: "Santa Rosa", city: "Santa Rosa", country: "Argentina", code: "RSA"},
{airport: "Santiago Del Estero", city: "Santiago Del Estero", country: "Argentina", code: "SDE"},
{airport: "Tandil", city: "Tandil", country: "Argentina", code: "TDL"},
{airport: "Almirante Zar", city: "Trelew", country: "Argentina", code: "REL"},
{airport: "Teniente Benjamin Matienzo", city: "Tucuman", country: "Argentina", code: "TUC"},
{airport: "Ushuaia Malvinas Argentinas", city: "Ushuaia", country: "Argentina", code: "USH"},
{airport: "Gobernador Castello", city: "Viedma", country: "Argentina", code: "VDM"},
{airport: "Villa Dolores", city: "Villa Dolores", country: "Argentina", code: "VDR"},
{airport: "Villa Gesell", city: "Villa Gesell", country: "Argentina", code: "VLG"},
{airport: "Reina Beatrix International", city: "Oranjestad", country: "Aruba", code: "AUA"},
{airport: "Adelaide International", city: "Adelaide", country: "Australia", code: "ADL"},
{airport: "Albury", city: "Albury", country: "Australia", code: "ABX"},
{airport: "Alice Springs", city: "Alice Springs", country: "Australia", code: "ASP"},
{airport: "Bamaga Injinoo", city: "Amberley", country: "Australia", code: "ABM"},
{airport: "Avalon", city: "Avalon", country: "Australia", code: "AVV"},
{airport: "Brisbane International", city: "Brisbane", country: "Australia", code: "BNE"},
{airport: "Cairns International", city: "Cairns", country: "Australia", code: "CNS"},
{airport: "Camden", city: "Camden", country: "Australia", code: "CDU"},
{airport: "Canberra", city: "Canberra", country: "Australia", code: "CBR"},
{airport: "Charleville", city: "Charlieville", country: "Australia", code: "CTL"},
{airport: "Coffs Harbour", city: "Coff'S Harbour", country: "Australia", code: "CFS"},
{airport: "Gold Coast Coolangatta", city: "Coolangatta", country: "Australia", code: "OOL"},
{airport: "Dubbo", city: "Dubbo", country: "Australia", code: "DBO"},
{airport: "Hobart", city: "Hobart", country: "Australia", code: "HBA"},
{airport: "Kalgoorlie Boulder", city: "Kalgoorlie", country: "Australia", code: "KGI"},
{airport: "Karratha", city: "Karratha", country: "Australia", code: "KTA"},
{airport: "Kununurra", city: "Kununurra", country: "Australia", code: "KNX"},
{airport: "Launceston", city: "Launceston", country: "Australia", code: "LST"},
{airport: "Learmonth", city: "Learmonth", country: "Australia", code: "LEA"},
{airport: "Mackay", city: "Mackay", country: "Australia", code: "MKY"},
{airport: "Maroochydore Sunshine Coast", city: "Maroochydore", country: "Australia", code: "MCY"},
{airport: "Melbourne International", city: "Melbourne", country: "Australia", code: "MEL"},
{airport: "Melbourne Essendon", city: "Melbourne", country: "Australia", code: "MEB"},
{airport: "Melbourne Moorabbin", city: "Melbourne", country: "Australia", code: "MBW"},
{airport: "Mount Isa", city: "Mount Isa", country: "Australia", code: "ISA"},
{airport: "Norfolk Island International", city: "Norfolk Island", country: "Australia", code: "NLK"},
{airport: "Perth Jandakot", city: "Perth", country: "Australia", code: "JAD"},
{airport: "Perth International", city: "Perth", country: "Australia", code: "PER"},
{airport: "Port Hedland International", city: "Port Hedland", country: "Australia", code: "PHE"},
{airport: "Proserpine Whitsunday Coast", city: "Prosserpine", country: "Australia", code: "PPP"},
{airport: "Richmond", city: "Richmond", country: "Australia", code: "RCM"},
{airport: "Rockhampton", city: "Rockhampton", country: "Australia", code: "ROK"},
{airport: "Sydney Bankstown", city: "Sydney", country: "Australia", code: "BWU"},
{airport: "Kingsford Smith International Airport", city: "Sydney", country: "Australia", code: "SYD"},
{airport: "Tamworth", city: "Tamworth", country: "Australia", code: "TMW"},
{airport: "Townsville", city: "Townsville", country: "Australia", code: "TSV"},
{airport: "Wagga Wagga", city: "Wagga Wagga", country: "Australia", code: "WGA"},
{airport: "Weipa", city: "Weipa", country: "Australia", code: "WEI"},
{airport: "Woomera", city: "Woomera", country: "Australia", code: "UMR"},
{airport: "Graz Mil/Civ", city: "Graz", country: "Austria", code: "GRZ"},
{airport: "Innsbruck", city: "Innsbruck", country: "Austria", code: "INN"},
{airport: "Klagenfurt(Aus-Afb)", city: "Klagenfurt", country: "Austria", code: "KLU"},
{airport: "Horsching International Airport (Aus - Afb)", city: "Linz", country: "Austria", code: "LNZ"},
{airport: "Salzburg", city: "Salzburg", country: "Austria", code: "SZG"},
{airport: "Schwechat", city: "Vienna", country: "Austria", code: "VIE"},
{airport: "South Bimini", city: "Alice Town", country: "Bahamas", code: "BIM"},
{airport: "Andros Town", city: "Andros Town", country: "Bahamas", code: "ASD"},
{airport: "Chub Cay", city: "Chub Cay", country: "Bahamas", code: "CCZ"},
{airport: "San Salvador", city: "Cockburn Town", country: "Bahamas", code: "ZSA"},
{airport: "Deadmans Cay", city: "Dead Man'S Cay", country: "Bahamas", code: "LGI"},
{airport: "Grand Bahama International", city: "Freeport", country: "Bahamas", code: "FPO"},
{airport: "Governors Harbour", city: "Governor'S Harbor", country: "Bahamas", code: "GHB"},
{airport: "Exuma International", city: "Great Exuma", country: "Bahamas", code: "GGT"},
{airport: "Marsh Harbour", city: "Marsh Harbor", country: "Bahamas", code: "MHH"},
{airport: "Matthew Town", city: "Matthew Town", country: "Bahamas", code: "IGA"},
{airport: "Mayaguana", city: "Mayaguana", country: "Bahamas", code: "MYG"},
{airport: "Nassau International", city: "Nassau", country: "Bahamas", code: "NAS"},
{airport: "North Eleuthera", city: "North Eleuthera", country: "Bahamas", code: "ELH"},
{airport: "Rock Sound", city: "Rock Sound", country: "Bahamas", code: "RSD"},
{airport: "San Andros", city: "San Andros", country: "Bahamas", code: "SAQ"},
{airport: "Spring Point", city: "Spring Point", country: "Bahamas", code: "AXP"},
{airport: "Stella Maris", city: "Stella Maris", country: "Bahamas", code: "SML"},
{airport: "Treasure Cay", city: "Treasure Cay", country: "Bahamas", code: "TCB"},
{airport: "West End", city: "West End", country: "Bahamas", code: "WTD"},
{airport: "Bahrain International", city: "Bahrain", country: "Bahrain", code: "BAH"},
{airport: "Shah Amanat International", city: "Chittagong", country: "Bangladesh", code: "CGP"},
{airport: "Coxs Bazar", city: "Cox'S Bazar", country: "Bangladesh", code: "CXB"},
{airport: "Zia International", city: "Dhaka", country: "Bangladesh", code: "DAC"},
{airport: "Ishurdi", city: "Ishurdi", country: "Bangladesh", code: "IRD"},
{airport: "Jessore", city: "Jessore", country: "Bangladesh", code: "JSR"},
{airport: "Rajshahi", city: "Rajshahi", country: "Bangladesh", code: "RJH"},
{airport: "Saidpur", city: "Saidpur", country: "Bangladesh", code: "SPD"},
{airport: "Osmany International", city: "Sylhet Osmani", country: "Bangladesh", code: "ZYL"},
{airport: "Grantley Adams International", city: "Bridgetown", country: "Barbados", code: "BGI"},
{airport: "Deurne", city: "Antwerp", country: "Belgium", code: "ANR"},
{airport: "Brussels Natl", city: "Brussels", country: "Belgium", code: "BRU"},
{airport: "Brussels South", city: "Charleroi", country: "Belgium", code: "CRL"},
{airport: "Wevelgem", city: "Kortrijk-Vevelgem", country: "Belgium", code: "QKT"},
{airport: "Liege", city: "Liege", country: "Belgium", code: "LGG"},
{airport: "Oostende", city: "Ostend", country: "Belgium", code: "OST"},
{airport: "Philip S W Goldson International", city: "Belize City", country: "Belize", code: "BZE"},
{airport: "Cotonou Cadjehoun", city: "Cotonou", country: "Benin", code: "COO"},
{airport: "Parakou", city: "Parakou", country: "Benin", code: "PKO"},
{airport: "L.F. Wade International", city: "Bermuda", country: "Bermuda", code: "BDA"},
{airport: "Paro", city: "Paro", country: "Bhutan", code: "PBH"},
{airport: "Apolo", city: "Apolo", country: "Bolivia", code: "APB"},
{airport: "Bermejo", city: "Bermejo", country: "Bolivia", code: "BJO"},
{airport: "Camiri", city: "Camiri", country: "Bolivia", code: "CAM"},
{airport: "Capitan Anibal Arab", city: "Cobija", country: "Bolivia", code: "CIJ"},
{airport: "Jorge Wilsterman", city: "Cochabamba", country: "Bolivia", code: "CBB"},
{airport: "Concepcion", city: "Conception", country: "Bolivia", code: "CEP"},
{airport: "Cap De Av Emilio Beltran", city: "Guayaramerin", country: "Bolivia", code: "GYA"},
{airport: "El Alto International", city: "La Paz", country: "Bolivia", code: "LPB"},
{airport: "Magdalena", city: "Magdalena", country: "Bolivia", code: "MGD"},
{airport: "Capitan Nicolas Rojas", city: "Potosi", country: "Bolivia", code: "POI"},
{airport: "Cap De Av Salvador Ogaya G", city: "Puerto Suarez", country: "Bolivia", code: "PSZ"},
{airport: "Cap De Av Selin Zeitun Lopez", city: "Riberalta", country: "Bolivia", code: "RIB"},
{airport: "Rurrenabaque", city: "Rurrenabaque", country: "Bolivia", code: "RBQ"},
{airport: "Capitan German Quiroga G", city: "San Borja", country: "Bolivia", code: "SRJ"},
{airport: "San Joaquin", city: "San Joaquin", country: "Bolivia", code: "SJB"},
{airport: "Viru Viru International", city: "Santa Cruz", country: "Bolivia", code: "VVI"},
{airport: "Juana Azurduy De Padilla", city: "Sucre", country: "Bolivia", code: "SRE"},
{airport: "Capitan Oriel Lea Plaza", city: "Tarija", country: "Bolivia", code: "TJA"},
{airport: "Tte Av Jorge Henrich Arauz", city: "Trinidad", country: "Bolivia", code: "TDD"},
{airport: "Mafikeng", city: "Mmabatho", country: "Bophuthatswana", code: "MBO"},
{airport: "Thaba Nchu", city: "Thaba Nchu", country: "Bophuthatswana", code: "TCU"},
{airport: "Mostar", city: "Mostar", country: "Bosnia-Hercegovina", code: "OMO"},
{airport: "Sarajevo", city: "Sarajevo", country: "Bosnia-Hercegovina", code: "SJJ"},
{airport: "Francistown", city: "Francistown", country: "Botswana", code: "FRW"},
{airport: "Sir Seretse Khama International", city: "Gaberone", country: "Botswana", code: "GBE"},
{airport: "Jwaneng", city: "Jwaneng", country: "Botswana", code: "JWA"},
{airport: "Kasane", city: "Kasane", country: "Botswana", code: "BBK"},
{airport: "Maun", city: "Maun", country: "Botswana", code: "MUB"},
{airport: "Orapa", city: "Orapa", country: "Botswana", code: "ORP"},
{airport: "Selebi Phikwe", city: "Selebi-Phikwe", country: "Botswana", code: "PKW"},
{airport: "Alta Floresta", city: "Alta Floresta", country: "Brazil", code: "AFL"},
{airport: "Altamira", city: "Altamira", country: "Brazil", code: "ATM"},
{airport: "Santa Maria", city: "Aracaju", country: "Brazil", code: "STM"},
{airport: "Aracatuba", city: "Aracatuba", country: "Brazil", code: "ARU"},
{airport: "Araraquara", city: "Araracuara", country: "Brazil", code: "AQA"},
{airport: "Comandante Gustavo Kraemer", city: "Bage", country: "Brazil", code: "BGX"},
{airport: "Bauru", city: "Bauru", country: "Brazil", code: "BAU"},
{airport: "Val De Caes", city: "Belem", country: "Brazil", code: "BEL"},
{airport: "Tancredo Neves", city: "Belo Horizonte", country: "Brazil", code: "CNF"},
{airport: "Pampulha", city: "Belo Horizonte", country: "Brazil", code: "PLU"},
{airport: "Boa Vista", city: "Boa Vista", country: "Brazil", code: "BVB"},
{airport: "Bom Jesus Da Lapa", city: "Bom Jesus Da Lapa", country: "Brazil", code: "LAZ"},
{airport: "Presidente Juscelino Kubitschek", city: "Brasilia", country: "Brazil", code: "BSB"},
{airport: "Viracopos", city: "Campinas", country: "Brazil", code: "VCP"},
{airport: "Campo Grande", city: "Campo Grande", country: "Brazil", code: "CGR"},
{airport: "Bartolomeu Lisandro", city: "Campos", country: "Brazil", code: "CAW"},
{airport: "Caravelas", city: "Caravelas", country: "Brazil", code: "CRQ"},
{airport: "Carolina", city: "Carolina", country: "Brazil", code: "CLN"},
{airport: "Cascavel", city: "Cascavel", country: "Brazil", code: "CAC"},
{airport: "Campo Dos Bugres", city: "Caxias Do Sul", country: "Brazil", code: "CXJ"},
{airport: "Chapeco", city: "Chapeco", country: "Brazil", code: "XAP"},
{airport: "Unknown", city: "Conceicao Do Araguaia", country: "Brazil", code: "CDJ"},
{airport: "Corumba International", city: "Corumba", country: "Brazil", code: "CMG"},
{airport: "Cruzeiro Do Sul", city: "Cruiziro Do Sul", country: "Brazil", code: "CZS"},
{airport: "Marechal Rondon", city: "Cuiaba", country: "Brazil", code: "CGB"},
{airport: "Bacacheri", city: "Curitiba", country: "Brazil", code: "BFH"},
{airport: "Afonso Pena", city: "Curitiba", country: "Brazil", code: "CWB"},
{airport: "Fernando De Noronha", city: "Fernando Do Noronha", country: "Brazil", code: "FEN"},
{airport: "Hercilio Luz", city: "Florianopolis", country: "Brazil", code: "FLN"},
{airport: "Pinto Martins International", city: "Fortaleza", country: "Brazil", code: "FOR"},
{airport: "Cataratas International", city: "Foz Do Iguacu", country: "Brazil", code: "IGU"},
{airport: "Franca", city: "Franca", country: "Brazil", code: "FRC"},
{airport: "Santa Genoveva", city: "Goiania", country: "Brazil", code: "GYN"},
{airport: "Ilheus", city: "Ilheus", country: "Brazil", code: "IOS"},
{airport: "Imperatriz", city: "Imperatriz", country: "Brazil", code: "IMP"},
{airport: "Usiminas", city: "Ipatinga", country: "Brazil", code: "IPN"},
{airport: "Intl. Pres. Castro Pinto", city: "Joao Pessoa", country: "Brazil", code: "JPA"},
{airport: "Joinville", city: "Joinville", country: "Brazil", code: "JOI"},
{airport: "Francisco De Assis", city: "Juiz De Fora", country: "Brazil", code: "JDF"},
{airport: "Lins", city: "Lins", country: "Brazil", code: "LIP"},
{airport: "Londrina", city: "Londrina", country: "Brazil", code: "LDB"},
{airport: "Macapa", city: "Macapa", country: "Brazil", code: "MCP"},
{airport: "Zumbi Dos Palmares", city: "Maceio", country: "Brazil", code: "MCZ"},
{airport: "Eduardo Gomes International", city: "Manaus", country: "Brazil", code: "MAO"},
{airport: "Maraba", city: "Maraba", country: "Brazil", code: "MAB"},
{airport: "Maringa", city: "Maringa", country: "Brazil", code: "MGF"},
{airport: "Montes Claros", city: "Montes Claros", country: "Brazil", code: "MOC"},
{airport: "Augusto Severo", city: "Natal", country: "Brazil", code: "NAT"},
{airport: "Navegantes Itajai", city: "Navegantes", country: "Brazil", code: "NVT"},
{airport: "Lauro Kurtz", city: "Passo Fundo", country: "Brazil", code: "PFB"},
{airport: "Paulo Afonso", city: "Paulo Alfonso", country: "Brazil", code: "PAV"},
{airport: "Pelotas", city: "Pelotas", country: "Brazil", code: "PET"},
{airport: "Petrolina", city: "Petrolina", country: "Brazil", code: "PNZ"},
{airport: "Campo Fontenelle", city: "Piracununga", country: "Brazil", code: "QPS"},
{airport: "Pocos De Caldas", city: "Pocos De Caldas", country: "Brazil", code: "POO"},
{airport: "Ponta Pora", city: "Ponta Pora", country: "Brazil", code: "PMG"},
{airport: "Salgado Filho", city: "Porto Alegre", country: "Brazil", code: "POA"},
{airport: "Porto Nacional", city: "Porto Nacional", country: "Brazil", code: "PNB"},
{airport: "Governador Jorge Teixeira De Oliveira", city: "Porto Velho", country: "Brazil", code: "PVH"},
{airport: "Presidente Prudente", city: "President Prudente", country: "Brazil", code: "PPB"},
{airport: "Guararapes", city: "Recife", country: "Brazil", code: "REC"},
{airport: "Leite Lopes", city: "Ribeirao Preto", country: "Brazil", code: "RAO"},
{airport: "Presidente Medici", city: "Rio Branco", country: "Brazil", code: "RBR"},
{airport: "Santos Dumont", city: "Rio De Janeiro", country: "Brazil", code: "SDU"},
{airport: "Santa Cruz", city: "Rio De Janeiro", country: "Brazil", code: "STU"},
{airport: "Galeao Antonio Carlos Jobim", city: "Rio De Janeiro", country: "Brazil", code: "GIG"},
{airport: "Rio Grande", city: "Rio Grande", country: "Brazil", code: "RIG"},
{airport: "Deputado Luis Eduardo Magalhaes", city: "Salvador", country: "Brazil", code: "SSA"},
{airport: "Santa Maria", city: "Santarem", country: "Brazil", code: "STM"},
{airport: "Santo Angelo", city: "Santo Angelo", country: "Brazil", code: "GEL"},
{airport: "Santos Air Base", city: "Santos", country: "Brazil", code: "SSZ"},
{airport: "Sao Jose Do Rio Preto", city: "Sao Jose Do Rio Preto", country: "Brazil", code: "SJP"},
{airport: "Sao Jose Dos Campos", city: "Sao Jose Dos Campos", country: "Brazil", code: "SJK"},
{airport: "Marechal Cunha Machado", city: "Sao Luis", country: "Brazil", code: "SLZ"},
{airport: "Congonhas", city: "Sao Paulo", country: "Brazil", code: "CGH"},
{airport: "Guarulhos", city: "Sao Paulo", country: "Brazil", code: "GRU"},
{airport: "Tabatinga", city: "Tabatinga", country: "Brazil", code: "TBT"},
{airport: "Tefe", city: "Tefe", country: "Brazil", code: "TFF"},
{airport: "Senador Petronio Portella", city: "Teresina", country: "Brazil", code: "THE"},
{airport: "Tucurui", city: "Tucurui", country: "Brazil", code: "TUR"},
{airport: "Uberaba", city: "Uberaba", country: "Brazil", code: "UBA"},
{airport: "Uberlandia", city: "Uberlandia", country: "Brazil", code: "UDI"},
{airport: "Rubem Berta", city: "Uruguaiana", country: "Brazil", code: "URG"},
{airport: "Major Brigadeiro Trompowsky", city: "Varginha", country: "Brazil", code: "VAG"},
{airport: "Vilhena", city: "Vilhena", country: "Brazil", code: "BVH"},
{airport: "Goiabeiras", city: "Vitoria", country: "Brazil", code: "VIX"},
{airport: "Brunei International", city: "Brunei", country: "Brunei", code: "BWN"},
{airport: "Burgas", city: "Bourgas", country: "Bulgaria", code: "BOJ"},
{airport: "Gorna Oryahovitsa", city: "Gorna Orechovica", country: "Bulgaria", code: "GOZ"},
{airport: "Plovdiv", city: "Plovdiv", country: "Bulgaria", code: "PDV"},
{airport: "Sofia", city: "Sofia", country: "Bulgaria", code: "SOF"},
{airport: "Varna", city: "Varna", country: "Bulgaria", code: "VAR"},
{airport: "Bobo Dioulasso", city: "Bobo-Dioulasso", country: "Burkina Faso", code: "BOY"},
{airport: "Ouagadougou", city: "Ouagadougou", country: "Burkina Faso", code: "OUA"},
{airport: "Bujumbura International", city: "Bujumbura", country: "Burundi", code: "BJM"},
{airport: "Pochentong International", city: "Phnom-Penh", country: "Cambodia", code: "PNH"},
{airport: "Siem Reap", city: "Siem-Reap", country: "Cambodia", code: "REP"},
{airport: "Bafoussam", city: "Bafoussam", country: "Cameroon", code: "BFX"},
{airport: "Bamenda", city: "Bamenda", country: "Cameroon", code: "BPC"},
{airport: "Batouri", city: "Batouri", country: "Cameroon", code: "OUR"},
{airport: "Douala", city: "Douala", country: "Cameroon", code: "DLA"},
{airport: "Foumban Nkounja", city: "Foumban", country: "Cameroon", code: "FOM"},
{airport: "Garoua", city: "Garoua", country: "Cameroon", code: "GOU"},
{airport: "Maroua Salak", city: "Maroua", country: "Cameroon", code: "MVR"},
{airport: "Ngaoundere", city: "N'Gaoundere", country: "Cameroon", code: "NGE"},
{airport: "Tiko", city: "Tiko", country: "Cameroon", code: "TKC"},
{airport: "Yaounde", city: "Yaounde", country: "Cameroon", code: "YAO"},
{airport: "Calgary International", city: "Calgary", country: "Canada", code: "YYC"},
{airport: "Cold Lake", city: "Cold Lake", country: "Canada", code: "YOD"},
{airport: "Coronation", city: "Coronation", country: "Canada", code: "YCT"},
{airport: "Edmonton City Centre", city: "Edmonton", country: "Canada", code: "YXD"},
{airport: "Edmonton Namao", city: "Edmonton", country: "Canada", code: "YED"},
{airport: "Edmonton International", city: "Edmonton", country: "Canada", code: "YEG"},
{airport: "Edson", city: "Edson", country: "Canada", code: "YET"},
{airport: "Fort Chipewyan", city: "Fort Chipewyan", country: "Canada", code: "YPY"},
{airport: "Fort Mcmurray", city: "Fort Mcmurray", country: "Canada", code: "YMM"},
{airport: "Grande Prairie", city: "Grande Prairie", country: "Canada", code: "YQU"},
{airport: "High Level", city: "High Level", country: "Canada", code: "YOJ"},
{airport: "Lethbridge", city: "Lethbridge", country: "Canada", code: "YQL"},
{airport: "Lloydminster", city: "Lloydminster", country: "Canada", code: "YLL"},
{airport: "Medicine Hat", city: "Medicine Hat", country: "Canada", code: "YXH"},
{airport: "Rocky Mountain House", city: "Rocky Mountain House", country: "Canada", code: "YRM"},
{airport: "Slave Lake", city: "Slave Lake", country: "Canada", code: "YZH"},
{airport: "Vermilion", city: "Vermilion", country: "Canada", code: "YVG"},
{airport: "Abbotsford", city: "Abbotsford", country: "Canada", code: "YXX"},
{airport: "Campbell River", city: "Campbell River", country: "Canada", code: "YBL"},
{airport: "Castlegar", city: "Castlegar", country: "Canada", code: "YCG"},
{airport: "Chilliwack", city: "Chilliwack", country: "Canada", code: "YCW"},
{airport: "Comox", city: "Comox", country: "Canada", code: "YQQ"},
{airport: "Cranbrook", city: "Cranbrook", country: "Canada", code: "YXC"},
{airport: "Dawson Creek", city: "Dawson Creek", country: "Canada", code: "YDQ"},
{airport: "Dease Lake", city: "Dease Lake", country: "Canada", code: "YDL"},
{airport: "Fort Nelson", city: "Fort Nelson", country: "Canada", code: "YYE"},
{airport: "Fort St John", city: "Fort Saint John", country: "Canada", code: "YXJ"},
{airport: "Kamloops", city: "Kamloops", country: "Canada", code: "YKA"},
{airport: "Kelowna", city: "Kelowna", country: "Canada", code: "YLW"},
{airport: "Nanaimo", city: "Nanaimo", country: "Canada", code: "YCD"},
{airport: "Quadra Island", city: "Northern Gulf Islands", country: "Canada", code: ""},
{airport: "Peace River", city: "Peace River", country: "Canada", code: "YPE"},
{airport: "Penticton", city: "Penticton", country: "Canada", code: "YYF"},
{airport: "Pitt Meadows", city: "Pitt Meadows", country: "Canada", code: ""},
{airport: "Port Hardy", city: "Port Hardy", country: "Canada", code: "YZT"},
{airport: "Prince George", city: "Prince George", country: "Canada", code: "YXS"},
{airport: "Prince Rupert", city: "Prince Pupert", country: "Canada", code: "YPR"},
{airport: "Princeton", city: "Princeton", country: "Canada", code: "YDC"},
{airport: "Quesnel", city: "Quesnel", country: "Canada", code: "YQZ"},
{airport: "Sandspit", city: "Sandspit", country: "Canada", code: "YZP"},
{airport: "Smithers", city: "Smithers", country: "Canada", code: "YYD"},
{airport: "Salt Spring Island", city: "Southern Gulf Islands", country: "Canada", code: ""},
{airport: "Terrace", city: "Terrace", country: "Canada", code: "YXT"},
{airport: "Tofino", city: "Tofino", country: "Canada", code: "YAZ"},
{airport: "Vancouver International", city: "Vancouver", country: "Canada", code: "YVR"},
{airport: "Victoria International", city: "Victoria", country: "Canada", code: "YYJ"},
{airport: "Williams Lake", city: "Williams Lake", country: "Canada", code: "YWL"},
{airport: "Brandon Muni", city: "Brandon", country: "Canada", code: "YBR"},
{airport: "Brochet Airport", city: "Brochet", country: "Canada", code: ""},
{airport: "Churchill", city: "Churchill", country: "Canada", code: "YYQ"},
{airport: "Dauphin Barker", city: "Dauphin", country: "Canada", code: "YDN"},
{airport: "Flin Flon", city: "Flin Flon", country: "Canada", code: "YFO"},
{airport: "Gillam", city: "Gillam", country: "Canada", code: "YGX"},
{airport: "Lynn Lake", city: "Lynn Lake", country: "Canada", code: "YYL"},
{airport: "Southport", city: "Portage-La-Prairie", country: "Canada", code: "YPG"},
{airport: "Thompson", city: "Thompson", country: "Canada", code: "YTH"},
{airport: "Winnipeg International", city: "Winnipeg", country: "Canada", code: "YWG"},
{airport: "Winnipeg St Andrews", city: "Winnipeg", country: "Canada", code: "YAV"},
{airport: "Charlo", city: "Charlo", country: "Canada", code: "YCL"},
{airport: "Fredericton", city: "Fredericton", country: "Canada", code: "YFC"},
{airport: "Miramichi", city: "Miramichi", country: "Canada", code: "YCH"},
{airport: "Greater Moncton International", city: "Moncton", country: "Canada", code: "YQM"},
{airport: "Saint John", city: "St. John", country: "Canada", code: "YSJ"},
{airport: "Deer Lake", city: "Deer Lake", country: "Canada", code: "YDF"},
{airport: "Gander International", city: "Gander", country: "Canada", code: "YQX"},
{airport: "Goose Bay", city: "Goose Bay", country: "Canada", code: "YYR"},
{airport: "St. Anthony", city: "St. Anthony", country: "Canada", code: "YAY"},
{airport: "St. John's International", city: "St. John's", country: "Canada", code: "YYT"},
{airport: "Stephenville", city: "Stephenville", country: "Canada", code: "YJT"},
{airport: "Wabush", city: "Wabush", country: "Canada", code: "YWK"},
{airport: "Greenwood", city: "Greenwood", country: "Canada", code: "YZX"},
{airport: "Halifax International", city: "Halifax", country: "Canada", code: "YHZ"},
{airport: "Shearwater", city: "Halifax", country: "Canada", code: "YAW"},
{airport: "Sydney", city: "Sydney", country: "Canada", code: "YQY"},
{airport: "Fort Mcpherson", city: "Fort Mcpherson", country: "Canada", code: "ZFM"},
{airport: "Fort Resolution", city: "Fort Resolution", country: "Canada", code: "YFR"},
{airport: "Fort Simpson", city: "Fort Simpson", country: "Canada", code: "YFS"},
{airport: "Fort Smith", city: "Fort Smith", country: "Canada", code: "YSM"},
{airport: "Hay River", city: "Hay River", country: "Canada", code: "YHY"},
{airport: "Holman", city: "Holman Island", country: "Canada", code: "YHI"},
{airport: "Inuvik Mike Zubko", city: "Inuvik", country: "Canada", code: "YEV"},
{airport: "Norman Wells", city: "Norman Wells", country: "Canada", code: "YVQ"},
{airport: "Sachs Harbour", city: "Sachs Harbour", country: "Canada", code: "YSY"},
{airport: "Tuktoyaktuk", city: "Tuktoyaktuk", country: "Canada", code: "YUB"},
{airport: "Wrigley", city: "Wrigley", country: "Canada", code: "YWY"},
{airport: "Yellowknife", city: "Yellowknife", country: "Canada", code: "YZF"},
{airport: "Alert", city: "Alert", country: "Canada", code: "YLT"},
{airport: "Baker Lake", city: "Baker Lake", country: "Canada", code: "YBK"},
{airport: "Qikiqtarjuaq", city: "Broughton Island", country: "Canada", code: "YVM"},
{airport: "Cambridge Bay", city: "Cambridge Bay", country: "Canada", code: "YCB"},
{airport: "Cape Dorset", city: "Cape Dorset", country: "Canada", code: "YTE"},
{airport: "Chesterfield Inlet Airport", city: "Chesterfield Inlet", country: "Canada", code: ""},
{airport: "Clyde River", city: "Clyde River", country: "Canada", code: "YCY"},
{airport: "Kugluktuk", city: "Coppermine", country: "Canada", code: "YCO"},
{airport: "Fairmont Hot Springs", city: "Coral Harbour", country: "Canada", code: "YZS"},
{airport: "Arviat", city: "Eskimo Point", country: "Canada", code: "YEK"},
{airport: "Eureka", city: "Eureka", country: "Canada", code: "YEU"},
{airport: "Gjoa Haven", city: "Gjoa Haven", country: "Canada", code: "YHK"},
{airport: "Hall Beach", city: "Hall Beach", country: "Canada", code: "YUX"},
{airport: "Iqaluit", city: "Iqaluit", country: "Canada", code: "YFB"},
{airport: "Nanisivik", city: "Nanisivik", country: "Canada", code: "YSR"},
{airport: "Pangnirtung", city: "Pangnirtung", country: "Canada", code: "YXP"},
{airport: "Kugaaruk", city: "Pelly Bay", country: "Canada", code: "YBB"},
{airport: "Pond Inlet", city: "Pond Inlet", country: "Canada", code: "YIO"},
{airport: "Rankin Inlet", city: "Rankin Inlet", country: "Canada", code: "YRT"},
{airport: "Repulse Bay", city: "Repulse Bay", country: "Canada", code: "YUT"},
{airport: "Resolute Bay", city: "Resolute", country: "Canada", code: "YRB"},
{airport: "Taloyoak", city: "Spence Bay", country: "Canada", code: "YYH"},
{airport: "Armstrong", city: "Armstrong", country: "Canada", code: "YYW"},
{airport: "Atikokan Muni", city: "Atikokan", country: "Canada", code: "YIB"},
{airport: "Chapleau", city: "Chapleau", country: "Canada", code: "YLD"},
{airport: "Dryden Rgnl", city: "Dryden", country: "Canada", code: "YHD"},
{airport: "Timiskaming Rgnl", city: "Earlton", country: "Canada", code: "YXR"},
{airport: "Geraldton Greenstone Regional", city: "Geraldton", country: "Canada", code: "YGQ"},
{airport: "Gore Bay Manitoulin", city: "Gore Bay", country: "Canada", code: "YZE"},
{airport: "Hamilton International", city: "Hamilton", country: "Canada", code: "YHM"},
{airport: "Kapuskasing", city: "Kapuskasing", country: "Canada", code: "YYU"},
{airport: "Kenora", city: "Kenora", country: "Canada", code: "YQK"},
{airport: "Kingston", city: "Kingston", country: "Canada", code: "YGK"},
{airport: "London", city: "London", country: "Canada", code: "YXU"},
{airport: "Moosonee", city: "Moosonee", country: "Canada", code: "YMO"},
{airport: "Muskoka", city: "Muskoka", country: "Canada", code: "YQA"},
{airport: "Nakina", city: "Nakina", country: "Canada", code: ""},
{airport: "North Bay", city: "North Bay", country: "Canada", code: "YYB"},
{airport: "Ottawa Macdonald Cartier International", city: "Ottawa", country: "Canada", code: "YOW"},
{airport: "Petawawa", city: "Petawawa", country: "Canada", code: "YWA"},
{airport: "Peterborough", city: "Peterborough", country: "Canada", code: "YPQ"},
{airport: "Pickle Lake", city: "Pickle Lake", country: "Canada", code: "YPL"},
{airport: "Chris Hadfield", city: "Sarnia", country: "Canada", code: "YZR"},
{airport: "Sault Ste Marie", city: "Sault Sainte Marie", country: "Canada", code: "YAM"},
{airport: "Sioux Lookout", city: "Sioux Lookout", country: "Canada", code: "YXL"},
{airport: "Sudbury", city: "Sudbury", country: "Canada", code: "YSB"},
{airport: "Thunder Bay", city: "Thunder Bay", country: "Canada", code: "YQT"},
{airport: "Timmins", city: "Timmins", country: "Canada", code: "YTS"},
{airport: "Lester B Pearson International", city: "Toronto", country: "Canada", code: "YYZ"},
{airport: "Downsview", city: "Toronto", country: "Canada", code: "YZD"},
{airport: "City Centre", city: "Toronto", country: "Canada", code: "YTZ"},
{airport: "Buttonville Muni", city: "Toronto", country: "Canada", code: "YKZ"},
{airport: "Trenton", city: "Trenton", country: "Canada", code: "YTR"},
{airport: "Kitchener Waterloo Regional", city: "Waterloo", country: "Canada", code: "YKF"},
{airport: "Wiarton", city: "Wiarton", country: "Canada", code: "YVV"},
{airport: "Windsor", city: "Windsor", country: "Canada", code: "YQG"},
{airport: "Charlottetown", city: "Charlottetown", country: "Canada", code: "YYG"},
{airport: "Summerside", city: "Summerside", country: "Canada", code: "YSU"},
{airport: "Bagotville", city: "Bagotville", country: "Canada", code: "YBG"},
{airport: "Baie Comeau", city: "Baie Comeau", country: "Canada", code: "YBC"},
{airport: "Forestville", city: "Forestville", country: "Canada", code: ""},
{airport: "Gaspe", city: "Gaspe", country: "Canada", code: "YGP"},
{airport: "Gatineau", city: "Gatineau", country: "Canada", code: "YND"},
{airport: "Iles De La Madeleine", city: "Iles De La Madeleine", country: "Canada", code: "YGR"},
{airport: "Kuujjuarapik", city: "Kuujjuararapik", country: "Canada", code: "YGW"},
{airport: "La Grande Riviere", city: "La Grande Riviere", country: "Canada", code: "YGL"},
{airport: "Matagami", city: "Matagami", country: "Canada", code: "YNM"},
{airport: "Mont Joli", city: "Mont Joli", country: "Canada", code: "YYY"},
{airport: "Pierre Elliott Trudeau International Airport", city: "Montreal", country: "Canada", code: "YUL"},
{airport: "Montreal International Mirabel", city: "Montreal", country: "Canada", code: "YMX"},
{airport: "St Hubert", city: "Montreal", country: "Canada", code: "YHU"},
{airport: "Natashquan", city: "Natashquan", country: "Canada", code: "YNA"},
{airport: "Port Menier", city: "Port Menier", country: "Canada", code: "YPN"},
{airport: "Quebec Jean Lesage International", city: "Quebec", country: "Canada", code: "YQB"},
{airport: "Kuujjuaq", city: "Quujjuaq", country: "Canada", code: "YVP"},
{airport: "Riviere Du Loup", city: "Riviere Du Loup", country: "Canada", code: "YRI"},
{airport: "Roberval", city: "Roberval", country: "Canada", code: "YRJ"},
{airport: "Rouyn Noranda", city: "Rouyn", country: "Canada", code: "YUY"},
{airport: "Schefferville", city: "Schefferville", country: "Canada", code: "YKL"},
{airport: "Sept Iles", city: "Sept-Iles", country: "Canada", code: "YZV"},
{airport: "Sherbrooke", city: "Sherbrooke", country: "Canada", code: "YSC"},
{airport: "St Jean Sur Richelieu", city: "St Jean Sur Richelieu", country: "Canada", code: ""},
{airport: "Val D Or", city: "Val D'Or", country: "Canada", code: "YVO"},
{airport: "Buffalo Narrows", city: "Buffalo Narrows", country: "Canada", code: "YVT"},
{airport: "Estevan", city: "Estevan", country: "Canada", code: "YEN"},
{airport: "Hudson Bay", city: "Hudson Bay", country: "Canada", code: "YHB"},
{airport: "Kindersley", city: "Kindersley", country: "Canada", code: "YKY"},
{airport: "La Ronge", city: "La Ronge", country: "Canada", code: "YVC"},
{airport: "Meadow Lake", city: "Meadow Lake", country: "Canada", code: "YLJ"},
{airport: "Moose Jaw", city: "Moose Jaw", country: "Canada", code: "YMJ"},
{airport: "North Battleford", city: "North Battleford", country: "Canada", code: "YQW"},
{airport: "Prince Albert Glass Field", city: "Prince Albert", country: "Canada", code: "YPA"},
{airport: "Red Deer Regional", city: "Red Deer Industrial", country: "Canada", code: "YQF"},
{airport: "Regina International", city: "Regina", country: "Canada", code: "YQR"},
{airport: "Saskatoon J G Diefenbaker International", city: "Saskatoon", country: "Canada", code: "YXE"},
{airport: "Swift Current", city: "Swift Current", country: "Canada", code: "YYN"},
{airport: "Yorkton Muni", city: "Yorkton", country: "Canada", code: "YQV"},
{airport: "Burwash", city: "Burwash", country: "Canada", code: "YDB"},
{airport: "Dawson", city: "Dawson", country: "Canada", code: "YDA"},
{airport: "Faro", city: "Faro, YT", country: "Canada", code: "ZFA"},
{airport: "Mayo", city: "Mayo", country: "Canada", code: "YMA"},
{airport: "Old Crow", city: "Old Crow", country: "Canada", code: "YOC"},
{airport: "Teslin", city: "Teslin", country: "Canada", code: "YZW"},
{airport: "Watson Lake", city: "Watson Lake", country: "Canada", code: "YQH"},
{airport: "Whitecourt", city: "Whitecourt", country: "Canada", code: "YZU"},
{airport: "Whitehorse International", city: "Whitehorse", country: "Canada", code: "YXY"},
{airport: "Maniwaki", city: "Maniwaki", country: "Canada", code: "YMW"},
{airport: "Fuerteventura", city: "Fuerteventura", country: "Canary Islands", code: "FUE"},
{airport: "Gran Canaria", city: "Gran Canaria", country: "Canary Islands", code: "LPA"},
{airport: "Hierro", city: "Hierro", country: "Canary Islands", code: "VDE"},
{airport: "Lanzarote", city: "Lanzerote", country: "Canary Islands", code: "ACE"},
{airport: "Tenerife Sur", city: "Tenerife", country: "Canary Islands", code: "TFS"},
{airport: "Tenerife Norte", city: "Tenerife", country: "Canary Islands", code: "TFN"},
{airport: "Amilcar Cabral International", city: "Amilcar Cabral", country: "Cape Verde Islands", code: "SID"},
{airport: "Rabil", city: "Boa Vista", country: "Cape Verde Islands", code: "BVC"},
{airport: "Francisco Mendes", city: "Francisco Mendez", country: "Cape Verde Islands", code: "RAI"},
{airport: "Maio", city: "Maio", country: "Cape Verde Islands", code: "MMO"},
{airport: "Preguica", city: "Sao Nocolau Island", country: "Cape Verde Islands", code: "SNE"},
{airport: "Sao Pedro", city: "Sao Vicente Island", country: "Cape Verde Islands", code: "VXE"},
{airport: "Gerrard Smith International", city: "Cayman Barac", country: "Cayman Islands", code: "CYB"},
{airport: "Owen Roberts International", city: "Georgetown, Grand Cayman", country: "Cayman Islands", code: "GCM"},
{airport: "Bambari", city: "Bambari", country: "Central African Rep.", code: "BBY"},
{airport: "Bangassou", city: "Bangassou", country: "Central African Rep.", code: "BGU"},
{airport: "Bangui M Poko", city: "Bangui", country: "Central African Rep.", code: "BGF"},
{airport: "Berberati", city: "Berberati", country: "Central African Rep.", code: "BBT"},
{airport: "Birao", city: "Birao", country: "Central African Rep.", code: "IRO"},
{airport: "Bouar", city: "Bouar", country: "Central African Rep.", code: "BOP"},
{airport: "Bria", city: "Bria", country: "Central African Rep.", code: "BIV"},
{airport: "Ndele", city: "N'Dele", country: "Central African Rep.", code: "NDL"},
{airport: "Yalinga", city: "Yalinga", country: "Central African Rep.", code: "AIG"},
{airport: "Abeche", city: "Abeche", country: "Chad", code: "AEH"},
{airport: "Faya Largeau", city: "Faya-Largeau", country: "Chad", code: "FYT"},
{airport: "Moundou", city: "Moundou", country: "Chad", code: "MQQ"},
{airport: "Ndjamena", city: "N'Djamena", country: "Chad", code: "NDJ"},
{airport: "Pala", city: "Pala", country: "Chad", code: "PLF"},
{airport: "Sarh", city: "Sarh", country: "Chad", code: "SRH"},
{airport: "Alto Palena", city: "Alto Palena", country: "Chile", code: "WAP"},
{airport: "Pupelde", city: "Ancud", country: "Chile", code: "ZUD"},
{airport: "Cerro Moreno International", city: "Antofagasta", country: "Chile", code: "ANF"},
{airport: "Chacalluta", city: "Arica", country: "Chile", code: "ARI"},
{airport: "Balmaceda", city: "Balmaceda", country: "Chile", code: "BBA"},
{airport: "El Loa", city: "Calama", country: "Chile", code: "CJC"},
{airport: "Chaiten", city: "Chaiten", country: "Chile", code: "WCH"},
{airport: "Chile Chico", city: "Chile Chico", country: "Chile", code: "CCH"},
{airport: "Carriel Sur International", city: "Concepcion", country: "Chile", code: "CCP"},
{airport: "Chamonate", city: "Copiapo", country: "Chile", code: "CPO"},
{airport: "Teniente Vidal", city: "Coyhaique", country: "Chile", code: "GXQ"},
{airport: "Mataveri International", city: "Easter Island", country: "Chile", code: "IPC"},
{airport: "Diego Aracena International", city: "Iquique", country: "Chile", code: "IQQ"},
{airport: "La Florida", city: "La Serena", country: "Chile", code: "TCO"},
{airport: "Maria Dolores", city: "Los Angeles", country: "Chile", code: "LSQ"},
{airport: "Canal Bajo Carlos Hott Siebert", city: "Osorno", country: "Chile", code: "ZOS"},
{airport: "El Tepual International", city: "Puerto Montt", country: "Chile", code: "PMC"},
{airport: "Carlos Ibanez Del Campo International", city: "Punta Arenas", country: "Chile", code: "PUQ"},
{airport: "Los Cerrillos", city: "Santiago", country: "Chile", code: "ULC"},
{airport: "Arturo Merino Benitez International", city: "Santiago", country: "Chile", code: "SCL"},
{airport: "Maquehue", city: "Temuco", country: "Chile", code: "ZCO"},
{airport: "Pichoy", city: "Valdivia", country: "Chile", code: "ZAL"},
{airport: "Capital", city: "Beijing", country: "China", code: "PEK"},
{airport: "Huanghua", city: "Changcha", country: "China", code: "CSX"},
{airport: "Shuangliu", city: "Chengdu", country: "China", code: "CTU"},
{airport: "Jiangbei", city: "Chongqing", country: "China", code: "CKG"},
{airport: "Zhoushuizi", city: "Dalian", country: "China", code: "DLC"},
{airport: "Changle", city: "Fuzhou", country: "China", code: "FOC"},
{airport: "Baiyun", city: "Guangzhou", country: "China", code: "CAN"},
{airport: "Liangjiang", city: "Guilin", country: "China", code: "KWL"},
{airport: "Dongshan", city: "Hailar", country: "China", code: "HLD"},
{airport: "Xiaoshan", city: "Hangzhou", country: "China", code: "HGH"},
{airport: "Taiping", city: "Harbin", country: "China", code: "HRB"},
{airport: "Luogang", city: "Hefei", country: "China", code: "HFE"},
{airport: "Hotan", city: "Hotan", country: "China", code: "HTN"},
{airport: "Jingdezhen Airport", city: "Jingdezhen", country: "China", code: "JDZ"},
{airport: "Kashi", city: "Kashi", country: "China", code: "KHG"},
{airport: "Wujiaba", city: "Kunming", country: "China", code: "KMG"},
{airport: "Zhongchuan", city: "Lanzhou", country: "China", code: "ZGC"},
{airport: "Lhasa Airport", city: "Lhasa", country: "China", code: "LXA"},
{airport: "Nanchang Airport", city: "Nanchang", country: "China", code: "KHN"},
{airport: "Lu Kou Airport", city: "Nanjing", country: "China", code: "NKG"},
{airport: "Wuxu", city: "Nanning", country: "China", code: "NNG"},
{airport: "Lishe", city: "Ninbo", country: "China", code: "NGB"},
{airport: "Liuting", city: "Qingdao", country: "China", code: "TAO"},
{airport: "Hongqiao International", city: "Shanghai", country: "China", code: "SHA"},
{airport: "Wai Sha Airport", city: "Shantou", country: "China", code: "SWA"},
{airport: "Baoan", city: "Shenzhen", country: "China", code: "SZX"},
{airport: "Wusu", city: "Taiyuan", country: "China", code: "TYN"},
{airport: "Binhai", city: "Tianjin", country: "China", code: "TSN"},
{airport: "Diwopu", city: "Urumqi", country: "China", code: "URC"},
{airport: "Tianhe", city: "Wuhan", country: "China", code: "WUH"},
{airport: "Xianyang", city: "Xi'An", country: "China", code: "XIY"},
{airport: "Gaoqi", city: "Xiamen", country: "China", code: "XMN"},
{airport: "Qingshan", city: "Xichang", country: "China", code: "XIC"},
{airport: "Laishan", city: "Yantai", country: "China", code: "YNT"},
{airport: "Xinzheng", city: "Zhengzhou", country: "China", code: "CGO"},
{airport: "Santiago Perez", city: "Arauca", country: "Colombia", code: "AUC"},
{airport: "El Eden", city: "Armenia", country: "Colombia", code: "AXM"},
{airport: "Jose Celestino Mutis", city: "Bahia Solano", country: "Colombia", code: "BSC"},
{airport: "Yariguies", city: "Barrancabermeja", country: "Colombia", code: "EJA"},
{airport: "Ernesto Cortissoz", city: "Barranquilla", country: "Colombia", code: "BAQ"},
{airport: "Eldorado International", city: "Bogota", country: "Colombia", code: "BOG"},
{airport: "Palonegro", city: "Bucaramanga", country: "Colombia", code: "BGA"},
{airport: "Gerardo Tobar Lopez", city: "Buenaventura", country: "Colombia", code: "BUN"},
{airport: "Alfonso Bonilla Aragon International", city: "Cali", country: "Colombia", code: "CLO"},
{airport: "Rafael Nunez", city: "Cartagena", country: "Colombia", code: "CTG"},
{airport: "Mandinga", city: "Condoto", country: "Colombia", code: "COG"},
{airport: "Las Brujas", city: "Corozal", country: "Colombia", code: "CZU"},
{airport: "Camilo Daza", city: "Cucuta", country: "Colombia", code: "CUC"},
{airport: "Gustavo Artunduaga Paredes", city: "Florencia", country: "Colombia", code: "FLA"},
{airport: "Guapi", city: "Guapi", country: "Colombia", code: "GPI"},
{airport: "Perales", city: "Ibague", country: "Colombia", code: "IBE"},
{airport: "San Luis", city: "Ipiales", country: "Colombia", code: "IPI"},
{airport: "Alfredo Vasquez Cobo", city: "Leticia", country: "Colombia", code: "LET"},
{airport: "Baracoa", city: "Magangue", country: "Colombia", code: "MGN"},
{airport: "La Nubia", city: "Manizales", country: "Colombia", code: "MZL"},
{airport: "Olaya Herrera", city: "Medellin", country: "Colombia", code: "EOH"},
{airport: "Fabio Alberto Leon Bentley", city: "Mitu", country: "Colombia", code: "MVP"},
{airport: "Los Garzones", city: "Monteria", country: "Colombia", code: "MTR"},
{airport: "Benito Salas", city: "Neiva", country: "Colombia", code: "NVA"},
{airport: "Aguas Claras", city: "Ocana", country: "Colombia", code: "OCV"},
{airport: "Otu", city: "Otu", country: "Colombia", code: "OTU"},
{airport: "Antonio Narino", city: "Pasto", country: "Colombia", code: "PSO"},
{airport: "Matecana", city: "Pereira", country: "Colombia", code: "PEI"},
{airport: "Guillermo Leon Valencia", city: "Popayan", country: "Colombia", code: "PPN"},
{airport: "El Embrujo", city: "Providencia", country: "Colombia", code: "PVA"},
{airport: "Tres De Mayo", city: "Puerto Asis", country: "Colombia", code: "PUU"},
{airport: "Puerto Carreno", city: "Puerto Carreno", country: "Colombia", code: "PCR"},
{airport: "El Carano", city: "Quibdo", country: "Colombia", code: "UIB"},
{airport: "Almirante Padilla", city: "Rio Hacha", country: "Colombia", code: "RCH"},
{airport: "Jose Maria Cordova", city: "Rio Negro", country: "Colombia", code: "MDE"},
{airport: "Gustavo Rojas Pinilla", city: "San Andres Island", country: "Colombia", code: "ADZ"},
{airport: "Jorge E Gonzalez Torres", city: "San Jose Del Guaviare", country: "Colombia", code: "SJE"},
{airport: "Eduardo Falla Solano", city: "San Vincente De Caguan", country: "Colombia", code: "SVI"},
{airport: "Simon Bolivar", city: "Santa Marta", country: "Colombia", code: "SMR"},
{airport: "Los Colonizadores", city: "Saravena", country: "Colombia", code: "RVE"},
{airport: "Tame", city: "Tame", country: "Colombia", code: "TME"},
{airport: "Trinidad", city: "Trinidad", country: "Colombia", code: "TDA"},
{airport: "Farfan", city: "Tulua", country: "Colombia", code: "ULQ"},
{airport: "La Florida", city: "Tumaco", country: "Colombia", code: "TCO"},
{airport: "Gonzalo Mejia", city: "Turbo", country: "Colombia", code: "TRB"},
{airport: "Turbat International", city: "Turbo", country: "Colombia", code: "TRB"},
{airport: "Alfonso Lopez Pumarejo", city: "Valledupar", country: "Colombia", code: "VUP"},
{airport: "Vanguardia", city: "Villavicencio", country: "Colombia", code: "VVC"},
{airport: "Anjouan Ouani", city: "Anjouan", country: "Comoros Islands", code: "AJN"},
{airport: "Moheli Bandar Es Salam", city: "Moheli", country: "Comoros Islands", code: "NWA"},
{airport: "Moroni Iconi", city: "Moroni", country: "Comoros Islands", code: "YVA"},
{airport: "Moroni Hahaia", city: "Moroni", country: "Comoros Islands", code: "HAH"},
{airport: "Brazzaville Maya Maya", city: "Brazzaville", country: "Congo", code: "BZV"},
{airport: "Impfondo", city: "Impfondo", country: "Congo", code: "ION"},
{airport: "Dolisie", city: "Loudima", country: "Congo", code: "DIS"},
{airport: "Makabana", city: "Makabana", country: "Congo", code: "KMK"},
{airport: "Makoua", city: "Makoua", country: "Congo", code: "MKJ"},
{airport: "Ouesso", city: "Ouesso", country: "Congo", code: "OUE"},
{airport: "Owando", city: "Owando", country: "Congo", code: "FTX"},
{airport: "Pointe Noire", city: "Pointe-Noire", country: "Congo", code: "PNR"},
{airport: "Bandundu", city: "Bandoundu", country: "Congo (Democratic Republic)", code: "FDU"},
{airport: "Bukavu Kavumu", city: "Bukavu/Kavumu", country: "Congo (Democratic Republic)", code: "BKY"},
{airport: "Bunia", city: "Bunia", country: "Congo (Democratic Republic)", code: "BUX"},
{airport: "Gbadolite", city: "Gbadolite", country: "Congo (Democratic Republic)", code: "BDT"},
{airport: "Gemena", city: "Gemena", country: "Congo (Democratic Republic)", code: "GMA"},
{airport: "Goma", city: "Goma", country: "Congo (Democratic Republic)", code: "GOM"},
{airport: "Isiro Matari", city: "Isiro", country: "Congo (Democratic Republic)", code: "IRP"},
{airport: "Kalemie", city: "Kalemie", country: "Congo (Democratic Republic)", code: "FMI"},
{airport: "Kamina Base", city: "Kamina Base", country: "Congo (Democratic Republic)", code: "KMN"},
{airport: "Kananga", city: "Kananga", country: "Congo (Democratic Republic)", code: "KGA"},
{airport: "Kikwit", city: "Kikwit", country: "Congo (Democratic Republic)", code: "KKW"},
{airport: "Kindu", city: "Kindu", country: "Congo (Democratic Republic)", code: "KND"},
{airport: "Kinshasa Ndolo", city: "Kinshasa", country: "Congo (Democratic Republic)", code: "NLO"},
{airport: "Kinshasa Ndjili International", city: "Kinshasa", country: "Congo (Democratic Republic)", code: "FIH"},
{airport: "Kisangani Simisini", city: "Kisangani", country: "Congo (Democratic Republic)", code: "FKI"},
{airport: "Kolwezi", city: "Kolwezi", country: "Congo (Democratic Republic)", code: "KWZ"},
{airport: "Lisala", city: "Lisala", country: "Congo (Democratic Republic)", code: "LIQ"},
{airport: "Lubumbashi International", city: "Lubumashi", country: "Congo (Democratic Republic)", code: "FBM"},
{airport: "Matadi Tshimpi", city: "Matadi", country: "Congo (Democratic Republic)", code: "MAT"},
{airport: "Mbandaka", city: "Mbandaka", country: "Congo (Democratic Republic)", code: "MDK"},
{airport: "Mbuji Mayi", city: "Mbuji-Mayi", country: "Congo (Democratic Republic)", code: "MJM"},
{airport: "Muanda", city: "Muanda", country: "Congo (Democratic Republic)", code: "MNB"},
{airport: "Aitutaki", city: "Aitutaki", country: "Cook Islands", code: "AIT"},
{airport: "Rarotonga International", city: "Avarua", country: "Cook Islands", code: "RAR"},
{airport: "Campo Dell Oro", city: "Ajaccio", country: "Corse Isl.", code: "AJA"},
{airport: "Poretta", city: "Bastia", country: "Corse Isl.", code: "BIA"},
{airport: "Saint Catherine", city: "Calvi", country: "Corse Isl.", code: "CLY"},
{airport: "Sud Corse", city: "Figari", country: "Corse Isl.", code: "FSC"},
{airport: "Solenzara", city: "Solenzara", country: "Corse Isl.", code: "SOZ"},
{airport: "Coto 47", city: "Coto 47", country: "Costa Rica", code: "OTR"},
{airport: "Golfito", city: "Golfito", country: "Costa Rica", code: "GLF"},
{airport: "Daniel Oduber Quiros International", city: "Liberia", country: "Costa Rica", code: "LIR"},
{airport: "Limon International", city: "Limon", country: "Costa Rica", code: "LIO"},
{airport: "Nosara", city: "Nosara Beach", country: "Costa Rica", code: "NOB"},
{airport: "Palmar Sur", city: "Palmar Sur", country: "Costa Rica", code: "PMZ"},
{airport: "Quepos Managua", city: "Quepos", country: "Costa Rica", code: "XQP"},
{airport: "Juan Santamaria International", city: "San Jose", country: "Costa Rica", code: "SJO"},
{airport: "Dubrovnik", city: "Dubrovnik", country: "Croatia", code: "DBV"},
{airport: "Osijek", city: "Osijek", country: "Croatia", code: "OSI"},
{airport: "Pula", city: "Pula", country: "Croatia", code: "PUY"},
{airport: "Rijeka", city: "Rijeka", country: "Croatia", code: "RJK"},
{airport: "Split", city: "Split", country: "Croatia", code: "SPU"},
{airport: "Zadar", city: "Zadar", country: "Croatia", code: "ZAD"},
{airport: "Zagreb", city: "Zagreb", country: "Croatia", code: "ZAG"},
{airport: "Gustavo Rizo", city: "Baracoa Playa", country: "Cuba", code: "BCA"},
{airport: "Carlos Manuel De Cespedes", city: "Bayamo", country: "Cuba", code: "BYM"},
{airport: "Ignacio Agramonte International", city: "Camaguey", country: "Cuba", code: "CMW"},
{airport: "Cayo Coco", city: "Cayo Coco", country: "Cuba", code: "CCC"},
{airport: "Vilo Acuna", city: "Cayo", country: "Cuba", code: "CYO"},
{airport: "Maximo Gomez", city: "Ciego De Avila", country: "Cuba", code: "AVI"},
{airport: "Jaime Gonzalez", city: "Cienfuegos", country: "Cuba", code: "CFG"},
{airport: "Mariana Grajales", city: "Guantanamo", country: "Cuba", code: "GAO"},
{airport: "Jose Marti International", city: "Havana", country: "Cuba", code: "HAV"},
{airport: "Frank Pais", city: "Holguin", country: "Cuba", code: "HOG"},
{airport: "La Coloma", city: "La Coloma", country: "Cuba", code: "LCL"},
{airport: "Hermanos Ameijeiras", city: "Las Tunas", country: "Cuba", code: "VTU"},
{airport: "Sierra Maestra", city: "Manzanillo", country: "Cuba", code: "MZO"},
{airport: "Orestes Acosta", city: "Moa", country: "Cuba", code: "MOA"},
{airport: "Rafael Perez", city: "Nueva Gerona", country: "Cuba", code: "GER"},
{airport: "Abel Santamaria", city: "Santa Clara", country: "Cuba", code: "SNU"},
{airport: "Antonio Maceo International", city: "Santiago De Cuba", country: "Cuba", code: "SCU"},
{airport: "Juan Gualberto Gomez International", city: "Varadero", country: "Cuba", code: "VRA"},
{airport: "Akrotiri", city: "Akrotiri", country: "Cyprus", code: "AKT"},
{airport: "Larnaca", city: "Larnaca", country: "Cyprus", code: "LCA"},
{airport: "Paphos International", city: "Paphos", country: "Cyprus", code: "PFO"},
{airport: "Karlovy Vary", city: "Karlovy Vary", country: "Czech Republic", code: "KLV"},
{airport: "Mosnov", city: "Ostrava", country: "Czech Republic", code: "OSR"},
{airport: "Pardubice", city: "Pardubice", country: "Czech Republic", code: "PED"},
{airport: "Ruzyne", city: "Prague", country: "Czech Republic", code: "PRG"},
{airport: "Prerov", city: "Prerov", country: "Czech Republic", code: "PRV"},
{airport: "Turany", city: "Turany", country: "Czech Republic", code: "BRQ"},
{airport: "Aalborg", city: "Aalborg", country: "Denmark", code: "AAL"},
{airport: "Aarhus", city: "Aarhus", country: "Denmark", code: "AAR"},
{airport: "Billund", city: "Billund", country: "Denmark", code: "BLL"},
{airport: "Kastrup", city: "Copenhagen", country: "Denmark", code: "CPH"},
{airport: "Roskilde", city: "Copenhagen", country: "Denmark", code: "RKE"},
{airport: "Esbjerg", city: "Esbjerg", country: "Denmark", code: "EBJ"},
{airport: "Karup", city: "Karup", country: "Denmark", code: "KRP"},
{airport: "Odense", city: "Odense", country: "Denmark", code: "ODE"},
{airport: "Bornholm Ronne", city: "Ronne", country: "Denmark", code: "RNN"},
{airport: "Skrydstrup", city: "Skrydstrup", country: "Denmark", code: "SKS"},
{airport: "Sonderborg", city: "Soenderborg", country: "Denmark", code: "SGD"},
{airport: "Stauning", city: "Stauning", country: "Denmark", code: "STA"},
{airport: "Thisted", city: "Thisted", country: "Denmark", code: "TED"},
{airport: "Canefield", city: "Canefield", country: "Dominica", code: "DCF"},
{airport: "Melville Hall", city: "Dominica", country: "Dominica", code: "DOM"},
{airport: "Maria Montez International", city: "Barahona", country: "Dominican Republic", code: "BRX"},
{airport: "Samana International", city: "El Catey", country: "Dominican Republic", code: "AZS"},
{airport: "La Romana International", city: "La Romana", country: "Dominican Republic", code: "LRM"},
{airport: "Gregorio Luperon International", city: "Puerto Plata", country: "Dominican Republic", code: "POP"},
{airport: "Punta Cana International", city: "Punta Cana", country: "Dominican Republic", code: "PUJ"},
{airport: "Cibao International", city: "Santiago", country: "Dominican Republic", code: "STI"},
{airport: "Las Americas International", city: "Santo Domingo", country: "Dominican Republic", code: "SDQ"},
{airport: "Herrera International", city: "Santo Domingo", country: "Dominican Republic", code: "HEX"},
{airport: "Comoro (Komoro) Airport", city: "Dili", country: "East Timor", code: "DIL"},
{airport: "Chachoan", city: "Ambato", country: "Ecuador", code: "ATF"},
{airport: "Francisco De Orellana", city: "Coca", country: "Ecuador", code: "OCC"},
{airport: "Mariscal Lamar", city: "Cuenca", country: "Ecuador", code: "CUE"},
{airport: "Simon Bolivar International", city: "Guayaquil", country: "Ecuador", code: "CCS"},
{airport: "Lago Agrio", city: "Lago Agrio", country: "Ecuador", code: "LGQ"},
{airport: "Macas", city: "Macas", country: "Ecuador", code: "XMS"},
{airport: "General Serrano", city: "Machala", country: "Ecuador", code: "MCH"},
{airport: "Eloy Alfaro International", city: "Manta", country: "Ecuador", code: "MEC"},
{airport: "Reales Tamarindos", city: "Portoviejo", country: "Ecuador", code: "PVO"},
{airport: "Mariscal Sucre International", city: "Quito", country: "Ecuador", code: "UIO"},
{airport: "General Ulpiano Paez", city: "Salinas", country: "Ecuador", code: "SNC"},
{airport: "Tarapoa", city: "Tarapoa", country: "Ecuador", code: "TPC"},
{airport: "El Rosal Teniente Mantilla", city: "Tulcan", country: "Ecuador", code: "TUA"},
{airport: "Abu Simbel", city: "Abu Simbel", country: "Egypt", code: "ABS"},
{airport: "Alexandria International", city: "Alexandria", country: "Egypt", code: "AEX"},
{airport: "Aswan International", city: "Aswan", country: "Egypt", code: "ASW"},
{airport: "Cairo International", city: "Cairo", country: "Egypt", code: "CAI"},
{airport: "El Tor", city: "El-Tor", country: "Egypt", code: "ELT"},
{airport: "Hurghada International", city: "Hurghada", country: "Egypt", code: "HRG"},
{airport: "Luxor International", city: "Luxor", country: "Egypt", code: "LXR"},
{airport: "Mersa Matruh", city: "Mersa-Matruh", country: "Egypt", code: "MUH"},
{airport: "Port Said", city: "Port Said", country: "Egypt", code: "PSD"},
{airport: "St Catherine International", city: "St. Catherine", country: "Egypt", code: "SKV"},
{airport: "El Salvador International", city: "San Salvador", country: "El Salvador", code: "SAL"},
{airport: "Biggin Hill", city: "Biggin Hill", country: "England", code: "BQH"},
{airport: "Birmingham", city: "Birmingham", country: "England", code: "BHX"},
{airport: "Bournemouth", city: "Bournemouth", country: "England", code: "BOH"},
{airport: "Bristol Filton", city: "Bristol", country: "England", code: "FZO"},
{airport: "Bristol", city: "Bristol", country: "England", code: "BRS"},
{airport: "Cambridge", city: "Cambridge", country: "England", code: "CBG"},
{airport: "Coltishall", city: "Coltishall", country: "England", code: "CLF"},
{airport: "Coventry", city: "Coventry", country: "England", code: "CVT"},
{airport: "St Angelo", city: "Enniskillen", country: "England", code: "ENK"},
{airport: "Exeter", city: "Exeter", country: "England", code: "EXT"},
{airport: "Gloucestershire", city: "Glouchestershire", country: "England", code: "GLO"},
{airport: "Hatfield", city: "Hatfield", country: "England", code: "HTF"},
{airport: "Honington", city: "Honington", country: "England", code: "BEQ"},
{airport: "Isle Of Man", city: "Isle Of Man", country: "England", code: "IOM"},
{airport: "Leeds Bradford", city: "Leeds", country: "England", code: "LBA"},
{airport: "Liverpool", city: "Liverpool", country: "England", code: "LPL"},
{airport: "Stansted", city: "London", country: "England", code: "STN"},
{airport: "Heathrow", city: "London", country: "England", code: "LHR"},
{airport: "Luton", city: "London", country: "England", code: "LTN"},
{airport: "City", city: "London", country: "England", code: "LCY"},
{airport: "Gatwick", city: "London", country: "England", code: "LGW"},
{airport: "Manchester", city: "Manchester", country: "England", code: "MAN"},
{airport: "Manston", city: "Manston", country: "England", code: "MSE"},
{airport: "Mildenhall", city: "Mildenhall", country: "England", code: "MHZ"},
{airport: "Newcastle", city: "Newcastle", country: "England", code: "NCS"},
{airport: "St Mawgan", city: "Newquay", country: "England", code: "NQY"},
{airport: "Norwich", city: "Norwich", country: "England", code: "NWI"},
{airport: "Kidlington", city: "Oxford", country: "England", code: "OXF"},
{airport: "Plymouth", city: "Plymouth", country: "England", code: "PLH"},
{airport: "Southampton", city: "Southampton", country: "England", code: "SOU"},
{airport: "Southend", city: "Southend", country: "England", code: "SEN"},
{airport: "Swansea", city: "Swansea", country: "England", code: "SWS"},
{airport: "Bata", city: "Bata", country: "Equatorial Guinea", code: "BSG"},
{airport: "Malabo", city: "Malabo", country: "Equatorial Guinea", code: "SSG"},
{airport: "Tallinn", city: "Tallinn-Ulemiste International", country: "Estonia", code: "TLL"},
{airport: "Bole International", city: "Addis Ababa", country: "Ethiopia", code: "ADD"},
{airport: "Bahir Dar", city: "Bahar Dar", country: "Ethiopia", code: "BJR"},
{airport: "Aba Tenna Dejazmatch Yilma International", city: "Dire Dawa", country: "Ethiopia", code: "DIR"},
{airport: "Gambella", city: "Gambella", country: "Ethiopia", code: "GMB"},
{airport: "Gonder", city: "Gondar", country: "Ethiopia", code: "GDQ"},
{airport: "Aba Segud", city: "Jimma", country: "Ethiopia", code: "JIM"},
{airport: "Lalibella", city: "Lalibella", country: "Ethiopia", code: "LLI"},
{airport: "Mekele", city: "Makale", country: "Ethiopia", code: "MQX"},
{airport: "Mount Pleasant", city: "Mount Pleasant", country: "Falkland Islands", code: "MPN"},
{airport: "Vagar", city: "Vagar", country: "Faroe Isl.", code: "FAE"},
{airport: "Labasa", city: "Lambasa", country: "Fiji", code: "LMG"},
{airport: "Nadi International", city: "Nandi", country: "Fiji", code: "NAN"},
{airport: "Nausori International", city: "Nausori", country: "Fiji", code: "SUV"},
{airport: "Enontekio", city: "Enontekio", country: "Finland", code: "ENF"},
{airport: "Halli", city: "Halli", country: "Finland", code: "KEV"},
{airport: "Helsinki Malmi", city: "Helsinki", country: "Finland", code: "HEM"},
{airport: "Helsinki Vantaa", city: "Helsinki", country: "Finland", code: "HEL"},
{airport: "Ivalo", city: "Ivalo", country: "Finland", code: "IVL"},
{airport: "Joensuu", city: "Joensuu", country: "Finland", code: "JOE"},
{airport: "Jyvaskyla", city: "Jyvaskyla", country: "Finland", code: "JYV"},
{airport: "Kajaani", city: "Kajaani", country: "Finland", code: "KAJ"},
{airport: "Kauhava", city: "Kauhava", country: "Finland", code: "KAU"},
{airport: "Kemi Tornio", city: "Kemi", country: "Finland", code: "KEM"},
{airport: "Kittila", city: "Kittila", country: "Finland", code: "KTT"},
{airport: "Kruunupyy", city: "Kruunupyy", country: "Finland", code: "KOK"},
{airport: "Kuopio", city: "Kuopio", country: "Finland", code: "KUO"},
{airport: "Kuusamo", city: "Kuusamo", country: "Finland", code: "KAO"},
{airport: "Lappeenranta", city: "Lappeenranta", country: "Finland", code: "LPP"},
{airport: "Mariehamn", city: "Mariehamn", country: "Finland", code: "MHQ"},
{airport: "Mikkeli", city: "Mikkeli", country: "Finland", code: "MIK"},
{airport: "Oulu", city: "Oulu", country: "Finland", code: "OUL"},
{airport: "Pori", city: "Pori", country: "Finland", code: "POR"},
{airport: "Rovaniemi", city: "Rovaniemi", country: "Finland", code: "RVN"},
{airport: "Savonlinna", city: "Savonlinna", country: "Finland", code: "SVL"},
{airport: "Sodankyla", city: "Sodankyla", country: "Finland", code: "SOT"},
{airport: "Tampere Pirkkala", city: "Tampere", country: "Finland", code: "TMP"},
{airport: "Turku", city: "Turku", country: "Finland", code: "TKU"},
{airport: "Utti", city: "Utti", country: "Finland", code: "QVY"},
{airport: "Vaasa", city: "Vaasa", country: "Finland", code: "VAA"},
{airport: "Varkaus", city: "Varkaus", country: "Finland", code: "VRK"},
{airport: "Ohrid", city: "Ohrid", country: "Former Macedonia", code: "OHD"},
{airport: "Skopje", city: "Skopje", country: "Former Macedonia", code: "SKP"},
{airport: "La Garenne", city: "Agen", country: "France", code: "AGF"},
{airport: "Aix Les Milles", city: "Aix-Les-Milles", country: "France", code: "QXB"},
{airport: "Le Sequestre", city: "Albi", country: "France", code: "LBI"},
{airport: "Brie Champniers", city: "Angouleme", country: "France", code: "ANG"},
{airport: "Meythet", city: "Annecy", country: "France", code: "NCY"},
{airport: "Annemasse", city: "Annemasse", country: "France", code: "QNJ"},
{airport: "Vals Lanas", city: "Aubenas-Vals-Lanas", country: "France", code: "OBS"},
{airport: "Aurillac", city: "Aurillac", country: "France", code: "AUR"},
{airport: "Branches", city: "Auxerre", country: "France", code: "AUF"},
{airport: "Caumont", city: "Avignon", country: "France", code: "AVN"},
{airport: "Tille", city: "Beauvais", country: "France", code: "BVA"},
{airport: "Roumaniere", city: "Bergerac", country: "France", code: "EGC"},
{airport: "Vias", city: "Beziers", country: "France", code: "BZR"},
{airport: "Merignac", city: "Bordeaux", country: "France", code: "BOD"},
{airport: "Ceyzeriat", city: "Bourg", country: "France", code: "XBK"},
{airport: "Bourges", city: "Bourges", country: "France", code: "BOU"},
{airport: "Guipavas", city: "Brest", country: "France", code: "BES"},
{airport: "La Roche", city: "Brive", country: "France", code: "MEE"},
{airport: "Carpiquet", city: "Caen", country: "France", code: "CFR"},
{airport: "Calais Dunkerque", city: "Calais", country: "France", code: "CQF"},
{airport: "Mandelieu", city: "Cannes", country: "France", code: "CEQ"},
{airport: "Salvaza", city: "Carcassonne", country: "France", code: "CCF"},
{airport: "Mazamet", city: "Castres", country: "France", code: "DCM"},
{airport: "Champforgeuil", city: "Chalon", country: "France", code: "XCD"},
{airport: "Aix Les Bains", city: "Chambery", country: "France", code: "CMF"},
{airport: "Deols", city: "Chateauroux", country: "France", code: "CHR"},
{airport: "Maupertus", city: "Cherbourg", country: "France", code: "CER"},
{airport: "Auvergne", city: "Clermont Ferrand", country: "France", code: "CFE"},
{airport: "Chateaubernard", city: "Cognac", country: "France", code: "CNG"},
{airport: "Houssen", city: "Colmar", country: "France", code: "CMR"},
{airport: "Creil", city: "Creil", country: "France", code: "CSF"},
{airport: "St Gatien", city: "Deauville", country: "France", code: "DOL"},
{airport: "Longvic", city: "Dijon", country: "France", code: "DIJ"},
{airport: "Tavaux", city: "Dole", country: "France", code: "DLE"},
{airport: "Mirecourt", city: "Epinal", country: "France", code: "EPL"},
{airport: "Saint Geoirs", city: "Grenoble", country: "France", code: "GNB"},
{airport: "Hyeres", city: "Hyeres", country: "France", code: "TLN"},
{airport: "Lherm", city: "La Rochelle", country: "France", code: "LRH"},
{airport: "Le Castellet", city: "Le Castellet", country: "France", code: "CTT"},
{airport: "Octeville", city: "Le Havre", country: "France", code: "LEH"},
{airport: "Arnage", city: "Le Mans", country: "France", code: "LME"},
{airport: "Loudes", city: "Le Puy", country: "France", code: "LPY"},
{airport: "Le Touquet Paris Plage", city: "Le Tourquet", country: "France", code: "LTQ"},
{airport: "Lesquin", city: "Lille", country: "France", code: "LIL"},
{airport: "Bellegarde", city: "Limoges", country: "France", code: "LIG"},
{airport: "Saint Exupery", city: "Lyon", country: "France", code: "LYS"},
{airport: "Bron", city: "Lyon", country: "France", code: "LYN"},
{airport: "Charnay", city: "Macon", country: "France", code: "QNX"},
{airport: "Provence", city: "Marseille", country: "France", code: "MRS"},
{airport: "Brenoux", city: "Mende", country: "France", code: "MEN"},
{airport: "Metz Nancy Lorraine", city: "Metz", country: "France", code: "ETZ"},
{airport: "Frescaty", city: "Metz", country: "France", code: "MZM"},
{airport: "Domerat", city: "Montlucon", country: "France", code: "MCU"},
{airport: "Montlucon Gueret", city: "Montlucon-Gueret", country: "France", code: "MCU"},
{airport: "Mediterranee", city: "Montpellier", country: "France", code: "MPL"},
{airport: "Montbeugny", city: "Moulins", country: "France", code: "XMU"},
{airport: "Bale Mulhouse", city: "Mulhouse", country: "France", code: "MLH"},
{airport: "Essey", city: "Nancy", country: "France", code: "ENC"},
{airport: "Fourchambault", city: "Nevers", country: "France", code: "NVS"},
{airport: "Cote D Azur", city: "Nice", country: "France", code: "NCE"},
{airport: "Garons", city: "Nimes", country: "France", code: "FNI"},
{airport: "Bricy", city: "Orleans", country: "France", code: "ORE"},
{airport: "Charles De Gaulle", city: "Paris", country: "France", code: "CDG"},
{airport: "Le Bourget", city: "Paris", country: "France", code: "LBG"},
{airport: "Orly", city: "Paris", country: "France", code: "ORY"},
{airport: "Bassillac", city: "Perigueux", country: "France", code: "PGX"},
{airport: "Rivesaltes", city: "Perpignan", country: "France", code: "PGF"},
{airport: "Biard", city: "Poitiers", country: "France", code: "PIS"},
{airport: "Cormeilles En Vexin", city: "Pontoise", country: "France", code: "POX"},
{airport: "Champagne", city: "Reims", country: "France", code: "RHE"},
{airport: "Renaison", city: "Roanne", country: "France", code: "RNE"},
{airport: "St Agnant", city: "Rochefort", country: "France", code: "RCO"},
{airport: "Marcillac", city: "Rodez", country: "France", code: "RDZ"},
{airport: "Vallee De Seine", city: "Rouen", country: "France", code: "URO"},
{airport: "Boutheon", city: "St.-Etienne", country: "France", code: "EBU"},
{airport: "Entzheim", city: "Strassbourg", country: "France", code: "SXB"},
{airport: "Blagnac", city: "Toulouse", country: "France", code: "TLS"},
{airport: "Val De Loire", city: "Tours", country: "France", code: "TUF"},
{airport: "Toussus Le Noble", city: "Toussous-Le-Noble", country: "France", code: "TNF"},
{airport: "Barberey", city: "Troyes", country: "France", code: "QYR"},
{airport: "Chabeuil", city: "Valence", country: "France", code: "VAF"},
{airport: "Charmeil", city: "Vichy", country: "France", code: "VHY"},
{airport: "Tarare", city: "Vilefrance", country: "France", code: "XVF"},
{airport: "Rochambeau", city: "Cayenne", country: "French Guyana", code: "CAY"},
{airport: "Anaa", city: "Anaa", country: "French Polynesia", code: "AAA"},
{airport: "Bora Bora", city: "Bora Bora", country: "French Polynesia", code: "BOB"},
{airport: "Fakarava", city: "Fakarava", country: "French Polynesia", code: "FAV"},
{airport: "Huahine", city: "Huahine Island", country: "French Polynesia", code: "HUH"},
{airport: "Makemo", city: "Makemo", country: "French Polynesia", code: "MKP"},
{airport: "Manihi", city: "Manihi", country: "French Polynesia", code: "XMH"},
{airport: "Mataiva", city: "Mataiva", country: "French Polynesia", code: "MVT"},
{airport: "Maupiti", city: "Maupiti", country: "French Polynesia", code: "MAU"},
{airport: "Temae", city: "Moorea", country: "French Polynesia", code: "MOZ"},
{airport: "Napuka", city: "Napuka Island", country: "French Polynesia", code: "NAU"},
{airport: "Nuku Hiva", city: "Nuku Hiva", country: "French Polynesia", code: "NHV"},
{airport: "Puka Puka", city: "Puka Puka", country: "French Polynesia", code: "PKP"},
{airport: "Uturoa", city: "Raiatea Island", country: "French Polynesia", code: "RFP"},
{airport: "Rangiroa", city: "Rangiroa", country: "French Polynesia", code: "RGI"},
{airport: "Reao", city: "Reao", country: "French Polynesia", code: "REA"},
{airport: "Rurutu", city: "Rurutu", country: "French Polynesia", code: "RUR"},
{airport: "Takapoto", city: "Takapoto", country: "French Polynesia", code: "TKP"},
{airport: "Takaroa", city: "Takaroa", country: "French Polynesia", code: "TKX"},
{airport: "Tikehau", city: "Tikehau", country: "French Polynesia", code: "TIH"},
{airport: "Totegegie", city: "Totegegie", country: "French Polynesia", code: "GMR"},
{airport: "Tubuai", city: "Tubuai", country: "French Polynesia", code: "TUB"},
{airport: "Bitam", city: "Bitam", country: "Gabon", code: "BMM"},
{airport: "Franceville Mvengue", city: "Franceville", country: "Gabon", code: "MVB"},
{airport: "Lambarene", city: "Lambarene", country: "Gabon", code: "LBQ"},
{airport: "Lastourville", city: "Lastourville", country: "Gabon", code: "LTL"},
{airport: "Libreville Leon M Ba", city: "Libreville", country: "Gabon", code: "LBV"},
{airport: "Makokou", city: "Makokou", country: "Gabon", code: "MKU"},
{airport: "Mitzic", city: "Mitzic", country: "Gabon", code: "MZC"},
{airport: "Moanda", city: "Moanda", country: "Gabon", code: "MFF"},
{airport: "Okondja", city: "Okondja", country: "Gabon", code: "OKN"},
{airport: "Omboue Hopital", city: "Omboue Hospial", country: "Gabon", code: "OMB"},
{airport: "Oyem", city: "Oyem", country: "Gabon", code: "OYE"},
{airport: "Port Gentil", city: "Port Gentil", country: "Gabon", code: "POG"},
{airport: "Tchibanga", city: "Tchibanga", country: "Gabon", code: "TCH"},
{airport: "Seymour", city: "Galapagos", country: "Galapagos I. (Ecuador", code: "GPS"},
{airport: "Banjul International", city: "Banjul", country: "Gambia", code: "BJL"},
{airport: "Sukhumi Dranda", city: "Sukhumi", country: "Georgia", code: "SUI"},
{airport: "Lochini", city: "Tbilisi", country: "Georgia", code: "TBS"},
{airport: "Aachen Merzbruck", city: "Aachen", country: "Germany", code: "AAH"},
{airport: "Altenburg Nobitz", city: "Altenburg", country: "Germany", code: "AOC"},
{airport: "Arnsberg Menden", city: "Arnsberg", country: "Germany", code: "ZCA"},
{airport: "Augsburg", city: "Augsburg", country: "Germany", code: "AGB"},
{airport: "Baden Oos", city: "Baden-Baden", country: "Germany", code: "ZCC"},
{airport: "Bautzen", city: "Bautzen", country: "Germany", code: "BBJ"},
{airport: "Bayreuth", city: "Bayreuth", country: "Germany", code: "BYU"},
{airport: "Tegel", city: "Berlin", country: "Germany", code: "TXL"},
{airport: "Schonefeld", city: "Berlin", country: "Germany", code: "SXF"},
{airport: "Tempelhof", city: "Berlin", country: "Germany", code: "THF"},
{airport: "Borkum", city: "Borkum", country: "Germany", code: "BMK"},
{airport: "Braunschweig", city: "Braunschweig", country: "Germany", code: "BWE"},
{airport: "Bremen", city: "Bremen", country: "Germany", code: "BRE"},
{airport: "Bremerhaven", city: "Bremerhaven", country: "Germany", code: "BRV"},
{airport: "Bruggen", city: "Brueggen", country: "Germany", code: "BGN"},
{airport: "Celle", city: "Celle", country: "Germany", code: "ZCN"},
{airport: "Koln Bonn", city: "Cologne", country: "Germany", code: "CGN"},
{airport: "Donaueschingen Villingen", city: "Donaueschingen", country: "Germany", code: "ZQL"},
{airport: "Dortmund", city: "Dortmund", country: "Germany", code: "DTM"},
{airport: "Dresden", city: "Dresden", country: "Germany", code: "DRS"},
{airport: "Dusseldorf", city: "Duesseldorf", country: "Germany", code: "DUS"},
{airport: "Emden", city: "Emden", country: "Germany", code: "EME"},
{airport: "Erfurt", city: "Erfurt", country: "Germany", code: "ERF"},
{airport: "Essen Mulheim", city: "Essen", country: "Germany", code: "ESS"},
{airport: "Frankfurt Main", city: "Frankfurt", country: "Germany", code: "FRA"},
{airport: "Friedrichshafen", city: "Friedrichshafen", country: "Germany", code: "FDH"},
{airport: "Furstenfeldbruck", city: "Fuerstenfeldbruck", country: "Germany", code: "FEL"},
{airport: "Geilenkirchen", city: "Geilenkirchen", country: "Germany", code: "GKE"},
{airport: "Giebelstadt Aaf", city: "Giebelstadt", country: "Germany", code: "GHF"},
{airport: "Goldsboro Wayne Muni", city: "Gotha Ost", country: "Germany", code: "GWW"},
{airport: "Gutersloh", city: "Guetersloh", country: "Germany", code: "GUT"},
{airport: "Frankfurt Hahn", city: "Hahn", country: "Germany", code: "HHN"},
{airport: "Hamburg", city: "Hamburg", country: "Germany", code: "HAM"},
{airport: "Hamburg Finkenwerder", city: "Hamburg", country: "Germany", code: "XFW"},
{airport: "Hanau Aaf", city: "Hanau", country: "Germany", code: "ZNF"},
{airport: "Hannover", city: "Hannover", country: "Germany", code: "HAJ"},
{airport: "Heidelberg Aaf", city: "Heidelberg", country: "Germany", code: "QHD"},
{airport: "Hof Plauen", city: "Hof", country: "Germany", code: "HOQ"},
{airport: "Kassel Calden", city: "Kassel", country: "Germany", code: "KSF"},
{airport: "Kiel Holtenau", city: "Kiel", country: "Germany", code: "KEL"},
{airport: "Koblenz Winningen", city: "Koblenz", country: "Germany", code: "ZNV"},
{airport: "Laage", city: "Laage", country: "Germany", code: "RLG"},
{airport: "Laarbruch", city: "Laarbruch", country: "Germany", code: "LRC"},
{airport: "Leipzig Halle", city: "Leipzig", country: "Germany", code: "LEJ"},
{airport: "Lemwerder", city: "Lemwerder", country: "Germany", code: "LEM"},
{airport: "Lubeck Blankensee", city: "Luebeck", country: "Germany", code: "LBC"},
{airport: "Mannheim City", city: "Mannheim", country: "Germany", code: "MHG"},
{airport: "Monchengladbach", city: "Moenchengladbach", country: "Germany", code: "MGL"},
{airport: "Munster Osnabruck", city: "Muenster/Osnabrueck", country: "Germany", code: "FMO"},
{airport: "Munich", city: "Munich", country: "Germany", code: "MUC"},
{airport: "Norderney", city: "Norderney", country: "Germany", code: "NRD"},
{airport: "Nurnberg", city: "Nuernberg", country: "Germany", code: "NUE"},
{airport: "Oberpfaffenhofen", city: "Oberpfaffenhofen", country: "Germany", code: "OBF"},
{airport: "Paderborn Lippstadt", city: "Paderborn", country: "Germany", code: "PAD"},
{airport: "Schwerin Parchim", city: "Parchim", country: "Germany", code: "SZW"},
{airport: "Ramstein Ab", city: "Ramstein", country: "Germany", code: "RMS"},
{airport: "Saarbrucken", city: "Saarbruecken", country: "Germany", code: "SCN"},
{airport: "Spangdahlem Ab", city: "Spangdahlem", country: "Germany", code: "SPM"},
{airport: "Speyer", city: "Speyer", country: "Germany", code: "ZQC"},
{airport: "Stuttgart", city: "Stuttgart", country: "Germany", code: "STR"},
{airport: "Trier Fohren", city: "Trier", country: "Germany", code: "ZQF"},
{airport: "Westerland Sylt", city: "Westerland", country: "Germany", code: "GWT"},
{airport: "Wilhelmshaven Mariensiel", city: "Wilhelmshaven", country: "Germany", code: "WVN"},
{airport: "Kotoka International", city: "Accra", country: "Ghana", code: "ACC"},
{airport: "Sunyani", city: "Sunyani", country: "Ghana", code: "NYI"},
{airport: "Takoradi", city: "Takoradi", country: "Ghana", code: "TKD"},
{airport: "Tamale", city: "Tamale", country: "Ghana", code: "TML"},
{airport: "Gibraltar", city: "Gibraltar", country: "Gibraltar", code: "GIB"},
{airport: "Agrinion", city: "Agrinion", country: "Greece", code: "AGQ"},
{airport: "Dimokritos", city: "Alexandroupolis", country: "Greece", code: "AXD"},
{airport: "Andravida", city: "Andravida", country: "Greece", code: "PYR"},
{airport: "Athinai", city: "Athens", country: "Greece", code: "HEW"},
{airport: "Souda", city: "Chania", country: "Greece", code: "CHQ"},
{airport: "Chios", city: "Chios", country: "Greece", code: "JKH"},
{airport: "Nikos Kazantzakis", city: "Heraklion", country: "Greece", code: "HER"},
{airport: "Ioannina", city: "Ioannina", country: "Greece", code: "IOA"},
{airport: "Kalamata", city: "Kalamata", country: "Greece", code: "KLX"},
{airport: "Karpathos", city: "Karpathos", country: "Greece", code: "AOK"},
{airport: "Kasos", city: "Kasos", country: "Greece", code: "KSJ"},
{airport: "Aristotelis", city: "Kastoria", country: "Greece", code: "KSO"},
{airport: "Megas Alexandros International", city: "Kavala", country: "Greece", code: "KVA"},
{airport: "Kefallinia", city: "Keffallinia", country: "Greece", code: "EFL"},
{airport: "Ioannis Kapodistrias International", city: "Kerkyra/Corfu", country: "Greece", code: "CFU"},
{airport: "Kithira", city: "Kithira", country: "Greece", code: "KIT"},
{airport: "Kos", city: "Kos", country: "Greece", code: "KGS"},
{airport: "Filippos", city: "Kozani", country: "Greece", code: "KZI"},
{airport: "Larisa", city: "Larissa", country: "Greece", code: "LRA"},
{airport: "Leros", city: "Leros", country: "Greece", code: "LRS"},
{airport: "Limnos", city: "Limnos", country: "Greece", code: "LXS"},
{airport: "Mikonos", city: "Mykonos", country: "Greece", code: "JMK"},
{airport: "Mitilini", city: "Mytilini", country: "Greece", code: "MJT"},
{airport: "Nea Anchialos", city: "Nea Anghialos", country: "Greece", code: "VOL"},
{airport: "Araxos", city: "Patras", country: "Greece", code: "GPA"},
{airport: "Aktio", city: "Preveza", country: "Greece", code: "PVK"},
{airport: "Diagoras", city: "Rhodos", country: "Greece", code: "RHO"},
{airport: "Samos", city: "Samos", country: "Greece", code: "SMI"},
{airport: "Santorini", city: "Santorini", country: "Greece", code: "JTR"},
{airport: "Sitia", city: "Sitia", country: "Greece", code: "JSH"},
{airport: "Skiathos", city: "Skiathos", country: "Greece", code: "JSI"},
{airport: "Skyros", city: "Skiros", country: "Greece", code: "SKU"},
{airport: "Makedonia", city: "Thessaloniki", country: "Greece", code: "SKG"},
{airport: "Zakinthos Dionysios Solomos", city: "Zakynthos", country: "Greece", code: "ZTH"},
{airport: "Nuuk", city: "Godthaab", country: "Greenland", code: "GOH"},
{airport: "Jacobshavn", city: "Jakobshavn", country: "Greenland", code: ""},
{airport: "Kulusuk", city: "Kulusuk", country: "Greenland", code: "KUS"},
{airport: "Narsarsuaq", city: "Narssarssuaq", country: "Greenland", code: "UAK"},
{airport: "Kangerlussuaq Sondre Stromfjord", city: "Sondrestrom", country: "Greenland", code: "SFJ"},
{airport: "Thule Air Base", city: "Thule", country: "Greenland", code: "THU"},
{airport: "Point Salines International", city: "Point Salines", country: "Grenada", code: "GND"},
{airport: "Guam International", city: "Agana", country: "Guam", code: "GUM"},
{airport: "Coban", city: "Coban", country: "Guatemala", code: "CBV"},
{airport: "La Aurora", city: "Guatemala City", country: "Guatemala", code: "GUA"},
{airport: "Guernsey", city: "Guernsey", country: "Guernsey Isld.", code: "GCI"},
{airport: "Faranah", city: "Faranah", country: "Guinea", code: "FAA"},
{airport: "Fria", city: "Fira", country: "Guinea", code: "FIG"},
{airport: "Labe", city: "Labe", country: "Guinea", code: "LEK"},
{airport: "Macenta", city: "Macenta", country: "Guinea", code: "MCA"},
{airport: "Nzerekore", city: "N'Zerekore", country: "Guinea", code: "NZE"},
{airport: "Bissau Oswaldo Vieira International", city: "Bissau", country: "Guinea Bissau", code: "BXO"},
{airport: "Kamarang", city: "Kamarang", country: "Guyana", code: "KAR"},
{airport: "Lethem", city: "Lethem", country: "Guyana", code: "LTM"},
{airport: "Cap Haitien", city: "Cap Haitien", country: "Haiti", code: "CAP"},
{airport: "Port Au Prince International", city: "Port-Au-Prince", country: "Haiti", code: "PAP"},
{airport: "Guanaja", city: "Guanaja", country: "Honduras", code: "GJA"},
{airport: "Goloson International", city: "La Ceiba", country: "Honduras", code: "LCE"},
{airport: "Puerto Lempira", city: "Puerto Lempira", country: "Honduras", code: "PEU"},
{airport: "Roatan", city: "Roatan", country: "Honduras", code: "RTB"},
{airport: "La Mesa International", city: "San Pedro Sula", country: "Honduras", code: "SAP"},
{airport: "Toncontin International", city: "Tegucigalpa", country: "Honduras", code: "TGU"},
{airport: "Tela", city: "Tela", country: "Honduras", code: "TEA"},
{airport: "Hong Kong International", city: "Hong Kong", country: "Hong Kong", code: "HKG"},
{airport: "Ferihegy", city: "Budapest", country: "Hungary", code: "BUD"},
{airport: "Debrecen", city: "Debrecen", country: "Hungary", code: "DEB"},
{airport: "Akureyri", city: "Akureyri", country: "Iceland", code: "AEY"},
{airport: "Egilsstadir", city: "Egilsstadir", country: "Iceland", code: "EGS"},
{airport: "Hornafjordur", city: "Hofn", country: "Iceland", code: "HFN"},
{airport: "Husavik", city: "Husavik", country: "Iceland", code: "HZK"},
{airport: "Isafjordur", city: "Isafjordur", country: "Iceland", code: "IFJ"},
{airport: "Keflavik Nas", city: "Keflavik", country: "Iceland", code: "KEF"},
{airport: "Kopasker", city: "Kopasker", country: "Iceland", code: "OPA"},
{airport: "Patreksfjordur", city: "Patreksfjordur", country: "Iceland", code: "PFJ"},
{airport: "Reykjavik", city: "Reykjavik", country: "Iceland", code: "RKV"},
{airport: "Siglufjordhur", city: "Siglufjordur", country: "Iceland", code: "SIJ"},
{airport: "Vestmannaeyjar", city: "Vestmannaeyjar", country: "Iceland", code: "VEY"},
{airport: "Agartala", city: "Agartala", country: "India", code: "IXA"},
{airport: "Agatti", city: "Agatti Island", country: "India", code: "AGX"},
{airport: "Agra", city: "Agra", country: "India", code: "AGR"},
{airport: "Ahmedabad", city: "Ahmedabad", country: "India", code: "AMD"},
{airport: "Aizawl", city: "Aizwal", country: "India", code: "AJL"},
{airport: "Akola", city: "Akola", country: "India", code: "AKD"},
{airport: "Allahabad", city: "Allahabad", country: "India", code: "IXD"},
{airport: "Amritsar", city: "Amritsar", country: "India", code: "ATQ"},
{airport: "Aurangabad", city: "Aurangabad", country: "India", code: "IXU"},
{airport: "Bagdogra", city: "Baghdogra", country: "India", code: "IXB"},
{airport: "Balurghat", city: "Balurghat", country: "India", code: "RGH"},
{airport: "Bangalore", city: "Bangalore", country: "India", code: "BLR"},
{airport: "Vadodara", city: "Baroda", country: "India", code: "BDQ"},
{airport: "Belgaum", city: "Belgaum", country: "India", code: "IXG"},
{airport: "Bhavnagar", city: "Bhaunagar", country: "India", code: "BHU"},
{airport: "Bhopal", city: "Bhopal", country: "India", code: "BHO"},
{airport: "Bhubaneshwar", city: "Bhubaneswar", country: "India", code: "BBI"},
{airport: "Bhuj", city: "Bhuj", country: "India", code: "BHJ"},
{airport: "Bilaspur", city: "Bilaspur", country: "India", code: "PAB"},
{airport: "Chhatrapati Shivaji International", city: "Bombay", country: "India", code: "BOM"},
{airport: "Netaji Subhash Chandra Bose International", city: "Calcutta", country: "India", code: "CCU"},
{airport: "Calicut", city: "Calicut", country: "India", code: "CCJ"},
{airport: "Chandigarh", city: "Chandigarh", country: "India", code: "IXC"},
{airport: "Coimbatore", city: "Coimbatore", country: "India", code: "CJB"},
{airport: "Cooch Behar", city: "Cooch-Behar", country: "India", code: "COH"},
{airport: "Cuddapah", city: "Cuddapah", country: "India", code: "CDP"},
{airport: "Daman", city: "Daman", country: "India", code: "NMB"},
{airport: "Dehradun", city: "Dehra Dun", country: "India", code: "DED"},
{airport: "Indira Gandhi International", city: "Delhi", country: "India", code: "DEL"},
{airport: "Dhanbad", city: "Dhanbad", country: "India", code: "DBO"},
{airport: "Gaya", city: "Gaya", country: "India", code: "GAY"},
{airport: "Goa", city: "Goa", country: "India", code: "GOI"},
{airport: "Gorakhpur", city: "Gorakhpur", country: "India", code: "YOP"},
{airport: "Gwalior", city: "Gwalior", country: "India", code: "GWL"},
{airport: "Hyderabad", city: "Hyderabad", country: "India", code: "HYD"},
{airport: "Imphal", city: "Imphal", country: "India", code: "IMF"},
{airport: "Devi Ahilyabai Holkar", city: "Indore", country: "India", code: "IDR"},
{airport: "Jabalpur", city: "Jabalpur", country: "India", code: "JLR"},
{airport: "Jaipur", city: "Jaipur", country: "India", code: "JAI"},
{airport: "Jaisalmer", city: "Jaisalmer", country: "India", code: "JSA"},
{airport: "Jammu", city: "Jammu", country: "India", code: "IXJ"},
{airport: "Jamnagar", city: "Jamnagar", country: "India", code: "JGA"},
{airport: "Jamshedpur", city: "Jamshedpur", country: "India", code: "IXW"},
{airport: "Jodhpur", city: "Jodhpur", country: "India", code: "JOH"},
{airport: "Jorhat", city: "Jorhat", country: "India", code: "JRH"},
{airport: "Kailashahar", city: "Kailashahar", country: "India", code: "IXH"},
{airport: "Kandla", city: "Kandla", country: "India", code: "IXY"},
{airport: "Kanpur", city: "Kanpur", country: "India", code: "KNU"},
{airport: "Keshod", city: "Keshod", country: "India", code: "IXK"},
{airport: "Khajuraho", city: "Khajuraho", country: "India", code: "HJR"},
{airport: "Kolhapur", city: "Kolhapur", country: "India", code: "KLH"},
{airport: "Kota", city: "Kota", country: "India", code: "KTU"},
{airport: "Kullu Manali", city: "Kulu", country: "India", code: "KUU"},
{airport: "Leh", city: "Leh", country: "India", code: "IXL"},
{airport: "Lilabari", city: "Lilabari", country: "India", code: "IXI"},
{airport: "Lucknow", city: "Lucknow", country: "India", code: "LKO"},
{airport: "Ludhiana", city: "Ludhiaha", country: "India", code: "LUH"},
{airport: "Chennai International", city: "Madras", country: "India", code: "MAA"},
{airport: "Madurai", city: "Madurai", country: "India", code: "IXM"},
{airport: "Mangalore", city: "Mangalore", country: "India", code: "IXE"},
{airport: "Dibrugarh", city: "Mohanbari", country: "India", code: "MOH"},
{airport: "Nagpur", city: "Nagpur", country: "India", code: "NAG"},
{airport: "Pantnagar", city: "Nainital", country: "India", code: "PGH"},
{airport: "Nasik Road", city: "Nasik Road", country: "India", code: "ISK"},
{airport: "Pasighat", city: "Pasighat", country: "India", code: "IXT"},
{airport: "Pathankot", city: "Pathankot", country: "India", code: "IXP"},
{airport: "Patna", city: "Patina", country: "India", code: "PAT"},
{airport: "Porbandar", city: "Porbandar", country: "India", code: "PBD"},
{airport: "Port Blair", city: "Port Blair", country: "India", code: "IXZ"},
{airport: "Pune", city: "Pune", country: "India", code: "PNQ"},
{airport: "Raipur", city: "Raipur", country: "India", code: "RPR"},
{airport: "Rajahmundry", city: "Rajahmundry", country: "India", code: "RJA"},
{airport: "Rajkot", city: "Rajkot", country: "India", code: "RAJ"},
{airport: "Birsa Munda", city: "Ranchi", country: "India", code: "IXR"},
{airport: "Rourkela", city: "Rourkela", country: "India", code: "RRK"},
{airport: "Sholapur", city: "Sholapur", country: "India", code: "SSE"},
{airport: "Silchar", city: "Silchar", country: "India", code: "IXS"},
{airport: "Srinagar", city: "Srinagar", country: "India", code: "SXR"},
{airport: "Surat", city: "Surat", country: "India", code: "STV"},
{airport: "Tiruchirappalli", city: "Tiruchchirappalli", country: "India", code: "TRZ"},
{airport: "Tirupati", city: "Tirupeti", country: "India", code: "TIR"},
{airport: "Thiruvananthapuram International", city: "Trivandrum", country: "India", code: "TRV"},
{airport: "Udaipur", city: "Udaipur", country: "India", code: "UDR"},
{airport: "Varanasi", city: "Varanasi", country: "India", code: "VNS"},
{airport: "Vijayawada", city: "Vijayawada", country: "India", code: "VGA"},
{airport: "Vishakhapatnam", city: "Vishakhapatnam", country: "India", code: "VTZ"},
{airport: "Pattimura", city: "Ambon", country: "Indonesia", code: "AMQ"},
{airport: "Sepinggan", city: "Balikpapan", country: "Indonesia", code: "BPN"},
{airport: "Sultan Iskandarmuda", city: "Banda Aceh", country: "Indonesia", code: "BTJ"},
{airport: "Husein Sastranegara", city: "Bandung", country: "Indonesia", code: "BDO"},
{airport: "Syamsudin Noor", city: "Banjarmasin", country: "Indonesia", code: "BDJ"},
{airport: "Hang Nadim", city: "Batam", country: "Indonesia", code: "BTH"},
{airport: "Padang Kemiling", city: "Bengkulu", country: "Indonesia", code: "BKS"},
{airport: "Frans Kaisiepo", city: "Biak", country: "Indonesia", code: "BIK"},
{airport: "Muhammad Salahuddin", city: "Bima", country: "Indonesia", code: "BMU"},
{airport: "Tunggul Wulung", city: "Cilacap", country: "Indonesia", code: "CXP"},
{airport: "Penggung", city: "Cirebon", country: "Indonesia", code: "CBN"},
{airport: "Bali International", city: "Denpasar", country: "Indonesia", code: "DPS"},
{airport: "Pinang Kampai", city: "Dumai", country: "Indonesia", code: "DUM"},
{airport: "H Hasan Aroeboesman", city: "Ende", country: "Indonesia", code: "ENE"},
{airport: "Jalaluddin", city: "Gorontalo", country: "Indonesia", code: "GTO"},
{airport: "Binaka", city: "Gunung Sitoli", country: "Indonesia", code: "GNS"},
{airport: "Halim Perdanakusuma International", city: "Jakarta", country: "Indonesia", code: "HLP"},
{airport: "Soekarno Hatta International", city: "Jakarta", country: "Indonesia", code: "CGK"},
{airport: "Pondok Cabe", city: "Jakarta", country: "Indonesia", code: "PCB"},
{airport: "Sultan Thaha", city: "Jambi", country: "Indonesia", code: "DJB"},
{airport: "Sentani", city: "Jayapura", country: "Indonesia", code: "DJJ"},
{airport: "Kaimana", city: "Kaimana", country: "Indonesia", code: "KNG"},
{airport: "Wolter Monginsidi", city: "Kendari", country: "Indonesia", code: "KDI"},
{airport: "Rahadi Usman", city: "Ketapang", country: "Indonesia", code: "KTG"},
{airport: "El Tari", city: "Kupang", country: "Indonesia", code: "KOE"},
{airport: "Mutiara Ii", city: "Labuhan Bajo", country: "Indonesia", code: "LBJ"},
{airport: "Bubung", city: "Luwuk", country: "Indonesia", code: "LUW"},
{airport: "Abdul Rachman Saleh", city: "Malang", country: "Indonesia", code: "MLG"},
{airport: "Sam Ratulangi", city: "Manado", country: "Indonesia", code: "MDC"},
{airport: "Rendani", city: "Manokwari", country: "Indonesia", code: "MKW"},
{airport: "Selaparang", city: "Mataram", country: "Indonesia", code: "AMI"},
{airport: "Wai Oti", city: "Maumere", country: "Indonesia", code: "MOF"},
{airport: "Polonia", city: "Medan", country: "Indonesia", code: "MES"},
{airport: "Mopah", city: "Merauke", country: "Indonesia", code: "MKQ"},
{airport: "Nabire", city: "Nabire", country: "Indonesia", code: "NBX"},
{airport: "Tabing", city: "Padang", country: "Indonesia", code: "PDG"},
{airport: "Tjilik Riwut", city: "Palangkaraya", country: "Indonesia", code: "PKY"},
{airport: "Sultan Mahmud Badaruddin Ii", city: "Palembang", country: "Indonesia", code: "PLM"},
{airport: "Mutiara", city: "Palu", country: "Indonesia", code: "PLW"},
{airport: "Depati Amir", city: "Pangkal Pinang", country: "Indonesia", code: "PGK"},
{airport: "Iskandar", city: "Pangkalan Bun", country: "Indonesia", code: "PKN"},
{airport: "Sultan Syarif Kasim Ii", city: "Pekanbaru", country: "Indonesia", code: "PKU"},
{airport: "Supadio", city: "Pontianak", country: "Indonesia", code: "PNK"},
{airport: "Kasiguncu", city: "Poso", country: "Indonesia", code: "PSJ"},
{airport: "Japura", city: "Rengat", country: "Indonesia", code: "RGT"},
{airport: "Satar Tacik", city: "Ruteng", country: "Indonesia", code: "RTG"},
{airport: "Maimun Saleh", city: "Sabang", country: "Indonesia", code: "SBG"},
{airport: "Temindung", city: "Samarinda", country: "Indonesia", code: "SRI"},
{airport: "Achmad Yani", city: "Semarang", country: "Indonesia", code: "SRG"},
{airport: "Dabo", city: "Singkep", country: "Indonesia", code: "SIQ"},
{airport: "Susilo", city: "Sintang", country: "Indonesia", code: "SQC"},
{airport: "Adi Sumarmo Wiryokusumo", city: "Solo City", country: "Indonesia", code: "SOC"},
{airport: "Jefman", city: "Sorong", country: "Indonesia", code: "SOQ"},
{airport: "Sumbawa Besar", city: "Sumbawa", country: "Indonesia", code: "SWG"},
{airport: "Juanda", city: "Surabaya", country: "Indonesia", code: "SUB"},
{airport: "H As Hanandjoeddin", city: "Tanjung Pandan", country: "Indonesia", code: "TJQ"},
{airport: "Kijang", city: "Tanjung Pinang", country: "Indonesia", code: "TNJ"},
{airport: "Juwata", city: "Taraken", country: "Indonesia", code: "TRK"},
{airport: "Babullah", city: "Ternate", country: "Indonesia", code: "TTE"},
{airport: "Moses Kilangin", city: "Timika", country: "Indonesia", code: "TIM"},
{airport: "Hasanuddin", city: "Ujung Pandang", country: "Indonesia", code: "UPG"},
{airport: "Mau Hau", city: "Waingapu", country: "Indonesia", code: "WGP"},
{airport: "Wamena", city: "Wamena", country: "Indonesia", code: "WMX"},
{airport: "Adi Sutjipto", city: "Yogyakarta", country: "Indonesia", code: "JOG"},
{airport: "Abadan", city: "Abadan", country: "Iran", code: "ABD"},
{airport: "Ahwaz", city: "Ahwaz", country: "Iran", code: "AWZ"},
{airport: "Shahid Ashrafi Esfahani", city: "Bakhtaran", country: "Iran", code: "KSH"},
{airport: "Bandar Abbass International", city: "Bandar Abbas", country: "Iran", code: "BND"},
{airport: "Bandar Lengeh", city: "Bandar Lengeh", country: "Iran", code: "BDH"},
{airport: "Mahshahr", city: "Bandar Mahshahr", country: "Iran", code: "MRX"},
{airport: "Birjand", city: "Birjand", country: "Iran", code: "XBJ"},
{airport: "Bushehr", city: "Bushehr", country: "Iran", code: "BUZ"},
{airport: "Chah Bahar", city: "Chah Bahar", country: "Iran", code: "ZBR"},
{airport: "Kerman", city: "Kerman", country: "Iran", code: "KER"},
{airport: "Kish Island", city: "Kish Island", country: "Iran", code: "KIH"},
{airport: "Shahid Asyaee", city: "Masjed Soleiman", country: "Iran", code: "QMJ"},
{airport: "Ramsar", city: "Ramsar", country: "Iran", code: "RZR"},
{airport: "Rasht", city: "Rasht", country: "Iran", code: "RAS"},
{airport: "Sanandaj", city: "Sanandaj", country: "Iran", code: "SDG"},
{airport: "Shiraz Shahid Dastghaib International", city: "Shiraz", country: "Iran", code: "SYZ"},
{airport: "Tabriz International", city: "Tabriz", country: "Iran", code: "TBZ"},
{airport: "Mehrabad International", city: "Teheran", country: "Iran", code: "THR"},
{airport: "Yazd Shahid Sadooghi", city: "Yazd", country: "Iran", code: "AZD"},
{airport: "Zahedan International", city: "Zahedan", country: "Iran", code: "ZAH"},
{airport: "Saddam International", city: "Baghdad", country: "Iraq", code: "SDA"},
{airport: "Basrah International", city: "Basrah", country: "Iraq", code: "BSR"},
{airport: "Connaught", city: "Connaught", country: "Ireland", code: "NOC"},
{airport: "Cork", city: "Cork", country: "Ireland", code: "ORK"},
{airport: "Dublin", city: "Dublin", country: "Ireland", code: "DUB"},
{airport: "Galway", city: "Galway", country: "Ireland", code: "GWY"},
{airport: "Kerry", city: "Kerry", country: "Ireland", code: "KIR"},
{airport: "Shannon", city: "Shannon", country: "Ireland", code: "SNN"},
{airport: "Sligo", city: "Sligo", country: "Ireland", code: "SXL"},
{airport: "Waterford", city: "Waterford", country: "Ireland", code: "WAT"},
{airport: "Teyman", city: "Beer-Sheba", country: "Israel", code: "BEV"},
{airport: "Eilat", city: "Elat", country: "Israel", code: "ETH"},
{airport: "Haifa", city: "Haifa", country: "Israel", code: "HFA"},
{airport: "Jerusalem/Atarot", city: "Jerusalem", country: "Israel", code: "JRS"},
{airport: "Ovda", city: "Ovda", country: "Israel", code: "VDA"},
{airport: "Mahanaim I Ben Yaakov", city: "Rosh Pina", country: "Israel", code: "RPN"},
{airport: "Ben Gurion", city: "Tel-Aviv", country: "Israel", code: "TLV"},
{airport: "Sde Dov", city: "Tel-Aviv", country: "Israel", code: "SDV"},
{airport: "Albenga", city: "Albenga", country: "Italy", code: "ALL"},
{airport: "Alghero", city: "Alghero", country: "Italy", code: "AHO"},
{airport: "Aviano Ab", city: "Aviano", country: "Italy", code: "AVB"},
{airport: "Palese Macchie", city: "Bari", country: "Italy", code: "BRI"},
{airport: "Bergamo Orio Al Serio", city: "Bergamo", country: "Italy", code: "BGY"},
{airport: "Bologna", city: "Bologna", country: "Italy", code: "BLQ"},
{airport: "Bolzano", city: "Bolzano", country: "Italy", code: "BZO"},
{airport: "Casale", city: "Brindisi", country: "Italy", code: "BDS"},
{airport: "Elmas", city: "Cagliari", country: "Italy", code: "CAG"},
{airport: "Catania Fontanarossa", city: "Catania", country: "Italy", code: "CTA"},
{airport: "Crotone", city: "Crotone", country: "Italy", code: "CRV"},
{airport: "Decimomannu", city: "Decimomannu", country: "Italy", code: "DCI"},
{airport: "Peretola", city: "Firenze", country: "Italy", code: "FLR"},
{airport: "Gino Lisa", city: "Foggia", country: "Italy", code: "FOG"},
{airport: "Forli", city: "Forli", country: "Italy", code: "FRL"},
{airport: "Genova Sestri", city: "Genoa", country: "Italy", code: "GOA"},
{airport: "Grosseto", city: "Grosseto", country: "Italy", code: "GRS"},
{airport: "Grottaglie", city: "Grottaglie", country: "Italy", code: "TAR"},
{airport: "Lamezia Terme", city: "Lamezia", country: "Italy", code: "SUF"},
{airport: "Lampedusa", city: "Lampedusa", country: "Italy", code: "LMP"},
{airport: "Latina", city: "Latina", country: "Italy", code: "QLT"},
{airport: "Lecce", city: "Lecce", country: "Italy", code: "LCC"},
{airport: "Levaldigi", city: "Levaldigi", country: "Italy", code: "CUF"},
{airport: "Marina Di Campo", city: "Marina Di Campo", country: "Italy", code: "EBA"},
{airport: "Linate", city: "Milan", country: "Italy", code: "LIN"},
{airport: "Malpensa", city: "Milano", country: "Italy", code: "MXP"},
{airport: "Montichiari", city: "Montichiari", country: "Italy", code: "VBS"},
{airport: "Capodichino", city: "Naples", country: "Italy", code: "NAP"},
{airport: "Olbia Costa Smeralda", city: "Olbia", country: "Italy", code: "OLB"},
{airport: "Padova", city: "Padova", country: "Italy", code: "QPA"},
{airport: "Palermo", city: "Palermo", country: "Italy", code: "PMO"},
{airport: "Boccadifalco", city: "Palermo", country: "Italy", code: "PMO"},
{airport: "Pantelleria", city: "Pantelleria", country: "Italy", code: "PNL"},
{airport: "Parma", city: "Parma", country: "Italy", code: "PMF"},
{airport: "Perugia", city: "Perugia", country: "Italy", code: "PEG"},
{airport: "Pescara", city: "Pescara", country: "Italy", code: "PSR"},
{airport: "Piacenza", city: "Piacenza", country: "Italy", code: "QPZ"},
{airport: "Pisa", city: "Pisa", country: "Italy", code: "PSA"},
{airport: "Reggio Calabria", city: "Reggio Calabria", country: "Italy", code: "REG"},
{airport: "Rimini", city: "Rimini", country: "Italy", code: "RMI"},
{airport: "Fiumicino", city: "Rome", country: "Italy", code: "FCO"},
{airport: "Ciampino", city: "Rome", country: "Italy", code: "CIA"},
{airport: "Ronchi Dei Legionari", city: "Ronchi De Legionari", country: "Italy", code: "TRS"},
{airport: "Ampugnano", city: "Siena", country: "Italy", code: "SAY"},
{airport: "Sigonella", city: "Sigonella", country: "Italy", code: "NSY"},
{airport: "Torino", city: "Torino", country: "Italy", code: "TRN"},
{airport: "Tortoli", city: "Tortoli", country: "Italy", code: "TTB"},
{airport: "Trapani Birgi", city: "Trapani", country: "Italy", code: "TPS"},
{airport: "Treviso", city: "Treviso", country: "Italy", code: "TSF"},
{airport: "Venezia Tessera", city: "Venice", country: "Italy", code: "VCE"},
{airport: "Vicenza", city: "Vicenza", country: "Italy", code: "VIC"},
{airport: "Villafranca", city: "Villafranca", country: "Italy", code: "VRN"},
{airport: "Abidjan Felix Houphouet Boigny International", city: "Abidjan", country: "Ivory Coast", code: "ABJ"},
{airport: "Bouake", city: "Bouake", country: "Ivory Coast", code: "BYK"},
{airport: "Daloa", city: "Daloa", country: "Ivory Coast", code: "DJO"},
{airport: "Korhogo", city: "Korhogo", country: "Ivory Coast", code: "HGO"},
{airport: "Man", city: "Man", country: "Ivory Coast", code: "MJC"},
{airport: "San Pedro", city: "San Pedro", country: "Ivory Coast", code: "SPY"},
{airport: "Yamoussoukro", city: "Yamoussoukro", country: "Ivory Coast", code: "ASK"},
{airport: "Tinson Pen", city: "Kingston", country: "Jamaica", code: "KTP"},
{airport: "Norman Manley International", city: "Kingston", country: "Jamaica", code: "KIN"},
{airport: "Sangster International", city: "Montego Bay", country: "Jamaica", code: "MBJ"},
{airport: "Boscobel", city: "Ocho Rios", country: "Jamaica", code: "OCJ"},
{airport: "Ken Jones", city: "Port Antonio", country: "Jamaica", code: "POT"},
{airport: "Akita", city: "Akita", country: "Japan", code: "AXT"},
{airport: "Amami", city: "Amami", country: "Japan", code: "ASJ"},
{airport: "Aomori", city: "Aomori", country: "Japan", code: "AOJ"},
{airport: "Asahikawa", city: "Asahikawa", country: "Japan", code: "AKJ"},
{airport: "Chitose", city: "Chitose", country: "Japan", code: "SPK"},
{airport: "Fukue", city: "Fukue", country: "Japan", code: "FUJ"},
{airport: "Fukuoka", city: "Fukuoka", country: "Japan", code: "FUK"},
{airport: "Hachijojima", city: "Hachijojima", country: "Japan", code: "HAC"},
{airport: "Hakodate", city: "Hakodate", country: "Japan", code: "HKD"},
{airport: "Hanamaki", city: "Hanamaki", country: "Japan", code: "HNA"},
{airport: "Hiroshima", city: "Hiroshima", country: "Japan", code: "HIJ"},
{airport: "Iki", city: "Iki", country: "Japan", code: "IKI"},
{airport: "Ishigaki", city: "Ishigaki", country: "Japan", code: "ISG"},
{airport: "Iwo Jima", city: "Iwojima", country: "Japan", code: "IWO"},
{airport: "Izumo", city: "Izumo", country: "Japan", code: "IZO"},
{airport: "Kadena Ab", city: "Kadena", country: "Japan", code: "DNA"},
{airport: "Kagoshima", city: "Kagoshima", country: "Japan", code: "KOJ"},
{airport: "Komatsu", city: "Kanazawa", country: "Japan", code: "KMQ"},
{airport: "Kitadaito", city: "Kitadaito", country: "Japan", code: "KTD"},
{airport: "Kitakyushu", city: "Kitakyushu", country: "Japan", code: "KKJ"},
{airport: "Kochi", city: "Kochi", country: "Japan", code: "KCZ"},
{airport: "Kumamoto", city: "Kumamoto", country: "Japan", code: "KMJ"},
{airport: "Kumejima", city: "Kumejima", country: "Japan", code: "UEO"},
{airport: "Matsumoto", city: "Matsumoto", country: "Japan", code: "MMJ"},
{airport: "Matsuyama", city: "Matsuyama", country: "Japan", code: "MYJ"},
{airport: "Memanbetsu", city: "Memanbetsu", country: "Japan", code: "MMB"},
{airport: "Miho", city: "Miho", country: "Japan", code: "YGJ"},
{airport: "Minami Daito", city: "Minami Daito", country: "Japan", code: "MMD"},
{airport: "Misawa Ab", city: "Misawa", country: "Japan", code: "MSJ"},
{airport: "Miyakejima", city: "Miyake Jima", country: "Japan", code: "MMY"},
{airport: "Miyako", city: "Miyako", country: "Japan", code: "MMY"},
{airport: "Miyazaki", city: "Miyazaki", country: "Japan", code: "KMI"},
{airport: "Monbetsu", city: "Monbetsu", country: "Japan", code: "MBE"},
{airport: "Nagasaki", city: "Nagasaki", country: "Japan", code: "NGS"},
{airport: "Nagoya", city: "Nagoya", country: "Japan", code: "NGO"},
{airport: "Naha", city: "Naha", country: "Japan", code: "OKA"},
{airport: "Nakashibetsu", city: "Nakashibetsu", country: "Japan", code: "SHB"},
{airport: "Nanki Shirahama", city: "Nanki-Shirahama", country: "Japan", code: "SHM"},
{airport: "Obihiro", city: "Obihiro", country: "Japan", code: "OBO"},
{airport: "Oita", city: "Oita", country: "Japan", code: "OIT"},
{airport: "Okayama", city: "Okayama", country: "Japan", code: "OKJ"},
{airport: "Oki", city: "Oki Island", country: "Japan", code: "OKI"},
{airport: "Osaka International", city: "Osaka", country: "Japan", code: "ITM"},
{airport: "Oshima", city: "Oshima", country: "Japan", code: "OIM"},
{airport: "Rishiri", city: "Rishiri Island", country: "Japan", code: "RIS"},
{airport: "Sapporo", city: "Sapporo", country: "Japan", code: "SPK"},
{airport: "Chitose International Airport", city: "Sapporo", country: "Japan", code: "CTS"},
{airport: "Sendai", city: "Sendai", country: "Japan", code: "SDJ"},
{airport: "Shimojishima", city: "Shimojishima", country: "Japan", code: "SHI"},
{airport: "Takamatsu", city: "Takamatsu", country: "Japan", code: "TAK"},
{airport: "Tanegashima", city: "Tanegashima", country: "Japan", code: "TNE"},
{airport: "Tokunoshima", city: "Tokunoshima", country: "Japan", code: "TKN"},
{airport: "Tokushima", city: "Tokushima", country: "Japan", code: "TKS"},
{airport: "New Tokyo International", city: "Tokyo", country: "Japan", code: "NRT"},
{airport: "Tokyo International", city: "Tokyo", country: "Japan", code: "HND"},
{airport: "Tottori", city: "Tottori", country: "Japan", code: "TTJ"},
{airport: "Toyama", city: "Toyama", country: "Japan", code: "TOY"},
{airport: "Tsushima", city: "Tsushima", country: "Japan", code: "TSJ"},
{airport: "Wakkanai", city: "Wakkanai", country: "Japan", code: "WKJ"},
{airport: "Yakushima", city: "Yakushima", country: "Japan", code: "KUM"},
{airport: "Yamagata", city: "Yamagata", country: "Japan", code: "GAJ"},
{airport: "Yamaguchi Ube", city: "Yamaguchi", country: "Japan", code: "UBJ"},
{airport: "Yokota Ab", city: "Yokota", country: "Japan", code: "OKO"},
{airport: "Yonaguni", city: "Yonaguni Jima", country: "Japan", code: "OGN"},
{airport: "Yoron", city: "Yoron", country: "Japan", code: "RNJ"},
{airport: "Johnston Atoll", city: "Johnston Island", country: "Johnston Atoll", code: "JON"},
{airport: "Marka International", city: "Amman", country: "Jordan", code: "ADJ"},
{airport: "Queen Alia International", city: "Amman", country: "Jordan", code: "AMM"},
{airport: "Aqaba International", city: "Aqaba", country: "Jordan", code: "AQJ"},
{airport: "King Hussein", city: "Mafraq", country: "Jordan", code: "OMF"},
{airport: "Almaty", city: "Alma-Ata", country: "Kazakhstan", code: "ALA"},
{airport: "Eldoret International", city: "Eldoret", country: "Kenya", code: "EDL"},
{airport: "Garissa", city: "Garissa", country: "Kenya", code: "GAS"},
{airport: "Kisumu", city: "Kisumu", country: "Kenya", code: "KIS"},
{airport: "Kitale", city: "Kitale", country: "Kenya", code: "KTL"},
{airport: "Lamu Manda", city: "Lamu", country: "Kenya", code: "LAU"},
{airport: "Lodwar", city: "Lodwar", country: "Kenya", code: "LOK"},
{airport: "Loyengalani", city: "Loyangalani", country: "Kenya", code: "LOY"},
{airport: "Malindi", city: "Malindi", country: "Kenya", code: "MYD"},
{airport: "Mandera", city: "Mandera", country: "Kenya", code: "NDE"},
{airport: "Marsabit", city: "Marsabit", country: "Kenya", code: "RBT"},
{airport: "Moi International", city: "Mombasa", country: "Kenya", code: "MBA"},
{airport: "Moyale Lower", city: "Moyale Lower", country: "Kenya", code: "OYL"},
{airport: "Nairobi Wilson", city: "Nairobi", country: "Kenya", code: "WIL"},
{airport: "Nanyuki", city: "Nanyuki", country: "Kenya", code: "NYK"},
{airport: "Nyeri", city: "Nyeri", country: "Kenya", code: "NYE"},
{airport: "Wajir", city: "Wajir", country: "Kenya", code: "WJR"},
{airport: "Cassidy International Airport", city: "Kiritimati", country: "Kiribati", code: ""},
{airport: "Tabiteuea North", city: "Tabiteuea North", country: "Kiribati", code: "TBF"},
{airport: "Bonriki International", city: "Tarawa", country: "Kiribati", code: "TRW"},
{airport: "Jeju International", city: "Cheju", country: "Korea", code: "CJU"},
{airport: "Gangneung", city: "Kangnung", country: "Korea", code: "KAG"},
{airport: "Gimhae International", city: "Kimhae", country: "Korea", code: "PUS"},
{airport: "Kunsan Ab", city: "Kunsan", country: "Korea", code: "KUB"},
{airport: "Gwangju", city: "Kwangju", country: "Korea", code: "KWJ"},
{airport: "Osan Ab", city: "Osan", country: "Korea", code: "OSN"},
{airport: "Pohang", city: "Pohang", country: "Korea", code: "KPO"},
{airport: "Pyongyang / Sunan (Capital) Airport", city: "Pyongyang", country: "Korea", code: "FNJ"},
{airport: "Gimpo", city: "Seoul", country: "Korea", code: "GMP"},
{airport: "Seoul Ab", city: "Seoul East", country: "Korea", code: "SSN"},
{airport: "Sokcho", city: "Sokch'O", country: "Korea", code: "SHO"},
{airport: "Daegu Ab", city: "Taegu", country: "Korea", code: "TAE"},
{airport: "Ulsan", city: "Ulsan", country: "Korea", code: "USN"},
{airport: "Yecheon", city: "Yechon", country: "Korea", code: "YEC"},
{airport: "Yeosu", city: "Yeosu", country: "Korea", code: "RSU"},
{airport: "Kuwait International", city: "Kuwait", country: "Kuwait", code: "KWI"},
{airport: "Luang Prabang", city: "Luang Prabang", country: "Laos", code: "LPQ"},
{airport: "Pakse", city: "Pakse", country: "Laos", code: "PKZ"},
{airport: "Savannakhet", city: "Savannakhet", country: "Laos", code: "ZVK"},
{airport: "Wattay International", city: "Vientiane", country: "Laos", code: "VTE"},
{airport: "Beirut International", city: "Beirut", country: "Lebanon", code: "BEY"},
{airport: "V C Bird International", city: "Antigua", country: "Leeward Islands", code: "ANU"},
{airport: "Moshoeshoe I International", city: "Maseru", country: "Lesotho", code: "MSU"},
{airport: "Monrovia Spriggs Payne", city: "Monrovia", country: "Liberia", code: "MLW"},
{airport: "Monrovia Roberts International", city: "Monrovia", country: "Liberia", code: "ROB"},
{airport: "Benina", city: "Benghazi", country: "Libya", code: "BEN"},
{airport: "Ghadames East", city: "Ghadames", country: "Libya", code: "LTD"},
{airport: "Ghat", city: "Ghat", country: "Libya", code: "GHT"},
{airport: "Kufra", city: "Kufra", country: "Libya", code: "AKF"},
{airport: "Sebha", city: "Sebha", country: "Libya", code: "SEB"},
{airport: "Tripoli International", city: "Tripoli", country: "Libya", code: "TIP"},
{airport: "Findel International Airport", city: "Luxemburg", country: "Luxemburg", code: "LUX"},
{airport: "Macau International", city: "Macau", country: "Macau", code: "MFM"},
{airport: "Ambilobe Mahavavy", city: "Ambilobe", country: "Madagascar", code: "AMB"},
{airport: "Analalava", city: "Analalava", country: "Madagascar", code: "HVA"},
{airport: "Andapa", city: "Andapa", country: "Madagascar", code: "ZWA"},
{airport: "Antalaha Antsirabato", city: "Antalaha", country: "Madagascar", code: "ANM"},
{airport: "Antananarivo Ivato", city: "Antananarivo", country: "Madagascar", code: "TNR"},
{airport: "Antsiranana Arrachart", city: "Antsiranana", country: "Madagascar", code: "DIE"},
{airport: "Antsohihy Ambalabe", city: "Antsohihy", country: "Madagascar", code: "WAI"},
{airport: "Besalampy", city: "Besalampy", country: "Madagascar", code: "BPY"},
{airport: "Farafangana", city: "Farafangana", country: "Madagascar", code: "RVA"},
{airport: "Fianarantsoa", city: "Fianarantsoa", country: "Madagascar", code: "WFI"},
{airport: "Mahajanga Philibert Tsiranana", city: "Mahajanga", country: "Madagascar", code: "MJN"},
{airport: "Manakara Sud", city: "Manakara", country: "Madagascar", code: "WVK"},
{airport: "Mananara Avaratra", city: "Mananara", country: "Madagascar", code: "WMR"},
{airport: "Mananjary", city: "Mananjary", country: "Madagascar", code: "MNJ"},
{airport: "Maroantsetra", city: "Maroantsetra", country: "Madagascar", code: "WMN"},
{airport: "Miandrivazo", city: "Miandrivazo", country: "Madagascar", code: "ZVA"},
{airport: "Morombe", city: "Morombe", country: "Madagascar", code: "MXM"},
{airport: "Morondava", city: "Morondava", country: "Madagascar", code: "MOQ"},
{airport: "Nosy Be Fascene", city: "Nosy-Be", country: "Madagascar", code: "NOS"},
{airport: "Sainte Marie", city: "Sainte Marie", country: "Madagascar", code: "SMS"},
{airport: "Sambava Sud", city: "Sambava", country: "Madagascar", code: "SVB"},
{airport: "Toamasina", city: "Toamasina", country: "Madagascar", code: "TMM"},
{airport: "Tolagnaro", city: "Tolagnaro", country: "Madagascar", code: "FTU"},
{airport: "Toliara", city: "Toliara", country: "Madagascar", code: "TLE"},
{airport: "Vohimarina", city: "Vohemar", country: "Madagascar", code: "VOH"},
{airport: "Porto Santo", city: "Porto Santo", country: "Madeira", code: "PXO"},
{airport: "Chileka International", city: "Blantyre", country: "Malawi", code: "BLZ"},
{airport: "Karonga", city: "Karonga", country: "Malawi", code: "KGJ"},
{airport: "Mzuzu", city: "Mzuzu", country: "Malawi", code: "ZZU"},
{airport: "Sultan Abdul Halim", city: "Alor Setar", country: "Malaysia", code: "AOR"},
{airport: "Bintulu", city: "Bintulu", country: "Malaysia", code: "BTU"},
{airport: "Sultan Azlan Shah", city: "Ipoh", country: "Malaysia", code: "IPH"},
{airport: "Sultan Ismail", city: "Johor Bahru", country: "Malaysia", code: "JHB"},
{airport: "Kerteh", city: "Kerteh", country: "Malaysia", code: "KTE"},
{airport: "Sultan Ismail Petra", city: "Kota Bahru", country: "Malaysia", code: "KBR"},
{airport: "Kota Kinabalu International", city: "Kota Kinabalu", country: "Malaysia", code: "BKI"},
{airport: "Kuala Lumpur International", city: "Kuala Lumpur", country: "Malaysia", code: "KUL"},
{airport: "Sultan Mahmud", city: "Kuala Terengganu", country: "Malaysia", code: "TGG"},
{airport: "Kuantan", city: "Kuantan", country: "Malaysia", code: "KUA"},
{airport: "Kuching International", city: "Kuching", country: "Malaysia", code: "KCH"},
{airport: "Labuan", city: "Labuan", country: "Malaysia", code: "LBU"},
{airport: "Lahad Datu", city: "Lahad Datu", country: "Malaysia", code: "LDU"},
{airport: "Malacca", city: "Malacca", country: "Malaysia", code: "MKZ"},
{airport: "Marudi", city: "Marudi", country: "Malaysia", code: "MUR"},
{airport: "Miri", city: "Miri", country: "Malaysia", code: "MYY"},
{airport: "Penang International", city: "Penang", country: "Malaysia", code: "PEN"},
{airport: "Langkawi International", city: "Pulau", country: "Malaysia", code: "LGK"},
{airport: "Sibu", city: "Sibu", country: "Malaysia", code: "SBW"},
{airport: "Tawau", city: "Tawau", country: "Malaysia", code: "TWU"},
{airport: "Male International", city: "Male", country: "Maldives", code: "MLE"},
{airport: "Bamako Senou", city: "Bamako", country: "Mali", code: "BKO"},
{airport: "Gao", city: "Gao", country: "Mali", code: "GAQ"},
{airport: "Kayes", city: "Kayes", country: "Mali", code: "KYS"},
{airport: "Mopti Ambodedjo", city: "Mopti", country: "Mali", code: "MZI"},
{airport: "Nioro", city: "Nioro", country: "Mali", code: "NIX"},
{airport: "Tombouctou", city: "Tombouctou", country: "Mali", code: "TOM"},
{airport: "Luqa", city: "Malta", country: "Malta", code: "MLA"},
{airport: "Andersen Afb", city: "Andersen", country: "Mariana Islands", code: "UAM"},
{airport: "Rota International", city: "Rota", country: "Mariana Islands", code: "ROP"},
{airport: "Saipan International", city: "Saipan", country: "Mariana Islands", code: "SPN"},
{airport: "West Tinian", city: "West Tinian", country: "Mariana Islands", code: "TNI"},
{airport: "Enewetak Aux Af", city: "Eniwetok Island", country: "Marshall Islands", code: "1Z8"},
{airport: "Bucholz Aaf", city: "Kwajalein", country: "Marshall Islands", code: "KWA"},
{airport: "Marshall Islands International", city: "Majuro", country: "Marshall Islands", code: "MAJ"},
{airport: "Aioun El Atrouss", city: "Aioun El Atrouss", country: "Mauritania", code: "IEO"},
{airport: "Atar", city: "Atar", country: "Mauritania", code: "ATR"},
{airport: "Kaedi", city: "Kaedi", country: "Mauritania", code: "KED"},
{airport: "Kiffa", city: "Kiffa", country: "Mauritania", code: "KFA"},
{airport: "Nema", city: "Nema", country: "Mauritania", code: "EMN"},
{airport: "Nouadhibou", city: "Nouadhibou", country: "Mauritania", code: "NDB"},
{airport: "Nouakchott", city: "Nouakschott", country: "Mauritania", code: "NKC"},
{airport: "Selibady", city: "Selibabi", country: "Mauritania", code: "SEY"},
{airport: "Tidjikja", city: "Tidjikja", country: "Mauritania", code: "TIY"},
{airport: "Sir Seewoosagur Ramgoolam International", city: "Plaisance", country: "Mauritius", code: "MRU"},
{airport: "Plaine Corail", city: "Rodriguez Island", country: "Mauritius", code: "RRG"},
{airport: "Dzaoudzi Pamanzi", city: "Dzaoudzi", country: "Mayotte Island", code: "DZA"},
{airport: "General Juan N Alvarez International", city: "Acapulco", country: "Mexico", code: "ACA"},
{airport: "Jesus Teran International", city: "Aguascalientes", country: "Mexico", code: "AGU"},
{airport: "Bahias De Huatulco International", city: "Bahias Dehuatulco", country: "Mexico", code: "HUX"},
{airport: "Ingeniero Alberto Acuna Ongay International", city: "Campeche", country: "Mexico", code: "CPE"},
{airport: "Cancun International", city: "Cancun", country: "Mexico", code: "CUN"},
{airport: "Chetumal International", city: "Chetumal", country: "Mexico", code: "CTM"},
{airport: "General R Fierro Villalobos International", city: "Chihuahua", country: "Mexico", code: "CUU"},
{airport: "Ciudad Del Carmen International", city: "Ciudad Del Carmen", country: "Mexico", code: "CME"},
{airport: "Abraham Gonzalez International", city: "Ciudad Juarez", country: "Mexico", code: "CJS"},
{airport: "Ciudad Mante", city: "Ciudad Mante", country: "Mexico", code: "MMC"},
{airport: "Ciudad Obregon International", city: "Ciudad Obregon", country: "Mexico", code: "CEN"},
{airport: "Ciudad Victoria", city: "Ciudad Victoria", country: "Mexico", code: "CVM"},
{airport: "Colima", city: "Colima", country: "Mexico", code: "CLQ"},
{airport: "Cozumel International", city: "Cozumel", country: "Mexico", code: "CZM"},
{airport: "Cuernavaca", city: "Cuernavaca", country: "Mexico", code: "CVJ"},
{airport: "Culiacan International", city: "Culiacan", country: "Mexico", code: "CUL"},
{airport: "De Guanajuato International", city: "Del Bajio", country: "Mexico", code: "BJX"},
{airport: "Durango International", city: "Durango", country: "Mexico", code: "DGO"},
{airport: "General Alberto L Salinas C International", city: "Ensenada", country: "Mexico", code: "ESE"},
{airport: "Don Miguel Y Hidalgo International", city: "Guadalajara", country: "Mexico", code: "GDL"},
{airport: "General Jose Maria Yanez International", city: "Guaymas", country: "Mexico", code: "GYM"},
{airport: "General Ignacio P Garcia International", city: "Hermosillo", country: "Mexico", code: "HMO"},
{airport: "Isla Mujeres", city: "Isla Mujeres", country: "Mexico", code: "ISJ"},
{airport: "General Manuel Marquez De Leon International", city: "La Paz", country: "Mexico", code: "LAP"},
{airport: "Lazaro Cardenas", city: "Lazard Cardenas", country: "Mexico", code: "LZC"},
{airport: "Loreto International", city: "Loreto", country: "Mexico", code: "LTO"},
{airport: "Valle Del Fuerte International", city: "Los Mochis", country: "Mexico", code: "LMM"},
{airport: "Playa De Oro International", city: "Manzanillo", country: "Mexico", code: "ZLO"},
{airport: "General Servando Canales International", city: "Matamoros", country: "Mexico", code: "MAM"},
{airport: "General Rafael Buelna International", city: "Mazatlan", country: "Mexico", code: "MZT"},
{airport: "Licenciado Manuel Crecencio Rejon International", city: "Merida", country: "Mexico", code: "MID"},
{airport: "General Rodolfo Sanchez Taboada International", city: "Mexicali", country: "Mexico", code: "MXL"},
{airport: "Licenciado Benito Juarez International", city: "Mexico City", country: "Mexico", code: "MEX"},
{airport: "Minatitlan", city: "Minatitlan", country: "Mexico", code: "MTT"},
{airport: "Monclova International", city: "Monclova", country: "Mexico", code: "LOV"},
{airport: "General Mariano Escobedo International", city: "Monterrey", country: "Mexico", code: "MTY"},
{airport: "Del Norte International", city: "Monterrey", country: "Mexico", code: "NTR"},
{airport: "General Francisco J Mujica", city: "Morelia", country: "Mexico", code: "MLM"},
{airport: "Nogales International", city: "Nogales", country: "Mexico", code: "NOG"},
{airport: "Quetzalcoatl International", city: "Nuevo Laredo", country: "Mexico", code: "NLD"},
{airport: "Xoxocotlan International", city: "Oaxaca", country: "Mexico", code: "OAX"},
{airport: "Ingeniero Juan Guillermo Villasana", city: "Pachuca", country: "Mexico", code: "PCA"},
{airport: "Piedras Negras International", city: "Piedras Negras", country: "Mexico", code: "PDS"},
{airport: "Tajin", city: "Poza Rico", country: "Mexico", code: "PAZ"},
{airport: "Hermanos Serdan International", city: "Puebla", country: "Mexico", code: "PBC"},
{airport: "Puerto Escondido", city: "Puerto Escondido", country: "Mexico", code: "PXM"},
{airport: "Licenciado Gustavo Diaz Ordaz International", city: "Puerto Vallarta", country: "Mexico", code: "PVR"},
{airport: "Punta Penasco", city: "Punta Penasco", country: "Mexico", code: "PPE"},
{airport: "Ingeniero F Espinoza Gutierrez International", city: "Queretaro", country: "Mexico", code: "QRO"},
{airport: "General Lucio Blanco International", city: "Reynosa", country: "Mexico", code: "REX"},
{airport: "Plan De Guadalupe International", city: "Saltillo", country: "Mexico", code: "SLW"},
{airport: "Los Cabos International", city: "San Jose Del Cabo", country: "Mexico", code: "SJD"},
{airport: "Ponciano Arriaga International", city: "San Luis Potosi", country: "Mexico", code: "SLP"},
{airport: "General Francisco Javier Mina International", city: "Tampico", country: "Mexico", code: "TAM"},
{airport: "Tamuin", city: "Tamuin", country: "Mexico", code: "TSL"},
{airport: "Tapachula International", city: "Tapachula", country: "Mexico", code: "TAP"},
{airport: "Tehuacan", city: "Tehuacan", country: "Mexico", code: "TCN"},
{airport: "Tepic", city: "Tepic", country: "Mexico", code: "TPQ"},
{airport: "General Abelardo L Rodriguez International", city: "Tijuana", country: "Mexico", code: "TIJ"},
{airport: "Tlaxcala", city: "Tlaxcala", country: "Mexico", code: "TXA"},
{airport: "Licenciado Adolfo Lopez Mateos International", city: "Toluca", country: "Mexico", code: "TLC"},
{airport: "Torreon International", city: "Torreon", country: "Mexico", code: "TRC"},
{airport: "Francisco Sarabia", city: "Tuxtla Gutierrez", country: "Mexico", code: "TGZ"},
{airport: "Licenciado Y Gen Ignacio Lopez Rayon", city: "Uruapan", country: "Mexico", code: "UPN"},
{airport: "General Heriberto Jara International", city: "Vera Cruz", country: "Mexico", code: "VER"},
{airport: "C P A Carlos Rovirosa International", city: "Villahermosa", country: "Mexico", code: "VSA"},
{airport: "General Leobardo C Ruiz International", city: "Zacatecas", country: "Mexico", code: "ZCL"},
{airport: "Zamora", city: "Zamora", country: "Mexico", code: "ZMM"},
{airport: "Ixtapa Zihuatanejo International", city: "Zihuatanejo", country: "Mexico", code: "ZIH"},
{airport: "Chuuk International", city: "Chuuk", country: "Micronesia", code: "TKK"},
{airport: "Kosrae", city: "Kosrae", country: "Micronesia", code: "KSA"},
{airport: "Pohnpei International", city: "Pohnpei", country: "Micronesia", code: "PNI"},
{airport: "Yap International", city: "Yap", country: "Micronesia", code: "YAP"},
{airport: "Midway Atoll", city: "Midway", country: "Midway Island", code: "MDY"},
{airport: "Chisinau", city: "Kichinau Fir/Acc/Com", country: "Moldova", code: "KIV"},
{airport: "Buyant Ukhaa", city: "Ulan Bator", country: "Mongolia", code: "ULN"},
{airport: "Podgorica", city: "Podgorica", country: "Montenegro", code: "TGD"},
{airport: "Tivat", city: "Tivat", country: "Montenegro", code: "TIV"},
{airport: "Santee Cooper Rgnl", city: "Plymouth", country: "Montserrat Island", code: "MNI"},
{airport: "Inezgane", city: "Agadir", country: "Morocco", code: "AGA"},
{airport: "Cherif El Idrissi", city: "Al Hociema", country: "Morocco", code: "AHU"},
{airport: "Anfa", city: "Casablanca", country: "Morocco", code: "CAS"},
{airport: "Mohammed V", city: "Casablanca", country: "Morocco", code: "CMN"},
{airport: "Moulay Ali Cherif", city: "Er-Rachidia", country: "Morocco", code: "ERH"},
{airport: "Saiss", city: "Fez", country: "Morocco", code: "FEZ"},
{airport: "Kenitra", city: "Kentira", country: "Morocco", code: "NNA"},
{airport: "Menara", city: "Marrakech", country: "Morocco", code: "RAK"},
{airport: "Bassatine", city: "Meknes", country: "Morocco", code: "MEK"},
{airport: "Ouarzazate", city: "Ouarzazate", country: "Morocco", code: "OZZ"},
{airport: "Angads", city: "Oujda", country: "Morocco", code: "OUD"},
{airport: "Sale", city: "Rabat", country: "Morocco", code: "RBA"},
{airport: "Sidi Ifni", city: "Sidi Ifini", country: "Morocco", code: "SII"},
{airport: "Plage Blanche", city: "Tan Tan", country: "Morocco", code: "TTA"},
{airport: "Ibn Batouta", city: "Tanger", country: "Morocco", code: "TNG"},
{airport: "Saniat Rmel", city: "Tetouan", country: "Morocco", code: "TTU"},
{airport: "Beira", city: "Beira", country: "Mozambique", code: "BEW"},
{airport: "Cuamba", city: "Cuamba", country: "Mozambique", code: "FXO"},
{airport: "Inhambane", city: "Inhambane", country: "Mozambique", code: "INH"},
{airport: "Lichinga", city: "Lichinga", country: "Mozambique", code: "VXC"},
{airport: "Maputo", city: "Maputo", country: "Mozambique", code: "MPM"},
{airport: "Mocimboa Da Praia", city: "Mocimboa Da Praia", country: "Mozambique", code: "MZB"},
{airport: "Nacala", city: "Nacala", country: "Mozambique", code: "MNC"},
{airport: "Nampula", city: "Nampula", country: "Mozambique", code: "APL"},
{airport: "Pemba", city: "Pemba", country: "Mozambique", code: "PMA"},
{airport: "Quelimane", city: "Quelimane", country: "Mozambique", code: "UEL"},
{airport: "Tete Chingozi", city: "Tete", country: "Mozambique", code: "TET"},
{airport: "Vilankulo", city: "Vilankulu", country: "Mozambique", code: "VNX"},
{airport: "Heho", city: "Heho", country: "Myanmar", code: "HEH"},
{airport: "Kengtung", city: "Kengtung", country: "Myanmar", code: "KET"},
{airport: "Kyaukpyu", city: "Kyaukpyu", country: "Myanmar", code: "KYP"},
{airport: "Lashio", city: "Lashio", country: "Myanmar", code: "LSH"},
{airport: "Mandalay International", city: "Mandalay", country: "Myanmar", code: "MDL"},
{airport: "Monghsat", city: "Mong Hsat", country: "Myanmar", code: "MOG"},
{airport: "Myeik", city: "Myeik", country: "Myanmar", code: "MGZ"},
{airport: "Myitkyina", city: "Myitkyina", country: "Myanmar", code: "MYT"},
{airport: "Putao", city: "Putao", country: "Myanmar", code: "PBU"},
{airport: "Sittwe", city: "Sittwe", country: "Myanmar", code: "AKY"},
{airport: "Tachilek", city: "Tachilek", country: "Myanmar", code: "THL"},
{airport: "Thandwe", city: "Thandwe", country: "Myanmar", code: "SNW"},
{airport: "Yangon International", city: "Yangon", country: "Myanmar", code: "RGN"},
{airport: "Bhairahawa", city: "Bhairawa", country: "Nepal", code: "BWA"},
{airport: "Biratnagar", city: "Biratnagar", country: "Nepal", code: "BIR"},
{airport: "Tribhuvan International", city: "Kathmandu", country: "Nepal", code: "KTM"},
{airport: "Pokhara", city: "Pokhara", country: "Nepal", code: "PKR"},
{airport: "Simara", city: "Simara", country: "Nepal", code: "SIF"},
{airport: "Schiphol", city: "Amsterdam", country: "Netherlands", code: "AMS"},
{airport: "De Kooy", city: "De Kooy", country: "Netherlands", code: "DHR"},
{airport: "Eindhoven", city: "Eindhoven", country: "Netherlands", code: "EIN"},
{airport: "Twenthe", city: "Enschede", country: "Netherlands", code: "ENS"},
{airport: "Eelde", city: "Groningen", country: "Netherlands", code: "GRQ"},
{airport: "Leeuwarden", city: "Leeuwarden", country: "Netherlands", code: "LWR"},
{airport: "Maastricht", city: "Maastricht", country: "Netherlands", code: "MST"},
{airport: "Rotterdam", city: "Rotterdam", country: "Netherlands", code: "RTM"},
{airport: "Soesterberg", city: "Soesterberg", country: "Netherlands", code: "UTC"},
{airport: "Valkenburg", city: "Valkenburg", country: "Netherlands", code: "LID"},
{airport: "Woensdrecht", city: "Woensdrecht", country: "Netherlands", code: "WOE"},
{airport: "Kone", city: "Kone", country: "New Caledonia", code: "KNQ"},
{airport: "Koumac", city: "Koumac", country: "New Caledonia", code: "KOC"},
{airport: "Ouanaham", city: "Lifou", country: "New Caledonia", code: "LIF"},
{airport: "La Roche", city: "Mare", country: "New Caledonia", code: "MEE"},
{airport: "La Tontouta", city: "Noumea", country: "New Caledonia", code: "NOU"},
{airport: "Noumea Magenta", city: "Noumea", country: "New Caledonia", code: "GEA"},
{airport: "Ouvea Ouloup", city: "Ouvea", country: "New Caledonia", code: "UVE"},
{airport: "Touho", city: "Touho", country: "New Caledonia", code: "TOU"},
{airport: "Alexandra", city: "Alexandra", country: "New Zealand", code: "ALR"},
{airport: "Niue International", city: "Alofi", country: "New Zealand", code: "HUE"},
{airport: "Auckland International", city: "Auckland", country: "New Zealand", code: "AKL"},
{airport: "Chatham Islands", city: "Chatham Island", country: "New Zealand", code: "CHT"},
{airport: "Christchurch International", city: "Christchurch", country: "New Zealand", code: "CHC"},
{airport: "Dunedin", city: "Dunedin", country: "New Zealand", code: "DUD"},
{airport: "Gisborne", city: "Gisborne", country: "New Zealand", code: "GIS"},
{airport: "Glentanner", city: "Glentanner", country: "New Zealand", code: "MON"},
{airport: "Hamilton", city: "Hamilton", country: "New Zealand", code: "HLZ"},
{airport: "Hokitika", city: "Hokitika", country: "New Zealand", code: "HKK"},
{airport: "Invercargill", city: "Invercargill", country: "New Zealand", code: "IVC"},
{airport: "Kaitaia", city: "Kaitaia", country: "New Zealand", code: "KAT"},
{airport: "Kerikeri", city: "Kerikeri", country: "New Zealand", code: "KKE"},
{airport: "Manapouri", city: "Manapouri", country: "New Zealand", code: "TEU"},
{airport: "Masterton", city: "Masterton", country: "New Zealand", code: "MRO"},
{airport: "Mount Cook", city: "Mount Cook", country: "New Zealand", code: "GTN"},
{airport: "Nelson", city: "Nelson", country: "New Zealand", code: "NSN"},
{airport: "New Plymouth", city: "New Plymouth", country: "New Zealand", code: "NPL"},
{airport: "Oamaru", city: "Oamaru", country: "New Zealand", code: "OAM"},
{airport: "Palmerston North", city: "Palmerston North", country: "New Zealand", code: "PMR"},
{airport: "Paraparaumu", city: "Paraparaumu", country: "New Zealand", code: "PPQ"},
{airport: "Queenstown", city: "Queenstown International", country: "New Zealand", code: "ZQN"},
{airport: "Rotorua", city: "Rotorua", country: "New Zealand", code: "ROT"},
{airport: "Taupo", city: "Taupo", country: "New Zealand", code: "TUO"},
{airport: "Tauranga", city: "Tauranga", country: "New Zealand", code: "TRG"},
{airport: "Timaru", city: "Timaru", country: "New Zealand", code: "TIU"},
{airport: "Wanaka", city: "Wanaka", country: "New Zealand", code: "WKA"},
{airport: "Wanganui", city: "Wanganui", country: "New Zealand", code: "WAG"},
{airport: "Wellington International", city: "Wellington", country: "New Zealand", code: "WLG"},
{airport: "Westport", city: "Westport", country: "New Zealand", code: "WSZ"},
{airport: "Whakatane", city: "Whakatane", country: "New Zealand", code: "WHK"},
{airport: "Whangarei", city: "Whangarei", country: "New Zealand", code: "WRE"},
{airport: "Woodbourne", city: "Woodbourne", country: "New Zealand", code: "BHE"},
{airport: "Bluefields", city: "Bluefields", country: "Nicaragua", code: "BEF"},
{airport: "Managua International", city: "Managua", country: "Nicaragua", code: "MGA"},
{airport: "Puerto Cabezas", city: "Puerto Cabezas", country: "Nicaragua", code: "PUZ"},
{airport: "Manu Dayak", city: "Agadez", country: "Niger", code: "AJY"},
{airport: "Maradi", city: "Maradi", country: "Niger", code: "MFG"},
{airport: "Diori Hamani", city: "Niamey", country: "Niger", code: "NIM"},
{airport: "Tahoua", city: "Tahoua", country: "Niger", code: "THZ"},
{airport: "Zinder", city: "Zinder", country: "Niger", code: "ZND"},
{airport: "Abuja Nnamdi Azikiwe International", city: "Abuja", country: "Nigeria", code: "ABV"},
{airport: "Akure", city: "Akure", country: "Nigeria", code: "AKR"},
{airport: "Benin", city: "Benin", country: "Nigeria", code: "BNI"},
{airport: "Calabar", city: "Calabar", country: "Nigeria", code: "CBQ"},
{airport: "Enugu", city: "Enugu", country: "Nigeria", code: "ENU"},
{airport: "Gusau", city: "Gusau", country: "Nigeria", code: "QUS"},
{airport: "Ibadan", city: "Ibadan", country: "Nigeria", code: "IBA"},
{airport: "Ilorin", city: "Ilorin", country: "Nigeria", code: "ILR"},
{airport: "Jos", city: "Jos", country: "Nigeria", code: "JOS"},
{airport: "Kaduna", city: "Kaduna", country: "Nigeria", code: "KAD"},
{airport: "Kano Mallam Aminu International", city: "Kano", country: "Nigeria", code: "KAN"},
{airport: "Lagos Murtala Muhammed", city: "Lagos", country: "Nigeria", code: "LOS"},
{airport: "Maiduguri", city: "Maiduguri", country: "Nigeria", code: "MIU"},
{airport: "Makurdi", city: "Makurdi", country: "Nigeria", code: "MDI"},
{airport: "Minna New", city: "Minna", country: "Nigeria", code: "MXJ"},
{airport: "Port Harcourt International", city: "Port Hartcourt", country: "Nigeria", code: "PHC"},
{airport: "Sadiq Abubakar Iii International", city: "Sokoto", country: "Nigeria", code: "SKO"},
{airport: "Yola", city: "Yola", country: "Nigeria", code: "YOL"},
{airport: "Zaria", city: "Zaria", country: "Nigeria", code: "ZAR"},
{airport: "Aldergrove", city: "Belfast", country: "North Ireland", code: "BFS"},
{airport: "City", city: "Belfast", country: "North Ireland", code: "LCY"},
{airport: "Londonderry Eglinton", city: "Londonderry", country: "North Ireland", code: "LDY"},
{airport: "Vigra", city: "Alesund", country: "Norway", code: "AES"},
{airport: "Alta", city: "Alta", country: "Norway", code: "ALF"},
{airport: "Andoya", city: "Andoya", country: "Norway", code: "ANX"},
{airport: "Banak", city: "Banak", country: "Norway", code: "LKL"},
{airport: "Bardufoss", city: "Bardufoss", country: "Norway", code: "BDU"},
{airport: "Batsfjord", city: "Batsfjord", country: "Norway", code: "BJF"},
{airport: "Bergen Flesland", city: "Bergen", country: "Norway", code: "BGO"},
{airport: "Bodo", city: "Bodoe", country: "Norway", code: "BOO"},
{airport: "Bronnoy", city: "Bronnoysund", country: "Norway", code: "BNN"},
{airport: "Evenes", city: "Evenes", country: "Norway", code: "EVE"},
{airport: "Fagernes Leirin", city: "Fagernes", country: "Norway", code: "VDB"},
{airport: "Floro", city: "Floro", country: "Norway", code: "FRO"},
{airport: "Stafsberg", city: "Hamar", country: "Norway", code: "HMR"},
{airport: "Hasvik", city: "Hasvik", country: "Norway", code: "HAA"},
{airport: "Haugesund Karmoy", city: "Haugesund", country: "Norway", code: "HAU"},
{airport: "Kirkenes Hoybuktmoen", city: "Kirkenes", country: "Norway", code: "KKN"},
{airport: "Kristiansand Kjevik", city: "Kristiansand", country: "Norway", code: "KRS"},
{airport: "Kristiansund Kvernberget", city: "Kristiansund", country: "Norway", code: "KSU"},
{airport: "Lista", city: "Lista", country: "Norway", code: "FAN"},
{airport: "Aro", city: "Molde", country: "Norway", code: "MOL"},
{airport: "Kjaerstad", city: "Mosjoen", country: "Norway", code: "MJF"},
{airport: "Orland", city: "Orland", country: "Norway", code: "OLA"},
{airport: "Oslo Fornebu", city: "Oslo", country: "Norway", code: "FBU"},
{airport: "Oslo Gardermoen", city: "Oslo", country: "Norway", code: "OSL"},
{airport: "Roeros", city: "Roros", country: "Norway", code: "RRS"},
{airport: "Stokka", city: "Sandnessjoen", country: "Norway", code: "SSJ"},
{airport: "Skien Geiteryggen", city: "Skien", country: "Norway", code: "SKE"},
{airport: "Sogndal Haukasen", city: "Sogndal", country: "Norway", code: "SOG"},
{airport: "Sorkjosen", city: "Sorkjosen", country: "Norway", code: "SOJ"},
{airport: "Stavanger Sola", city: "Stavanger", country: "Norway", code: "SVG"},
{airport: "Soerstokken", city: "Stord", country: "Norway", code: "SRP"},
{airport: "Svalbard Longyear", city: "Svalbard", country: "Norway", code: "LYR"},
{airport: "Torp", city: "Torp", country: "Norway", code: "TRF"},
{airport: "Tromso", city: "Tromso", country: "Norway", code: "TOS"},
{airport: "Trondheim Vaernes", city: "Trondheim", country: "Norway", code: "TRD"},
{airport: "Khasab", city: "Khasab", country: "Oman", code: "KHS"},
{airport: "Masirah", city: "Masirah", country: "Oman", code: "MSH"},
{airport: "Seeb International", city: "Muscat", country: "Oman", code: "MCT"},
{airport: "Salalah", city: "Salalah", country: "Oman", code: "SLL"},
{airport: "Thumrait", city: "Thumrait", country: "Oman", code: "TTH"},
{airport: "Faisalabad International", city: "Faisalabad", country: "Pakistan", code: "LYP"},
{airport: "Gilgit", city: "Gilgit", country: "Pakistan", code: "GIL"},
{airport: "Gwadar", city: "Gwadar", country: "Pakistan", code: "GWD"},
{airport: "Hyderabad", city: "Hyderabad", country: "Pakistan", code: "HYD"},
{airport: "Chaklala", city: "Islamabad", country: "Pakistan", code: "ISB"},
{airport: "Jinnah International", city: "Karachi", country: "Pakistan", code: "KHI"},
{airport: "Allama Iqbal International", city: "Lahore", country: "Pakistan", code: "LHE"},
{airport: "Moenjodaro", city: "Moenjodaro", country: "Pakistan", code: "MJD"},
{airport: "Multan International", city: "Multan", country: "Pakistan", code: "MUX"},
{airport: "Muzaffarabad", city: "Muzaffarabad", country: "Pakistan", code: "MFG"},
{airport: "Nawabshah", city: "Nawabshah", country: "Pakistan", code: "WNS"},
{airport: "Ormara", city: "Ormara", country: "Pakistan", code: "ORW"},
{airport: "Panjgur", city: "Panjgur", country: "Pakistan", code: "PJG"},
{airport: "Pasni", city: "Pasni", country: "Pakistan", code: "PSI"},
{airport: "Peshawar", city: "Peshawar", country: "Pakistan", code: "PEW"},
{airport: "Quetta", city: "Quetta", country: "Pakistan", code: "UET"},
{airport: "Shaikh Zayed", city: "Rahim Yar Khan", country: "Pakistan", code: "RYK"},
{airport: "Rawalakot", city: "Rawala Kot", country: "Pakistan", code: "RAZ"},
{airport: "Saidu Sharif", city: "Saidu Sharif", country: "Pakistan", code: "SDT"},
{airport: "Sui", city: "Sui", country: "Pakistan", code: "SUL"},
{airport: "Sukkur", city: "Sukkur", country: "Pakistan", code: "SKZ"},
{airport: "Talhar", city: "Talhar", country: "Pakistan", code: "BDN"},
{airport: "Zhob", city: "Zhob", country: "Pakistan", code: "PZH"},
{airport: "Babelthuap", city: "Babelthuap", country: "Palau Island", code: "ROR"},
{airport: "Bocas Del Toro", city: "Bocas Del Toro", country: "Panama", code: "BOC"},
{airport: "Cap Manuel Nino International", city: "Changuinola", country: "Panama", code: "CHX"},
{airport: "Enrique Malek International", city: "David", country: "Panama", code: "DAV"},
{airport: "Howard Afb", city: "Howard", country: "Panama", code: "HOW"},
{airport: "Marcos A Gelabert International", city: "Panama", country: "Panama", code: "PAC"},
{airport: "Tocumen International", city: "Panama City", country: "Panama", code: "PTY"},
{airport: "Goroka", city: "Goroka", country: "Papua New Guinea", code: "GKA"},
{airport: "Madang", city: "Madang", country: "Papua New Guinea", code: "MAG"},
{airport: "Mount Hagen", city: "Mount Hagen", country: "Papua New Guinea", code: "HGU"},
{airport: "Nadzab", city: "Nadzab", country: "Papua New Guinea", code: "LAE"},
{airport: "Port Moresby Jacksons International", city: "Port Moresby", country: "Papua New Guinea", code: "POM"},
{airport: "Wewak International", city: "Wewak", country: "Papua New Guinea", code: "WWK"},
{airport: "Silvio Pettirossi International", city: "Asuncion", country: "Paraguay", code: "ASU"},
{airport: "Andahuaylas", city: "Andahuaylas", country: "Peru", code: "ANS"},
{airport: "Commandante Fap German Arias Grazziani", city: "Anta", country: "Peru", code: "ATA"},
{airport: "Rodriguez Ballon", city: "Arequipa", country: "Peru", code: "AQP"},
{airport: "Coronel Fap Alfredo Mendivil Duarte", city: "Ayacucho", country: "Peru", code: "AYP"},
{airport: "Chachapoyas", city: "Chachapoyas", country: "Peru", code: "CHH"},
{airport: "Capt Jose Abelardo Quinones Gonzales", city: "Chiclayo", country: "Peru", code: "CIX"},
{airport: "Teniente Fap Jaime A De Montr Morales", city: "Chimbote", country: "Peru", code: "CHM"},
{airport: "Velazco Astete", city: "Cuzco", country: "Peru", code: "CUZ"},
{airport: "Coronel Fap Francisco Secada Vignetta", city: "Iquitos", country: "Peru", code: "IQT"},
{airport: "Juanjui", city: "Juanjui", country: "Peru", code: "JJI"},
{airport: "Juliaca", city: "Juliaca", country: "Peru", code: "JUL"},
{airport: "Jorge Chavez International", city: "Lima", country: "Peru", code: "LIM"},
{airport: "Pisco", city: "Pisco", country: "Peru", code: "PIO"},
{airport: "Capitan Concha", city: "Piura", country: "Peru", code: "PIU"},
{airport: "Cap Fap David Avenzur Rengifo", city: "Pucallpa", country: "Peru", code: "PCL"},
{airport: "Padre Aldamiz", city: "Puerto Maldonado", country: "Peru", code: "PEM"},
{airport: "Coronel Fap Carlos Ciriani Santa Rosa", city: "Tacna", country: "Peru", code: "TCQ"},
{airport: "Capitan Montes", city: "Talara", country: "Peru", code: "TYL"},
{airport: "Tarapoto", city: "Tarapoto", country: "Peru", code: "TPP"},
{airport: "Tingo Maria", city: "Tingo Maria", country: "Peru", code: "TGI"},
{airport: "Capitan Carlos Martinez De Pinillos", city: "Trujillo", country: "Peru", code: "TRU"},
{airport: "Pedro Canga", city: "Tumbes", country: "Peru", code: "TBP"},
{airport: "Moises Benzaquen Rengifo", city: "Yurimaguas", country: "Peru", code: "YMS"},
{airport: "Bacolod", city: "Bacolod", country: "Philippines", code: "BCD"},
{airport: "Baguio", city: "Baguio", country: "Philippines", code: "BAG"},
{airport: "Cotabato", city: "Cebu", country: "Philippines", code: "CEB"},
{airport: "Dumaguete", city: "Dumaguete", country: "Philippines", code: "DGT"},
{airport: "Iloilo", city: "Iloilo", country: "Philippines", code: "ILO"},
{airport: "Kalibo", city: "Kalibo", country: "Philippines", code: "KLO"},
{airport: "Cagayan De Oro", city: "Ladag", country: "Philippines", code: "CGY"},
{airport: "Pagadian", city: "Legazpi", country: "Philippines", code: "LGP"},
{airport: "Ninoy Aquino International", city: "Manila", country: "Philippines", code: "MNL"},
{airport: "Malabang", city: "Manila", country: "Philippines", code: "MNL"},
{airport: "Mactan International", city: "Masbate", country: "Philippines", code: "NOP"},
{airport: "Puerto Princesa", city: "Puerto Princesa", country: "Philippines", code: "PPS"},
{airport: "Antique", city: "San Jose", country: "Philippines", code: "SJI"},
{airport: "Daniel Z Romualdez", city: "Tacloban", country: "Philippines", code: "TAC"},
{airport: "Zamboanga International", city: "Zamboanga", country: "Philippines", code: "ZAM"},
{airport: "Canton Island Airport", city: "Canton Island", country: "Phoenix Isl.", code: "CIS"},
{airport: "Rebiechowo", city: "Gdansk", country: "Poland", code: "GDN"},
{airport: "Pyrzowice", city: "Katowice", country: "Poland", code: "KTW"},
{airport: "Balice Jp Ii International Airport", city: "Krakow", country: "Poland", code: "KRK"},
{airport: "Lawica", city: "Poznan", country: "Poland", code: "POZ"},
{airport: "Jasionka", city: "Rzeszow", country: "Poland", code: "RZE"},
{airport: "Redzikowo", city: "Slupsk", country: "Poland", code: "OSP"},
{airport: "Goleniow", city: "Szczechin", country: "Poland", code: "SZZ"},
{airport: "Okecie", city: "Warsaw", country: "Poland", code: "WAW"},
{airport: "Strachowice", city: "Wroclaw", country: "Poland", code: "WRO"},
{airport: "Babimost", city: "Zielona Gora", country: "Poland", code: "IEG"},
{airport: "Lisboa", city: "Lisbon", country: "Portugal", code: "LIS"},
{airport: "Rafael Hernandez", city: "Aguadilla", country: "Puerto Rico", code: "BQN"},
{airport: "Diego Jimenez Torres", city: "Fajardo", country: "Puerto Rico", code: "FAJ"},
{airport: "Eugenio Maria De Hostos", city: "Mayaguez", country: "Puerto Rico", code: "MAZ"},
{airport: "Mercedita", city: "Ponce", country: "Puerto Rico", code: "PSE"},
{airport: "Roosevelt Roads Ns", city: "Roosevelt Roads", country: "Puerto Rico", code: "NRR"},
{airport: "Luis Munoz Marin International", city: "San Juan", country: "Puerto Rico", code: "SJU"},
{airport: "Fernando Luis Ribas Dominicci", city: "San Juan", country: "Puerto Rico", code: "SIG"},
{airport: "Doha International", city: "Doha", country: "Qatar", code: "DOH"},
{airport: "St Denis Gillot", city: "St.-Denis", country: "Reunion Island", code: "RUN"},
{airport: "St Pierre Pierrefonds", city: "St.-Pierre", country: "Reunion Island", code: "ZSE"},
{airport: "Arad", city: "Arad", country: "Romania", code: "ARW"},
{airport: "Bacau", city: "Bacau", country: "Romania", code: "BCM"},
{airport: "Tautii Magheraus", city: "Baia Mare", country: "Romania", code: "BAY"},
{airport: "Otopeni", city: "Bucharest", country: "Romania", code: "OTP"},
{airport: "Baneasa", city: "Bucharest", country: "Romania", code: "BBU"},
{airport: "Caransebes", city: "Caransebes", country: "Romania", code: "CSB"},
{airport: "Someseni", city: "Cluj-Napoca", country: "Romania", code: "CLJ"},
{airport: "Mihail Kogalniceanu", city: "Constanta", country: "Romania", code: "CND"},
{airport: "Craiova", city: "Craiova", country: "Romania", code: "CRA"},
{airport: "Iasi", city: "Iasi", country: "Romania", code: "IAS"},
{airport: "Oradea", city: "Oradea", country: "Romania", code: "OMR"},
{airport: "Satu Mare", city: "Satu Mare", country: "Romania", code: "SUJ"},
{airport: "Sibiu", city: "Sibiu", country: "Romania", code: "SBZ"},
{airport: "Salcea", city: "Suceava", country: "Romania", code: "SCV"},
{airport: "Giarmata", city: "Timisoara", country: "Romania", code: "TSR"},
{airport: "Vidrasau", city: "Tirgu Mures", country: "Romania", code: "TGM"},
{airport: "Cataloi", city: "Tulcea", country: "Romania", code: "TCE"},
{airport: "Abakan", city: "Abakan", country: "Russia", code: "ABA"},
{airport: "Aktyubinsk", city: "Aktyubinsk", country: "Russia", code: "AKX"},
{airport: "Ada Muni", city: "Aldan", country: "Russia", code: "ADH"},
{airport: "Ashgabat", city: "Ashkhabad", country: "Russia", code: "ASB"},
{airport: "Astrakhan", city: "Astrakhan", country: "Russia", code: "ASF"},
{airport: "Bina", city: "Baku", country: "Russia", code: "BAK"},
{airport: "Barnaul", city: "Barnaul", country: "Russia", code: "BAX"},
{airport: "Manas", city: "Bishkek", country: "Russia", code: "FRU"},
{airport: "Ignatyevo", city: "Blagoveschensk", country: "Russia", code: "BQS"},
{airport: "Bratsk", city: "Bratsk", country: "Russia", code: "BTK"},
{airport: "Bryansk", city: "Bryansk", country: "Russia", code: "BZK"},
{airport: "Bukhara", city: "Bukhara", country: "Russia", code: "BHK"},
{airport: "Balandino", city: "Chelyabinsk", country: "Russia", code: "CEK"},
{airport: "Shymkent", city: "Chimkent", country: "Russia", code: "CIT"},
{airport: "Kadala", city: "Chita", country: "Russia", code: "HTA"},
{airport: "Dnipropetrovsk", city: "Dnepropetrovsk", country: "Russia", code: "DNK"},
{airport: "Donetsk", city: "Donetsk", country: "Russia", code: "DOK"},
{airport: "Dushanbe", city: "Dushanbe", country: "Russia", code: "DYU"},
{airport: "Zhezkazgan", city: "Dzhezkazgan", country: "Russia", code: "DZH"},
{airport: "Gomel", city: "Gomel", country: "Russia", code: "GME"},
{airport: "Irkutsk", city: "Irkutsk", country: "Russia", code: "IKT"},
{airport: "Khrabrovo", city: "Kaliningrad", country: "Russia", code: "KGD"},
{airport: "Kazan", city: "Kazan", country: "Russia", code: "KZN"},
{airport: "Kemerovo", city: "Kemorovo", country: "Russia", code: "KEJ"},
{airport: "Novy", city: "Khabarovsk", country: "Russia", code: "KHV"},
{airport: "Boryspil", city: "Kiev", country: "Russia", code: "KBP"},
{airport: "Zhuliany", city: "Kiev", country: "Russia", code: "IEV"},
{airport: "Pashkovsky", city: "Krasnodar", country: "Russia", code: "KRR"},
{airport: "Turkmenbashi Airport", city: "Krasnovodsk", country: "Russia", code: "KRW"},
{airport: "Kurgan", city: "Kurgan", country: "Russia", code: "KRO"},
{airport: "Kostanay", city: "Kustanay", country: "Russia", code: "KTQ"},
{airport: "Lviv", city: "Lvov", country: "Russia", code: "LWO"},
{airport: "Sokol", city: "Magadan", country: "Russia", code: "GDX"},
{airport: "Magnitogorsk", city: "Magnetiogorsk", country: "Russia", code: "MQF"},
{airport: "Uytash", city: "Makhachkala", country: "Russia", code: "MCX"},
{airport: "Mineralnyye Vody", city: "Mineralnye Vody", country: "Russia", code: "MRV"},
{airport: "Minsk 1", city: "Minsk", country: "Russia", code: "MHP"},
{airport: "Minsk 2", city: "Minsk 2", country: "Russia", code: "MSQ"},
{airport: "Sheremetyevo", city: "Moscow", country: "Russia", code: "SVO"},
{airport: "Vnukovo", city: "Moscow", country: "Russia", code: "VKO"},
{airport: "Murmansk", city: "Murmansk", country: "Russia", code: "MMK"},
{airport: "Nizhnevartovsk", city: "Nizhnevartovsk", country: "Russia", code: "NJC"},
{airport: "Nukus", city: "Nukus", country: "Russia", code: "NCU"},
{airport: "Odesa", city: "Odessa", country: "Russia", code: "ODS"},
{airport: "Tsentralny", city: "Omsk", country: "Russia", code: "OMS"},
{airport: "Orenburg", city: "Orenburg", country: "Russia", code: "REN"},
{airport: "Osh", city: "Osh", country: "Russia", code: "OSS"},
{airport: "Pleasanton Muni", city: "Penza", country: "Russia", code: "PEZ"},
{airport: "Bolshoye Savino", city: "Perm", country: "Russia", code: "PEE"},
{airport: "Yelizovo", city: "Petropavlovsk", country: "Russia", code: "PKC"},
{airport: "Provideniya Bay", city: "Provideniya Bay", country: "Russia", code: "PVS"},
{airport: "Rostov Na Donu", city: "Rostov", country: "Russia", code: "ROV"},
{airport: "Kurumoch", city: "Samara", country: "Russia", code: "KBY"},
{airport: "Samarkand", city: "Samarkand", country: "Russia", code: "SKD"},
{airport: "Semipalatinsk", city: "Semiplatinsk", country: "Russia", code: "PLX"},
{airport: "Simferopol", city: "Simferopol", country: "Russia", code: "SIP"},
{airport: "Sochi", city: "Sochi", country: "Russia", code: "AER"},
{airport: "Pulkovo", city: "St. Petersburg", country: "Russia", code: "LED"},
{airport: "Shpakovskoye", city: "Stavropol", country: "Russia", code: "STW"},
{airport: "Surgut", city: "Surgut", country: "Russia", code: "SGC"},
{airport: "Koltsovo", city: "Sverdlovsk", country: "Russia", code: "SVX"},
{airport: "Syktyvkar", city: "Syktyvkar", country: "Russia", code: "SCW"},
{airport: "Cabool Mem", city: "Tobolsk", country: "Russia", code: "TOX"},
{airport: "Astana", city: "Tselinograd", country: "Russia", code: "TSE"},
{airport: "Migalovo", city: "Tver", country: "Russia", code: "KLD"},
{airport: "Ufa", city: "Ufa", country: "Russia", code: "UFA"},
{airport: "Mukhino", city: "Ulan-Ude", country: "Russia", code: "UUD"},
{airport: "Uralsk", city: "Uralsk", country: "Russia", code: "URA"},
{airport: "Vitebsk", city: "Vitebsk", country: "Russia", code: "VTB"},
{airport: "Knevichi", city: "Vladivostok", country: "Russia", code: "VVO"},
{airport: "Gumrak", city: "Volgograd", country: "Russia", code: "VOG"},
{airport: "Chertovitskoye", city: "Voronezh", country: "Russia", code: "VOZ"},
{airport: "Yakutsk", city: "Yakutsk", country: "Russia", code: "YKS"},
{airport: "Zvartnots", city: "Yerevan", country: "Russia", code: "EVN"},
{airport: "Khomutovo", city: "Yuzhno-Sakhalinsk", country: "Russia", code: "UUS"},
{airport: "Gisenyi", city: "Gisenyi", country: "Rwanda", code: "GYI"},
{airport: "Kamembe", city: "Kamembe", country: "Rwanda", code: "KME"},
{airport: "Kigali International", city: "Kigali", country: "Rwanda", code: "KGL"},
{airport: "Faleolo International", city: "Faleolo", country: "Samoa", code: "APW"},
{airport: "Pago Pago International", city: "Pago Pago", country: "Samoa", code: "PPG"},
{airport: "Principe", city: "Principe", country: "Sao Tome & Principe", code: "PCP"},
{airport: "Sao Tome International", city: "Sao Tome", country: "Sao Tome & Principe", code: "TMS"},
{airport: "Abha", city: "Abha", country: "Saudi Arabia", code: "AHB"},
{airport: "Al Ahsa", city: "Al-Ahsa", country: "Saudi Arabia", code: "LEA"},
{airport: "Al Jouf", city: "Al-Jouf", country: "Saudi Arabia", code: "AJO"},
{airport: "Arar", city: "Arar", country: "Saudi Arabia", code: "RAE"},
{airport: "Bisha", city: "Bisha", country: "Saudi Arabia", code: "BHH"},
{airport: "King Fahd International", city: "Dammam", country: "Saudi Arabia", code: "DMM"},
{airport: "King Abdulaziz Ab", city: "Dhahran", country: "Saudi Arabia", code: "DHA"},
{airport: "Al Baha", city: "El-Baha", country: "Saudi Arabia", code: "ABT"},
{airport: "Gassim", city: "Gassim", country: "Saudi Arabia", code: "ELQ"},
{airport: "Jazan", city: "Gizan", country: "Saudi Arabia", code: "GIZ"},
{airport: "Guriat", city: "Guriat", country: "Saudi Arabia", code: "URY"},
{airport: "Qaisumah", city: "Hafr Al-Batin", country: "Saudi Arabia", code: "AQI"},
{airport: "Hail", city: "Hail", country: "Saudi Arabia", code: "HAS"},
{airport: "King Abdulaziz International", city: "Jeddah", country: "Saudi Arabia", code: "JED"},
{airport: "King Khaled Military City", city: "King Khalid Mil.City", country: "Saudi Arabia", code: "HBT"},
{airport: "Prince Mohammad Bin Abdulaziz", city: "Madinah", country: "Saudi Arabia", code: "MED"},
{airport: "Nejran", city: "Nejran", country: "Saudi Arabia", code: "EAM"},
{airport: "Rafha", city: "Rafha", country: "Saudi Arabia", code: "RAH"},
{airport: "King Khaled International", city: "Riyadh", country: "Saudi Arabia", code: "RUH"},
{airport: "Sharurah", city: "Sharurah", country: "Saudi Arabia", code: "SHW"},
{airport: "Sulayel", city: "Sulayel", country: "Saudi Arabia", code: "SLF"},
{airport: "Tabuk", city: "Tabuk", country: "Saudi Arabia", code: "TUU"},
{airport: "Taif", city: "Taif", country: "Saudi Arabia", code: "TIF"},
{airport: "Turaif", city: "Turaif", country: "Saudi Arabia", code: "TUI"},
{airport: "Wejh", city: "Wejh", country: "Saudi Arabia", code: "EJH"},
{airport: "Yenbo", city: "Yenbo", country: "Saudi Arabia", code: "YNB"},
{airport: "Kirkwall", city: "Kirkwall", country: "Scotland", code: "KOI"},
{airport: "Bakel", city: "Bakel", country: "Senegal", code: "BXE"},
{airport: "Cap Skiring", city: "Cap Skiring", country: "Senegal", code: "CSK"},
{airport: "Leopold Sedar Senghor International", city: "Dakar", country: "Senegal", code: "DKR"},
{airport: "Kaolack", city: "Kaolack", country: "Senegal", code: "KLC"},
{airport: "Kedougou", city: "Kedougou", country: "Senegal", code: "KGG"},
{airport: "Kolda", city: "Kolda", country: "Senegal", code: "KDA"},
{airport: "Saint Louis", city: "St. Louis", country: "Senegal", code: "XLS"},
{airport: "Tambacounda", city: "Tambacounda", country: "Senegal", code: "TUD"},
{airport: "Ziguinchor", city: "Ziguinchor", country: "Senegal", code: "ZIG"},
{airport: "Beograd", city: "Beograd", country: "Serbia", code: "BEG"},
{airport: "Pristina", city: "Pristina", country: "Serbia (Kosovo)", code: "PRN"},
{airport: "Desroches", city: "Desroches", country: "Seychelles", code: "DES"},
{airport: "Seychelles International", city: "Mahe", country: "Seychelles", code: "SEZ"},
{airport: "Praslin", city: "Praslin", country: "Seychelles", code: "PRI"},
{airport: "Freetown Lungi", city: "Freetown", country: "Sierra Leone", code: "FNA"},
{airport: "Hastings", city: "Hastings", country: "Sierra Leone", code: "HGS"},
{airport: "Paya Lebar", city: "Paya Lebar", country: "Singapore", code: "QPG"},
{airport: "Singapore Changi", city: "Singapore", country: "Singapore", code: "SIN"},
{airport: "Seletar", city: "Singapore", country: "Singapore", code: "XSP"},
{airport: "M R Stefanik", city: "Bratislava", country: "Slovakia", code: "BTS"},
{airport: "Kosice", city: "Kosice", country: "Slovakia", code: "KSC"},
{airport: "Piestany", city: "Piestany", country: "Slovakia", code: "PZY"},
{airport: "Tatry", city: "Poprad", country: "Slovakia", code: "TAT"},
{airport: "Sliac", city: "Sliac", country: "Slovakia", code: "SLD"},
{airport: "Ljubljana", city: "Ljubliana", country: "Slovenia", code: "LJU"},
{airport: "Maribor", city: "Maribor", country: "Slovenia", code: "MBX"},
{airport: "Portoroz", city: "Portoroz", country: "Slovenia", code: "POW"},
{airport: "Berbera", city: "Berbera", country: "Somalia", code: "BBO"},
{airport: "Hargeisa", city: "Hargeisa", country: "Somalia", code: "HGA"},
{airport: "Kisimayu", city: "Kismayu", country: "Somalia", code: "KMU"},
{airport: "Mogadishu", city: "Mogadishu", country: "Somalia", code: "MGQ"},
{airport: "Aggeneys", city: "Aggeneys", country: "South Africa", code: "AGZ"},
{airport: "Alexander Bay", city: "Alexander Bay", country: "South Africa", code: "ALJ"},
{airport: "Bisho", city: "Bisho", country: "South Africa", code: "VIY"},
{airport: "Bloemfontein", city: "Bloemfontein", country: "South Africa", code: "BFN"},
{airport: "Cape Town International", city: "Cape Town", country: "South Africa", code: "CPT"},
{airport: "Durban International", city: "Durban", country: "South Africa", code: "DUR"},
{airport: "Virginia", city: "Durban", country: "South Africa", code: "VIR"},
{airport: "East London", city: "East London", country: "South Africa", code: "ELS"},
{airport: "Ellisras", city: "Ellisras", country: "South Africa", code: "ELL"},
{airport: "George", city: "George", country: "South Africa", code: "GRJ"},
{airport: "Heidelberg", city: "Heidelberg", country: "South Africa", code: "GHC"},
{airport: "Hoedspruit Afs", city: "Hoedspruit", country: "South Africa", code: "HDS"},
{airport: "Johannesburg International", city: "Johannesburg", country: "South Africa", code: "JNB"},
{airport: "Lanseria", city: "Johannesburg", country: "South Africa", code: "HLA"},
{airport: "Grand Central", city: "Johannesburg", country: "South Africa", code: "GCJ"},
{airport: "Rand", city: "Johannesburg", country: "South Africa", code: "HCS"},
{airport: "Kimberley", city: "Kimberley", country: "South Africa", code: "KIM"},
{airport: "Kleinsee", city: "Kleinsee", country: "South Africa", code: "KLZ"},
{airport: "Ladysmith", city: "Ladysmith", country: "South Africa", code: "LAY"},
{airport: "Louis Trichardt Afb", city: "Louis Trichardt", country: "South Africa", code: "LCD"},
{airport: "Mafikeng North", city: "Mafikeng", country: "South Africa", code: "MFK"},
{airport: "Margate", city: "Margate", country: "South Africa", code: "MGH"},
{airport: "Messina", city: "Messina", country: "South Africa", code: "MEZ"},
{airport: "Nelspruit", city: "Nelspruit", country: "South Africa", code: "NLP"},
{airport: "Newcastle", city: "Newcastle", country: "South Africa", code: "NCS"},
{airport: "Oudtshoorn", city: "Oudtshoorn", country: "South Africa", code: "DUH"},
{airport: "Phalaborwa", city: "Phalaborwa", country: "South Africa", code: "PHW"},
{airport: "Pietermaritzburg", city: "Pietermaritzburg", country: "South Africa", code: "PZB"},
{airport: "Pietersburg Muni", city: "Pietersburg", country: "South Africa", code: "PTG"},
{airport: "Pilanesberg", city: "Pilanesberg", country: "South Africa", code: "NTY"},
{airport: "Port Elizabeth", city: "Port Elizabeth", country: "South Africa", code: "PLZ"},
{airport: "Wonderboom", city: "Pretoria", country: "South Africa", code: "PRY"},
{airport: "Queenstown", city: "Queenstown", country: "South Africa", code: "ZQN"},
{airport: "Richards Bay", city: "Richard'S Bay", country: "South Africa", code: "RCB"},
{airport: "Sishen", city: "Sishen", country: "South Africa", code: "SIS"},
{airport: "Skukuza", city: "Skukuza", country: "South Africa", code: "SZK"},
{airport: "Springbok", city: "Springbok", country: "South Africa", code: "SBU"},
{airport: "P R Mphephu", city: "Thohoyandou", country: "South Africa", code: "THY"},
{airport: "Tzaneen", city: "Tzaneen", country: "South Africa", code: "LTA"},
{airport: "Prince Mangosuthu Buthelezi", city: "Ulundi", country: "South Africa", code: "ULD"},
{airport: "Umtata", city: "Umtata", country: "South Africa", code: "UTT"},
{airport: "Upington", city: "Upington", country: "South Africa", code: "UTN"},
{airport: "Vryburg", city: "Vryburg", country: "South Africa", code: "VRU"},
{airport: "Vryheid", city: "Vryheid", country: "South Africa", code: "VYD"},
{airport: "Welkom", city: "Welkom", country: "South Africa", code: "WEL"},
{airport: "Alicante", city: "Alicante", country: "Spain", code: "ALC"},
{airport: "Almeria", city: "Almeria", country: "Spain", code: "LEI"},
{airport: "Asturias", city: "Aviles", country: "Spain", code: "OVD"},
{airport: "Talavera La Real", city: "Badajoz", country: "Spain", code: "BJZ"},
{airport: "Barcelona", city: "Barcelona", country: "Spain", code: "BCN"},
{airport: "Bilbao", city: "Bilbao", country: "Spain", code: "BIO"},
{airport: "Cordoba", city: "Cordoba", country: "Spain", code: "ODB"},
{airport: "Girona", city: "Gerona", country: "Spain", code: "GRO"},
{airport: "Armilla", city: "Granada", country: "Spain", code: "GRX"},
{airport: "Granada", city: "Granada", country: "Spain", code: "GRX"},
{airport: "Ibiza", city: "Ibiza", country: "Spain", code: "IBZ"},
{airport: "Jerez", city: "Jerez", country: "Spain", code: "XRY"},
{airport: "A Coruna", city: "La Coruna", country: "Spain", code: "LCG"},
{airport: "Barajas", city: "Madrid", country: "Spain", code: "MAD"},
{airport: "Torrejon", city: "Madrid", country: "Spain", code: "TOJ"},
{airport: "Malaga", city: "Malaga", country: "Spain", code: "AGP"},
{airport: "Menorca", city: "Menorca", country: "Spain", code: "MAH"},
{airport: "Murcia San Javier", city: "Murcia", country: "Spain", code: "MJV"},
{airport: "Palma De Mallorca", city: "Palma De Mallorca", country: "Spain", code: "PMI"},
{airport: "Pamplona", city: "Pamplona", country: "Spain", code: "PNA"},
{airport: "Reus", city: "Reus", country: "Spain", code: "REU"},
{airport: "Salamanca", city: "Salamanca", country: "Spain", code: "SLM"},
{airport: "San Sebastian", city: "San Sebastian", country: "Spain", code: "EAS"},
{airport: "La Palma", city: "Santa Cruz De La Palma", country: "Spain", code: "SPC"},
{airport: "Santander", city: "Santander", country: "Spain", code: "SDR"},
{airport: "Santiago", city: "Santiago", country: "Spain", code: "SCQ"},
{airport: "Seo De Urgel", city: "Seo De Urgel", country: "Spain", code: "LEU"},
{airport: "Sevilla", city: "Sevilla", country: "Spain", code: "SVQ"},
{airport: "Moron Ab", city: "Sevilla", country: "Spain", code: "OZP"},
{airport: "Valencia", city: "Valencia", country: "Spain", code: "VLC"},
{airport: "Valladolid", city: "Valladolid", country: "Spain", code: "VLL"},
{airport: "Vigo", city: "Vigo", country: "Spain", code: "VGO"},
{airport: "Vitoria", city: "Vitoria", country: "Spain", code: "VIT"},
{airport: "Zaragoza Ab", city: "Zaragoza", country: "Spain", code: "ZAZ"},
{airport: "Melilla", city: "Melilla", country: "Spanish North Africa", code: "MLN"},
{airport: "Bandaranaike International", city: "Colombo", country: "Sri Lanka", code: "CMB"},
{airport: "Colombo Ratmalana", city: "Colombo", country: "Sri Lanka", code: "RML"},
{airport: "Amparai", city: "Galoya", country: "Sri Lanka", code: "GOY"},
{airport: "Kankesanturai", city: "Jaffna", country: "Sri Lanka", code: "JAF"},
{airport: "China Bay", city: "Trinciomalee", country: "Sri Lanka", code: "TRR"},
{airport: "Robert L Bradshaw", city: "Basse Terre", country: "St. Kitts & Nevis", code: "SKB"},
{airport: "George F L Charles", city: "Castries", country: "St. Lucia Island", code: "SLU"},
{airport: "Hewanorra International", city: "Hewanorra, St. Lucia", country: "St. Lucia Island", code: "UVF"},
{airport: "St Pierre", city: "St.-Pierre", country: "St. Pierre & Miquelon", code: "FSP"},
{airport: "Canouan", city: "Canouan Island", country: "St.Vincent/Grenadines", code: "CIW"},
{airport: "E T Joshua", city: "Kingstown", country: "St.Vincent/Grenadines", code: "SVD"},
{airport: "Mustique", city: "Mustique", country: "St.Vincent/Grenadines", code: "MQS"},
{airport: "Dongola", city: "Dongola", country: "Sudan", code: "DOG"},
{airport: "El Fasher", city: "El Fasher", country: "Sudan", code: "ELF"},
{airport: "El Obeid", city: "El Obeid", country: "Sudan", code: "EBD"},
{airport: "Juba", city: "Juba", country: "Sudan", code: "JUB"},
{airport: "Kassala", city: "Kassala", country: "Sudan", code: "KSL"},
{airport: "Khartoum", city: "Khartoum", country: "Sudan", code: "KRT"},
{airport: "Malakal", city: "Malakal", country: "Sudan", code: "MAK"},
{airport: "Nyala", city: "Nyala", country: "Sudan", code: "UYL"},
{airport: "Port Sudan", city: "Port Sudan", country: "Sudan", code: "PZU"},
{airport: "Wau", city: "Wau", country: "Sudan", code: "WUU"},
{airport: "Zorg En Hoop", city: "Paramaribo", country: "Surinam", code: "ORG"},
{airport: "Johan A Pengel International", city: "Zandery", country: "Surinam", code: "PBM"},
{airport: "Matsapha", city: "Manzini", country: "Swaziland", code: "MTS"},
{airport: "Angelholm", city: "Angelholm", country: "Sweden", code: "AGH"},
{airport: "Arvidsjaur", city: "Arvidsjaur", country: "Sweden", code: "AJR"},
{airport: "Borlange", city: "Borlange", country: "Sweden", code: "BLE"},
{airport: "Gallivare", city: "Gallivare", country: "Sweden", code: "GEV"},
{airport: "Gavle Sandviken", city: "Gavle", country: "Sweden", code: "GVX"},
{airport: "Landvetter", city: "Gothenborg", country: "Sweden", code: "GOT"},
{airport: "Save", city: "Gothenborg", country: "Sweden", code: "GSE"},
{airport: "Halmstad", city: "Halmstad", country: "Sweden", code: "HAD"},
{airport: "Hudiksvall", city: "Hudiksvall", country: "Sweden", code: "HUV"},
{airport: "Hultsfred", city: "Hultsfred", country: "Sweden", code: "HLF"},
{airport: "Jonkoping", city: "Joenkoeping", country: "Sweden", code: "JKG"},
{airport: "Kalmar", city: "Kalkmar", country: "Sweden", code: "KLR"},
{airport: "Karlskoga", city: "Karlskoga", country: "Sweden", code: "KSK"},
{airport: "Kiruna", city: "Kiruna", country: "Sweden", code: "KRN"},
{airport: "Kramfors Solleftea", city: "Kramfors", country: "Sweden", code: "KRF"},
{airport: "Kristianstad", city: "Kristianstad", country: "Sweden", code: "KID"},
{airport: "Landskrona", city: "Landskrona", country: "Sweden", code: "JLD"},
{airport: "Lidkoping", city: "Lidkoping", country: "Sweden", code: "LDK"},
{airport: "Saab", city: "Linkoeping", country: "Sweden", code: "LPI"},
{airport: "Kallax", city: "Lulea", country: "Sweden", code: "LLA"},
{airport: "Lycksele", city: "Lycksele", country: "Sweden", code: "LYC"},
{airport: "Sturup", city: "Malmoe", country: "Sweden", code: "MMX"},
{airport: "Mora", city: "Mora", country: "Sweden", code: "MXX"},
{airport: "Kungsangen", city: "Norrkoeping", country: "Sweden", code: "NRK"},
{airport: "Orebro", city: "Orebro", country: "Sweden", code: "ORB"},
{airport: "Ornskoldsvik", city: "Ornskoldsvik", country: "Sweden", code: "OER"},
{airport: "Oskarshamn", city: "Oskarshamn", country: "Sweden", code: "OSK"},
{airport: "Froson", city: "Ostersund", country: "Sweden", code: "OSD"},
{airport: "Ronneby", city: "Ronneby", country: "Sweden", code: "RNB"},
{airport: "Skelleftea", city: "Skelleftea", country: "Sweden", code: "SFT"},
{airport: "Skovde", city: "Skovde", country: "Sweden", code: "KVB"},
{airport: "Bromma", city: "Stockholm", country: "Sweden", code: "BMA"},
{airport: "Skavsta", city: "Stockholm", country: "Sweden", code: "NYO"},
{airport: "Arlanda", city: "Stockholm", country: "Sweden", code: "ARN"},
{airport: "Sundsvall Harnosand", city: "Sundsvall", country: "Sweden", code: "SDL"},
{airport: "Sveg", city: "Sveg", country: "Sweden", code: "EVG"},
{airport: "Trollhattan Vanersborg", city: "Trollhattan", country: "Sweden", code: "THN"},
{airport: "Umea", city: "Umea", country: "Sweden", code: "UME"},
{airport: "Vasteras", city: "Vasteras", country: "Sweden", code: "VST"},
{airport: "Kronoberg", city: "Vaxjo", country: "Sweden", code: "VXO"},
{airport: "Vilhelmina", city: "Vilhelmina", country: "Sweden", code: "VHM"},
{airport: "Visby", city: "Visby", country: "Sweden", code: "VBY"},
{airport: "St Gallen Altenrhein", city: "Altenrhein", country: "Switzerland", code: "ACH"},
{airport: "Bern Belp", city: "Bern", country: "Switzerland", code: "BRN"},
{airport: "Geneva Cointrin", city: "Geneva", country: "Switzerland", code: "GVA"},
{airport: "Lugano", city: "Lugano", country: "Switzerland", code: "LUG"},
{airport: "Samedan", city: "Samedan", country: "Switzerland", code: "SMV"},
{airport: "Sion", city: "Sion", country: "Switzerland", code: "SIR"},
{airport: "Zurich", city: "Zurich", country: "Switzerland", code: "ZRH"},
{airport: "Aleppo International", city: "Aleppo", country: "Syria", code: "ALP"},
{airport: "Damascus International", city: "Damascus", country: "Syria", code: "DAM"},
{airport: "Deir Zzor", city: "Deire Zor", country: "Syria", code: "DEZ"},
{airport: "Bassel Al Assad International", city: "Latakia", country: "Syria", code: "LTK"},
{airport: "Palmyra", city: "Palmyra", country: "Syria", code: "PMS"},
{airport: "Chiayi", city: "Chiayi", country: "Taiwan", code: "CYI"},
{airport: "Shang Yi", city: "Chinmen", country: "Taiwan", code: "KNH"},
{airport: "Taichung", city: "Chung", country: "Taiwan", code: "TXG"},
{airport: "Fengnin", city: "Fengnin", country: "Taiwan", code: "TTT"},
{airport: "Green Island", city: "Green Island", country: "Taiwan", code: "GNI"},
{airport: "Hualien", city: "Hualien", country: "Taiwan", code: "HUN"},
{airport: "Kaohsiung International", city: "Kaohsiung", country: "Taiwan", code: "KHH"},
{airport: "Lanyu", city: "Lanyu", country: "Taiwan", code: "KYD"},
{airport: "Makung", city: "Makung", country: "Taiwan", code: "MZG"},
{airport: "Matsu", city: "Matsu", country: "Taiwan", code: "MZW"},
{airport: "Pingtung South", city: "Pingtung", country: "Taiwan", code: "PIF"},
{airport: "Tainan", city: "Tainan", country: "Taiwan", code: "TNN"},
{airport: "Sungshan", city: "Taipei", country: "Taiwan", code: "TSA"},
{airport: "Chiang Kai Shek International", city: "Taipei", country: "Taiwan", code: "TPE"},
{airport: "Wang An", city: "Wang An", country: "Taiwan", code: "WOT"},
{airport: "Arusha", city: "Arusha", country: "Tanzania", code: "ARK"},
{airport: "Dar Es Salaam", city: "Dar Es Salaam", country: "Tanzania", code: "DAR"},
{airport: "Dodoma", city: "Dodoma", country: "Tanzania", code: "DOD"},
{airport: "Iringa", city: "Iringa", country: "Tanzania", code: "IRI"},
{airport: "Kilimanjaro International", city: "Kilimanjaro", country: "Tanzania", code: "JRO"},
{airport: "Moshi", city: "Moshi", country: "Tanzania", code: "QSI"},
{airport: "Mtwara", city: "Mtwara", country: "Tanzania", code: "MYW"},
{airport: "Mwanza", city: "Mwanza", country: "Tanzania", code: "MWZ"},
{airport: "Pemba", city: "Pemba", country: "Tanzania", code: "PMA"},
{airport: "Tanga", city: "Tanga", country: "Tanzania", code: "TGT"},
{airport: "Zanzibar", city: "Zanzibar", country: "Tanzania", code: "ZNZ"},
{airport: "Bangkok International", city: "Bangkok", country: "Thailand", code: "BKK"},
{airport: "Lampang", city: "Lampang", country: "Thailand", code: "LPT"},
{airport: "Loei", city: "Loei", country: "Thailand", code: "LOE"},
{airport: "Nakhon Phanom", city: "Nakhon Phanom", country: "Thailand", code: "KOP"},
{airport: "Khorat", city: "Nakhon Ratchasima", country: "Thailand", code: "NAK"},
{airport: "Cha Ian", city: "Nakhon Si Thammarat", country: "Thailand", code: "NST"},
{airport: "Narathiwat", city: "Narathiwat", country: "Thailand", code: "NAW"},
{airport: "Pattani", city: "Pattani", country: "Thailand", code: "PAN"},
{airport: "Phitsanulok", city: "Phitsanulok", country: "Thailand", code: "PHS"},
{airport: "Phrae", city: "Phrae", country: "Thailand", code: "PRH"},
{airport: "Phuket International", city: "Phuket", country: "Thailand", code: "HKT"},
{airport: "Hua Hin", city: "Prachuap Khiri Khan", country: "Thailand", code: "HHQ"},
{airport: "U Taphao International", city: "Rayong", country: "Thailand", code: "UTP"},
{airport: "Sakon Nakhon", city: "Sakon Nakhon", country: "Thailand", code: "SNO"},
{airport: "Hat Yai International", city: "Songkhla", country: "Thailand", code: "HDY"},
{airport: "Trang", city: "Trang", country: "Thailand", code: "TST"},
{airport: "Udon Thani", city: "Udon Thani", country: "Thailand", code: "UTH"},
{airport: "Lome Tokoin", city: "Lome", country: "Togo", code: "LFW"},
{airport: "Niamtougou", city: "Niatougou", country: "Togo", code: "LRL"},
{airport: "Haapai", city: "Ha'Apai", country: "Tonga", code: "HPA"},
{airport: "Fua Amotu International", city: "Tongatapu", country: "Tonga", code: "TBU"},
{airport: "Vavau International", city: "Vava'U", country: "Tonga", code: "VAV"},
{airport: "Piarco", city: "Port-Of-Spain", country: "Trinidad & Tobago", code: "POS"},
{airport: "Crown Point", city: "Scarborough", country: "Trinidad & Tobago", code: "TAB"},
{airport: "Arutua", city: "Arutua", country: "Tuamotu Islands", code: "AXR"},
{airport: "Hao", city: "Hao Island", country: "Tuamotu Islands", code: "HOI"},
{airport: "Kaukura", city: "Kaukura Atoll", country: "Tuamotu Islands", code: "KKR"},
{airport: "Zarzis", city: "Djerba", country: "Tunisia", code: "DJE"},
{airport: "El Borma", city: "El Borma", country: "Tunisia", code: "EBM"},
{airport: "Gabes", city: "Gabes", country: "Tunisia", code: "GAE"},
{airport: "Gafsa", city: "Gafsa", country: "Tunisia", code: "GAF"},
{airport: "Habib Bourguiba International", city: "Monastir", country: "Tunisia", code: "MIR"},
{airport: "Thyna", city: "Sfax", country: "Tunisia", code: "SFA"},
{airport: "Nefta", city: "Tozeur", country: "Tunisia", code: "TOE"},
{airport: "Carthage", city: "Tunis", country: "Tunisia", code: "TUN"},
{airport: "Incirlik Ab", city: "Adana", country: "Turkey", code: "ADA"},
{airport: "Adana", city: "Adana", country: "Turkey", code: "ADA"},
{airport: "Afyon", city: "Afyon", country: "Turkey", code: "AFY"},
{airport: "Esenboga", city: "Ankara", country: "Turkey", code: "ESB"},
{airport: "Etimesgut", city: "Ankara", country: "Turkey", code: "ANK"},
{airport: "Antalya", city: "Antalya", country: "Turkey", code: "AYT"},
{airport: "Balikesir", city: "Balikesir", country: "Turkey", code: "BZI"},
{airport: "Bandirma", city: "Bandirma", country: "Turkey", code: "BDM"},
{airport: "Batman", city: "Batman", country: "Turkey", code: "BAL"},
{airport: "Bursa", city: "Bursa", country: "Turkey", code: "BTZ"},
{airport: "Dalaman", city: "Dalaman", country: "Turkey", code: "DLM"},
{airport: "Cardak", city: "Denizli", country: "Turkey", code: "DNZ"},
{airport: "Diyarbakir", city: "Diyabakir", country: "Turkey", code: "DIY"},
{airport: "Elazig", city: "Elazig", country: "Turkey", code: "EZS"},
{airport: "Erzincan", city: "Erzincan", country: "Turkey", code: "ERC"},
{airport: "Erzurum", city: "Erzurum", country: "Turkey", code: "ERZ"},
{airport: "Eskisehir", city: "Eskisehir", country: "Turkey", code: "ESK"},
{airport: "Oguzeli", city: "Gaziantep", country: "Turkey", code: "GZT"},
{airport: "Ataturk", city: "Istanbul", country: "Turkey", code: "IST"},
{airport: "Adnan Menderes", city: "Izmir", country: "Turkey", code: "ADB"},
{airport: "Cigli", city: "Izmir", country: "Turkey", code: "IGL"},
{airport: "Erkilet", city: "Kayseri", country: "Turkey", code: "ASR"},
{airport: "Konya", city: "Konya", country: "Turkey", code: "KYA"},
{airport: "Erhac", city: "Malatya", country: "Turkey", code: "MLX"},
{airport: "Merzifon", city: "Merzifon", country: "Turkey", code: "MZH"},
{airport: "Samsun Airport", city: "Samsun", country: "Turkey", code: "SSX"},
{airport: "Sivas", city: "Sivas", country: "Turkey", code: "VAS"},
{airport: "Trabzon", city: "Trabzon", country: "Turkey", code: "TZX"},
{airport: "Van", city: "Van", country: "Turkey", code: "VAN"},
{airport: "North Caicos", city: "North Caicos", country: "Turks & Caicos I.", code: "NCA"},
{airport: "Turks & Caicos", city: "Providenciales", country: "Turks & Caicos I.", code: "PLS"},
{airport: "South Caicos", city: "South Caicos", country: "Turks & Caicos I.", code: "XSC"},
{airport: "Funafuti International Airport", city: "Funafuti", country: "Tuvalu Island", code: "FUN"},
{airport: "Dyce", city: "Aberdeen", country: "Scotland", code: "ABZ"},
{airport: "Edinburgh", city: "Edinburgh", country: "Scotland", code: "EDI"},
{airport: "Glasgow", city: "Glasgow", country: "Scotland", code: "GLA"},
{airport: "Inverness", city: "Inverness", country: "Scotland", code: "INV"},
{airport: "Islay", city: "Islay", country: "Scotland", code: "ILY"},
{airport: "Prestwick", city: "Prestwick", country: "Scotland", code: "PIK"},
{airport: "Lydd", city: "Lydd", country: "England", code: "LYX"},
{airport: "Marham", city: "Marham", country: "England", code: "KNF"},
{airport: "Northolt Raf", city: "Northolt", country: "England", code: "NHT"},
{airport: "Entebbe International", city: "Entebbe", country: "Uganda", code: "EBB"},
{airport: "Soroti", city: "Soroti", country: "Uganda", code: "SRT"},
{airport: "Bateen", city: "Abu Dhabi", country: "United Arab Emirates", code: "AZI"},
{airport: "Abu Dhabi International", city: "Abu Dhabi", country: "United Arab Emirates", code: "AUH"},
{airport: "Dubai International", city: "Dubai", country: "United Arab Emirates", code: "DXB"},
{airport: "Fujairah International", city: "Fujeirah", country: "United Arab Emirates", code: "FJR"},
{airport: "Ras Al Khaimah International", city: "Ras Al Khaimah", country: "United Arab Emirates", code: "RKT"},
{airport: "Sharjah International", city: "Sharjah", country: "United Arab Emirates", code: "SHJ"},
{airport: "Artigas International", city: "Artigas", country: "Uruguay", code: "ATI"},
{airport: "Laguna De Los Patos International", city: "Colonia", country: "Uruguay", code: "CYR"},
{airport: "Cerro Largo", city: "Melo", country: "Uruguay", code: "MLZ"},
{airport: "Carrasco International", city: "Montevideo", country: "Uruguay", code: "MVD"},
{airport: "Angel S Adami", city: "Montevideo", country: "Uruguay", code: "MVD"},
{airport: "Tydeo Larre Borges International", city: "Paysandu", country: "Uruguay", code: "PDU"},
{airport: "El Jaguel International", city: "Punta Del Este", country: "Uruguay", code: "PDP"},
{airport: "Rivera International", city: "Rivera", country: "Uruguay", code: "RVY"},
{airport: "Nueva Hesperides International", city: "Salto", country: "Uruguay", code: "STY"},
{airport: "Tacuarembo", city: "Tacuarembo", country: "Uruguay", code: "TAW"},
{airport: "Adak", city: "Adak Island", country: "USA", code: "ADK"},
{airport: "Merrill Fld", city: "Anchorage", country: "USA", code: "MRI"},
{airport: "Ted Stevens Anchorage International", city: "Anchorage", country: "USA", code: "ANC"},
{airport: "Elmendorf Afb", city: "Anchorage", country: "USA", code: "EDF"},
{airport: "Annette Island", city: "Annette Island", country: "USA", code: "ANN"},
{airport: "Wiley Post Will Rogers Mem", city: "Barrow", country: "USA", code: "BRW"},
{airport: "Bettles", city: "Bettles", country: "USA", code: "BTT"},
{airport: "Cape Lisburne Lrrs", city: "Cape Lisburne", country: "USA", code: "LUR"},
{airport: "Cape Newenham Lrrs", city: "Cape Newenham", country: "USA", code: "EHM"},
{airport: "Cold Bay", city: "Cold Bay", country: "USA", code: "CDB"},
{airport: "Merle K Mudhole Smith", city: "Cordova", country: "USA", code: "CDV"},
{airport: "Deadhorse", city: "Deadhorse", country: "USA", code: "SCC"},
{airport: "Allen Aaf", city: "Delta Junction", country: "USA", code: "BIG"},
{airport: "Dillingham", city: "Dillingham", country: "USA", code: "HDH"},
{airport: "Fairbanks International", city: "Fairbanks", country: "USA", code: "FAI"},
{airport: "Eielson Afb", city: "Fairbanks", country: "USA", code: "EIL"},
{airport: "Wainwright Aaf", city: "Fort Wainwright", country: "USA", code: "FBK"},
{airport: "Wainwright As", city: "Fort Wainwright", country: "USA", code: "AIN"},
{airport: "Fort Yukon", city: "Fort Yukon", country: "USA", code: "FYU"},
{airport: "Edward G Pitka Sr", city: "Galena", country: "USA", code: "GAL"},
{airport: "Gulkana", city: "Gulkana", country: "USA", code: "GKN"},
{airport: "Homer", city: "Homer", country: "USA", code: "HOM"},
{airport: "Iliamna", city: "Iliamna", country: "USA", code: "ILI"},
{airport: "Indian Mountain Lrrs", city: "Indian Mountains", country: "USA", code: "UTO"},
{airport: "Juneau International", city: "Juneau", country: "USA", code: "JNU"},
{airport: "Kenai Muni", city: "Kenai", country: "USA", code: "ENA"},
{airport: "Ketchikan International", city: "Ketchikan", country: "USA", code: "KTN"},
{airport: "King Salmon", city: "King Salmon", country: "USA", code: "AKN"},
{airport: "Kodiak", city: "Kodiak", country: "USA", code: "ADQ"},
{airport: "Ralph Wien Mem", city: "Kotzebue", country: "USA", code: "OTZ"},
{airport: "Mc Grath", city: "Mcgrath", country: "USA", code: "MCG"},
{airport: "Nome", city: "Nome", country: "USA", code: "OME"},
{airport: "Northway", city: "Northway", country: "USA", code: "ORT"},
{airport: "Oliktok Lrrs", city: "Oliktok Point", country: "USA", code: "OLI"},
{airport: "Point Lay Lrrs", city: "Point Lay", country: "USA", code: "PIZ"},
{airport: "Platinum", city: "Port Moller", country: "USA", code: "PML"},
{airport: "Eareckson As", city: "Shemya", country: "USA", code: "SYA"},
{airport: "Sitka Rocky Gutierrez", city: "Sitka", country: "USA", code: "SIT"},
{airport: "Skagway", city: "Skagway", country: "USA", code: "SGY"},
{airport: "Sparrevohn Lrrs", city: "Sparrevohn", country: "USA", code: "SVW"},
{airport: "St Paul Island", city: "St. Paul Island", country: "USA", code: "SNP"},
{airport: "Talkeetna", city: "Talkeetna", country: "USA", code: "TKA"},
{airport: "Ralph M Calhoun", city: "Tanana", country: "USA", code: "TAL"},
{airport: "Tatalina Lrrs", city: "Tatalina", country: "USA", code: "TLJ"},
{airport: "Tin City Lrrs", city: "Tin City", country: "USA", code: "TNC"},
{airport: "Unalakleet", city: "Unalakleet", country: "USA", code: "UNK"},
{airport: "Unalaska", city: "Unalaska", country: "USA", code: "DUT"},
{airport: "Valdez Pioneer Field", city: "Valdez", country: "USA", code: "VDZ"},
{airport: "Yakutat", city: "Yakutat", country: "USA", code: "YAK"},
{airport: "Anniston Metropolitan", city: "Anniston", country: "USA", code: "ANB"},
{airport: "Birmingham International", city: "Birmingham", country: "USA", code: "BHM"},
{airport: "Dothan Rgnl", city: "Dothan", country: "USA", code: "DHN"},
{airport: "Mobile Rgnl", city: "Mobile", country: "USA", code: "MOB"},
{airport: "Mobile Downtown", city: "Mobile", country: "USA", code: "BFM"},
{airport: "Maxwell Afb", city: "Montgomery", country: "USA", code: "MXF"},
{airport: "Redstone Aaf", city: "Redstone", country: "USA", code: "HUA"},
{airport: "Craig Fld", city: "Selma", country: "USA", code: "SEM"},
{airport: "Barter Island Lrrs", city: "Barter Island", country: "USA", code: "BTI"},
{airport: "Bethel", city: "Bethel", country: "USA", code: "BET"},
{airport: "Arkansas International", city: "Blytheville", country: "USA", code: "BYH"},
{airport: "South Arkansas Rgnl At Goodwin Fld", city: "El Dorado", country: "USA", code: "ELD"},
{airport: "Drake Fld", city: "Fayetteville", country: "USA", code: "FYV"},
{airport: "Fort Smith Rgnl", city: "Fort Smith", country: "USA", code: "FSM"},
{airport: "Boone Co", city: "Harrison", country: "USA", code: "HRO"},
{airport: "Little Rock Afb", city: "Jacksonville", country: "USA", code: "LRF"},
{airport: "Jonesboro Muni", city: "Jonesboro", country: "USA", code: "JBR"},
{airport: "Adams Fld", city: "Little Rock", country: "USA", code: "LIT"},
{airport: "Palmer Muni", city: "Palmer", country: "USA", code: "PAQ"},
{airport: "Grider Fld", city: "Pine Bluff", country: "USA", code: "PBF"},
{airport: "Robinson Aaf", city: "Robinson", country: "USA", code: "RBM"},
{airport: "Texarkana Rgnl Webb Fld", city: "Texarkana", country: "USA", code: "TXK"},
{airport: "Bisbee Douglas International", city: "Douglas", country: "USA", code: "DUG"},
{airport: "Sierra Vista Muni Libby Aaf", city: "Fort Huachuca", country: "USA", code: "FHU"},
{airport: "Nogales International", city: "Nogales", country: "USA", code: "NOG"},
{airport: "Luke Afb", city: "Phoenix", country: "USA", code: "LUF"},
{airport: "Phoenix Sky Harbor International", city: "Phoenix", country: "USA", code: "PHX"},
{airport: "Ernest A Love Fld", city: "Prescott", country: "USA", code: "PRC"},
{airport: "Davis Monthan Afb", city: "Tucson", country: "USA", code: "DMA"},
{airport: "Tucson International", city: "Tucson", country: "USA", code: "TUS"},
{airport: "Yuma Mcas Yuma International", city: "Yuma", country: "USA", code: "YUM"},
{airport: "Castle", city: "Atwater", country: "USA", code: "MER"},
{airport: "Meadows Fld", city: "Bakersfield", country: "USA", code: "BFL"},
{airport: "Bicycle Lake Aaf (Fort Irwin)", city: "Barstow", country: "USA", code: ""},
{airport: "Burbank Glendale Pasadena / Bob Hope", city: "Burbank", country: "USA", code: ""},
{airport: "Calexico International", city: "Calexico", country: "USA", code: "CXL"},
{airport: "Chico Muni", city: "Chico", country: "USA", code: "CIC"},
{airport: "Edwards Afb", city: "Edwards Afb", country: "USA", code: "EDW"},
{airport: "El Centro Naf", city: "El Centro", country: "USA", code: "NJK"},
{airport: "Travis Afb", city: "Fairfield", country: "USA", code: "SUU"},
{airport: "Fresno Yosemite International", city: "Fresno", country: "USA", code: "FAT"},
{airport: "Jack Northrop Fld Hawthorne Muni", city: "Hawthorne", country: "USA", code: "HHR"},
{airport: "Imperial Co", city: "Imperial", country: "USA", code: "IPL"},
{airport: "Lemoore Nas", city: "Lemoore", country: "USA", code: "NLC"},
{airport: "Vandenberg Afb", city: "Lompoc", country: "USA", code: "VBG"},
{airport: "Long Beach", city: "Long Beach", country: "USA", code: "LGB"},
{airport: "Los Angeles International", city: "Los Angeles", country: "USA", code: "LAX"},
{airport: "Beale Afb", city: "Marysville", country: "USA", code: "BAB"},
{airport: "Modesto City Co Harry Sham", city: "Modesto", country: "USA", code: "MOD"},
{airport: "Monterey Peninsula", city: "Monterey", country: "USA", code: "MRY"},
{airport: "Moffett Federal Afld", city: "Mountain View", country: "USA", code: "NUQ"},
{airport: "Metropolitan Oakland International", city: "Oakland", country: "USA", code: "OAK"},
{airport: "Ontario International", city: "Ontario", country: "USA", code: "ONT"},
{airport: "Palm Springs International", city: "Palm Springs", country: "USA", code: "PSP"},
{airport: "Palmdale Prod Flt Test Instl Af Plt 42", city: "Palmdale", country: "USA", code: "PMD"},
{airport: "Point Mugu Nas", city: "Point Mugu", country: "USA", code: "NTD"},
{airport: "Rancho Murieta", city: "Rancho Murieta", country: "USA", code: "RIU"},
{airport: "China Lake Naws", city: "Ridgecrest", country: "USA", code: "NID"},
{airport: "Riverside Muni", city: "Riverside", country: "USA", code: "RAL"},
{airport: "March Arb", city: "Riverside", country: "USA", code: "RIV"},
{airport: "Sacramento Executive", city: "Sacramento", country: "USA", code: "SAC"},
{airport: "Mc Clellan Afld", city: "Sacramento", country: "USA", code: "MCC"},
{airport: "Sacramento Mather", city: "Sacramento", country: "USA", code: "MHR"},
{airport: "Sacramento International", city: "Sacramento", country: "USA", code: "SMF"},
{airport: "North Island Nas", city: "San Diego", country: "USA", code: "NZY"},
{airport: "San Diego International Lindbergh Fld", city: "San Diego", country: "USA", code: "SAN"},
{airport: "Miramar Mcas", city: "San Diego", country: "USA", code: "NKX"},
{airport: "San Francisco International", city: "San Francisco", country: "USA", code: "SFO"},
{airport: "Norman Y Mineta San Jose International", city: "San Jose", country: "USA", code: "SJC"},
{airport: "John Wayne Arpt Orange Co", city: "Santa Ana", country: "USA", code: "SNA"},
{airport: "Tustin Mcaf", city: "Santa Anna", country: "USA", code: "NTK"},
{airport: "Emanuel Co", city: "Santa Barbara", country: "USA", code: "SBO"},
{airport: "Stockton Metropolitan", city: "Stockton", country: "USA", code: "SCK"},
{airport: "Twentynine Palms Eaf", city: "Twenty Nine Palms", country: "USA", code: "NXP"},
{airport: "Southern California Logistics", city: "Victorville", country: "USA", code: "VCV"},
{airport: "Buckley Afb", city: "Aurora", country: "USA", code: "BKF"},
{airport: "City Of Colorado Springs Muni", city: "Colorado Springs", country: "USA", code: "COS"},
{airport: "Denver International", city: "Denver", country: "USA", code: "DEN"},
{airport: "Durango La Plata Co", city: "Durango", country: "USA", code: "DRO"},
{airport: "Butts Aaf", city: "Fort Carson", country: "USA", code: "FCS"},
{airport: "Pueblo Mem", city: "Pueblo Memorial", country: "USA", code: "PUB"},
{airport: "Hartford Brainard", city: "Hartford", country: "USA", code: "HFD"},
{airport: "Igor I Sikorsky Mem", city: "Stratford", country: "USA", code: "BDR"},
{airport: "Bradley International", city: "Windsor Locks", country: "USA", code: "BDL"},
{airport: "Washington Dulles International", city: "Washington", country: "USA", code: "IAD"},
{airport: "Ronald Reagan Washington National", city: "Washington", country: "USA", code: "DCA"},
{airport: "Dover Afb", city: "Dover", country: "USA", code: "DOV"},
{airport: "New Castle Co", city: "Wilmington", country: "USA", code: "ILG"},
{airport: "Boca Raton", city: "Boca Raton", country: "USA", code: "BCT"},
{airport: "Patrick Afb", city: "Coco Beach", country: "USA", code: "COF"},
{airport: "Bob Sikes", city: "Crestview", country: "USA", code: "CEW"},
{airport: "Fort Lauderdale Hollywood International", city: "Fort Lauderdale", country: "USA", code: "FLL"},
{airport: "Fort Lauderdale Executive", city: "Fort Lauderdale", country: "USA", code: "FXE"},
{airport: "Page Fld", city: "Fort Myers", country: "USA", code: "FMY"},
{airport: "Gainesville Rgnl", city: "Gainesville", country: "USA", code: "GNV"},
{airport: "Jacksonville International", city: "Jacksonville", country: "USA", code: "JAX"},
{airport: "Key West International", city: "Key West", country: "USA", code: "EYW"},
{airport: "Miami International", city: "Miami", country: "USA", code: "MIA"},
{airport: "Dade Collier Training And Transition", city: "Miami", country: "USA", code: "TNT"},
{airport: "Orlando International", city: "Orlando", country: "USA", code: "MCO"},
{airport: "Tallahassee Rgnl", city: "Tallahassee", country: "USA", code: "TLH"},
{airport: "Tampa International", city: "Tampa", country: "USA", code: "TPA"},
{airport: "Eglin Afb", city: "Valparaiso", country: "USA", code: "VPS"},
{airport: "Palm Beach International", city: "West Palm Beach", country: "USA", code: "PBI"},
{airport: "Palm Beach Co Park", city: "West Palm Beach", country: "USA", code: "LNA"},
{airport: "Hartsfield-Jackson Atlanta International", city: "Atlanta", country: "USA", code: ""},
{airport: "Augusta Rgnl At Bush Fld", city: "Bush Field", country: "USA", code: "AGS"},
{airport: "Wright Aaf", city: "Fort Stewart", country: "USA", code: "LHW"},
{airport: "Savannah Hilton Head International", city: "Savannah", country: "USA", code: "SAV"},
{airport: "Upolu", city: "Opolu", country: "USA", code: "UPP"},
{airport: "Des Moines International", city: "Des Moines", country: "USA", code: "DSM"},
{airport: "Fort Dodge Rgnl", city: "Fort Dodge", country: "USA", code: "FOD"},
{airport: "Sioux Gateway Col Bud Day Fld", city: "Sioux City", country: "USA", code: "SUX"},
{airport: "Boise Air Terminal", city: "Boise", country: "USA", code: "BOI"},
{airport: "Monroe Rgnl", city: "Monroe", country: "USA", code: "MLU"},
{airport: "Mountain Home Afb", city: "Mountain Home", country: "USA", code: "MUO"},
{airport: "Midamerica St. Louis / Scott Afb", city: "Belleville", country: "USA", code: ""},
{airport: "Waukegan Rgnl", city: "Chicago", country: "USA", code: "UGN"},
{airport: "Chicago Midway International", city: "Chicago", country: "USA", code: "MDW"},
{airport: "Chicago Ohare International", city: "Chicago", country: "USA", code: "ORD"},
{airport: "Du Page", city: "West Chicago", country: "USA", code: "DPA"},
{airport: "Indianapolis International", city: "Indianapolis", country: "USA", code: "IND"},
{airport: "Grissom Arb", city: "Peru", country: "USA", code: "GUS"},
{airport: "Sherman Aaf", city: "Fort Leavenworth", country: "USA", code: "FLV"},
{airport: "Marshall Aaf", city: "Fort Riley", country: "USA", code: "FRI"},
{airport: "Garden City Rgnl", city: "Garden City", country: "USA", code: "GCK"},
{airport: "Forbes Fld", city: "Topeka", country: "USA", code: "FOE"},
{airport: "Mc Connell Afb", city: "Wichita", country: "USA", code: "IAB"},
{airport: "Wichita Mid Continent", city: "Wichita", country: "USA", code: "ICT"},
{airport: "Godman Aaf", city: "Fort Knox", country: "USA", code: "FTK"},
{airport: "Bowman Fld", city: "Louisville", country: "USA", code: "LOU"},
{airport: "Esler Rgnl", city: "Alexandria", country: "USA", code: "ESF"},
{airport: "Alexandria International", city: "Alexandria", country: "USA", code: "AEX"},
{airport: "Baton Rouge Metropolitain", city: "Baton Rouge", country: "USA", code: ""},
{airport: "Beauregard Parish", city: "Deridder", country: "USA", code: "DRI"},
{airport: "Lafayette Rgnl", city: "Lafayette", country: "USA", code: "LFT"},
{airport: "Acadiana Regional", city: "New Iberia", country: "USA", code: "ARA"},
{airport: "Louis Armstrong New Orleans International", city: "New Orleans", country: "USA", code: "MSY"},
{airport: "Barksdale Afb", city: "Shreveport", country: "USA", code: "BAD"},
{airport: "Phillips Aaf", city: "Aberdeen", country: "USA", code: "APG"},
{airport: "Laurence G Hanscom Fld", city: "Bedford", country: "USA", code: "BED"},
{airport: "Logan International", city: "Boston", country: "USA", code: ""},
{airport: "Otis Angb", city: "Falmouth", country: "USA", code: "FMH"},
{airport: "Nantucket Mem", city: "Nantucket", country: "USA", code: "ACK"},
{airport: "Westover Arb Metropolitan", city: "Springfield", country: "USA", code: "CEF"},
{airport: "Baltimore Washington International", city: "Baltimore", country: "USA", code: "BWI"},
{airport: "Andrews Afb", city: "Camp Springs", country: "USA", code: "ADW"},
{airport: "Patuxent River Nas", city: "Patuxent River", country: "USA", code: "NHK"},
{airport: "Salisbury Ocean City Wicomico Rgnl", city: "Salisbury", country: "USA", code: "SBY"},
{airport: "Augusta State", city: "Augusta", country: "USA", code: "AUG"},
{airport: "Bangor International", city: "Bangor", country: "USA", code: "BGR"},
{airport: "Caribou Muni", city: "Caribou", country: "USA", code: "CAR"},
{airport: "Portland International Jetport", city: "Portland", country: "USA", code: "PWM"},
{airport: "Willow Run", city: "Detroit", country: "USA", code: "YIP"},
{airport: "Detroit City / Coleman A. Young Airport", city: "Detroit", country: "USA", code: ""},
{airport: "Detroit Metro Wayne Co", city: "Detroit", country: "USA", code: "DTW"},
{airport: "Gerald R Ford International", city: "Grand Rapids", country: "USA", code: "GRR"},
{airport: "Capital City", city: "Lansing", country: "USA", code: "LAN"},
{airport: "Baudette International", city: "Baudette", country: "USA", code: "BDE"},
{airport: "Duluth International", city: "Duluth", country: "USA", code: "DLH"},
{airport: "Chisholm Hibbing", city: "Hibbing", country: "USA", code: "HIB"},
{airport: "Minneapolis St Paul International", city: "Minneapolis", country: "USA", code: "MSP"},
{airport: "Columbia Rgnl", city: "Columbia", country: "USA", code: "COU"},
{airport: "Kansas City International", city: "Kansas City", country: "USA", code: "MCI"},
{airport: "Richards Gebaur Memorial", city: "Kansas City", country: "USA", code: "GVW"},
{airport: "Lambert St Louis International", city: "St. Louis", country: "USA", code: "STL"},
{airport: "Keesler Afb", city: "Biloxi", country: "USA", code: "BIX"},
{airport: "Columbus Afb", city: "Colombus", country: "USA", code: "CBM"},
{airport: "Greenwood Leflore", city: "Greenwood", country: "USA", code: "GWO"},
{airport: "Jackson International", city: "Jackson", country: "USA", code: "JAN"},
{airport: "Meridian Nas", city: "Meridian", country: "USA", code: "NMM"},
{airport: "Cut Bank Muni", city: "Cutbank", country: "USA", code: "CTB"},
{airport: "Great Falls International", city: "Great Falls", country: "USA", code: "GTF"},
{airport: "Havre City Co", city: "Havre", country: "USA", code: "HVR"},
{airport: "Helena Rgnl", city: "Helena", country: "USA", code: "HLN"},
{airport: "Charlotte Douglas International", city: "Charlotte", country: "USA", code: "CLT"},
{airport: "Elizabeth City Cgas Rgnl", city: "Elizabeth City", country: "USA", code: "ECG"},
{airport: "Seymour Johnson Afb", city: "Goldsboro", country: "USA", code: "GSB"},
{airport: "Craven Co Rgnl", city: "New Bern", country: "USA", code: "EWN"},
{airport: "Raleigh Durham International", city: "Raleigh-Durham", country: "USA", code: "RDU"},
{airport: "Smith Reynolds", city: "Winston-Salem", country: "USA", code: "INT"},
{airport: "Grand Forks International", city: "Grand Forks", country: "USA", code: "GFK"},
{airport: "Grand Forks Afb", city: "Grand Forks", country: "USA", code: "RDR"},
{airport: "Minot Afb", city: "Minot", country: "USA", code: "MIB"},
{airport: "Minot International", city: "Minot", country: "USA", code: "MOT"},
{airport: "Sloulin Fld International", city: "Williston", country: "USA", code: "ISN"},
{airport: "Lincoln Muni", city: "Lincoln", country: "USA", code: "LNK"},
{airport: "Eppley Afld", city: "Omaha", country: "USA", code: "OMA"},
{airport: "Offutt Afb", city: "Omaha", country: "USA", code: "OFF"},
{airport: "Atlantic City International", city: "Atlantic City", country: "USA", code: "ACY"},
{airport: "Lakehurst Naes", city: "Lakehurst", country: "USA", code: "NEL"},
{airport: "Millville Muni", city: "Millville", country: "USA", code: "MIV"},
{airport: "Newark Liberty International", city: "Newark", country: "USA", code: "EWR"},
{airport: "Teterboro", city: "Teterboro", country: "USA", code: "TEB"},
{airport: "Trenton Mercer", city: "Trenton", country: "USA", code: "TTN"},
{airport: "Cape May Co", city: "Wildwood", country: "USA", code: "WWD"},
{airport: "Mc Guire Afb", city: "Wrightstown", country: "USA", code: "WRI"},
{airport: "Holloman Afb", city: "Alamogordo", country: "USA", code: "HMN"},
{airport: "Cavern City Air Terminal", city: "Carlsbad", country: "USA", code: "CNM"},
{airport: "Cannon Afb", city: "Clovis", country: "USA", code: "CVS"},
{airport: "Four Corners Rgnl", city: "Farmington", country: "USA", code: "FMN"},
{airport: "Grants Milan Muni", city: "Grants", country: "USA", code: "GNT"},
{airport: "Lea Co Rgnl", city: "Hobbs", country: "USA", code: "HOB"},
{airport: "Albuquerque International Sunport", city: "Kirtland A.F.B.", country: "USA", code: "ABQ"},
{airport: "Roswell Industrial Air Center", city: "Roswell", country: "USA", code: "ROW"},
{airport: "Santa Fe Muni", city: "Santa Fe", country: "USA", code: "SAF"},
{airport: "Truth Or Consequences Muni", city: "Truth Or Consequences", country: "USA", code: "TCS"},
{airport: "Tucumcari Muni", city: "Tucumcari", country: "USA", code: "TCC"},
{airport: "Black Rock", city: "Zuni Pueblo", country: "USA", code: "ZUN"},
{airport: "Fallon Nas", city: "Fallon", country: "USA", code: "NFL"},
{airport: "Indian Springs Af Aux", city: "Indian Springs", country: "USA", code: "INS"},
{airport: "Nellis Afb", city: "Las Vegas", country: "USA", code: "LSV"},
{airport: "Mc Carran International", city: "Las Vegas", country: "USA", code: "LAS"},
{airport: "Reno Tahoe International", city: "Reno", country: "USA", code: "RNO"},
{airport: "Albany International", city: "Albany", country: "USA", code: "ALB"},
{airport: "Buffalo Niagara International", city: "Buffalo", country: "USA", code: "BUF"},
{airport: "Wheeler Sack Aaf", city: "Fort Drum", country: "USA", code: "GTB"},
{airport: "Long Island Mac Arthur", city: "Islip", country: "USA", code: "ISP"},
{airport: "John F Kennedy International", city: "New York", country: "USA", code: "JFK"},
{airport: "La Guardia", city: "New York", country: "USA", code: "LGA"},
{airport: "Niagara Falls International", city: "Niagara Falls", country: "USA", code: "IAG"},
{airport: "Greater Rochester International", city: "Rochester", country: "USA", code: "ROC"},
{airport: "Syracuse Hancock International", city: "Syracuse", country: "USA", code: "SYR"},
{airport: "Watertown International", city: "Watertown", country: "USA", code: "ART"},
{airport: "The Francis S Gabreski", city: "West Hampton Beach", country: "USA", code: "FOK"},
{airport: "Westchester Co", city: "White Plains", country: "USA", code: "HPN"},
{airport: "Akron Fulton International", city: "Akron", country: "USA", code: "AKR"},
{airport: "Cincinnati Northern Kentucky International", city: "Cincinnati", country: "USA", code: "CVG"},
{airport: "Cincinnati Muni Lunken Fld", city: "Cincinnati", country: "USA", code: "LUK"},
{airport: "Cleveland Hopkins International", city: "Cleveland", country: "USA", code: "CLE"},
{airport: "Port Columbus International", city: "Columbus", country: "USA", code: "CMH"},
{airport: "Rickenbacker International", city: "Columbus", country: "USA", code: "LCK"},
{airport: "Wright Patterson Afb", city: "Dayton", country: "USA", code: "FFO"},
{airport: "James M Cox Dayton International", city: "Dayton", country: "USA", code: "DAY"},
{airport: "Youngstown Warren Rgnl", city: "Youngstown", country: "USA", code: "YNG"},
{airport: "Ardmore Muni", city: "Ardmore", country: "USA", code: "ADM"},
{airport: "Vance Afb", city: "Enid", country: "USA", code: "END"},
{airport: "Henry Post Aaf", city: "Fort Sill", country: "USA", code: "FSI"},
{airport: "Hobart Muni", city: "Hobart", country: "USA", code: "HBR"},
{airport: "Will Rogers World", city: "Oklahoma City", country: "USA", code: "OKC"},
{airport: "Tinker Afb", city: "Oklahoma City", country: "USA", code: "TIK"},
{airport: "Tulsa International", city: "Tulsa", country: "USA", code: "TUL"},
{airport: "Mc Minnville Muni", city: "Mackminnville", country: "USA", code: "MMV"},
{airport: "Portland International", city: "Portland", country: "USA", code: "PDX"},
{airport: "Scappoose Industrial Airpark", city: "San Luis", country: "USA", code: "SPB"},
{airport: "Altoona Blair Co", city: "Altoona", country: "USA", code: "AOO"},
{airport: "Harrisburg International", city: "Harrisburg", country: "USA", code: "MDT"},
{airport: "Philadelphia International", city: "Philadelphia", country: "USA", code: "PHL"},
{airport: "Pittsburgh International", city: "Pittsburgh (Pennsylva)", country: "USA", code: "PIT"},
{airport: "Williamsport Rgnl", city: "Williamsport", country: "USA", code: "IPT"},
{airport: "Theodore Francis Green State", city: "Providence", country: "USA", code: "PVD"},
{airport: "North Central State", city: "Smithfield", country: "USA", code: "SFZ"},
{airport: "Anderson Rgnl", city: "Andersen", country: "USA", code: "AND"},
{airport: "Charleston Afb International", city: "Charleston", country: "USA", code: "CHS"},
{airport: "Columbia Metropolitan", city: "Colombia", country: "USA", code: "CAE"},
{airport: "Florence Rgnl", city: "Florence", country: "USA", code: "FLO"},
{airport: "Huron Rgnl", city: "Huron", country: "USA", code: "HON"},
{airport: "Ellsworth Afb", city: "Rapid City", country: "USA", code: "RCA"},
{airport: "Lovell Fld", city: "Chattanooga", country: "USA", code: "CHA"},
{airport: "Mc Ghee Tyson", city: "Knoxville", country: "USA", code: "TYS"},
{airport: "Memphis International", city: "Memphis", country: "USA", code: "MEM"},
{airport: "Nashville International", city: "Nashville", country: "USA", code: "BNA"},
{airport: "Dyess Afb", city: "Abilene", country: "USA", code: "DYS"},
{airport: "Abilene Rgnl", city: "Abilene", country: "USA", code: "ABI"},
{airport: "Alice International", city: "Alice", country: "USA", code: "ALI"},
{airport: "Amarillo International", city: "Amarillo", country: "USA", code: "AMA"},
{airport: "Austin Bergstrom International", city: "Austin", country: "USA", code: "AUS"},
{airport: "Brownsville South Padre Island International", city: "Brownsville", country: "USA", code: "BRO"},
{airport: "Coulter Fld", city: "Bryan", country: "USA", code: "CFD"},
{airport: "Childress Muni", city: "Childress", country: "USA", code: "CDS"},
{airport: "Easterwood Fld", city: "College Station", country: "USA", code: "CLL"},
{airport: "Corpus Christi International", city: "Corpus Christi", country: "USA", code: "CRP"},
{airport: "Cotulla La Salle Co", city: "Cotulla", country: "USA", code: "COT"},
{airport: "Dalhart Muni", city: "Dalhart", country: "USA", code: "DHT"},
{airport: "Dallas Love Fld", city: "Dallas", country: "USA", code: "DAL"},
{airport: "Dallas Fort Worth International", city: "Dallas-Fort Worth", country: "USA", code: "DFW"},
{airport: "Laughlin Afb", city: "Del Rio", country: "USA", code: "DLF"},
{airport: "Del Rio International", city: "Del Rio", country: "USA", code: "DRT"},
{airport: "El Paso International", city: "El Paso", country: "USA", code: "ELP"},
{airport: "Biggs Aaf", city: "El Paso", country: "USA", code: "BIF"},
{airport: "Hood Aaf", city: "Fort Hood", country: "USA", code: "HLR"},
{airport: "Fort Worth Meacham International", city: "Fort Worth", country: "USA", code: "FTW"},
{airport: "Scholes International At Galveston", city: "Galveston", country: "USA", code: "GLS"},
{airport: "Majors", city: "Greenvile", country: "USA", code: "GVT"},
{airport: "Valley International", city: "Harlingen", country: "USA", code: "HRL"},
{airport: "Ellington Fld", city: "Houston", country: "USA", code: "EFD"},
{airport: "Lone Star Executive Airport", city: "Houston", country: "USA", code: ""},
{airport: "William P Hobby", city: "Houston", country: "USA", code: "HOU"},
{airport: "George Bush Intcntl Houston", city: "Houston", country: "USA", code: "IAH"},
{airport: "Robert Gray Aaf", city: "Killeen", country: "USA", code: "GRK"},
{airport: "Laredo International", city: "Laredo", country: "USA", code: "LRD"},
{airport: "East Texas Rgnl", city: "Longview", country: "USA", code: "GGG"},
{airport: "Lubbock International", city: "Lubbock", country: "USA", code: "LBB"},
{airport: "Angelina Co", city: "Lufkin", country: "USA", code: "LFK"},
{airport: "Mc Allen Miller International", city: "Mcallen", country: "USA", code: "MFE"},
{airport: "Midland International", city: "Midland", country: "USA", code: "MAF"},
{airport: "Southeast Texas Rgnl", city: "Nederland", country: "USA", code: "BPT"},
{airport: "Lackland Afb Kelly Fld Annex", city: "San Antonio", country: "USA", code: "SKF"},
{airport: "San Antonio International", city: "San Antonio", country: "USA", code: "SAT"},
{airport: "Tyler Pounds Rgnl", city: "Tyler", country: "USA", code: "TYR"},
{airport: "Tstc Waco", city: "Waco", country: "USA", code: "CNW"},
{airport: "Waco Rgnl", city: "Waco", country: "USA", code: "ACT"},
{airport: "Sheppard Afb Wichita Falls Muni", city: "Wichita Falls", country: "USA", code: "SPS"},
{airport: "Cedar City Rgnl", city: "Cedar City", country: "USA", code: "CDC"},
{airport: "Hill Afb", city: "Ogden", country: "USA", code: "HIF"},
{airport: "Salt Lake City International", city: "Salt Lake City", country: "USA", code: "SLC"},
{airport: "Wendover", city: "Wendover", country: "USA", code: "ENV"},
{airport: "Felker Aaf", city: "Fort Eustis", country: "USA", code: "FAF"},
{airport: "Newport News Williamsburg International", city: "Newport News", country: "USA", code: "PHF"},
{airport: "Norfolk International", city: "Norfolk", country: "USA", code: "ORF"},
{airport: "Norfolk Ns", city: "Norfolk", country: "USA", code: "NGU"},
{airport: "Burlington International", city: "Burlington", country: "USA", code: "BTV"},
{airport: "Bellingham International", city: "Bellingham", country: "USA", code: "BLI"},
{airport: "Snohomish Co", city: "Everett", country: "USA", code: "PAE"},
{airport: "Gray Aaf", city: "Fort Lewis", country: "USA", code: "GRF"},
{airport: "Grant Co International", city: "Grant County Airport", country: "USA", code: "MWH"},
{airport: "Port Angeles Cgas", city: "Port Angeles", country: "USA", code: "NOW"},
{airport: "Seattle Tacoma International", city: "Seattle", country: "USA", code: "SEA"},
{airport: "Boeing Fld King Co International", city: "Seattle", country: "USA", code: "BFI"},
{airport: "Fairchild Afb", city: "Spokane", country: "USA", code: "SKA"},
{airport: "Spokane International", city: "Spokane", country: "USA", code: "GEG"},
{airport: "Felts Fld", city: "Spokane", country: "USA", code: "SFF"},
{airport: "Mc Chord Afb", city: "Tacoma", country: "USA", code: "TCM"},
{airport: "Whidbey Island Nas", city: "Whidbey Island", country: "USA", code: "NUW"},
{airport: "Austin Straubel International", city: "Green Bay", country: "USA", code: "GRB"},
{airport: "Dane Co Rgnl Truax Fld", city: "Madison", country: "USA", code: "MSN"},
{airport: "General Mitchell International", city: "Milwaukee", country: "USA", code: "MKE"},
{airport: "Elkins Randolph Co Jennings Randolph", city: "Elkins", country: "USA", code: "EKN"},
{airport: "Natrona Co International", city: "Casper", country: "USA", code: "CPR"},
{airport: "Cheyenne", city: "Cheyenne", country: "USA", code: "CYS"},
{airport: "Altus Afb", city: "Altus", country: "USA", code: "LTS"},
{airport: "Beaufort Mcas", city: "Beaufort", country: "USA", code: "NBC"},
{airport: "Cherry Point Mcas", city: "Cherry Point", country: "USA", code: "NKT"},
{airport: "Pope Afb", city: "Fayetteville", country: "USA", code: "POB"},
{airport: "Lawson Aaf", city: "Fort Benning", country: "USA", code: "LSF"},
{airport: "Waynesville Rgnl Arpt At Forney Fld", city: "Fort Leonardwood", country: "USA", code: "TBN"},
{airport: "Southwest Florida International", city: "Fort Myers", country: "USA", code: "RSW"},
{airport: "Polk Aaf", city: "Fort Polk", country: "USA", code: "POE"},
{airport: "Langley Afb", city: "Hampton", country: "USA", code: "LFI"},
{airport: "North Perry", city: "Hollywood", country: "USA", code: "HWO"},
{airport: "Homestead Arb", city: "Homestead", country: "USA", code: "HST"},
{airport: "Campbell Aaf", city: "Hopkinsville", country: "USA", code: "HOP"},
{airport: "Roscommon Co", city: "Houghton Lake", country: "USA", code: "HTL"},
{airport: "Houlton International", city: "Houlton", country: "USA", code: "HUL"},
{airport: "Hunter Aaf", city: "Hunter Aaf", country: "USA", code: "SVN"},
{airport: "Falls International", city: "International Falls", country: "USA", code: "INL"},
{airport: "Mc Kellar Sipes Rgnl", city: "Jackson", country: "USA", code: "MKL"},
{airport: "Jacksonville Nas", city: "Jacksonville", country: "USA", code: "NIP"},
{airport: "New River Mcas", city: "Jacksonville", country: "USA", code: ""},
{airport: "Cecil Fld", city: "Jacksonville", country: "USA", code: "NZC"},
{airport: "Greater Kankakee", city: "Kankakee", country: "USA", code: "IKK"},
{airport: "Kendall Tamiami Executive", city: "Kendall-Tamiami", country: "USA", code: "TMB"},
{airport: "Key West Nas", city: "Key West", country: "USA", code: "NQX"},
{airport: "Kingsville Nas", city: "Kingsville", country: "USA", code: "NQI"},
{airport: "Whiteman Afb", city: "Knobnoster", country: "USA", code: "SZL"},
{airport: "Lake Charles Rgnl", city: "Lake Charles", country: "USA", code: "LCH"},
{airport: "Middle Georgia Rgnl", city: "Macon", country: "USA", code: "MCN"},
{airport: "Robins Afb", city: "Macon", country: "USA", code: "WRB"},
{airport: "Menominee Marinette Twin Co", city: "Macon", country: "USA", code: "MNM"},
{airport: "Dobbins Arb", city: "Marietta", country: "USA", code: "MGE"},
{airport: "Sawyer International", city: "Marquette", country: "USA", code: "MQT"},
{airport: "Hurlburt Fld", city: "Mary Esther", country: "USA", code: "HRT"},
{airport: "Massena International Richards Fld", city: "Massena", country: "USA", code: "MSS"},
{airport: "Mc Alester Rgnl", city: "Mcalester", country: "USA", code: "MLC"},
{airport: "Melbourne International", city: "Melbourne", country: "USA", code: "MEL"},
{airport: "Opa Locka", city: "Miami", country: "USA", code: "OPF"},
{airport: "Millington Muni", city: "Millington", country: "USA", code: "NQA"},
{airport: "Millinocket Muni", city: "Millinocket", country: "USA", code: "MLT"},
{airport: "Whiting Fld Nas North", city: "Milton", country: "USA", code: "NSE"},
{airport: "Mineral Wells", city: "Mineral Wells", country: "USA", code: "MWL"},
{airport: "Edward F Knapp State", city: "Montpelier", country: "USA", code: "MPV"},
{airport: "Selfridge Angb", city: "Mount Clemens", country: "USA", code: "MTC"},
{airport: "Muir Aaf", city: "Muir", country: "USA", code: "MUI"},
{airport: "Davis Fld", city: "Muskogee", country: "USA", code: "MKO"},
{airport: "Myrtle Beach International", city: "Myrtle Beach", country: "USA", code: "MYR"},
{airport: "New Orleans Nas Jrb", city: "New Orleans", country: "USA", code: "NBG"},
{airport: "Stewart International", city: "Newburgh", country: "USA", code: "SWF"},
{airport: "Oceana Nas", city: "Oceana", country: "USA", code: "NTU"},
{airport: "Ogdensburg International", city: "Ogdensburg", country: "USA", code: "OGS"},
{airport: "Executive", city: "Orlando", country: "USA", code: "ORL"},
{airport: "Palacios Muni", city: "Palacios", country: "USA", code: "PSX"},
{airport: "Tyndall Afb", city: "Panama City", country: "USA", code: "PAM"},
{airport: "Pensacola Rgnl", city: "Pensacola", country: "USA", code: "PNS"},
{airport: "Pensacola Nas", city: "Pensacola", country: "USA", code: "NPA"},
{airport: "Northeast Philadelphia", city: "Philadelphia", country: "USA", code: "PNE"},
{airport: "Plattsburgh International", city: "Plattsburgh", country: "USA", code: "PBG"},
{airport: "Ponca City Muni", city: "Ponca City", country: "USA", code: "PNC"},
{airport: "St Clair Co International", city: "Port Huron", country: "USA", code: "PHN"},
{airport: "Northern Maine Rgnl At Presque Isle", city: "Presque Isle", country: "USA", code: "PQI"},
{airport: "Princeton Muni", city: "Princeton", country: "USA", code: "PNM"},
{airport: "Quantico Mcaf", city: "Quantico", country: "USA", code: "NYG"},
{airport: "Richmond International", city: "Richmond", country: "USA", code: "RIC"},
{airport: "Griffiss Airpark", city: "Rome", country: "USA", code: "RME"},
{airport: "San Angelo Rgnl Mathis Fld", city: "San Angelo", country: "USA", code: "SJT"},
{airport: "Randolph Afb", city: "San Antonio", country: "USA", code: "RND"},
{airport: "Griffing Sandusky", city: "Sandusky", country: "USA", code: "SKY"},
{airport: "Shreveport Rgnl", city: "Shreveport", country: "USA", code: "SHV"},
{airport: "Albert Whitted", city: "St. Petersburg", country: "USA", code: "SPG"},
{airport: "St Petersburg Clearwater International", city: "St. Petersburg", country: "USA", code: "PIE"},
{airport: "Shaw Afb", city: "Sumter", country: "USA", code: "SSC"},
{airport: "Macdill Afb", city: "Tampa", country: "USA", code: "MCF"},
{airport: "Terre Haute International Hulman Fld", city: "Terre Haute", country: "USA", code: "HUF"},
{airport: "Moody Afb", city: "Valdosta", country: "USA", code: "VAD"},
{airport: "Vero Beach Muni", city: "Vero Beach", country: "USA", code: "VRB"},
{airport: "Wallops Flight Facility", city: "Wallops Island", country: "USA", code: "WAL"},
{airport: "Condron Aaf", city: "White Sands", country: "USA", code: "WSD"},
{airport: "Willow Grove Nas Jrb", city: "Willow Grove", country: "USA", code: "NXX"},
{airport: "Wilmington International", city: "Wilmington", country: "USA", code: "ILM"},
{airport: "Winkler Co", city: "Wink", country: "USA", code: "INK"},
{airport: "Bradshaw Aaf", city: "Bradshaw Field", country: "USA  Hawaii Isl.", code: "BSF"},
{airport: "Hilo International", city: "Hilo", country: "USA  Hawaii Isl.", code: "ITO"},
{airport: "Waimea Kohala", city: "Kamuela", country: "USA  Hawaii Isl.", code: "MUE"},
{airport: "Kona International At Keahole", city: "Kona", country: "USA  Hawaii Isl.", code: "KOA"},
{airport: "Barking Sands Pmrf", city: "Barking Sands", country: "USA  Kauai Isl.", code: "BKH"},
{airport: "Lihue", city: "Lihue", country: "USA  Kauai Isl.", code: "LIH"},
{airport: "Lanai", city: "Lanai", country: "USA  Lanai Isl.", code: "LNY"},
{airport: "Hana", city: "Hana", country: "USA  Maui Isl.", code: "HNM"},
{airport: "Kahului", city: "Kahului, Maui", country: "USA  Maui Isl.", code: "OGG"},
{airport: "Kapalua", city: "Lahania-Kapalua", country: "USA  Maui Isl.", code: "JHM"},
{airport: "Molokai", city: "Molokai", country: "USA  Molokai Isl.", code: "MKK"},
{airport: "Dillingham", city: "Dillingham", country: "USA  Oahu Isl.", code: "HDH"},
{airport: "Honolulu International", city: "Honolulu", country: "USA  Oahu Isl.", code: "HNL"},
{airport: "Kaneohe Bay Mcaf", city: "Kaneohe Bay", country: "USA  Oahu Isl.", code: "NGF"},
{airport: "Yuzhny", city: "Tashkent", country: "Uzbekistan", code: "TAS"},
{airport: "Port Vila Bauerfield", city: "Port-Vila", country: "Vanuatu", code: "VLI"},
{airport: "Oswaldo Guevara Mujica", city: "Acarigua", country: "Venezuela", code: "AGV"},
{airport: "Anaco", city: "Anaco", country: "Venezuela", code: "AAO"},
{airport: "General Jose Antonio Anzoategui International", city: "Barcelona", country: "Venezuela", code: "BLA"},
{airport: "Barinas", city: "Barinas", country: "Venezuela", code: "BNS"},
{airport: "Barquisimeto International", city: "Barquisimeto", country: "Venezuela", code: "BRM"},
{airport: "Canaima", city: "Canaima", country: "Venezuela", code: "CAJ"},
{airport: "Simon Bolivar International", city: "Caracas", country: "Venezuela", code: "CCS"},
{airport: "General Jose Francisco Bermudez", city: "Carupano", country: "Venezuela", code: "CUP"},
{airport: "Ciudad Bolivar", city: "Ciudad Bolivar", country: "Venezuela", code: "CBL"},
{airport: "Jose Leonardo Chirinos", city: "Coro", country: "Venezuela", code: "CZE"},
{airport: "Antonio Jose De Sucre", city: "Cumana", country: "Venezuela", code: "CUM"},
{airport: "Guanare", city: "Guanare", country: "Venezuela", code: "GUQ"},
{airport: "General Manuel Carlos Piar", city: "Guayana", country: "Venezuela", code: "PZO"},
{airport: "Guiria", city: "Guiria", country: "Venezuela", code: "GUI"},
{airport: "La Fria", city: "La Fria", country: "Venezuela", code: "LFR"},
{airport: "La Chinita International", city: "Maracaibo", country: "Venezuela", code: "MAR"},
{airport: "Maturin", city: "Maturin", country: "Venezuela", code: "MUN"},
{airport: "Alberto Carnevalli", city: "Merida", country: "Venezuela", code: "MRD"},
{airport: "Josefa Camejo", city: "Paraguana", country: "Venezuela", code: "LSP"},
{airport: "Del Caribe International Gen Santago Marino", city: "Porlamar", country: "Venezuela", code: "PMV"},
{airport: "Casique Aramare", city: "Puerto Ayacucho", country: "Venezuela", code: "PYH"},
{airport: "General Bartolome Salom International", city: "Puerto Cabello", country: "Venezuela", code: "PBL"},
{airport: "San Antonio Del Tachira", city: "San Antonio", country: "Venezuela", code: "SVZ"},
{airport: "Sub Teniente Nestor Arias", city: "San Felipe", country: "Venezuela", code: "SFH"},
{airport: "San Fernando De Apure", city: "San Fernando De Apure", country: "Venezuela", code: "SFD"},
{airport: "San Tome", city: "San Tome", country: "Venezuela", code: "SOM"},
{airport: "Santa Barbara Del Zulia", city: "Santa Barbara", country: "Venezuela", code: "STB"},
{airport: "Mayor Buenaventura Vivas", city: "Santo Domingo", country: "Venezuela", code: "STD"},
{airport: "Tucupita", city: "Tucupita", country: "Venezuela", code: "TUV"},
{airport: "Arturo Michelena International", city: "Valencia", country: "Venezuela", code: "VLN"},
{airport: "Dr Antonio Nicolas Briceno", city: "Valera", country: "Venezuela", code: "VLV"},
{airport: "Valle De La Pascua", city: "Valle De La Pascua", country: "Venezuela", code: "VDP"},
{airport: "Danang International", city: "Danang", country: "Viet Nam", code: "DAD"},
{airport: "Noibai International", city: "Hanoi", country: "Viet Nam", code: "HAN"},
{airport: "Tansonnhat International", city: "Ho Chi Minh City", country: "Viet Nam", code: "SGN"},
{airport: "Nha Trang Airport", city: "Nhatrang", country: "Viet Nam", code: "NHA"},
{airport: "Terrance B Lettsome International", city: "Roadtown/Beef Island", country: "Virgin Isl.", code: "EIS"},
{airport: "Henry E Rohlsen", city: "St. Criox Island", country: "Virgin Isl.", code: "STX"},
{airport: "Cyril E King", city: "St. Thomas", country: "Virgin Isl.", code: "STT"},
{airport: "Cardiff", city: "Cardiff", country: "Wales", code: "CWL"},
{airport: "Hihifo", city: "Wallis", country: "Wallis & Futuna", code: "WLS"},
{airport: "Livingstone", city: "Livingstone", country: "Zambia", code: "LVI"},
{airport: "Lusaka International", city: "Lusaka", country: "Zambia", code: "LUN"},
{airport: "Mfuwe", city: "Mfuwe", country: "Zambia", code: "MFU"},
{airport: "Ndola", city: "Ndola", country: "Zambia", code: "NLA"},
{airport: "Southdowns", city: "Southdowns", country: "Zambia", code: "KIW"},
{airport: "Joshua Mqabuko Nkomo International", city: "Bulawayo", country: "Zimbabwe", code: "BUQ"},
{airport: "Chiredzi Buffalo Range", city: "Chiredzi", country: "Zimbabwe", code: "BFO"},
{airport: "Gweru Thornhill", city: "Gwert", country: "Zimbabwe", code: "GWE"},
{airport: "Harare International", city: "Harare", country: "Zimbabwe", code: "HRE"},
{airport: "Hwange National Park", city: "Hwange National Park", country: "Zimbabwe", code: "WKM"},
{airport: "Kariba International", city: "Kariba", country: "Zimbabwe", code: "KAB"},
{airport: "Masvingo", city: "Masvingo", country: "Zimbabwe", code: "MVZ"},
{airport: "Mutare Grand Reef", city: "Mutare", country: "Zimbabwe", code: "UTA"},
{airport: "Victoria Falls International", city: "Victoria Falls", country: "Zimbabwe", code: "VFA"}
];
;
/*
 * jQuery Autocomplete plugin 1.1
 *
 * Copyright (c) 2009 Jörn Zaefferer
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 *
 * Revision: $Id: jquery.autocomplete.js 15 2009-08-22 10:30:27Z joern.zaefferer $
 */;(function($){$.fn.extend({autocomplete:function(urlOrData,options){var isUrl=typeof urlOrData=="string";options=$.extend({},$.Autocompleter.defaults,{url:isUrl?urlOrData:null,data:isUrl?null:urlOrData,delay:isUrl?$.Autocompleter.defaults.delay:10,max:options&&!options.scroll?10:150},options);options.highlight=options.highlight||function(value){return value;};options.formatMatch=options.formatMatch||options.formatItem;return this.each(function(){new $.Autocompleter(this,options);});},result:function(handler){return this.bind("result",handler);},search:function(handler){return this.trigger("search",[handler]);},flushCache:function(){return this.trigger("flushCache");},setOptions:function(options){return this.trigger("setOptions",[options]);},unautocomplete:function(){return this.trigger("unautocomplete");}});$.Autocompleter=function(input,options){var KEY={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var $input=$(input).attr("autocomplete","off").addClass(options.inputClass);var timeout;var previousValue="";var cache=$.Autocompleter.Cache(options);var hasFocus=0;var lastKeyPressCode;var config={mouseDownOnSelect:false};var select=$.Autocompleter.Select(options,input,selectCurrent,config);var blockSubmit;$.browser.opera&&$(input.form).bind("submit.autocomplete",function(){if(blockSubmit){blockSubmit=false;return false;}});$input.bind(($.browser.opera?"keypress":"keydown")+".autocomplete",function(event){hasFocus=1;lastKeyPressCode=event.keyCode;switch(event.keyCode){case KEY.UP:event.preventDefault();if(select.visible()){select.prev();}else{onChange(0,true);}break;case KEY.DOWN:event.preventDefault();if(select.visible()){select.next();}else{onChange(0,true);}break;case KEY.PAGEUP:event.preventDefault();if(select.visible()){select.pageUp();}else{onChange(0,true);}break;case KEY.PAGEDOWN:event.preventDefault();if(select.visible()){select.pageDown();}else{onChange(0,true);}break;case options.multiple&&$.trim(options.multipleSeparator)==","&&KEY.COMMA:case KEY.TAB:case KEY.RETURN:if(selectCurrent()){event.preventDefault();blockSubmit=true;return false;}break;case KEY.ESC:select.hide();break;default:clearTimeout(timeout);timeout=setTimeout(onChange,options.delay);break;}}).focus(function(){hasFocus++;}).blur(function(){hasFocus=0;if(!config.mouseDownOnSelect){hideResults();}}).click(function(){if(hasFocus++>1&&!select.visible()){onChange(0,true);}}).bind("search",function(){var fn=(arguments.length>1)?arguments[1]:null;function findValueCallback(q,data){var result;if(data&&data.length){for(var i=0;i<data.length;i++){if(data[i].result.toLowerCase()==q.toLowerCase()){result=data[i];break;}}}if(typeof fn=="function")fn(result);else $input.trigger("result",result&&[result.data,result.value]);}$.each(trimWords($input.val()),function(i,value){request(value,findValueCallback,findValueCallback);});}).bind("flushCache",function(){cache.flush();}).bind("setOptions",function(){$.extend(options,arguments[1]);if("data"in arguments[1])cache.populate();}).bind("unautocomplete",function(){select.unbind();$input.unbind();$(input.form).unbind(".autocomplete");});function selectCurrent(){var selected=select.selected();if(!selected)return false;var v=selected.result;previousValue=v;if(options.multiple){var words=trimWords($input.val());if(words.length>1){var seperator=options.multipleSeparator.length;var cursorAt=$(input).selection().start;var wordAt,progress=0;$.each(words,function(i,word){progress+=word.length;if(cursorAt<=progress){wordAt=i;return false;}progress+=seperator;});words[wordAt]=v;v=words.join(options.multipleSeparator);}v+=options.multipleSeparator;}$input.val(v);hideResultsNow();$input.trigger("result",[selected.data,selected.value]);return true;}function onChange(crap,skipPrevCheck){if(lastKeyPressCode==KEY.DEL){select.hide();return;}var currentValue=$input.val();if(!skipPrevCheck&&currentValue==previousValue)return;previousValue=currentValue;currentValue=lastWord(currentValue);if(currentValue.length>=options.minChars){$input.addClass(options.loadingClass);if(!options.matchCase)currentValue=currentValue.toLowerCase();request(currentValue,receiveData,hideResultsNow);}else{stopLoading();select.hide();}};function trimWords(value){if(!value)return[""];if(!options.multiple)return[$.trim(value)];return $.map(value.split(options.multipleSeparator),function(word){return $.trim(value).length?$.trim(word):null;});}function lastWord(value){if(!options.multiple)return value;var words=trimWords(value);if(words.length==1)return words[0];var cursorAt=$(input).selection().start;if(cursorAt==value.length){words=trimWords(value)}else{words=trimWords(value.replace(value.substring(cursorAt),""));}return words[words.length-1];}function autoFill(q,sValue){if(options.autoFill&&(lastWord($input.val()).toLowerCase()==q.toLowerCase())&&lastKeyPressCode!=KEY.BACKSPACE){$input.val($input.val()+sValue.substring(lastWord(previousValue).length));$(input).selection(previousValue.length,previousValue.length+sValue.length);}};function hideResults(){clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){var wasVisible=select.visible();select.hide();clearTimeout(timeout);stopLoading();if(options.mustMatch){$input.search(function(result){if(!result){if(options.multiple){var words=trimWords($input.val()).slice(0,-1);$input.val(words.join(options.multipleSeparator)+(words.length?options.multipleSeparator:""));}else{$input.val("");$input.trigger("result",null);}}});}};function receiveData(q,data){if(data&&data.length&&hasFocus){stopLoading();select.display(data,q);autoFill(q,data[0].value);select.show();}else{hideResultsNow();}};function request(term,success,failure){if(!options.matchCase)term=term.toLowerCase();var data=cache.load(term);if(data&&data.length){success(term,data);}else if((typeof options.url=="string")&&(options.url.length>0)){var extraParams={timestamp:+new Date()};$.each(options.extraParams,function(key,param){extraParams[key]=typeof param=="function"?param():param;});$.ajax({mode:"abort",port:"autocomplete"+input.name,dataType:options.dataType,url:options.url,data:$.extend({q:lastWord(term),limit:options.max},extraParams),success:function(data){var parsed=options.parse&&options.parse(data)||parse(data);cache.add(term,parsed);success(term,parsed);}});}else{select.emptyList();failure(term);}};function parse(data){var parsed=[];var rows=data.split("\n");for(var i=0;i<rows.length;i++){var row=$.trim(rows[i]);if(row){row=row.split("|");parsed[parsed.length]={data:row,value:row[0],result:options.formatResult&&options.formatResult(row,row[0])||row[0]};}}return parsed;};function stopLoading(){$input.removeClass(options.loadingClass);};};$.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(row){return row[0];},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(value,term){return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>");},scroll:true,scrollHeight:180};$.Autocompleter.Cache=function(options){var data={};var length=0;function matchSubset(s,sub){if(!options.matchCase)s=s.toLowerCase();var i=s.indexOf(sub);if(options.matchContains=="word"){i=s.toLowerCase().search("\\b"+sub.toLowerCase());}if(i==-1)return false;return i==0||options.matchContains;};function add(q,value){if(length>options.cacheLength){flush();}if(!data[q]){length++;}data[q]=value;}function populate(){if(!options.data)return false;var stMatchSets={},nullData=0;if(!options.url)options.cacheLength=1;stMatchSets[""]=[];for(var i=0,ol=options.data.length;i<ol;i++){var rawValue=options.data[i];rawValue=(typeof rawValue=="string")?[rawValue]:rawValue;var value=options.formatMatch(rawValue,i+1,options.data.length);if(value===false)continue;var firstChar=value.charAt(0).toLowerCase();if(!stMatchSets[firstChar])stMatchSets[firstChar]=[];var row={value:value,data:rawValue,result:options.formatResult&&options.formatResult(rawValue)||value};stMatchSets[firstChar].push(row);if(nullData++<options.max){stMatchSets[""].push(row);}};$.each(stMatchSets,function(i,value){options.cacheLength++;add(i,value);});}setTimeout(populate,25);function flush(){data={};length=0;}return{flush:flush,add:add,populate:populate,load:function(q){if(!options.cacheLength||!length)return null;if(!options.url&&options.matchContains){var csub=[];for(var k in data){if(k.length>0){var c=data[k];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub.push(x);}});}}return csub;}else
if(data[q]){return data[q];}else
if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var c=data[q.substr(0,i)];if(c){var csub=[];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub[csub.length]=x;}});return csub;}}}return null;}};};$.Autocompleter.Select=function(options,input,select,config){var CLASSES={ACTIVE:"ac_over"};var listItems,active=-1,data,term="",needsInit=true,element,list;function init(){if(!needsInit)return;element=$("<div/>").hide().addClass(options.resultsClass).css("position","absolute").appendTo(document.body);list=$("<ul/>").appendTo(element).mouseover(function(event){if(target(event).nodeName&&target(event).nodeName.toUpperCase()=='LI'){active=$("li",list).removeClass(CLASSES.ACTIVE).index(target(event));$(target(event)).addClass(CLASSES.ACTIVE);}}).click(function(event){$(target(event)).addClass(CLASSES.ACTIVE);select();input.focus();return false;}).mousedown(function(){config.mouseDownOnSelect=true;}).mouseup(function(){config.mouseDownOnSelect=false;});if(options.width>0)element.css("width",options.width);needsInit=false;}function target(event){var element=event.target;while(element&&element.tagName!="LI")element=element.parentNode;if(!element)return[];return element;}function moveSelect(step){listItems.slice(active,active+1).removeClass(CLASSES.ACTIVE);movePosition(step);var activeItem=listItems.slice(active,active+1).addClass(CLASSES.ACTIVE);if(options.scroll){var offset=0;listItems.slice(0,active).each(function(){offset+=this.offsetHeight;});if((offset+activeItem[0].offsetHeight-list.scrollTop())>list[0].clientHeight){list.scrollTop(offset+activeItem[0].offsetHeight-list.innerHeight());}else if(offset<list.scrollTop()){list.scrollTop(offset);}}};function movePosition(step){active+=step;if(active<0){active=listItems.size()-1;}else if(active>=listItems.size()){active=0;}}function limitNumberOfItems(available){return options.max&&options.max<available?options.max:available;}function fillList(){list.empty();var max=limitNumberOfItems(data.length);for(var i=0;i<max;i++){if(!data[i])continue;var formatted=options.formatItem(data[i].data,i+1,max,data[i].value,term);if(formatted===false)continue;var li=$("<li/>").html(options.highlight(formatted,term)).addClass(i%2==0?"ac_even":"ac_odd").appendTo(list)[0];$.data(li,"ac_data",data[i]);}listItems=list.find("li");if(options.selectFirst){listItems.slice(0,1).addClass(CLASSES.ACTIVE);active=0;}if($.fn.bgiframe)list.bgiframe();}return{display:function(d,q){init();data=d;term=q;fillList();},next:function(){moveSelect(1);},prev:function(){moveSelect(-1);},pageUp:function(){if(active!=0&&active-8<0){moveSelect(-active);}else{moveSelect(-8);}},pageDown:function(){if(active!=listItems.size()-1&&active+8>listItems.size()){moveSelect(listItems.size()-1-active);}else{moveSelect(8);}},hide:function(){element&&element.hide();listItems&&listItems.removeClass(CLASSES.ACTIVE);active=-1;},visible:function(){return element&&element.is(":visible");},current:function(){return this.visible()&&(listItems.filter("."+CLASSES.ACTIVE)[0]||options.selectFirst&&listItems[0]);},show:function(){var offset=$(input).offset();element.css({width:typeof options.width=="string"||options.width>0?options.width:$(input).width(),top:offset.top+input.offsetHeight,left:offset.left}).show();if(options.scroll){list.scrollTop(0);list.css({maxHeight:options.scrollHeight,overflow:'auto'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;listItems.each(function(){listHeight+=this.offsetHeight;});var scrollbarsVisible=listHeight>options.scrollHeight;list.css('height',scrollbarsVisible?options.scrollHeight:listHeight);if(!scrollbarsVisible){listItems.width(list.width()-parseInt(listItems.css("padding-left"))-parseInt(listItems.css("padding-right")));}}}},selected:function(){var selected=listItems&&listItems.filter("."+CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);return selected&&selected.length&&$.data(selected[0],"ac_data");},emptyList:function(){list&&list.empty();},unbind:function(){element&&element.remove();}};};$.fn.selection=function(start,end){if(start!==undefined){return this.each(function(){if(this.createTextRange){var selRange=this.createTextRange();if(end===undefined||start==end){selRange.move("character",start);selRange.select();}else{selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}}else if(this.setSelectionRange){this.setSelectionRange(start,end);}else if(this.selectionStart){this.selectionStart=start;this.selectionEnd=end;}});}var field=this[0];if(field.createTextRange){var range=document.selection.createRange(),orig=field.value,teststring="<->",textLength=range.text.length;range.text=teststring;var caretAt=field.value.indexOf(teststring);field.value=orig;this.selection(caretAt,caretAt+textLength);return{start:caretAt,end:caretAt+textLength}}else if(field.selectionStart!==undefined){return{start:field.selectionStart,end:field.selectionEnd}}};})(jQuery);;
function initializeCalculator(){
    $('.calculator-container .section').hide();
    $('.calculator-container .section:first').show();
    $('.calculator-tabs li:first').addClass('active');
    $('.sub-section:not(:first)').hide();
    $('.sub-calculator:not(:first)').hide();
    jQuery.post(
        "/calculate/update_vehicle_year",
        function(data){ $('#vehicle .field_vehicle_year').attr('disabled', '').html(data) },
        "html"
    )
}

function collapseFieldset($fieldset,f){
    $fieldset.addClass('collapsed');
}

function animateBackground($start,$end,$location,f){
    var $sectionAnim;
    if ($location == 'sidebar') {
        $('body').append('<div class="sidebar-section-anim"></div>');        
        $sectionAnim = $('body>div.sidebar-section-anim');
    } else {
        $('body').append('<div class="section-anim"></div>');
        $sectionAnim = $('body>div.section-anim');
    }
    $sectionAnim
        .height($start.height())
        .width($start.width())
        .css('top',$start.offset().top)
        .css('left',$start.offset().left)
        .show();
    $start.removeClass('section-active');
    $sectionAnim.animate({
        top: $end.offset().top,
        height: $end.height()
    }, 'fast', function(){
        $end.addClass('section-active');
        $sectionAnim.hide().remove();
        if (f !== undefined && typeof f == "function"){
            f();
        }
    });
}

function fadeOutBackground($start,f){
    $('body').append('<div class="section-anim"></div>');
    $sectionAnim = $('body>div.section-anim');
    $sectionAnim
        .height($start.height())
        .width($start.width())
        .css('top',$start.offset().top)
        .css('left',$start.offset().left)
        .show();
    $start.removeClass('section-active');
    $sectionAnim.fadeOut('fast',function(){
        $sectionAnim.remove();
        if (f !== undefined && typeof f == "function"){
            f();
        }    
    });
    
}

function fadeInBackground($start,f){
    $('body').append('<div class="section-anim"></div>');
    $sectionAnim = $('body>div.section-anim');
    $sectionAnim
        .height($start.height())
        .width($start.width())
        .css('top',$start.offset().top)
        .css('left',$start.offset().left)
        .hide();
    $sectionAnim.fadeIn('fast',function(){
        $start.addClass('section-active');
        $sectionAnim.remove();
        if (f !== undefined && typeof f == "function"){
            f();
        }    
    });
}

function animateSwitch($start,$end,f){
    $end.css('opacity',0);
    $start.fadeTo('fast',0,function(){
        $start.slideUp('fast');
        $end.slideDown('fast',function(){
            $end.fadeTo('fast',1,function(){
                if (f !== undefined && typeof f == "function"){
                    f();
                }
            });
        });
    });
}


function addSidebarItem(sideBarClass, section, type){
    $('.sidebar .'+section+' .rows-container:visible .'+type+':last')
        .clone('false')
        .removeClass()
        .addClass('row '+type+' '+sideBarClass)
        .insertAfter('.sidebar .'+section+' .rows-container:visible .'+type+':last');
}
function removeSidebarItem(sideBarClass, section){
    updateSidebarItem(sideBarClass,0);
    $('.sidebar .'+section+' .rows-container .'+sideBarClass).fadeTo('fast',0,function(){
        $(this).slideUp('fast',function(){
            $(this).remove();
        })    
    });
}
function updateSidebarItem(sideBarClass, value){
    $('.sidebar .'+sideBarClass).data('tonnage',value);
    var $calculated = $('.sidebar .'+sideBarClass);
    var subtotal = 0;
    var $subtotal = $calculated.parents('.section').find('.total');
    var total = 0;
    var $total = $('.sidebar .section-total');

    $calculated
        .parents('.rows-container')
        .slideDown('fast')
        .siblings('.rows-container')
        .slideUp('fast');
        
    $calculated.parents('.rows-container').find('.row').each(function(){
        if ($(this).data('tonnage')) {
            subtotal += parseFloat($(this).data('tonnage'));
        }
        if ($(this).hasClass(sideBarClass)) {
            changeValue($(this),$(this).data('tonnage'));
        }
    });
    $subtotal.data('tonnage',subtotal);
    changeValue($subtotal,subtotal);

    $('.sidebar .section').not('.section-total').find('.total').each(function(){
        if ($(this).data('tonnage')){
            total += parseFloat($(this).data('tonnage'));
        }
    });
    $total.data('tonnage',total);
    changeValue($total,total);
}

function changeValue($elem,value){
    if ($elem.is(':visible')) {
        $elem.fadeTo('fast',0,function(){
            if ($elem.hasClass('section')){
                $elem.removeClass('section-start');
            } else {
                $elem.parents('.section').removeClass('section-start');
            }
            $elem.find('.value').html(parseFloat(value).toFixed(2));
            $elem.fadeTo('fast',1);
        });
    } else {
        $elem.css('opacity',0).slideDown('fast',function(){
            $elem.find('.value').html(parseFloat(value).toFixed(2));
            $elem.fadeTo('fast',1);
        });
    }
}

function getField(input){
    var output = input.slice(0,input.lastIndexOf('_'));
    return output.slice(0,output.lastIndexOf('_'));
}
function getFieldFromFieldset(input){
    return input.slice(0,input.lastIndexOf('_'));
}
function getRowIndex(input){
    return input.slice((input.lastIndexOf('_')+1));
}

function getSectionIndexFromFieldset(input){
    return input.slice((input.lastIndexOf('_')+1));
}
function getSectionIndex(input){
    var output =  input.slice(0,input.lastIndexOf('_'));
    return output.slice((output.lastIndexOf('_')+1));
}

function addAutocomplete($elem){
    $elem.autocomplete(cities, {
            minChars: 0,
            width: 300,
            autoFill: false,
            max:100,
            matchContains: true,
            formatItem: function(row, i, max) {
                if (row.code == ""){
                    return row.airport + ", " + row.city + ", " + row.country;
                } else {
                    return row.airport + ", " + row.city + ", " + row.country + " (" + row.code + ")";
                }
            },
            formatMatch: function(row, i, max) {
                if (row.code == ""){
                    return row.airport + ", " + row.city + ", " + row.country;
                } else {
                    return row.airport + ", " + row.city + ", " + row.country + " (" + row.code + ")";
                }
            },
            formatResult: function(row) {
                if (row.code == ""){
                    return row.airport + ", " + row.city + ", " + row.country;
                } else {
                    return row.airport + ", " + row.city + ", " + row.country + " (" + row.code + ")";
                }
            }
    });
    
    $elem.result(function(event, data, formatted) {
        if (data){
            $(this).data('airport',data.airport);
            $(this).data('city',data.city);
        }
    });
}

function sendToSidebar(value, section, title, id, action){
		if (!section) {
				section = 'travel';
		}
    if (action == 'replace') {
        $target = $('.sidebar .'+section).find('.calc-'+id);
        $target.data('value',value);
        $target.find('.value').html(value.toFixed(2));
    } else if (action == 'add') {
        $last = $('.sidebar .'+section).find('.sub-total:last');
        $last.clone().insertAfter($last);
        $last.addClass('calc-'+id);
        $last.data('value',value);
        $last.find('.term').html(title);
        $last.find('.value').html(value.toFixed(2));
        $last.slideDown('fast');
    } else if (action == 'delete') {
        $target = $('.sidebar .'+section).find('.calc-'+id);
        $target.removeData('value').remove(); 
    }
    updateSidebarSection(section);
}
function updateSidebarSection(section){
    $section = $('.sidebar .'+section);
    $section.removeClass('section-start');
    var total = 0;
    $section.find('.sub-total').each(function(){
        if ($(this).data('value')){
            total += $(this).data('value');
        }
    })
    $section.data('value',total);
    $section.find('.total .value').html(total.toFixed(2));
    updateSidebarTotal();
}
function updateSidebarTotal(){
    $sidebar = $('.sidebar');
    var total = 0;
    $sidebar.find('.section:not(.section-total)').each(function(){
        if ($(this).data('value')){
            total += $(this).data('value');
        }
    })
    if (total > 0) {
        $sidebar.find('a#offset').removeClass('disabled-button');
    } else {
        $sidebar.find('a#offset').addClass('disabled-button');
    }
    $sidebar.data('value',total);
    $sidebar.find('.section-total').removeClass('section-start').find('.value').html(total.toFixed(2));
		if ($('body').hasClass('page-westjet')){
				$('a#offset').attr('href', '/offset?offset_tonnes='+total+'&ref=westjet');
		} else if (getParameterByName('ref') != '') {
		    $('#calculation-summary .buttons a.button').attr('href', '/offset?offset_tonnes='+total+'&ref='+getParameterByName('ref'))
  	} else {
  		  $('#calculation-summary .buttons a.button').attr('href', '/offset?offset_tonnes='+total)
  	}
}

function resetCalculator(id){
    $calc = $('form#'+id);
    $calc.find('select').each(function(){
        $(this).find('option:first').attr('selected','selected');
    })
    $calc.find('input[type="text"]').each(function(){
        $(this).attr('value','');
    })
    $calc.removeData('inputs');
    $calc.find('a.calculate').removeData('id').html('Calculate');
    $calc.find('.result-container').hide();
    $calc.find('.button-container').show();
}

function addSummary(value, id, inputs,calcId){
    var $parentCalc = $('form#'+id).parents('.sub-calculator');
    if ($parentCalc.length == 0) $parentCalc = $('form#'+id).parents('.calculator');
    var $last = $parentCalc.find('.summaries .result-container:last');

    $last.clone().insertAfter($last);
    $last.find('.value').html(value);
    $last.find('.remove-calc').data('id',calcId).click(function(){
        if ($parentCalc.find('.summaries .result-container:visible').length == 1){
            $parentCalc.find('.summaries').slideUp('fast',function(){
                $(this).find('.result-container:visible').remove();    
            });
        } else {
            $(this).parents('.result-container').slideUp('fast',function(){
                $(this).remove(); 
            })
        }
        sendToSidebar(
            null,
            $('ul.calculator-tabs:first .active').text(),
            null,
            $(this).data('id'),
            'delete'
        );	

    });
    if ($parentCalc.find('.summaries .result-container:visible').length == 0){
        $last.show();
        $parentCalc.find('.summaries').slideDown('fast');
    } else {
        $last.slideDown('fast');
    }
}
;
// $Id$
Drupal.behaviors.calculator = function (context) {
	initializeCalculator();
	var sectionCounter = 1;
	var heatingCounter = 1;
	var homeCounter = 1;
	var electricityCounter = 1;

	// SWITCH SECTIONS VIA TABS
    $('.calculator-tabs li').click(function(event){
        event.stopPropagation();
        var index = $('.calculator-tabs li').index($(this));
        
        $('.calculator-container .section:visible').removeClass('calc-active').hide();
        $('.calculator-container .section:eq('+index+')').addClass('calc-active').show();

        $('.calculator-tabs .active').removeClass('active');
        $(this).addClass('active');
		if ($(this).hasClass('travel')){
			initialize();
		}
    });
	if($('body').hasClass('front')) {
		initialize();
	}

    // SWITCH SECTIONS VIA SIDEBAR
    $('.sidebar .section:not(.section-total)').click(function(event){
        event.stopPropagation();
        calc = $(this).attr('class').split(' ')[0];
        $('.calculator-tabs li.'+calc).click();
    });

    // SWITCH SECTIONS VIA NEXT SECTION BUTTON
    $('.calculator-container .next-section a').click(function(event){
        event.preventDefault();
        event.stopPropagation();
        $('.calculator-tabs li.active').next().click();
    });

    // SWITCH OPTIONS 
    $('.switch-page span').click(function(){
        $(this).parents('.sub-section').hide();
        $(this).parents('.sub-section').siblings().show();
    });

    // SWITCH OPTIONS (WITHIN A SECTION)
    $('.switch-calculator').click(function(){
        $(this).parents('.sub-calculator').hide();
        $(this).parents('.sub-calculator').siblings('.sub-calculator').show();
    });
    
	// CALCULATE
	$('.calculator a.calculate', context).click(function (e) {
		e.preventDefault();
		var inputs = {};
		var $this = $(this);
		var $parentForm = $this.parents('form:first');
		
		if ($parentForm.attr('id') == 'flight' || $parentForm.attr('id') == 'flight_wj'){
	        var locations = [];
			$parentForm.find('input[type="text"]').each(function(){
				if ($(this).data('airport')) {
					var location_count = locations.length;
					locations[location_count] = {};
					locations[location_count].airport = $(this).data('airport').toUpperCase();
					locations[location_count].city = $(this).data('city').toUpperCase();
				}
			});
			if (locations.length > 0){
				inputs.locations = JSON.stringify(locations);
			}
			$parentForm.find('select').each(function(){
				var field = $(this).attr('class');
				inputs[field] = $(this).attr('value');
			})
		} else {
			$parentForm.find('input').each(function(){
				var field = $(this).attr('class');
				inputs[field] = parseFloat($(this).attr('value'));
			})
			$parentForm.find('select').each(function(){
				var field = $(this).attr('class');
				inputs[field] = $(this).attr('value');
			})
		}
		$parentForm.data('inputs',inputs);
		
		var calculateValue = function(data) {
	    if($('body').hasClass('front')){
				var $result = $this.parents('.button-container').siblings('.result-container').find('.value');
				$result.html(parseFloat(data['value']).toFixed(2));
				$this.parents('.button-container').siblings('.result-container').fadeIn('fast');
				$this.parents('.button-container').siblings('.result-container').find('a.button').attr('href', '/offset/?offset_tonnes='+data['value']);
			} else {
				$this.parents('.button-container').fadeOut('fast',function(){
					var $result = $(this).siblings('.result-container').find('.value');
					$result.html(parseFloat(data['value']).toFixed(2));
					$(this).siblings('.result-container').fadeIn('fast');
					$this.html('Recalculate');
					$this.parents('.calculator').find('.add-calc').removeClass('disabled');
				})
			}
			// SEND TO SIDEBAR: value, section, title, id, action
			var sidebarLabel = $this.parents('form').attr('id');
			if (sidebarLabel == 'vehicle') {
			    sidebarLabel = $this.parents('form').find('select.field_vehicle_model').val();
			} else if (sidebarLabel == 'flight' || sidebarLabel == 'flight_wj') {
			    sidebarLabel = $this.parents('form').find('input.field_flight_origin').data('city');
			    sidebarLabel += ' to ';
			    sidebarLabel += $this.parents('form').find('input.field_flight_destination').data('city');
			} else if (sidebarLabel == 'bus') {
			    sidebarLabel = 'Bus: ';
			    sidebarLabel += $this.parents('form').find('input.field_bus_origin').val();
			    sidebarLabel += ' to ';
			    sidebarLabel += $this.parents('form').find('input.field_bus_destination').val();
			} else if (sidebarLabel == 'heating') {
			    if (!$this.data('id')) {
    			    sidebarLabel = "Heating " + heatingCounter;
    			    heatingCounter++;
			    }
			} else if (sidebarLabel == 'home_energy') {
			    if (!$this.data('id')) {
    			    sidebarLabel = "Floor space " + homeCounter;
    			    homeCounter++;
			    }
			} else if (sidebarLabel == 'electricity') {
    		    if (!$this.data('id')) {
    			    sidebarLabel = "Electricity " + electricityCounter;
    			    electricityCounter++;
    		    }
    		} else if (sidebarLabel == 'fuel_usage') {
			    sidebarLabel = $this.parents('form').find('input.field_vehicle_fuel_usage').val();
			    sidebarLabel += ' ';
			    sidebarLabel += $this.parents('form').find('select.field_vehicle_fuel_usage_units').val();    		    
    		}
			if (!$this.data('id')) {
				$this.data('id',sectionCounter);
				sendToSidebar(
					data['value'],
					$('ul.calculator-tabs:first .active').text(),
					sidebarLabel,
					sectionCounter,
					'add'
				);
				sectionCounter++;
			} else {
				sendToSidebar(
					data['value'],
					$('ul.calculator-tabs:first .active').text(),
					sidebarLabel,
					$this.data('id'),
					'replace'
				);				
			}
		}
		
		$.ajax({
			type: 'POST',
			url: this.href, 
			success: calculateValue, 
			dataType: 'json',
			data: inputs
		});
	
	});
	
	// SHOW RECACULATE BUTTON ON CHANGE
	$('.calculator-container input, .calculator-container select').bind('change',function(){
		$parent = $(this).parents('form');
		if($parent.find('.result-container').is(':visible')){
			$parent.find('.result-container').hide();
			$parent.find('.button-container').show();
		}
	})
	
	// SWITCH UNITS BASED ON FUEL
	$('#heating .field_house_heat').bind('change',function(){
		if ($(this).val()=="Natural Gas") {
			$('#heating .field_heat_units').html('<option value="cubic metres">cubic metres</option>');
		} else {
			$('#heating .field_heat_units').html('<option value="litres">litres</option><option value="gallons">gallons</option>');
		}
	})

	
	// UPDATE VEHICLE FIELDS
	$('#vehicle .field_vehicle_year').bind('change',function(){
        $make = $(this).parents('.row').next().find('select');
        $make.fadeTo('medium',0);
        jQuery.post(
            "/calculate/update_vehicle_make",
            { year:$(this).attr('value') },
            function(data){
                $make.queue(function(){
                    $(this).attr('disabled', '').html(data);
                    $(this).fadeTo('fast',1);
                    $(this).dequeue();
                });
            },
            "html"
        )
    })
    $('#vehicle .field_vehicle_make').bind('change',function(){
        $model = $(this).parents('.row').next().find('select');
        $year = $(this).parents('.row').prev().find('select');
        $model.fadeTo('medium',0);
        jQuery.post(
            "/calculate/update_vehicle_model",
            {
                year:$year.attr('value'),
                make:$(this).attr('value')
            },
            function(data){
                $model.queue(function(){
                    $(this).attr('disabled', '').html(data);
                    $(this).fadeTo('fast',1);
                    $(this).dequeue();
                });
            },
            "html"
        )
    })

	// FLIGHTS
	$('#flight input[type="text"], #flight_wj input[type="text"]').each(function(){
        addAutocomplete($(this));
    });
	// BUS
	$('#bus .field_bus_origin, #bus .field_bus_destination').bind('change',function(){
		calcRoute();
	})

    // ADD ROW
    $('.add-row').click(function(){
		$(this).prev().clone().insertBefore($(this)).prev().slideDown('fast',function(){
			addAutocomplete($(this).find('input[type="text"]'));
			$(this).find('.remove-row').click(function(){
				$(this).parents('.row').fadeTo('fast',0,function(){
					$(this).slideUp('fast',function(){
						$(this).remove();
					});
				});
			})
		});
    });
	
	// ADD CALCULATION
	$('.add-calc').click(function(){
		if(!$(this).hasClass('disabled')){
			var $parentForm = $(this).siblings('form');
			// addSummary: value, id, inputs, calc-id
			addSummary($parentForm.find('.result-container .value').html(), $parentForm.attr('id'), $parentForm.data('inputs'), $parentForm.find('a.calculate').data('id'));
			resetCalculator($parentForm.attr('id'));
		}
		$(this).addClass('disabled');
	})

    // HELPER POPUPS
    $('.calculator .helper span').click(function(){
        var $targetField = $(this).parents('.row:first').find('input[type=text]');
        var $targetUnits = $(this).parents('.row:first').find('select');        
        var helperName = $(this).attr('class');
        $('#main .'+helperName).css('left',$targetField.offset().left-25).css('top',$targetField.offset().top+13).fadeIn('fast');
        $('#main .'+helperName).data('target',$targetField);
        $('#main .'+helperName).data('units',$targetUnits);
    })
    $('.helper-popup .close, .helper-popup .cancel').click(function(){
        $('.calculator-body>.helper-container').hide();
        $(this).parents('.helper-popup').fadeOut('fast');
    })
    $('.helper-popup .close, .helper-popup .clear').click(function(){
        $(this).parents('.helper-popup').find('input').attr('value','')
    })
    $('.helpers .monthly-helper .add').click(function(event){
        var $parent = $(this).parents('.helper-popup');
        var total = 0;
        $parent.find('input').each(function(){
            if ($(this).attr('value')){
                total += parseFloat($(this).attr('value'));                
            }
        })
        $parent.data('target').attr('value',total);
        $('.calculator-body>.helper-container').hide();
        $parent.fadeOut('fast');
    })
    $('.helpers .heating_usage-rate .add').click(function(event){
        var $parent = $(this).parents('.helper-popup');
        var rate = $parent.find('input[type=text]').attr('value');
        var units = $parent.find('.units').attr('value');
        var time = $parent.find('.time').attr('value');
        
        var total = rate*time;
        
		if ($('#heating .field_house_heat').val()=="Natural Gas") {
			$parent.data('target').attr('value',total);
			$parent.data('units').val(units);
			$parent.fadeOut('fast');
		} else {
			$parent.data('target').attr('value',total);
			$parent.data('units').val(units);
			$parent.fadeOut('fast');
		}
    })
    $('.helpers .fuel_usage_rate .add').click(function(event){
        var $parent = $(this).parents('.helper-popup');
        var rate = $parent.find('input[type=text]').attr('value');
        var units = $parent.find('.units').attr('value');
        var time = $parent.find('.time').attr('value');
        
        var total = rate*time;
        
		$parent.data('target').attr('value',total);
		
		$parent.data('units').val('kilometres');
		$parent.fadeOut('fast');

    })
    $('.helpers .electricity_usage-rate .add').click(function(event){
        var $parent = $(this).parents('.helper-popup');
        var rate = $parent.find('input[type=text]').attr('value');
        var units = 1;
        var time = $parent.find('.time').attr('value');
        
        var total = rate*units*time;
        
        $parent.data('target').attr('value',total);
        $parent.data('units').val('litres');
        $parent.fadeOut('fast');
    })
    $('.helpers .vehicle_mileage .add').click(function(event){
        var $parent = $(this).parents('.helper-popup');
        var rate = $parent.find('input[type=text]').attr('value');
        var units = $parent.find('.units').attr('value');
        var time = $parent.find('.time').attr('value');
        
        var total = rate*units*time;
        
        $parent.data('target').attr('value',total);
        $parent.data('units').val('kilometres');
        $('.calculator-body>.helper-container').hide();
        $parent.fadeOut('fast');
        
    })
    $('.helpers .add').click(function(){
         var $parent = $(this).parents('.helper-popup');
         $parent.data('target').change();
    })
    
    $('.calculator-container h3 .help, .calculator-container .field-container .help').hover(function(){
        $(this).parents('.calculator').css('z-index','3');
        $(this).parent().next().css('left',$(this).position().left-45).css('top',$(this).position().top+15).show();
    },function(){
        $(this).parents('.calculator').css('z-index','2');
        $(this).parent().next().hide();
    })


	// SUMMARY
	$('body.page-calculate .sidebar a#offset').click(function(e){
	    e.preventDefault();
		var inputs = {};
		var calcs = [];
		
		if (!$(this).hasClass('disabled-button')) {
			$('#calculation-overlay').css('opacity',0).show().fadeTo('fast',0.8);
			var output = "";
			var total_tonnes = parseFloat($('.sidebar .section-total .total .value').html());
//			var max_tonnes = 0;
/*			$('.sidebar .sub-total:visible').each(function(){
                if ( parseFloat($(this).find('.definition .value').html()) > max_tonnes ){
                    max_tonnes = parseFloat($(this).find('.definition .value').html());
                }
            })
*/
			$('.sidebar .sub-total:visible').each(function(){
			    var calc_count = calcs.length;
			    calcs[calc_count] = {};
			    if ($(this).parent().hasClass('utilities')) {
    			    calcs[calc_count]['class'] = 'utility';
			    } else if ($(this).parent().hasClass('vehicle')) {
    			    calcs[calc_count]['class'] = 'vehicle';
			    } else {
    			    calcs[calc_count]['class'] = 'travel';
			    }
			    calcs[calc_count].section = $(this).find('.term').html();
			    calcs[calc_count].value = $(this).find('.definition .value').html();
			    
				var width = parseFloat($(this).find('.definition .value').html())/total_tonnes*230;
				output += '<div class="item">';
				output += '<div class="value">'+$(this).find('.definition').html()+'</div>';
				output += '<div class="label">'+$(this).find('.term').html()+'</div>';
				output += '<div class="mini-carbonbar"><div style="width: '+width+'px;" class="bar"></div></div>';
				output += '</div>';
			})
			$('#calculation-summary .breakdown').html(output);
			$('#calculation-summary').fadeIn('fast');
		}
		inputs.calcs = JSON.stringify(calcs);
/*
		var updatePurchaseLink = function(data) {
		  if (getParameterByName('ref') != '') {
        $('#calculation-summary .buttons a.button').attr('href', '/offset?offset_tonnes='+$('.sidebar').data('value')+'&cid='+data['value']+'&ref='+getParameterByName('ref'));
			} else {
        $('#calculation-summary .buttons a.button').attr('href', '/offset?offset_tonnes='+$('.sidebar').data('value')+'&cid='+data['value']);
			}
			
		}
		
		$.ajax({
			type: 'POST',
			url: this.href, 
			success: updatePurchaseLink, 
			dataType: 'json',
			data: inputs
		});
*/		
	})
	$('#calculation-overlay').click(function(){
		$('#calculation-summary').fadeOut('fast');
		$(this).fadeOut('fast');
	})

	// FRONT PAGE QUICK CALCULATORS
	$('.front .buttons .quick-calc-button').click(function(){
		var index = $('.front .buttons .quick-calc-button').index($(this));
		$('.front .quick-calculators .calculator').hide();
		$('.front .quick-calculators .calculator:eq('+index+')').show();
		$('.front .quick-calculators .calculator:eq('+index+') .result-container').each(function(){
		    $(this).css({
		        'width':$(this).parent().width(),
		        'height':$(this).parent().height()+20
		    });
		})
	})
	
    $('.front .quick-calculators .result-container .actions span').click(function(){
        var formId = $(this).parents('form').attr('id');
        resetCalculator(formId);
    })
    $('.front .quick-calculators .button-container span.cancel').click(function(){
        $(this).parents('.calculator:first').fadeOut('fast');
    })

}
// MAP

var directionDisplay;
var directionsService;
var map;

function initialize() {
  directionsDisplay = new google.maps.DirectionsRenderer();
  directionsService = new google.maps.DirectionsService();
  var midpoint = new google.maps.LatLng(50, -97);
  var myOptions = {
	zoom:3,
	center: midpoint,
	disableDefaultUI: true,
	mapTypeId: google.maps.MapTypeId.ROADMAP
  }
  map = new google.maps.Map(document.getElementById("map"), myOptions);
  directionsDisplay.setMap(map);
}

function calcRoute() {
var start = $('#bus .field_bus_origin').val();
var end = $('#bus .field_bus_destination').val();
  var request = {
	  origin:start, 
	  destination:end,
	  travelMode: google.maps.DirectionsTravelMode.DRIVING
  };
  directionsService.route(request, function(response, status) {
	if (status == google.maps.DirectionsStatus.OK) {
		if (!$('body').hasClass('front')) {
		  directionsDisplay.setDirections(response);
		}
	  var distance = response['routes'][0]['legs'][0]['distance']['value']/1000;
	  $('#bus .field_bus_distance').val(distance);
	  $('#bus .field_bus_units').val('kilometres');
	  
	}
  });
}

function getParameterByName(name)
{
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regexS = "[\\?&]" + name + "=([^&#]*)";
  var regex = new RegExp(regexS);
  var results = regex.exec(window.location.href);
  if(results == null)
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}

;

$(document).ready(function() {

  // Attach onclick event to document only and catch clicks on all elements.
  $(document.body).click(function(event) {
    // Catch only the first parent link of a clicked element.
    $(event.target).parents("a:first,area:first").andSelf().filter("a,area").each(function() {

      var ga = Drupal.settings.googleanalytics;
      // Expression to check for absolute internal links.
      var isInternal = new RegExp("^(https?):\/\/" + window.location.host, "i");
      // Expression to check for special links like gotwo.module /go/* links.
      var isInternalSpecial = new RegExp("(\/go\/.*)$", "i");
      // Expression to check for download links.
      var isDownload = new RegExp("\\.(" + ga.trackDownloadExtensions + ")$", "i");

      // Is the clicked URL internal?
      if (isInternal.test(this.href)) {
        // Is download tracking activated and the file extension configured for download tracking?
        if (ga.trackDownload && isDownload.test(this.href)) {
          // Download link clicked.
          var extension = isDownload.exec(this.href);
          _gaq.push(["_trackEvent", "Downloads", extension[1].toUpperCase(), this.href.replace(isInternal, '')]);
        }
        else if (isInternalSpecial.test(this.href)) {
          // Keep the internal URL for Google Analytics website overlay intact.
          _gaq.push(["_trackPageview", this.href.replace(isInternal, '')]);
        }
      }
      else {
        if (ga.trackMailto && $(this).is("a[href^=mailto:],area[href^=mailto:]")) {
          // Mailto link clicked.
          _gaq.push(["_trackEvent", "Mails", "Click", this.href.substring(7)]);
        }
        else if (ga.trackOutgoing && this.href) {
          if (ga.trackOutboundAsPageview) {
            // Track all external links as page views after URL cleanup.
            // Currently required, if click should be tracked as goal.
            _gaq.push(["_trackPageview", '/outbound/' + this.href.replace(/^(https?|ftp|news|nntp|telnet|irc|ssh|sftp|webcal):\/\//i, '').split('/').join('--')]);
          }
          else {
            // External link clicked.
            _gaq.push(["_trackEvent", "Outbound links", "Click", this.href]);
          }
        }
      }
    });
  });
});
;
// $Id$
Drupal.behaviors.registry_search = function (context) {

	if ($('body').hasClass('page-registry')){
		$('body').append('<div id="lightbox-overlay"></div><div class="popup" id="registry-popup"><div class="close"></div><div class="content"></div></div>');
		$('#lightbox-overlay, .popup .close').click(function(){
				$('.popup:visible').fadeOut('fast',function(){
						$('#lightbox-overlay').fadeOut('fast');
				});
		});

		$('.content #certificate-search').click(function(){
			var inputs = {};
			inputs['query'] = $('.content input[type=text]').attr('value');
			$.ajax({
				type: 'POST',
				url: 'registry/search',
				success: function(data){
					
					$('#lightbox-overlay').css('opacity',0).show().fadeTo('fast',0.9,function(){
						$('#registry-popup .content').html(data);
						$('#registry-popup').fadeIn('fast');
					});
				},
				data: inputs
			});
		})
		
		$("#cert-number").bind("keydown", function(event) {
			var keycode = (event.keyCode ? event.keyCode : (event.which ? event.which : event.charCode));
			if (keycode == 13) { // keycode for enter key
				$('#certificate-search').click();
				return false;
			} else {
				return true;
			}
		});
		
		if (get('s') != "") {
			$('#cert-number').attr('value',(get('s')));
			$('#certificate-search').click();
		}

	}
	
	function get( name )
	{
		name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
		var regexS = "[\\?&]"+name+"=([^&#]*)";
		var regex = new RegExp( regexS );
		var results = regex.exec( window.location.href );
		if( results == null )
			return "";
		else
			return results[1];
	}

}

;
$(document).ready(function(){
    
		if($('body').hasClass('page-about')){
				$('body').append('<div id="lightbox-overlay"></div>');
				$('.views-row .words .see-more').click(function(e){
						e.stopPropagation();
						var $parent = $(this).parents('.views-row:first');
						$('#lightbox-overlay').css('opacity',0).show().fadeTo('fast',0.9,function(){
								if ($parent.hasClass('views-row-last')) {
										$parent.find('.next').hide();
								}
								$parent.find('.popup').fadeIn('fast');
						});
				});
				$('#lightbox-overlay, .popup .close').click(function(){
						$('.popup:visible').fadeOut('fast',function(){
								$('#lightbox-overlay').fadeOut('fast');
						});
				});
				$('.views-row .popup .next').click(function(){
						var $this = $(this)
						$this.parents('.popup:first').fadeOut('fast',function(){
								var $next = $this.parents('.views-row:first').next();
								if ($next.hasClass('views-row-last')) {
										$next.find('.next').hide();
								}
								$next.find('.popup').fadeIn('fast');                
						});
				});
		}
				
		if($('body').hasClass('page-news') || $('body').hasClass('page-services')){
				$('ul.page-nav li:first').addClass('active');
				$('.page-section:not(:first), #block-views-news_page-block_1 .view-content:not(:first)').hide();
				$('ul.page-nav li').click(function(){
						if (!$(this).hasClass('active')) {
								var index = $('ul.page-nav li').index($(this));
		
								$(this).siblings().removeClass('active');
								$(this).addClass('active');
								
								$('.page-section, #block-views-news_page-block_1 .view-content').hide();
								$('.page-section:eq('+index+'), #block-views-news_page-block_1 .view-content:eq('+index+')').show();
		
						}
				});
		
				var page = window.location.toString().split('page=')[1];
		
				if (page == '1'){
						$('ul.page-nav li:eq(1)').click();
				}
		
		}
		
		if($('body').hasClass('page-faq')){
				$('#content .answer').hide();
				$('#content h1:first').addClass('first');
				var counter = 1;
				$('#content .question').each(function(){
						$(this).prepend(counter+'. ');
						counter++;
				})
				$('#content .question').click(function(){
						if ($(this).next().is(':visible')) {
								$(this).next().slideUp('fast');
						} else {
								$(this).siblings('.answer').slideUp('fast')
								$(this).next().slideDown('fast');
						}
				})
		}
		
		if($('body').hasClass('node-type-project')){
				$('.main-content h4 .help').hover(function(){
						$(this).parent().next().css('left',$(this).position().left-45).css('top',$(this).position().top+15).show();
				},function(){
						$(this).parent().next().hide();
				})
		}

    if($('body').hasClass('front')){
				$('.header-top .close').click(function(){
						$('.header-top').fadeOut('fast');
				});
        var height = $(document).height();
        var width = $(window).width();
        $('#background-images .image').css({'width':width, 'height':height});
        $('#background-images .image:not(:first)').hide();
				var n_id=$('.view-background-images .node-type-feature-item:first').attr('id').split('-')[1];
				$('.view-feature-items #node-'+n_id).parent('.views-row').show();
				$('#content-top').append('<ul class="feature-nav"></ul>');
				$('.view-background-images .node-type-feature-item').each(function(i,n){
					var n_id=$(this).attr('id').split('-')[1];
					$('#content-top ul').append('<li id="feature-nav_'+n_id+'">'+(i+1)+'</li>')
				})
        
        $('#content-top .feature-nav li:first').addClass('active');
        
        $('#content-top .feature-nav li').click(function(){
            if (!$(this).hasClass('active')){
                $(this).siblings().removeClass('active');
                $(this).addClass('active');
								var n_id=$(this).attr('id').split('_')[1];
                var index = $('#content-top .feature-nav li').index($(this));
								var $prevText = $('.view-feature-items .views-row:visible');
                var $nextText = $('.view-feature-items #node-'+n_id).parents('.views-row');
                var $prevBG = $('#background-images .image:visible');
                var $nextBG = $('#background-'+n_id).find('.image');

                $prevBG.css('z-index',0);
                $nextBG.css('z-index',1);
                $prevText.fadeOut('medium');
                $nextBG.fadeIn('medium',function(){
                    $prevBG.hide();
                    $nextText.fadeIn('medium');
                });
            }
        })
        
        $(window).resize(function(){
            width = $(window).width();
            $('#background-images .image').css({'width':width, 'height':height});
        })
        
        $('#block-views-latest_news-block_1 .news-nav li').click(function(){
            if (!$(this).hasClass('active')) {
                $(this).siblings().removeClass('active');
                $(this).addClass('active');
                if ($(this).hasClass('cz')) {
                     $('#block-views-latest_news-block_1 .view-content:first').show();
                     $('#block-views-latest_news-block_1 .attachment').hide();
                } else {
                    $('#block-views-latest_news-block_1 .attachment').show();
                    $('#block-views-latest_news-block_1 .view-content:first').hide();
                }
            }
        });
    }
    
    if ($('body').hasClass('section-clients-and-partners')) {
      $('.view-clients-and-partners').each(function(){
        var list = '<ul>';
        $(this).find('.views-row').each(function(){
          if ($(this).find('.views-field-body').length == 1) {
            $(this).addClass('has-description');
          }
          if ($(this).find('.views-field-field-client-logo-fid').length == 1) {
            $(this).addClass('has-logo');
          } else {
            if ($(this).find('.views-field-body').length == 0) {
              list += '<li>' + $(this).find('.views-field-title').html() + '</li>';
            }
          }
        });
        list += '</ul>';
        $(this).find('.view-content').append(list);
      });
    }
    
    if ($('body').hasClass('page-calculate')) {
      var GET = {};
      var ref = '';
      var tab = '';
      var ref_block_id = '#block-views-referrer_logos-block_1';

      document.location.search.replace(/\??(?:([^=]+)=([^&]*)&?)/g, function () {
          function decode(s) {
              return decodeURIComponent(s.split("+").join(" "));
          }

          GET[decode(arguments[1])] = decode(arguments[2]);
      });

      ref = GET['ref'];
      tab = GET['tab'];
      
      if ($(ref_block_id).find('.logo.' + ref).length > 0) {
        $(ref_block_id).show();
        $(ref_block_id).find('.'+ref).show();
      }
      
      if (tab != '') {
        $('ul.calculator-tabs li.' + tab).click();
      }
      
      
    }
});

