added p-completeness