Make uECC_RNG_NUM_TRIES modifiable at compile time.
diff --git a/uECC.c b/uECC.c
index 47192aa..d5ba7f7 100644
--- a/uECC.c
+++ b/uECC.c
@@ -2,7 +2,9 @@
 
 #include "uECC.h"
 
-#define MAX_TRIES 64
+#ifndef uECC_RNG_MAX_TRIES
+    #define uECC_RNG_MAX_TRIES 64
+#endif
 
 #if uECC_SUPPORTS_secp160r1
     #define uECC_MAX_BYTES 21 /* Due to the size of curve_n. */
@@ -865,7 +867,7 @@
     /* Zero out correctly (to compare to curve->n) for secp160r1. */
     private[curve->num_n_words - 1] = 0; 
     
-    for (tries = 0; tries < MAX_TRIES; ++tries) {
+    for (tries = 0; tries < uECC_RNG_MAX_TRIES; ++tries) {
         if (!generate_random_int(private, curve->num_words, curve->num_bytes * 8)) {
             return 0;
         }
@@ -906,7 +908,7 @@
     /* If an RNG function was specified, try to get a random initial Z value to improve
        protection against side-channel attacks. */
     if (g_rng_function) {
-        for (tries = 0; tries < MAX_TRIES; ++tries) {
+        for (tries = 0; tries < uECC_RNG_MAX_TRIES; ++tries) {
             if (!generate_random_int(p2[carry], curve->num_words, curve->num_bytes * 8)) {
                 return 0;
             }
@@ -1029,7 +1031,7 @@
         tmp[0] = 1;
     } else {
         uECC_word_t tries;
-        for (tries = 0; tries < MAX_TRIES; ++tries) {
+        for (tries = 0; tries < uECC_RNG_MAX_TRIES; ++tries) {
             if (!generate_random_int(tmp, curve->num_n_words, num_n_bits)) {
                 return 0;
             }
@@ -1074,7 +1076,7 @@
     uECC_word_t tries;
     bitcount_t num_n_bits = uECC_vli_numBits(curve->n, curve->num_n_words);
     
-    for (tries = 0; tries < MAX_TRIES; ++tries) {
+    for (tries = 0; tries < uECC_RNG_MAX_TRIES; ++tries) {
         if (!generate_random_int(k, curve->num_n_words, num_n_bits)) {
             return 0;
         }
@@ -1170,7 +1172,7 @@
 
     update_V(hash_context, K, V);
 
-    for (tries = 0; tries < MAX_TRIES; ++tries) {
+    for (tries = 0; tries < uECC_RNG_MAX_TRIES; ++tries) {
         uECC_word_t T[uECC_MAX_WORDS];
         uint8_t *T_ptr = (uint8_t *)T;
         wordcount_t T_bytes = 0;