'Initialize a LOC record instance.
The parameters I{latitude} and I{longitude} may be either a 4-tuple
of integers specifying (degrees, minutes, seconds, milliseconds),
or they may be floating point values specifying the number of
degrees. The other parameters are floats. Size, horizontal precision,
and vertical precision are specified in centimeters.'

def __init__(self, rdclass, rdtype, latitude, longitude, altitude, size=_default_size, hprec=_default_hprec, vprec=_default_vprec):

    super(LOC, self).__init__(rdclass, rdtype)
    if (isinstance(latitude, int) or isinstance(latitude, long)):
        latitude = float(latitude)
    if isinstance(latitude, float):
        latitude = _float_to_tuple(latitude)
    self.latitude = latitude
    if (isinstance(longitude, int) or isinstance(longitude, long)):
        longitude = float(longitude)
    if isinstance(longitude, float):
        longitude = _float_to_tuple(longitude)
    self.longitude = longitude
    self.altitude = float(altitude)
    self.size = float(size)
    self.horizontal_precision = float(hprec)
    self.vertical_precision = float(vprec)
