def RequiresCryptography(fn):
 def CryptographyCheckingWrapper(*args, **kwargs):
  if (not X509):
   raise Asn1Error('%s requires cryptography, which is not available', fn)
  return fn(*args, **kwargs)
 return CryptographyCheckingWrapper

def RequiresCryptography ( fn ) : def CryptographyCheckingWrapper ( * args , ** kwargs ) : if ( not X509 ) : raise Asn1Error ( '%s requires cryptography, which is not available' , fn ) return fn ( * args , ** kwargs ) return CryptographyCheckingWrapper
decorator to support limited functionality if cryptography is missing .