def is_subtype_helper(left: mypy.types.Type, right: mypy.types.Type) -> bool:
    'Checks whether ``left`` is a subtype of ``right``.'
    left = mypy.types.get_proper_type(left)
    right = mypy.types.get_proper_type(right)
    if (isinstance(left, mypy.types.LiteralType) and isinstance(left.value, int) and (left.value in (0, 1)) and isinstance(right, mypy.types.Instance) and (right.type.fullname == 'builtins.bool')):
        return True
    with mypy.state.strict_optional_set(True):
        return mypy.subtypes.is_subtype(left, right)
Checks whether ``left`` is a subtype of ``right``.
def is_subtype_helper(left: mypy.types.Type, right: mypy.types.Type) -> bool:
    
    left = mypy.types.get_proper_type(left)
    right = mypy.types.get_proper_type(right)
    if (isinstance(left, mypy.types.LiteralType) and isinstance(left.value, int) and (left.value in (0, 1)) and isinstance(right, mypy.types.Instance) and (right.type.fullname == 'builtins.bool')):
        return True
    with mypy.state.strict_optional_set(True):
        return mypy.subtypes.is_subtype(left, right)