public function deleteAcl(): WebAcl {
        $fedora  = $this->res->getFedora();
        $resMeta = $this->res->getMetadata();
        $acls    = $resMeta->allResources(self::ACL_LINK_PROP);
        if (count($acls) == 0) {
            throw new NotFound();
        }
        foreach ($acls as $i) {
            $aclRes  = $fedora->getResourceByUri($i);
            $aclMeta = $aclRes->getMetadata();
            foreach ($aclMeta->allResources(self::ACL_CHILDREN_PROP) as $j) {
                $fedora->getResourceByUri($j->getUri())->delete();
            }
            $aclRes->getMetadata(true); // notify children were deleted
            $aclRes->delete(true, false);
        }
        $resMeta->deleteResource(self::ACL_LINK_PROP);
        $this->res->setMetadata($resMeta);
        $this->res->updateMetadata();

        $this->res->getAclUrl(true);
        $this->resRules = $this->extRules = [];

        return $this;
    }