def METHOD_NAME(cprlat0, cprlat1, cprlon0, cprlon1, t0, t1):
    '''
     This algorithm comes from:
     http://www.lll.lu/~edward/edward/adsb/DecodingADSBposition.html.
     131072 is 2^17 since CPR latitude and longitude are encoded in 17 bits.
    '''
    cprlat_even = cprlat0 / 131072.0
    cprlat_odd = cprlat1 / 131072.0
    cprlon_even = cprlon0 / 131072.0
    cprlon_odd = cprlon1 / 131072.0
    air_d_lat_even = 360.0 / 60
    air_d_lat_odd = 360.0 / 59
    # compute latitude index 'j'
    j = int(59 * cprlat_even - 60 * cprlat_odd + 0.5)
    lat_even = float(air_d_lat_even * (j % 60 + cprlat_even))
    lat_odd = float(air_d_lat_odd * (j % 59 + cprlat_odd))
    if lat_even >= 270:
        lat_even = lat_even - 360
    if lat_odd >= 270:
        lat_odd = lat_odd - 360
    # check if both are in the same latidude zone, exit if not
    if cprNL(lat_even) != cprNL(lat_odd):
        return None
    # compute ni, longitude index m, and longitude
    if (t0 > t1):
        ni = cprN(lat_even, 0)
        m = math.floor(cprlon_even * (cprNL(lat_even)-1)
                       - cprlon_odd * cprNL(lat_even) + 0.5)
        lon = (360.0 / ni) * (m % ni + cprlon_even)
        lat = lat_even
    else:
        ni = cprN(lat_odd, 1)
        m = math.floor(cprlon_even * (cprNL(lat_odd)-1)
                       - cprlon_odd * cprNL(lat_odd) + 0.5)
        lon = (360.0 / ni) * (m % ni + cprlon_odd)
        lat = lat_odd
    if lon > 180:
        lon = lon - 360
    return [lat, lon]