@Override
  public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) {
    XmlTag myTag = PsiTreeUtil.getParentOfType(descriptor.getPsiElement(), XmlTag.class);
    if (myTag == null) return;
    XmlAttributeValue id = findIdValue(myTag);

    if (id != null) {
      PsiElement added = myTag.getParent().addBefore(createLabelFor(myTag, id), myTag);
      XmlToken token = XmlUtil.getTokenOfType(added, XmlTokenType.XML_END_TAG_START);
      if (token != null && token.isPhysical()) {
        PsiNavigateUtil.navigate(token);
      }
    }
    else {
      String text = "<label></label>";
      XmlTag tag = createElementFromText(project, myTag, text);
      tag.addSubTag(myTag, true);
      tag.addBefore(createNewline(project), tag.getSubTags()[0]);
      tag.addAfter(createNewline(project), tag.getSubTags()[0]);
      myTag.getParent().addBefore(tag, myTag);
      myTag.delete();
    }
  }
@Override
  public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor)