added GeoIP class