use constant instead of hard coding
add geoip support as TODO