<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def api_aircraft( self, icao24: str, begin: Optional[timelike] = None, end: Optional[timelike] = None, ) -> pd.DataFrame: """Returns a flight table associated to an aircraft. Official documentation This API call retrieves flights for a particular aircraft within a certain time interval. Resulting flights departed and arrived within [begin, end]. If no flights are found for the given period, HTTP stats 404 - Not found is returned with an empty response body. """


        if begin is None:
            begin = round_time(datetime.now(timezone.utc), by=timedelta(days=1))
        begin = to_datetime(begin)
        if end is None:
            end = begin + timedelta(days=1)
        else:
            end = to_datetime(end)

        begin = int(begin.timestamp())
        end = int(end.timestamp())

        c = requests.get(
            f"https://opensky-network.org/api/flights/aircraft"
            f"?icao24={icao24}&begin={begin}&end={end}"
        )
        if c.status_code != 200:
            raise ValueError(c.content.decode())
        return (
            pd.DataFrame.from_records(c.json())[
                [
                    "firstSeen",
                    "lastSeen",
                    "icao24",
                    "callsign",
                    "estDepartureAirport",
                    "estArrivalAirport",
                ]
            ]
            .assign(
                firstSeen=lambda df: pd.to_datetime(
                    df.firstSeen * 1e9
                ).dt.tz_localize("utc"),
                lastSeen=lambda df: pd.to_datetime(
                    df.lastSeen * 1e9
                ).dt.tz_localize("utc"),
            )
            .sort_values("lastSeen")
        )