@Override
  public String getExplicitPackageName() {
    PerlNamespaceElement namespaceElement = getNamespaceElement();

    if (namespaceElement != null) {
      return namespaceElement.getCanonicalName();
    }
    return null;
  }
  @Override
  public String getPackageName() {
    PerlNamespaceDefinitionStub stub = getStub();
    if (stub != null) return stub.getPackageName();

    PerlNamespaceElement namespaceElement = getNamespaceElement();
    if (namespaceElement != null) return namespaceElement.getName();

    return null;
  }
 @Override
 public PsiElement setName(@NotNull String name) throws IncorrectOperationException {
   PerlNamespaceElement namespaceElement = getNamespaceElement();
   if (namespaceElement != null) namespaceElement.setName(name);
   return this;
 }