Rename boolean functions to be clearer
diff --git a/include/mbedtls/aesni.h b/include/mbedtls/aesni.h
index cd85286..c5a102b 100644
--- a/include/mbedtls/aesni.h
+++ b/include/mbedtls/aesni.h
@@ -49,7 +49,7 @@
  *
  * \return         1 if CPU has support for the feature, 0 otherwise
  */
-int mbedtls_aesni_supports( unsigned int what );
+int mbedtls_aesni_has_support( unsigned int what );
 
 /**
  * \brief          AES-NI AES-ECB block en(de)cryption
diff --git a/include/mbedtls/compat-1.3.h b/include/mbedtls/compat-1.3.h
index ae9523a..8a3ab96 100644
--- a/include/mbedtls/compat-1.3.h
+++ b/include/mbedtls/compat-1.3.h
@@ -1778,7 +1778,7 @@
 #define aesni_gcm_mult mbedtls_aesni_gcm_mult
 #define aesni_inverse_key mbedtls_aesni_inverse_key
 #define aesni_setkey_enc mbedtls_aesni_setkey_enc
-#define aesni_supports mbedtls_aesni_supports
+#define aesni_supports mbedtls_aesni_has_support
 #define alarmed mbedtls_timing_alarmed
 #define arc4_context mbedtls_arc4_context
 #define arc4_crypt mbedtls_arc4_crypt
@@ -2200,7 +2200,7 @@
 #define oid_get_sig_alg_desc mbedtls_oid_get_sig_alg_desc
 #define oid_get_x509_ext_type mbedtls_oid_get_x509_ext_type
 #define operation_t mbedtls_operation_t
-#define padlock_supports mbedtls_padlock_supports
+#define padlock_supports mbedtls_padlock_has_support
 #define padlock_xcryptcbc mbedtls_padlock_xcryptcbc
 #define padlock_xcryptecb mbedtls_padlock_xcryptecb
 #define pbkdf2_hmac mbedtls_pbkdf2_hmac
@@ -2575,7 +2575,7 @@
 #define x509_crt_parse_der mbedtls_x509_crt_parse_der
 #define x509_crt_parse_file mbedtls_x509_crt_parse_file
 #define x509_crt_parse_path mbedtls_x509_crt_parse_path
-#define x509_crt_revoked mbedtls_x509_crt_revoked
+#define x509_crt_revoked mbedtls_x509_crt_is_revoked
 #define x509_crt_verify mbedtls_x509_crt_verify
 #define x509_csr mbedtls_x509_csr
 #define x509_csr_free mbedtls_x509_csr_free
@@ -2605,8 +2605,8 @@
 #define x509_sig_alg_gets mbedtls_x509_sig_alg_gets
 #define x509_string_to_names mbedtls_x509_string_to_names
 #define x509_time mbedtls_x509_time
-#define x509_time_expired mbedtls_x509_time_expired
-#define x509_time_future mbedtls_x509_time_future
+#define x509_time_expired mbedtls_x509_time_is_past
+#define x509_time_future mbedtls_x509_time_is_future
 #define x509_write_extensions mbedtls_x509_write_extensions
 #define x509_write_names mbedtls_x509_write_names
 #define x509_write_sig mbedtls_x509_write_sig
diff --git a/include/mbedtls/padlock.h b/include/mbedtls/padlock.h
index c381583..6ef0d5a 100644
--- a/include/mbedtls/padlock.h
+++ b/include/mbedtls/padlock.h
@@ -55,7 +55,7 @@
  *
  * \return         1 if CPU has support for the feature, 0 otherwise
  */
-int mbedtls_padlock_supports( int feature );
+int mbedtls_padlock_has_support( int feature );
 
 /**
  * \brief          PadLock AES-ECB block en(de)cryption
diff --git a/include/mbedtls/x509.h b/include/mbedtls/x509.h
index 027dd03..7cb0d46 100644
--- a/include/mbedtls/x509.h
+++ b/include/mbedtls/x509.h
@@ -238,7 +238,7 @@
  * \return         0 if the mbedtls_x509_time is still valid,
  *                 1 otherwise.
  */
-int mbedtls_x509_time_expired( const mbedtls_x509_time *time );
+int mbedtls_x509_time_is_past( const mbedtls_x509_time *time );
 
 /**
  * \brief          Check a given mbedtls_x509_time against the system time and check
@@ -249,7 +249,7 @@
  * \return         0 if the mbedtls_x509_time is already valid,
  *                 1 otherwise.
  */
