alias windVariableDirection = false;
if (substr(g,-2,2) is "KT") {
			alias windPresent=one;
			constant windUnits="knots" :dump;
      rename(g,windInKnots) ;
			modify windInKnots : hidden;
			if (is_integer(windInKnots,3,2)){
					windSpeed=to_string(windInKnots,3,2) : dump;
			}
			if (substr(windInKnots,0,3) is "VRB") {
					constant windDirection= "Variable" : dump;
					alias windVariableDirection = true;
			} else {
					if (is_integer(windInKnots,0,3)) {
							windDirection=to_string(windInKnots,0,3) : dump;
					}
			}
			if (substr(windInKnots,5,1) is "G" && is_integer(windInKnots,6,2) ) {
				windGust=to_string(windInKnots,6,2);
			}
      group g : dump; non_alpha na;
}
if (substr(g,-3,3) is "KMH") {
			alias windPresent=one;
			constant windUnits="km/h" : dump;
      rename(g,windInKilometresPerHour) ;
			modify windInKilometresPerHour : hidden;
			if (is_integer(windInKilometresPerHour,3,2)){
					windSpeed=to_string(windInKilometresPerHour,3,2) : dump;
			}
			if (substr(windInKilometresPerHour,0,3) is "VRB") {
					constant windDirection= "Variable" : dump;
					alias windVariableDirection = true;
			} else {
					if (is_integer(windInKilometresPerHour,0,3)) {
							windDirection=to_string(windInKilometresPerHour,0,3) : dump;
					}
			}
			if (substr(windInKilometresPerHour,5,1) is "G" && is_integer(windInKilometresPerHour,6,2) ) {
				windGust=to_string(windInKilometresPerHour,6,2);
			}
      group g : dump; non_alpha na;
}
if (substr(g,-3,3) is "MPS") {
			alias windPresent=one;
			constant windUnits="m/s" : dump;
      rename(g,windInMetresPerSecond) ;
			modify windInMetresPerSecond : hidden;
			if (is_integer(windInMetresPerSecond,3,2)) {
					windSpeed=to_string(windInMetresPerSecond,3,2) : dump;
			}
			if (substr(windInMetresPerSecond,0,3) is "VRB") {
					constant windDirection= "Variable" : dump;
					alias windVariableDirection = true;
			} else {
					if (is_integer(windInMetresPerSecond,0,3)) {
							windDirection=to_string(windInMetresPerSecond,0,3) : dump;
					}
			}
			if (substr(windInMetresPerSecond,5,1) is "G" && is_integer(windInMetresPerSecond,6,2) ) {
				windGust=to_string(windInMetresPerSecond,6,2);
			}
      group g : dump; non_alpha na;
}
if ( length(g)==7 && substr(g,3,1) is "V" ) {
    rename(g,variationInWindDirection);
    group g : dump; non_alpha na;
		if (is_integer(variationInWindDirection,0,3)) {
				extremeClockwiseWindDirection=to_string(variationInWindDirection,0,3);
		}
		if (is_integer(variationInWindDirection,4,3)) {
				extremeCounterClockwiseWindDirection=to_string(variationInWindDirection,4,3);
		}
}
