def _float_to_tuple(what):
    if what < 0:
        sign = -1
        what *= -1
    else:
        sign = 1
    what = long(round(what * 3600000))
    degrees = int(what // 3600000)
    what -= degrees * 3600000
    minutes = int(what // 60000)
    what -= minutes * 60000
    seconds = int(what // 1000)
    what -= int(seconds * 1000)
    what = int(what)
    return (degrees * sign, minutes, seconds, what)
dataset/ETHPy150Open catap/namebench/nb_third_party/dns/rdtypes/ANY/LOC.py/_float_to_tuple/original