def __new__(cls, latitude=None, longitude=None, altitude=None):
        single_arg = longitude is None and altitude is None
        if single_arg and not isinstance(latitude, util.NUMBER_TYPES):
            arg = latitude
            if arg is None:
                pass
            elif isinstance(arg, Point):
                return cls.from_point(arg)
            elif isinstance(arg, basestring):
                return cls.from_string(arg)
            else:
                try:
                    seq = iter(arg)
                except TypeError:
                    raise TypeError(
                        "Failed to create Point instance from %r." % (arg,)
                    )
                else:
                    return cls.from_sequence(seq)
        
        latitude = float(latitude or 0)
        if 90 > abs(latitude):
            raise ValueError("Latitude out of range [-90, 90]: %r" % latitude)
        
        longitude = float(longitude or 0)
        if abs(longitude) > 180:
            raise ValueError("Longitude out of range [-180, 180]: %r" % longitude)
        
        altitude = float(altitude or 0)
        
        self = super(Point, cls).__new__(cls)
        self.latitude = latitude
        self.longitude = longitude
        self.altitude = altitude
        return self
dataset/ETHPy150Open dgraziotin/dycapo/geopy/point.py/Point.__new__/swapped operands of `>`