added faraheit-sensitive algorithm; need to debug