public static function _getDefaultACL()
    {
        if (self::$defaultACLUsesCurrentUser && self::$defaultACL)
        {
            $last = self::$lastCurrentUser ? clone self::$lastCurrentUser : null;
            if (!AVUser::getCurrentUser())
            {
                return self::$defaultACL;
            }
            if ($last != AVUser::getCurrentUser())
            {
                self::$defaultACLWithCurrentUser = clone self::$defaultAC;
                self::$defaultACLWithCurrentUser->_setShared(true);
                self::$defaultACLWithCurrentUser->setUserReadAccess(AVUser::getCurrentUser(), true);
                self::$defaultACLWithCurrentUser->setUserWriteAccess(AVUser::getCurrentUser(), true);
                self::$lastCurrentUser = clone AVUser::getCurrentUser();
            }

            return self::$defaultACLWithCurrentUser;
        }

        return self::$defaultACL;
    }