function GetTime(destTz) {
	var d = new Date();
	var tzDiff = d.getTimezoneOffset()/60;
	var gmt = (d.getHours() + tzDiff);
	var ending = ":" + ZeroFill(d.getMinutes()) + ":" + ZeroFill(d.getSeconds());

	var dest = bounds(gmt + destTz);
	document.clock.face.value = Make12Hour(ZeroFill(dest) + ending);

	var tickTock = "GetTime(" + destTz + ")";
	setTimeout(tickTock, 999);
}

function ZeroFill(num) {
	return ((num <= 9) ? ("0" + num) : num);
}

function bounds(h) {
	return (h >= 24) ? h - 24 : h;
}

function Make12Hour(time) {
	var parts = time.split(":");
	am = true;

	if (parts[0] > 0) {
		parts[0] -= 1; // avoid 12,24 special am/pm cases

		if (parts[0] >= 11) { // that's 13-23 outside of the -1/+1 trip
			am = false;
			if (parts[0] >= 12) parts[0] -= 12;
		}

		parts[0] += 1; // return to proper hour
	} else {
		parts[0] = 12; // if it's zero, it's 12am
	}

	parts[0] = ZeroFill(parts[0]);

	return parts.join(":") + ((am) ? " am" : " pm");
}
