a more exact way of defining the free ensures related to the modifies