def openpgp(ctx):
    """
    Manage OpenPGP Application.

    Examples:

    \b
      Set the retries for PIN, Reset Code and Admin PIN to 10:
      $ ykman openpgp set-retries 10 10 10

    \b
      Require touch to use the authentication key:
      $ ykman openpgp touch aut on
    """
    try:
        ctx.obj['controller'] = OpgpController(ctx.obj['dev'].driver)
    except APDUError as e:
        if e.sw == SW.NOT_FOUND:
            ctx.fail("The OpenPGP application can't be found on this "
                     'YubiKey.')
        logger.debug('Failed to load OpenPGP Application', exc_info=e)
        ctx.fail('Failed to load OpenPGP Application')
Manage OpenPGP Application.

    Examples:

    \b
      Set the retries for PIN, Reset Code and Admin PIN to 10:
      $ ykman openpgp set-retries 10 10 10

    \b
      Require touch to use the authentication key:
      $ ykman openpgp touch aut on