Write a Python script to parse a large CloudTrail log file and identify API calls made by unauthorized or expired IAM roles.
Implement a function that takes a list of CloudTrail event records, a list of allowed role names, and a mapping of role expiration timestamps, then returns the events made by roles that are not allowed or whose role session time is past expiration.
events: list[str], allowed_roles: list[str], role_expirations: dict[str, str]
Return list[dict] of parsed CloudTrail events that match the rule.
def find_unauthorized_cloudtrail_calls(events, allowed_roles, role_expirations):