def METHOD_NAME(common: NEMTransactionCommon, inner: bool = False) -> None:
    validate_network(common.network)
    signer = common.signer  # local_cache_attribute
    err = None
    if not inner and signer:
        raise ProcessError("Signer not allowed in outer transaction")
    if inner and signer is None:
        err = "signer"
    if err:
        if inner:
            raise ProcessError(f"No {err} provided in inner transaction")
        else:
            raise ProcessError(f"No {err} provided")
    if signer is not None:
        _validate_public_key(signer, "Invalid signer public key in inner transaction")