add perfect detector