implementation trap