def _standardize_grud_args(inputs, initial_state):
    """Standardize `__call__` to a single list of tensor inputs,
    specifically for GRU-D.

    Args:
        inputs: list/tuple of tensors
        initial_state: tensor or list of tensors or None

    Returns:
        inputs: list of 3 tensors
        initial_state: list of tensors or None
    """
    if not isinstance(inputs, list) or len(inputs) <= 2:
        raise ValueError('inputs to GRU-D should be a list of at least 3 tensors.')
    if initial_state is None:
        if len(inputs) > 3:
            initial_state = inputs[3:]
        inputs = inputs[:3]
    def to_list_or_none(x):
        if x is None or isinstance(x, list):
            return x
        if isinstance(x, tuple):
            return list(x)
        return [x]
    # end of `to_list_or_none()`
    
    initial_state = to_list_or_none(initial_state)
    return inputs, initial_state