-int mbedtls_x509_time_future( const mbedtls_x509_time *time );
+int mbedtls_x509_time_is_future( const mbedtls_x509_time *time );
 
 /**
  * \brief          Checkup routine
diff --git a/include/mbedtls/x509_crt.h b/include/mbedtls/x509_crt.h
index da5ff35..8aabfde 100644
--- a/include/mbedtls/x509_crt.h
+++ b/include/mbedtls/x509_crt.h
@@ -303,7 +303,7 @@
  * \return         1 if the certificate is revoked, 0 otherwise
  *
  */
-int mbedtls_x509_crt_revoked( const mbedtls_x509_crt *crt, const mbedtls_x509_crl *crl );
+int mbedtls_x509_crt_is_revoked( const mbedtls_x509_crt *crt, const mbedtls_x509_crl *crl );
 #endif /* MBEDTLS_X509_CRL_PARSE_C */
 
 /**
diff --git a/library/aes.c b/library/aes.c
index 3983ae3..5dbe910 100644
--- a/library/aes.c
+++ b/library/aes.c
@@ -507,7 +507,7 @@
 
 #if defined(MBEDTLS_PADLOCK_C) && defined(MBEDTLS_PADLOCK_ALIGN16)
     if( aes_padlock_ace == -1 )
-        aes_padlock_ace = mbedtls_padlock_supports( MBEDTLS_PADLOCK_ACE );
+        aes_padlock_ace = mbedtls_padlock_has_support( MBEDTLS_PADLOCK_ACE );
 
     if( aes_padlock_ace )
         ctx->rk = RK = MBEDTLS_PADLOCK_ALIGN16( ctx->buf );
@@ -516,7 +516,7 @@
     ctx->rk = RK = ctx->buf;
 
 #if defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_HAVE_X86_64)
-    if( mbedtls_aesni_supports( MBEDTLS_AESNI_AES ) )
+    if( mbedtls_aesni_has_support( MBEDTLS_AESNI_AES ) )
         return( mbedtls_aesni_setkey_enc( (unsigned char *) ctx->rk, key, keysize ) );
 #endif
 
@@ -608,7 +608,7 @@
 
 #if defined(MBEDTLS_PADLOCK_C) && defined(MBEDTLS_PADLOCK_ALIGN16)
     if( aes_padlock_ace == -1 )
-        aes_padlock_ace = mbedtls_padlock_supports( MBEDTLS_PADLOCK_ACE );
+        aes_padlock_ace = mbedtls_padlock_has_support( MBEDTLS_PADLOCK_ACE );
 
     if( aes_padlock_ace )
         ctx->rk = RK = MBEDTLS_PADLOCK_ALIGN16( ctx->buf );
@@ -623,7 +623,7 @@
     ctx->nr = cty.nr;
 
 #if defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_HAVE_X86_64)
-    if( mbedtls_aesni_supports( MBEDTLS_AESNI_AES ) )
+    if( mbedtls_aesni_has_support( MBEDTLS_AESNI_AES ) )
     {
         mbedtls_aesni_inverse_key( (unsigned char *) ctx->rk,
                            (const unsigned char *) cty.rk, ctx->nr );
@@ -830,7 +830,7 @@
                     unsigned char output[16] )
 {
 #if defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_HAVE_X86_64)
-    if( mbedtls_aesni_supports( MBEDTLS_AESNI_AES ) )
+    if( mbedtls_aesni_has_support( MBEDTLS_AESNI_AES ) )
         return( mbedtls_aesni_crypt_ecb( ctx, mode, input, output ) );
 #endif
 
diff --git a/library/aesni.c b/library/aesni.c
index 9982b3b..2165de7 100644
--- a/library/aesni.c
+++ b/library/aesni.c
@@ -46,7 +46,7 @@
 /*
  * AES-NI support detection routine
  */
