code: def unbind(cell1, transform, moduleDimensions):
    
    cell1Coords = np.unravel_index(cell1, moduleDimensions)
    transformCoords = np.unravel_index(transform, moduleDimensions)
    cell2Coords = [(t + c1) % m
                   for c1, t, m in itertools.izip(cell1Coords, transformCoords,
                                                  moduleDimensions)]
    return np.ravel_multi_index(cell2Coords, moduleDimensions)
docs: Return the cell index corresponding to the other half of the transform.
  
    Assumes that `transform = bind(cell1, cell2)` and, given `cell1` and
    `transform`, returns `cell2`.