Check (@NotNull Check check) { Check innerCheck = tryCast(getSingleInstruction(check), Check.class); if (innerCheck == null) return check; List<Instruction> checkInstructions = innerCheck.myInstructions; PsiExpression conjunction = mergeConditions(check, innerCheck, "&&"); return new Check(conjunction, checkInstructions, null); }