@Override
  protected final @NlsSafe String calcPropertyValue(@NonNls String propertyName) {
    final PsiFileSystemItem fsItem = getFile().getValue();
    if (fsItem != null) {
      final PsiFileSystemItem parent = fsItem.getParent();
      if (parent != null) {
        final VirtualFile vFile = parent.getVirtualFile();
        if (vFile != null) {
          return FileUtil.toSystemDependentName(vFile.getPath());
        }
      }
    }
    // according to the doc, defaulting to project's current dir
    final String projectBasedirPath = getContextAntProject().getProjectBasedirPath();
    if (projectBasedirPath == null) {
      return null;
    }
    return FileUtil.toSystemDependentName(projectBasedirPath);
  }
@Override
  protected final @NlsSafe String calcPropertyValue(@NonNls String propertyName)