def process_with_padding(x, F, process=lambda x: x, pad_width=(0, 0, 0, 0, 
    1, 0, 1, 0)):
    """
    Auxiliary decorator for layer with NASNet specific extra padding.

    Parameters:
    ----------
    x : NDArray
        Input tensor.
    F : module
        Gluon API module.
    process : function, default (lambda x: x)
        a decorated layer
    pad_width : tuple of int, default (0, 0, 0, 0, 1, 0, 1, 0)
        Whether the layer uses a bias vector.

    Returns
    -------
    NDArray
        Resulted tensor.
    """
    x = F.pad(x, mode='constant', pad_width=pad_width, constant_value=0)
    x = process(x)
    x = F.slice(x, begin=(None, None, 1, 1), end=(None, None, None, None))
    return x
