class EncryptFlag extends Flag
{
    private final COSDictionary encryptDictionary;

    /**
     * Constructor
     * @param encryptDict COSDictionary instance.
     */
    EncryptFlag(COSDictionary encryptDict)
    {
        encryptDictionary = encryptDict;
    }

    @Override
    String getFlagType()
    {
        return "Encrypt flag";
    }

    @Override
    String getFlagValue()
    {
        return "Flag value:" + encryptDictionary.getInt(COSName.P);
    }

    @Override
    Object[][] getFlagBits()
    {<FILL_FUNCTION_BODY>}
}

        AccessPermission ap = new AccessPermission(encryptDictionary.getInt(COSName.P));
        return new Object[][]{
                new Object[]{3, "can print", ap.canPrint()},
                new Object[]{4, "can modify", ap.canModify()},
                new Object[]{5, "can extract content", ap.canExtractContent()},
                new Object[]{6, "can modify annotations", ap.canModifyAnnotations()},
                new Object[]{9, "can fill in form fields", ap.canFillInForm()},
                new Object[]{10, "can extract for accessibility", ap.canExtractForAccessibility()},
                new Object[]{11, "can assemble document", ap.canAssembleDocument()},
                new Object[]{12, "can print faithful", ap.canPrintFaithful()},
        };
    
<no_super_class>