An argument annotated Optional[int] with no default value is given. Is the argument required, and what do get_origin/get_args return for Optional[int]?
from typing import Optional, get_origin, get_args
def g(x: Optional[int]): ...
print(get_origin(Optional[int]))
print(get_args(Optional[int]))