Added comments to shift()