def translate(tile, offset):
    """
    Move a tile. This returns a moved copy; the original is unchaged.

    Parameters
    ----------
    tile : tuple
        containing y and x slice objects
    offset : tuple
        translation, given as ``(y, x)``

    Returns
    -------
    tile : tuple
        a copy; the input is unchaged
    """
    dy, dx = offset
    y, x = tile
    new_tile = slice(y.start + dy, y.stop + dy), slice(x.start + dx, x.stop +
        dx)
    return new_tile
