<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def phase_angle(ephemeris, body, t):
 """Compute the phase angle of a body viewed from Earth. The ``body`` should be an integer or string that can be looked up in the given ``ephemeris``, which will also be asked to provide positions for the Earth and Sun. The return value will be an :class:`~skyfield.units.Angle` object. """

    earth = ephemeris['earth']
    sun = ephemeris['sun']
    body = ephemeris[body]
    pe = earth.at(t).observe(body)
    pe.position.au *= -1     # rotate 180 degrees to point back at Earth
    t2 = t.ts.tt_jd(t.tt - pe.light_time)
    ps = body.at(t2).observe(sun)
    return pe.separation_from(ps)