void (@NotNull Project project, @NotNull PsiElement element, @NotNull ModPsiUpdater updater) { final PsiReferenceExpression referenceExpression; final PsiIfStatement ifStatement; if (element instanceof PsiKeyword) { // double-checked locking final PsiElement parent = element.getParent(); if (!(parent instanceof PsiIfStatement)) { return; } ifStatement = (PsiIfStatement)parent; final PsiIfStatement innerIfStatement = getDoubleCheckedLockingInnerIf(ifStatement); if (innerIfStatement == null) { return; } final PsiStatement thenBranch2 = ControlFlowUtils.stripBraces(innerIfStatement.getThenBranch()); if (!(thenBranch2 instanceof PsiExpressionStatement expressionStatement)) { return; } final PsiExpression expression = expressionStatement.getExpression(); if (!(expression instanceof PsiAssignmentExpression assignmentExpression)) { return; } final PsiExpression lhs = PsiUtil.skipParenthesizedExprDown(assignmentExpression.getLExpression()); if (!(lhs instanceof PsiReferenceExpression)) { return; } referenceExpression = (PsiReferenceExpression)lhs; } else { referenceExpression = (PsiReferenceExpression)element; ifStatement = PsiTreeUtil.getParentOfType(referenceExpression, PsiIfStatement.class); } replaceWithStaticHolder(referenceExpression, ifStatement, updater); }