add free_zone function