<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def get(self, uid: int, cached_msg: CachedMessage = None, requirement: FetchRequirement = FetchRequirement.METADATA) \ -> Optional[MessageT]: """Return the message with the given UID. Args: uid: The message UID. cached_msg: The last known cached message. requirement: The data required from each message. Raises: IndexError: The UID is not valid in the mailbox. """

        ...