'Convert a Julian day number to a year/month/day tuple
of this calendar (matching jQuery calendars algorithm)
@param jd: the Julian day number'

@classmethod
def from_jd(cls, jd):

    (gyear, gmonth, gday) = cls._jd_to_gregorian(jd)
    gdoy = ((jd - cls._gregorian_to_jd(gyear, 1, 1)) + 1)
    year = (gyear + 56)
    cdata = cls._get_calendar_data(year)
    month = 9
    rdays = ((cdata[month] - cdata[0]) + 1)
    while (gdoy > rdays):
        month += 1
        if (month > 12):
            month = 1
            year += 1
            cdata = cls._get_calendar_data(year)
        rdays += cdata[month]
    day = (cdata[month] - (rdays - gdoy))
    return (int(year), int(month), int(day))
