then we would need to pass an array, and that would break the calls where we use this->p_basename and this->p_id