fixed completeness function