(function(){window.geoip2=function(){"use strict";var l={};function a(e,r,s,n){this.successCallback=e,this.errorCallback=r,this.type=n}a.prototype.returnSuccess=function(e){this.successCallback&&typeof this.successCallback=="function"&&this.successCallback(this.fillInObject(JSON.parse(e)))},a.prototype.returnError=function(e){this.errorCallback&&typeof this.errorCallback=="function"&&(e||(e={error:"Unknown error"}),this.errorCallback(e))};var h={country:[["continent","Object","names","Object"],["country","Object","names","Object"],["registered_country","Object","names","Object"],["represented_country","Object","names","Object"],["traits","Object"]],city:[["city","Object","names","Object"],["continent","Object","names","Object"],["country","Object","names","Object"],["location","Object"],["postal","Object"],["registered_country","Object","names","Object"],["represented_country","Object","names","Object"],["subdivisions","Array",0,"Object","names","Object"],["traits","Object"]]};return a.prototype.fillInObject=function(e){for(var r=this.type==="country"?h.country:h.city,s=0;s