<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def is_valid_abi_type(type_name):
 """ This function is used to make sure that the ``type_name`` is a valid ABI Type. Please note that this is a temporary function and should be replaced by the corresponding ABI function, once the following issue has been resolved. https://github.com/ethereum/eth-abi/issues/125 """

    valid_abi_types = {"address", "bool", "bytes", "int", "string", "uint"}
    is_bytesN = type_name.startswith("bytes") and 1 <= int(type_name[5:]) <= 32
    is_intN = (
        type_name.startswith("int") and
        8 <= int(type_name[3:]) <= 256 and
        int(type_name[3:]) % 8 == 0
    )
    is_uintN = (
        type_name.startswith("uint") and
        8 <= int(type_name[4:]) <= 256 and
        int(type_name[4:]) % 8 == 0
    )

    if type_name in valid_abi_types:
        return True
    elif is_bytesN:
        # bytes1 to bytes32
        return True
    elif is_intN:
        # int8 to int256
        return True
    elif is_uintN:
        # uint8 to uint256
        return True

    return False