# Test multiple remove lines
# Although the repoinit language includes a remove statement,
# it is not generally supported by the current version of the
# o.a.s.jcr.repoinit module. Only the "remove *" variant is
# supported starting with o.a.s.jcr.repoinit V1.1.34
set ACL on /libs,/apps
    remove * for user1,user2
    allow jcr:read for user1,user2

    remove * for another
    allow x:y for another

    remove jcr:ACL for userTestingSpecificRemove
end