@Override
  @Nullable
  public PsiAnnotationMemberValue getDetachedValue() {
    GrNameValuePairStub stub = getStub();
    if (stub != null) {
      String text = stub.getValue();
      if (text == null) {
        return null;
      }
      PsiAnnotationMemberValue result = dereference(myDetachedValue);
      if (result == null) {
        GrAnnotationNameValuePair attribute = GroovyPsiElementFactory.getInstance(getProject()).createAnnotationAttribute(text, this);
        ((LightVirtualFile)attribute.getContainingFile().getViewProvider().getVirtualFile()).setWritable(false);
        myDetachedValue = new SoftReference<>(result = attribute.getValue());
      }
      return result;
    }

    return getValue();
  }
@Override
  @Nullable
  public PsiAnnotationMemberValue getDetachedValue()