-int mbedtls_aesni_supports( unsigned int what )
+int mbedtls_aesni_has_support( unsigned int what )
 {
     static int done = 0;
     static unsigned int c = 0;
diff --git a/library/gcm.c b/library/gcm.c
index a347c06..f84511a 100644
--- a/library/gcm.c
+++ b/library/gcm.c
@@ -126,7 +126,7 @@
 
 #if defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_HAVE_X86_64)
     /* With CLMUL support, we need only h, not the rest of the table */
-    if( mbedtls_aesni_supports( MBEDTLS_AESNI_CLMUL ) )
+    if( mbedtls_aesni_has_support( MBEDTLS_AESNI_CLMUL ) )
         return( 0 );
 #endif
 
@@ -216,7 +216,7 @@
     uint64_t zh, zl;
 
 #if defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_HAVE_X86_64)
-    if( mbedtls_aesni_supports( MBEDTLS_AESNI_CLMUL ) ) {
+    if( mbedtls_aesni_has_support( MBEDTLS_AESNI_CLMUL ) ) {
         unsigned char h[16];
 
         PUT_UINT32_BE( ctx->HH[8] >> 32, h,  0 );
diff --git a/library/padlock.c b/library/padlock.c
index e980d24..32654f9 100644
--- a/library/padlock.c
+++ b/library/padlock.c
@@ -47,7 +47,7 @@
 /*
  * PadLock detection routine
  */
-int mbedtls_padlock_supports( int feature )
+int mbedtls_padlock_has_support( int feature )
 {
     static int flags = -1;
     int ebx = 0, edx = 0;
diff --git a/library/x509.c b/library/x509.c
index 68cc022..bd0d69a 100644
--- a/library/x509.c
+++ b/library/x509.c
@@ -962,7 +962,7 @@
     return( 0 );
 }
 
-int mbedtls_x509_time_expired( const mbedtls_x509_time *to )
+int mbedtls_x509_time_is_past( const mbedtls_x509_time *to )
 {
     mbedtls_x509_time now;
 
@@ -972,7 +972,7 @@
     return( x509_check_time( &now, to ) );
 }
 
-int mbedtls_x509_time_future( const mbedtls_x509_time *from )
+int mbedtls_x509_time_is_future( const mbedtls_x509_time *from )
 {
     mbedtls_x509_time now;
 
@@ -984,13 +984,13 @@
 
 #else  /* MBEDTLS_HAVE_TIME */
 
-int mbedtls_x509_time_expired( const mbedtls_x509_time *to )
+int mbedtls_x509_time_is_past( const mbedtls_x509_time *to )
 {
     ((void) to);
     return( 0 );
 }
 
-int mbedtls_x509_time_future( const mbedtls_x509_time *from )
+int mbedtls_x509_time_is_future( const mbedtls_x509_time *from )
 {
     ((void) from);
     return( 0 );
diff --git a/library/x509_crt.c b/library/x509_crt.c
index 3ecda04..a26715a 100644
--- a/library/x509_crt.c
+++ b/library/x509_crt.c
@@ -1479,7 +1479,7 @@
 /*
  * Return 1 if the certificate is revoked, or 0 otherwise.
  */
-int mbedtls_x509_crt_revoked( const mbedtls_x509_crt *crt, const mbedtls_x509_crl *crl )
+int mbedtls_x509_crt_is_revoked( const mbedtls_x509_crt *crt, const mbedtls_x509_crl *crl )
 {
     const mbedtls_x509_crl_entry *cur = &crl->entry;
 
@@ -1488,7 +1488,7 @@
         if( crt->serial.len == cur->serial.len &&
             memcmp( crt->serial.p, cur->serial.p, crt->serial.len ) == 0 )
         {
-            if( mbedtls_x509_time_expired( &cur->revocation_date ) )
+            if( mbedtls_x509_time_is_past( &cur->revocation_date ) )
                 return( 1 );
         }
 
@@ -1565,16 +1565,16 @@
         /*
          * Check for validity of CRL (Do not drop out)
          */
-        if( mbedtls_x509_time_expired( &crl_list->next_update ) )
+        if( mbedtls_x509_time_is_past( &crl_list->next_update ) )
             flags |= MBEDTLS_X509_BADCRL_EXPIRED;
 
-        if( mbedtls_x509_time_future( &crl_list->this_update ) )
+        if( mbedtls_x509_time_is_future( &crl_list->this_update ) )
             flags |= MBEDTLS_X509_BADCRL_FUTURE;
 
         /*
          * Check if certificate is revoked
          */
-        if( mbedtls_x509_crt_revoked( crt, crl_list ) )
+        if( mbedtls_x509_crt_is_revoked( crt, crl_list ) )
         {
             flags |= MBEDTLS_X509_BADCERT_REVOKED;
             break;
@@ -1774,10 +1774,10 @@
     unsigned char hash[MBEDTLS_MD_MAX_SIZE];
     const mbedtls_md_info_t *md_info;
 
-    if( mbedtls_x509_time_expired( &child->valid_to ) )
+    if( mbedtls_x509_time_is_past( &child->valid_to ) )
         *flags |= MBEDTLS_X509_BADCERT_EXPIRED;
 
-    if( mbedtls_x509_time_future( &child->valid_from ) )
+    if( mbedtls_x509_time_is_future( &child->valid_from ) )
         *flags |= MBEDTLS_X509_BADCERT_FUTURE;
 
     /*
@@ -1851,10 +1851,10 @@
         ((void) ca_crl);
 #endif
 
-        if( mbedtls_x509_time_expired( &trust_ca->valid_to ) )
+        if( mbedtls_x509_time_is_past( &trust_ca->valid_to ) )
             ca_flags |= MBEDTLS_X509_BADCERT_EXPIRED;
 
-        if( mbedtls_x509_time_future( &trust_ca->valid_from ) )
+        if( mbedtls_x509_time_is_future( &trust_ca->valid_from ) )
             ca_flags |= MBEDTLS_X509_BADCERT_FUTURE;
 
         if( NULL != f_vrfy )
@@ -1898,10 +1898,10 @@
         return( MBEDTLS_ERR_X509_CERT_VERIFY_FAILED );
     }
 
-    if( mbedtls_x509_time_expired( &child->valid_to ) )
+    if( mbedtls_x509_time_is_past( &child->valid_to ) )
         *flags |= MBEDTLS_X509_BADCERT_EXPIRED;
 
-    if( mbedtls_x509_time_future( &child->valid_from ) )
+    if( mbedtls_x509_time_is_future( &child->valid_from ) )
         *flags |= MBEDTLS_X509_BADCERT_FUTURE;
 
     md_info = mbedtls_md_info_from_type( child->sig_md );
diff --git a/scripts/data_files/rename-1.3-2.0.txt b/scripts/data_files/rename-1.3-2.0.txt
index 544f234..59163e2 100644
--- a/scripts/data_files/rename-1.3-2.0.txt
+++ b/scripts/data_files/rename-1.3-2.0.txt
@@ -1310,7 +1310,7 @@
 aesni_gcm_mult mbedtls_aesni_gcm_mult
 aesni_inverse_key mbedtls_aesni_inverse_key
 aesni_setkey_enc mbedtls_aesni_setkey_enc
-aesni_supports mbedtls_aesni_supports
+aesni_supports mbedtls_aesni_has_support
 alarmed mbedtls_timing_alarmed
 arc4_context mbedtls_arc4_context
 arc4_crypt mbedtls_arc4_crypt
@@ -1732,7 +1732,7 @@
 oid_get_sig_alg_desc mbedtls_oid_get_sig_alg_desc
 oid_get_x509_ext_type mbedtls_oid_get_x509_ext_type
 operation_t mbedtls_operation_t
-padlock_supports mbedtls_padlock_supports
+padlock_supports mbedtls_padlock_has_support
 padlock_xcryptcbc mbedtls_padlock_xcryptcbc
 padlock_xcryptecb mbedtls_padlock_xcryptecb
 pem_context mbedtls_pem_context
@@ -2105,7 +2105,7 @@
 x509_crt_parse_der mbedtls_x509_crt_parse_der
 x509_crt_parse_file mbedtls_x509_crt_parse_file
 x509_crt_parse_path mbedtls_x509_crt_parse_path
-x509_crt_revoked mbedtls_x509_crt_revoked
+x509_crt_revoked mbedtls_x509_crt_is_revoked
 x509_crt_verify mbedtls_x509_crt_verify
 x509_crt_verify_info mbedtls_x509_crt_verify_info
 x509_csr mbedtls_x509_csr
@@ -2136,8 +2136,8 @@
 x509_sig_alg_gets mbedtls_x509_sig_alg_gets
 x509_string_to_names mbedtls_x509_string_to_names
 x509_time mbedtls_x509_time
-x509_time_expired mbedtls_x509_time_expired
-x509_time_future mbedtls_x509_time_future
+x509_time_expired mbedtls_x509_time_is_past
+x509_time_future mbedtls_x509_time_is_future
 x509_write_extensions mbedtls_x509_write_extensions
 x509_write_names mbedtls_x509_write_names
 x509_write_sig mbedtls_x509_write_sig
diff --git a/tests/suites/test_suite_x509parse.data b/tests/suites/test_suite_x509parse.data
index 6c7cbef..5f3fff8 100644
--- a/tests/suites/test_suite_x509parse.data
+++ b/tests/suites/test_suite_x509parse.data
@@ -322,51 +322,51 @@
 
 X509 Time Expired #1
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_expired:"data_files/server1.crt":"valid_from":1
+mbedtls_x509_time_is_past:"data_files/server1.crt":"valid_from":1
 
 X509 Time Expired #2
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_expired:"data_files/server1.crt":"valid_to":0
+mbedtls_x509_time_is_past:"data_files/server1.crt":"valid_to":0
 
 X509 Time Expired #3
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_expired:"data_files/server2.crt":"valid_from":1
+mbedtls_x509_time_is_past:"data_files/server2.crt":"valid_from":1
 
 X509 Time Expired #4
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_expired:"data_files/server2.crt":"valid_to":0
+mbedtls_x509_time_is_past:"data_files/server2.crt":"valid_to":0
 
 X509 Time Expired #5
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_expired:"data_files/test-ca.crt":"valid_from":1
+mbedtls_x509_time_is_past:"data_files/test-ca.crt":"valid_from":1
 
 X509 Time Expired #6
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_RSA_C:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_expired:"data_files/test-ca.crt":"valid_to":0
+mbedtls_x509_time_is_past:"data_files/test-ca.crt":"valid_to":0
 
 X509 Time Future #1
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_ECP_C:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_future:"data_files/server5.crt":"valid_from":0
+mbedtls_x509_time_is_future:"data_files/server5.crt":"valid_from":0
 
 X509 Time Future #2
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_ECP_C:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_future:"data_files/server5.crt":"valid_to":1
+mbedtls_x509_time_is_future:"data_files/server5.crt":"valid_to":1
 
 X509 Time Future #3
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_ECP_C:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_future:"data_files/server5-future.crt":"valid_from":1
+mbedtls_x509_time_is_future:"data_files/server5-future.crt":"valid_from":1
 
 X509 Time Future #4
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_ECP_C:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_future:"data_files/server5-future.crt":"valid_to":1
+mbedtls_x509_time_is_future:"data_files/server5-future.crt":"valid_to":1
 
 X509 Time Future #5
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_ECP_C:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_future:"data_files/test-ca2.crt":"valid_from":0
+mbedtls_x509_time_is_future:"data_files/test-ca2.crt":"valid_from":0
 
 X509 Time Future #6
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_ECP_C:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_HAVE_TIME
-mbedtls_x509_time_future:"data_files/test-ca2.crt":"valid_to":1
+mbedtls_x509_time_is_future:"data_files/test-ca2.crt":"valid_to":1
 
 X509 Certificate verification #1 (Revoked Cert, Expired CRL, no CN)
 depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_SHA1_C:MBEDTLS_RSA_C:MBEDTLS_PKCS1_V15
diff --git a/tests/suites/test_suite_x509parse.function b/tests/suites/test_suite_x509parse.function
index f955e3d..1061d03 100644
--- a/tests/suites/test_suite_x509parse.function
+++ b/tests/suites/test_suite_x509parse.function
@@ -192,7 +192,7 @@
 /* END_CASE */
 
 /* BEGIN_CASE depends_on:MBEDTLS_FS_IO:MBEDTLS_X509_CRT_PARSE_C */
-void mbedtls_x509_time_expired( char *crt_file, char *entity, int result )
+void mbedtls_x509_time_is_past( char *crt_file, char *entity, int result )
 {
     mbedtls_x509_crt   crt;
 
@@ -201,9 +201,9 @@
     TEST_ASSERT( mbedtls_x509_crt_parse_file( &crt, crt_file ) == 0 );
 
     if( strcmp( entity, "valid_from" ) == 0 )
-        TEST_ASSERT( mbedtls_x509_time_expired( &crt.valid_from ) == result );
+        TEST_ASSERT( mbedtls_x509_time_is_past( &crt.valid_from ) == result );
     else if( strcmp( entity, "valid_to" ) == 0 )
-        TEST_ASSERT( mbedtls_x509_time_expired( &crt.valid_to ) == result );
+        TEST_ASSERT( mbedtls_x509_time_is_past( &crt.valid_to ) == result );
     else
         TEST_ASSERT( "Unknown entity" == 0 );
 
@@ -213,7 +213,7 @@
 /* END_CASE */
 
 /* BEGIN_CASE depends_on:MBEDTLS_FS_IO:MBEDTLS_X509_CRT_PARSE_C */
-void mbedtls_x509_time_future( char *crt_file, char *entity, int result )
+void mbedtls_x509_time_is_future( char *crt_file, char *entity, int result )
 {
     mbedtls_x509_crt   crt;
 
@@ -222,9 +222,9 @@
     TEST_ASSERT( mbedtls_x509_crt_parse_file( &crt, crt_file ) == 0 );
 
     if( strcmp( entity, "valid_from" ) == 0 )
-        TEST_ASSERT( mbedtls_x509_time_future( &crt.valid_from ) == result );
+        TEST_ASSERT( mbedtls_x509_time_is_future( &crt.valid_from ) == result );
     else if( strcmp( entity, "valid_to" ) == 0 )
-        TEST_ASSERT( mbedtls_x509_time_future( &crt.valid_to ) == result );
+        TEST_ASSERT( mbedtls_x509_time_is_future( &crt.valid_to ) == result );
     else
         TEST_ASSERT( "Unknown entity" == 0 );