Update coding style.
diff --git a/asm_arm.inc b/asm_arm.inc
index eff1673..fdaf04d 100644
--- a/asm_arm.inc
+++ b/asm_arm.inc
@@ -20,11 +20,10 @@
 
 #if (uECC_ASM == uECC_asm_fast)
 
-static uint32_t vli_add(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    uint32_t l_carry = 0;
-    uint32_t l_left;
-    uint32_t l_right;
+static uint32_t vli_add(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    uint32_t carry = 0;
+    uint32_t left_word;
+    uint32_t right_word;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -34,34 +33,34 @@
         "stmia %[dptr]!, {%[left]} \n\t"  /* Store result word. */
         
         /* Now we just do the remaining words with the carry bit (using ADC) */
-        REPEAT(DEC(uECC_WORDS), "ldmia %[lptr]!, {%[left]} \n\t"
+        REPEAT(DEC(uECC_WORDS),
+            "ldmia %[lptr]!, {%[left]} \n\t"
             "ldmia %[rptr]!, {%[right]} \n\t"
             "adcs %[left], %[right] \n\t"
             "stmia %[dptr]!, {%[left]} \n\t")
         
-        "adcs %[carry], %[carry] \n\t" /* Store carry bit in l_carry. */
+        "adcs %[carry], %[carry] \n\t" /* Store carry bit. */
     #if (uECC_PLATFORM != uECC_arm_thumb2)
         ".syntax divided \n\t"
     #endif
     #if (uECC_PLATFORM == uECC_arm_thumb)
-        : [dptr] "+l" (p_result), [lptr] "+l" (p_left), [rptr] "+l" (p_right),
-          [carry] "+l" (l_carry), [left] "=l" (l_left), [right] "=l" (l_right)
+        : [dptr] "+l" (result), [lptr] "+l" (left), [rptr] "+l" (right),
+          [carry] "+l" (carry), [left] "=l" (left_word), [right] "=l" (right_word)
     #else
-        : [dptr] "+r" (p_result), [lptr] "+r" (p_left), [rptr] "+r" (p_right),
-          [carry] "+r" (l_carry), [left] "=r" (l_left), [right] "=r" (l_right)
+        : [dptr] "+r" (result), [lptr] "+r" (left), [rptr] "+r" (right),
+          [carry] "+r" (carry), [left] "=r" (left_word), [right] "=r" (right_word)
     #endif
         :
         : "cc", "memory"
     );
-    return l_carry;
+    return carry;
 }
 #define asm_add 1
 
-static uint32_t vli_sub(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    uint32_t l_carry = 0;
-    uint32_t l_left;
-    uint32_t l_right;
+static uint32_t vli_sub(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    uint32_t carry = 0;
+    uint32_t left_word;
+    uint32_t right_word;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -71,36 +70,37 @@
         "stmia %[dptr]!, {%[left]} \n\t"  /* Store result word. */
         
         /* Now we just do the remaining words with the carry bit (using SBC) */
-        REPEAT(DEC(uECC_WORDS), "ldmia %[lptr]!, {%[left]} \n\t"
+        REPEAT(DEC(uECC_WORDS),
+            "ldmia %[lptr]!, {%[left]} \n\t"
             "ldmia %[rptr]!, {%[right]} \n\t"
             "sbcs %[left], %[right] \n\t"
             "stmia %[dptr]!, {%[left]} \n\t")
             
-        "adcs %[carry], %[carry] \n\t" /* Store carry bit in l_carry. */
+        "adcs %[carry], %[carry] \n\t" /* Store carry bit. */
     #if (uECC_PLATFORM != uECC_arm_thumb2)
         ".syntax divided \n\t"
     #endif
     #if (uECC_PLATFORM == uECC_arm_thumb)
-        : [dptr] "+l" (p_result), [lptr] "+l" (p_left), [rptr] "+l" (p_right),
-          [carry] "+l" (l_carry), [left] "=l" (l_left), [right] "=l" (l_right)
+        : [dptr] "+l" (result), [lptr] "+l" (left), [rptr] "+l" (right),
+          [carry] "+l" (carry), [left] "=l" (left_word), [right] "=l" (right_word)
     #else
-        : [dptr] "+r" (p_result), [lptr] "+r" (p_left), [rptr] "+r" (p_right),
-          [carry] "+r" (l_carry), [left] "=r" (l_left), [right] "=r" (l_right)
+        : [dptr] "+r" (result), [lptr] "+r" (left), [rptr] "+r" (right),
+          [carry] "+r" (carry), [left] "=r" (left_word), [right] "=r" (right_word)
     #endif
         :
         : "cc", "memory"
     );
-    return !l_carry; // note that on ARM, carry flag set means "no borrow" when subtracting (for some reason...)
+    return !carry; // note that on ARM, carry flag set means "no borrow" when subtracting
+                   // (for some reason...)
 }
 #define asm_sub 1
 
 #if (uECC_PLATFORM != uECC_arm_thumb)
 #if (uECC_WORDS == 5)
-static void vli_mult(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
-    register const uint32_t *r2 __asm__("r2") = p_right;
+static void vli_mult(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
+    register const uint32_t *r2 __asm__("r2") = right;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -267,11 +267,10 @@
 #endif /* (uECC_WORDS == 5) */
 
 #if (uECC_WORDS == 6)
-static void vli_mult(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
-    register const uint32_t *r2 __asm__("r2") = p_right;
+static void vli_mult(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
+    register const uint32_t *r2 __asm__("r2") = right;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -503,11 +502,10 @@
 #endif /* (uECC_WORDS == 6) */
 
 #if (uECC_WORDS == 8)
-static void vli_mult(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
-    register const uint32_t *r2 __asm__("r2") = p_right;
+static void vli_mult(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
+    register const uint32_t *r2 __asm__("r2") = right;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -924,10 +922,9 @@
 #endif /* (uECC_WORDS == 8) */
 
 #if (uECC_WORDS == 5)
-static void vli_square(uint32_t *p_result, const uint32_t *p_left)
-{
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
+static void vli_square(uint32_t *result, const uint32_t *left) {
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -1046,10 +1043,9 @@
 #endif /* (uECC_WORDS == 5) */
 
 #if (uECC_WORDS == 6)
-static void vli_square(uint32_t *p_result, const uint32_t *p_left)
-{
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
+static void vli_square(uint32_t *result, const uint32_t *left) {
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -1204,10 +1200,9 @@
 #endif /* (uECC_WORDS == 6) */
 
 #if (uECC_WORDS == 8)
-static void vli_square(uint32_t *p_result, const uint32_t *p_left)
-{
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
+static void vli_square(uint32_t *result, const uint32_t *left) {
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -1488,86 +1483,86 @@
 #endif /* (uECC_WORDS == 8) */
 
 #endif /* (uECC_PLATFORM != uECC_arm_thumb) */
-
 #endif /* (uECC_ASM == uECC_asm_fast) */
 
 #if !asm_add
-static uint32_t vli_add(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    uint32_t l_counter = uECC_WORDS;
-    uint32_t l_carry = 0; /* carry = 0 initially */
-    uint32_t l_left;
-    uint32_t l_right;
+static uint32_t vli_add(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    uint32_t counter = uECC_WORDS;
+    uint32_t carry = 0;
+    uint32_t left_word;
+    uint32_t right_word;
     
     __asm__ volatile (
         ".syntax unified \n\t"
         "1: \n\t"
         "ldmia %[lptr]!, {%[left]} \n\t"  /* Load left word. */
         "ldmia %[rptr]!, {%[right]} \n\t" /* Load right word. */
-        "lsrs %[carry], #1 \n\t"          /* Set up carry flag (l_carry = 0 after this). */
+        "lsrs %[carry], #1 \n\t"          /* Set up carry flag (carry = 0 after this). */
         "adcs %[left], %[right] \n\t"     /* Add with carry. */
-        "adcs %[carry], %[carry] \n\t"    /* Store carry bit in l_carry. */
+        "adcs %[carry], %[carry] \n\t"    /* Store carry bit. */
         "stmia %[dptr]!, {%[left]} \n\t"  /* Store result word. */
-        "subs %[ctr], #1 \n\t"            /* Decrement index. */
-        "bne 1b \n\t"                     /* Loop until index == 0. */
+        "subs %[ctr], #1 \n\t"            /* Decrement counter. */
+        "bne 1b \n\t"                     /* Loop until counter == 0. */
     #if (uECC_PLATFORM != uECC_arm_thumb2)
         ".syntax divided \n\t"
     #endif
     #if (uECC_PLATFORM == uECC_arm_thumb)
-        : [dptr] "+l" (p_result), [lptr] "+l" (p_left), [rptr] "+l" (p_right),
-          [ctr] "+l" (l_counter), [carry] "+l" (l_carry), [left] "=l" (l_left), [right] "=l" (l_right)
+        : [dptr] "+l" (result), [lptr] "+l" (left), [rptr] "+l" (right),
+          [ctr] "+l" (counter), [carry] "+l" (carry),
+          [left] "=l" (left_word), [right] "=l" (right_word)
     #else
-        : [dptr] "+r" (p_result), [lptr] "+r" (p_left), [rptr] "+r" (p_right),
-          [ctr] "+r" (l_counter), [carry] "+r" (l_carry), [left] "=r" (l_left), [right] "=r" (l_right)
+        : [dptr] "+r" (result), [lptr] "+r" (left), [rptr] "+r" (right),
+          [ctr] "+r" (counter), [carry] "+r" (carry),
+          [left] "=r" (left_word), [right] "=r" (right_word)
     #endif
         :
         : "cc", "memory"
     );
-    return l_carry;
+    return carry;
 }
 #define asm_add 1
 #endif
 
 #if !asm_sub
-static uint32_t vli_sub(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
-    uint32_t l_counter = uECC_WORDS;
-    uint32_t l_carry = 1; /* carry = 1 initially (means don't borrow) */
-    uint32_t l_left;
-    uint32_t l_right;
+static uint32_t vli_sub(uint32_t *result, const uint32_t *left, const uint32_t *right) {
+    uint32_t counter = uECC_WORDS;
+    uint32_t carry = 1; /* carry = 1 initially (means don't borrow) */
+    uint32_t left_word;
+    uint32_t right_word;
     
     __asm__ volatile (
         ".syntax unified \n\t"
         "1: \n\t"
         "ldmia %[lptr]!, {%[left]} \n\t"  /* Load left word. */
         "ldmia %[rptr]!, {%[right]} \n\t" /* Load right word. */
-        "lsrs %[carry], #1 \n\t"          /* Set up carry flag (l_carry = 0 after this). */
+        "lsrs %[carry], #1 \n\t"          /* Set up carry flag (carry = 0 after this). */
         "sbcs %[left], %[right] \n\t"     /* Subtract with borrow. */
-        "adcs %[carry], %[carry] \n\t"    /* Store carry bit in l_carry. */
+        "adcs %[carry], %[carry] \n\t"    /* Store carry bit. */
         "stmia %[dptr]!, {%[left]} \n\t"  /* Store result word. */
-        "subs %[ctr], #1 \n\t"            /* Decrement index. */
-        "bne 1b \n\t"                     /* Loop until index == 0. */
+        "subs %[ctr], #1 \n\t"            /* Decrement counter. */
+        "bne 1b \n\t"                     /* Loop until counter == 0. */
     #if (uECC_PLATFORM != uECC_arm_thumb2)
         ".syntax divided \n\t"
     #endif
     #if (uECC_PLATFORM == uECC_arm_thumb)
-        : [dptr] "+l" (p_result), [lptr] "+l" (p_left), [rptr] "+l" (p_right),
-          [ctr] "+l" (l_counter), [carry] "+l" (l_carry), [left] "=l" (l_left), [right] "=l" (l_right)
+        : [dptr] "+l" (result), [lptr] "+l" (left), [rptr] "+l" (right),
+          [ctr] "+l" (counter), [carry] "+l" (carry),
+          [left] "=l" (left_word), [right] "=l" (right_word)
     #else
-        : [dptr] "+r" (p_result), [lptr] "+r" (p_left), [rptr] "+r" (p_right),
-          [ctr] "+r" (l_counter), [carry] "+r" (l_carry), [left] "=r" (l_left), [right] "=r" (l_right)
+        : [dptr] "+r" (result), [lptr] "+r" (left), [rptr] "+r" (right),
+          [ctr] "+r" (counter), [carry] "+r" (carry),
+          [left] "=r" (left_word), [right] "=r" (right_word)
     #endif
         :
         : "cc", "memory"
     );
-    return !l_carry;
+    return !carry;
 }
 #define asm_sub 1
 #endif
 
 #if !asm_mult
-static void vli_mult(uint32_t *p_result, const uint32_t *p_left, const uint32_t *p_right)
-{
+static void vli_mult(uint32_t *result, const uint32_t *left, const uint32_t *right) {
 #if (uECC_PLATFORM != uECC_arm_thumb)
     uint32_t c0 = 0;
     uint32_t c1 = 0;
@@ -1590,10 +1585,10 @@
         "3: \n\t" /* inner loop */
         "subs %[t0], %[k], %[i] \n\t" /* t0 = k-i */
         
-        "ldr %[t1], [%[right], %[t0]] \n\t" /* t1 = p_right[k-i] */
-        "ldr %[t0], [%[left], %[i]] \n\t"   /* t0 = p_left[i] */
+        "ldr %[t1], [%[right], %[t0]] \n\t" /* t1 = right[k - i] */
+        "ldr %[t0], [%[left], %[i]] \n\t"   /* t0 = left[i] */
         
-        "umull %[t0], %[t1], %[t0], %[t1] \n\t" /* (t0, t1) = p_left[i] * p_right[k-i] */
+        "umull %[t0], %[t1], %[t0], %[t1] \n\t" /* (t0, t1) = left[i] * right[k - i] */
         
         "adds %[c0], %[t0] \n\t" /* add low word to c0 */
         "adcs %[c1], %[t1] \n\t" /* add high word to c1, including carry */
@@ -1601,38 +1596,40 @@
 
         "adds %[i], #4 \n\t"     /* i += 4 */
         "cmp %[i], %[eccd] \n\t" /* i < uECC_WORDS (times 4)? */
-        "bge 4f \n\t" /* if not, exit the loop */
+        "bge 4f \n\t"            /*   if not, exit the loop */
         "cmp %[i], %[k] \n\t"    /* i <= k? */
-        "ble 3b \n\t" /* if so, continue looping */
+        "ble 3b \n\t"            /*   if so, continue looping */
         
         "4: \n\t" /* end inner loop */
         
-        "str %[c0], [%[result], %[k]] \n\t" /* p_result[k] = c0 */
+        "str %[c0], [%[result], %[k]] \n\t" /* result[k] = c0 */
         "mov %[c0], %[c1] \n\t"     /* c0 = c1 */
         "mov %[c1], %[c2] \n\t"     /* c1 = c2 */
         "movs %[c2], #0 \n\t"       /* c2 = 0 */
         "adds %[k], #4 \n\t"        /* k += 4 */
         "cmp %[k], %[eccd] \n\t"    /* k < uECC_WORDS (times 4) ? */
-        "blt 1b \n\t" /* if not, loop back, start with i = 0 */
+        "blt 1b \n\t"               /*   if not, loop back, start with i = 0 */
         "cmp %[k], %[eccd2m1] \n\t" /* k < uECC_WORDS * 2 - 1 (times 4) ? */
-        "blt 2b \n\t" /* if not, loop back, start with i = (k+1) - uECC_WORDS */
+        "blt 2b \n\t"               /*   if not, loop back, start with i = (k + 1) - uECC_WORDS */
         /* end outer loop */
         
-        "str %[c0], [%[result], %[k]] \n\t" /* p_result[uECC_WORDS * 2 - 1] = c0 */
+        "str %[c0], [%[result], %[k]] \n\t" /* result[uECC_WORDS * 2 - 1] = c0 */
     #if (uECC_PLATFORM != uECC_arm_thumb2)
         ".syntax divided \n\t"
     #endif
-        : [c0] "+r" (c0), [c1] "+r" (c1), [c2] "+r" (c2), [k] "+r" (k), [i] "=&r" (i), [t0] "=&r" (t0), [t1] "=&r" (t1)
-        : [result] "r" (p_result), [left] "r" (p_left), [right] "r" (p_right),
-          [eccd] "I" (uECC_WORDS * 4), [eccdm1] "I" ((uECC_WORDS-1) * 4), [eccd2m1] "I" ((uECC_WORDS * 2 - 1) * 4)
+        : [c0] "+r" (c0), [c1] "+r" (c1), [c2] "+r" (c2),
+          [k] "+r" (k), [i] "=&r" (i), [t0] "=&r" (t0), [t1] "=&r" (t1)
+        : [result] "r" (result), [left] "r" (left), [right] "r" (right),
+          [eccd] "I" (uECC_WORDS * 4), [eccdm1] "I" ((uECC_WORDS-1) * 4),
+          [eccd2m1] "I" ((uECC_WORDS * 2 - 1) * 4)
         : "cc", "memory"
     );
     
 #else /* Thumb-1 */
 
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
-    register const uint32_t *r2 __asm__("r2") = p_right;
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
+    register const uint32_t *r2 __asm__("r2") = right;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -1641,7 +1638,7 @@
         "movs r5, #0 \n\t" /* c2 = 0 */
         "movs r6, #0 \n\t" /* k = 0 */
         
-        "push {r0} \n\t" /* keep p_result on the stack */
+        "push {r0} \n\t" /* keep result on the stack */
         
         "1: \n\t" /* outer loop (k < uECC_WORDS) */
         "movs r7, #0 \n\t" /* r7 = i = 0 */
@@ -1653,10 +1650,10 @@
         
         "3: \n\t" /* inner loop */
         "push {r3, r4, r5, r6} \n\t" /* push things, r3 (c0) is at the top of stack. */
-        "subs r0, r6, r7 \n\t"       /* r0 = k-i */
+        "subs r0, r6, r7 \n\t"       /* r0 = k - i */
         
-        "ldr r4, [r2, r0] \n\t" /* r4 = p_right[k-i] */
-        "ldr r0, [r1, r7] \n\t" /* r0 = p_left[i] */
+        "ldr r4, [r2, r0] \n\t" /* r4 = right[k - i] */
+        "ldr r0, [r1, r7] \n\t" /* r0 = left[i] */
         
         "lsrs r3, r0, #16 \n\t" /* r3 = a1 */
         "uxth r0, r0 \n\t"      /* r0 = a0 */
@@ -1665,21 +1662,21 @@
         "uxth r4, r4 \n\t"      /* r4 = b0 */
         
         "movs r6, r3 \n\t"     /* r6 = a1 */
-        "muls r6, r5, r6 \n\t" /* r6 = a1*b1 */
-        "muls r3, r4, r3 \n\t" /* r3 = b0*a1 */
-        "muls r5, r0, r5 \n\t" /* r5 = a0*b1 */
-        "muls r0, r4, r0 \n\t" /* r0 = a0*b0 */
+        "muls r6, r5, r6 \n\t" /* r6 = a1 * b1 */
+        "muls r3, r4, r3 \n\t" /* r3 = b0 * a1 */
+        "muls r5, r0, r5 \n\t" /* r5 = a0 * b1 */
+        "muls r0, r4, r0 \n\t" /* r0 = a0 * b0 */
         
         "movs r4, #0 \n\t"  /* r4 = 0 */
-        "adds r3, r5 \n\t"  /* r3 = b0*a1 + a0*b1 */
+        "adds r3, r5 \n\t"  /* r3 = b0 * a1 + a0 * b1 */
         "adcs r4, r4 \n\t"  /* r4 = carry */
         "lsls r4, #16 \n\t" /* r4 = carry << 16 */
-        "adds r6, r4 \n\t"  /* r6 = a1*b1 + carry */
+        "adds r6, r4 \n\t"  /* r6 = a1 * b1 + carry */
         
-        "lsls r4, r3, #16 \n\t" /* r4 = (b0*a1 + a0*b1) << 16 */
-        "lsrs r3, #16 \n\t"     /* r3 = (b0*a1 + a0*b1) >> 16 */
-        "adds r0, r4 \n\t"      /* r0 = low word = a0*b0 + ((b0*a1 + a0*b1) << 16) */
-        "adcs r6, r3 \n\t"      /* r6 = high word = a1*b1 + carry + ((b0*a1 + a0*b1) >> 16) */
+        "lsls r4, r3, #16 \n\t" /* r4 = (b0 * a1 + a0 * b1) << 16 */
+        "lsrs r3, #16 \n\t"     /* r3 = (b0 * a1 + a0 * b1) >> 16 */
+        "adds r0, r4 \n\t"      /* r0 = low word = a0 * b0 + ((b0 * a1 + a0 * b1) << 16) */
+        "adcs r6, r3 \n\t"      /* r6 = high word = a1 * b1 + carry + ((b0 * a1 + a0 * b1) >> 16) */
         
         "pop {r3, r4, r5} \n\t" /* r3 = c0, r4 = c1, r5 = c2 */
         "adds r3, r0 \n\t"      /* add low word to c0 */
@@ -1691,27 +1688,27 @@
 
         "adds r7, #4 \n\t"     /* i += 4 */
         "cmp r7, %[eccd] \n\t" /* i < uECC_WORDS (times 4)? */
-        "bge 4f \n\t" /* if not, exit the loop */
+        "bge 4f \n\t"          /*   if not, exit the loop */
         "cmp r7, r6 \n\t"      /* i <= k? */
-        "ble 3b \n\t" /* if so, continue looping */
+        "ble 3b \n\t"          /*   if so, continue looping */
         
         "4: \n\t" /* end inner loop */
         
-        "ldr r0, [sp, #0] \n\t" /* r0 = p_result */
+        "ldr r0, [sp, #0] \n\t" /* r0 = result */
         
-        "str r3, [r0, r6] \n\t"   /* p_result[k] = c0 */
+        "str r3, [r0, r6] \n\t"   /* result[k] = c0 */
         "mov r3, r4 \n\t"         /* c0 = c1 */
         "mov r4, r5 \n\t"         /* c1 = c2 */
         "movs r5, #0 \n\t"        /* c2 = 0 */
         "adds r6, #4 \n\t"        /* k += 4 */
         "cmp r6, %[eccd] \n\t"    /* k < uECC_WORDS (times 4) ? */
-        "blt 1b \n\t" /* if not, loop back, start with i = 0 */
+        "blt 1b \n\t"             /*   if not, loop back, start with i = 0 */
         "cmp r6, %[eccd2m1] \n\t" /* k < uECC_WORDS * 2 - 1 (times 4) ? */
-        "blt 2b \n\t" /* if not, loop back, start with i = (k+1) - uECC_WORDS */
+        "blt 2b \n\t"             /*   if not, loop back, start with i = (k + 1) - uECC_WORDS */
         /* end outer loop */
         
-        "str r3, [r0, r6] \n\t" /* p_result[uECC_WORDS * 2 - 1] = c0 */
-        "pop {r0} \n\t"         /* pop p_result off the stack */
+        "str r3, [r0, r6] \n\t" /* result[uECC_WORDS * 2 - 1] = c0 */
+        "pop {r0} \n\t"         /* pop result off the stack */
         
         ".syntax divided \n\t"
         : 
@@ -1725,8 +1722,7 @@
 
 #if uECC_SQUARE_FUNC
 #if !asm_square
-static void vli_square(uint32_t *p_result, const uint32_t *p_left)
-{
+static void vli_square(uint32_t *result, const uint32_t *left) {
 #if (uECC_PLATFORM != uECC_arm_thumb)
     uint32_t c0 = 0;
     uint32_t c1 = 0;
@@ -1749,17 +1745,17 @@
         "3: \n\t" /* inner loop */
         "subs %[tt], %[k], %[i] \n\t" /* tt = k-i */
         
-        "ldr %[t1], [%[left], %[tt]] \n\t" /* t1 = p_left[k-i] */
-        "ldr %[t0], [%[left], %[i]] \n\t"  /* t0 = p_left[i] */
+        "ldr %[t1], [%[left], %[tt]] \n\t" /* t1 = left[k - i] */
+        "ldr %[t0], [%[left], %[i]] \n\t"  /* t0 = left[i] */
         
-        "umull %[t0], %[t1], %[t0], %[t1] \n\t" /* (t0, t1) = p_left[i] * p_right[k-i] */
+        "umull %[t0], %[t1], %[t0], %[t1] \n\t" /* (t0, t1) = left[i] * right[k - i] */
         
-        "cmp %[i], %[tt] \n\t"   /* (i < k-i) ? */
-        "bge 4f \n\t" /* if i >= k-i, skip */
-        "lsls %[t1], #1 \n\t"    /* high word << 1 */
-        "adc %[c2], #0 \n\t"     /* add carry bit to c2 */
-        "lsls %[t0], #1 \n\t"       /* low word << 1 */
-        "adc %[t1], #0 \n\t"     /* add carry bit to high word */
+        "cmp %[i], %[tt] \n\t" /* (i < k - i) ? */
+        "bge 4f \n\t"          /*   if i >= k - i, skip */
+        "lsls %[t1], #1 \n\t"  /* high word << 1 */
+        "adc %[c2], #0 \n\t"   /* add carry bit to c2 */
+        "lsls %[t0], #1 \n\t"  /* low word << 1 */
+        "adc %[t1], #0 \n\t"   /* add carry bit to high word */
         
         "4: \n\t"
 
@@ -1769,38 +1765,40 @@
         
         "adds %[i], #4 \n\t"          /* i += 4 */
         "cmp %[i], %[k] \n\t"         /* i <= k? */
-        "bge 5f \n\t" /* if not, exit the loop */
-        "subs %[tt], %[k], %[i] \n\t" /* tt = k-i */
-        "cmp %[i], %[tt] \n\t"        /* i <= k-i? */
-        "ble 3b \n\t" /* if so, continue looping */
+        "bge 5f \n\t"                 /*   if not, exit the loop */
+        "subs %[tt], %[k], %[i] \n\t" /* tt = k - i */
+        "cmp %[i], %[tt] \n\t"        /* i <= k - i? */
+        "ble 3b \n\t"                 /*   if so, continue looping */
         
         "5: \n\t" /* end inner loop */
         
-        "str %[c0], [%[result], %[k]] \n\t" /* p_result[k] = c0 */
+        "str %[c0], [%[result], %[k]] \n\t" /* result[k] = c0 */
         "mov %[c0], %[c1] \n\t"     /* c0 = c1 */
         "mov %[c1], %[c2] \n\t"     /* c1 = c2 */
         "movs %[c2], #0 \n\t"       /* c2 = 0 */
         "adds %[k], #4 \n\t"        /* k += 4 */
         "cmp %[k], %[eccd] \n\t"    /* k < uECC_WORDS (times 4) ? */
-        "blt 1b \n\t" /* if not, loop back, start with i = 0 */
+        "blt 1b \n\t"               /*   if not, loop back, start with i = 0 */
         "cmp %[k], %[eccd2m1] \n\t" /* k < uECC_WORDS * 2 - 1 (times 4) ? */
-        "blt 2b \n\t" /* if not, loop back, start with i = (k+1) - uECC_WORDS */
+        "blt 2b \n\t"               /*   if not, loop back, start with i = (k + 1) - uECC_WORDS */
         /* end outer loop */
         
-        "str %[c0], [%[result], %[k]] \n\t" /* p_result[uECC_WORDS * 2 - 1] = c0 */
+        "str %[c0], [%[result], %[k]] \n\t" /* result[uECC_WORDS * 2 - 1] = c0 */
     #if (uECC_PLATFORM != uECC_arm_thumb2)
         ".syntax divided \n\t"
     #endif
-        : [c0] "+r" (c0), [c1] "+r" (c1), [c2] "+r" (c2), [k] "+r" (k), [i] "=&r" (i), [tt] "=&r" (tt), [t0] "=&r" (t0), [t1] "=&r" (t1)
-        : [result] "r" (p_result), [left] "r" (p_left),
-          [eccd] "I" (uECC_WORDS * 4), [eccdm1] "I" ((uECC_WORDS-1) * 4), [eccd2m1] "I" ((uECC_WORDS * 2 - 1) * 4)
+        : [c0] "+r" (c0), [c1] "+r" (c1), [c2] "+r" (c2),
+          [k] "+r" (k), [i] "=&r" (i), [tt] "=&r" (tt), [t0] "=&r" (t0), [t1] "=&r" (t1)
+        : [result] "r" (result), [left] "r" (left),
+          [eccd] "I" (uECC_WORDS * 4), [eccdm1] "I" ((uECC_WORDS-1) * 4),
+          [eccd2m1] "I" ((uECC_WORDS * 2 - 1) * 4)
         : "cc", "memory"
     );
     
 #else
 
-    register uint32_t *r0 __asm__("r0") = p_result;
-    register const uint32_t *r1 __asm__("r1") = p_left;
+    register uint32_t *r0 __asm__("r0") = result;
+    register const uint32_t *r1 __asm__("r1") = left;
     
     __asm__ volatile (
         ".syntax unified \n\t"
@@ -1809,7 +1807,7 @@
         "movs r4, #0 \n\t" /* c2 = 0 */
         "movs r5, #0 \n\t" /* k = 0 */
         
-        "push {r0} \n\t" /* keep p_result on the stack */
+        "push {r0} \n\t" /* keep result on the stack */
         
         "1: \n\t" /* outer loop (k < uECC_WORDS) */
         "movs r6, #0 \n\t" /* r6 = i = 0 */
@@ -1821,10 +1819,10 @@
         
         "3: \n\t" /* inner loop */
         "push {r2, r3, r4, r5} \n\t" /* push things, r2 (c0) is at the top of stack. */
-        "subs r7, r5, r6 \n\t"       /* r7 = k-i */
+        "subs r7, r5, r6 \n\t"       /* r7 = k - i */
         
-        "ldr r3, [r1, r7] \n\t" /* r3 = p_left[k-i] */
-        "ldr r0, [r1, r6] \n\t" /* r0 = p_left[i] */
+        "ldr r3, [r1, r7] \n\t" /* r3 = left[k - i] */
+        "ldr r0, [r1, r6] \n\t" /* r0 = left[i] */
         
         "lsrs r2, r0, #16 \n\t" /* r2 = a1 */
         "uxth r0, r0 \n\t"      /* r0 = a0 */
@@ -1833,26 +1831,26 @@
         "uxth r3, r3 \n\t"      /* r3 = b0 */
         
         "movs r5, r2 \n\t"     /* r5 = a1 */
-        "muls r5, r4, r5 \n\t" /* r5 = a1*b1 */
-        "muls r2, r3, r2 \n\t" /* r2 = b0*a1 */
-        "muls r4, r0, r4 \n\t" /* r4 = a0*b1 */
-        "muls r0, r3, r0 \n\t" /* r0 = a0*b0 */
+        "muls r5, r4, r5 \n\t" /* r5 = a1 * b1 */
+        "muls r2, r3, r2 \n\t" /* r2 = b0 * a1 */
+        "muls r4, r0, r4 \n\t" /* r4 = a0 * b1 */
+        "muls r0, r3, r0 \n\t" /* r0 = a0 * b0 */
         
         "movs r3, #0 \n\t"  /* r3 = 0 */
-        "adds r2, r4 \n\t"  /* r2 = b0*a1 + a0*b1 */
+        "adds r2, r4 \n\t"  /* r2 = b0 * a1 + a0 * b1 */
         "adcs r3, r3 \n\t"  /* r3 = carry */
         "lsls r3, #16 \n\t" /* r3 = carry << 16 */
-        "adds r5, r3 \n\t"  /* r5 = a1*b1 + carry */
+        "adds r5, r3 \n\t"  /* r5 = a1 * b1 + carry */
         
-        "lsls r3, r2, #16 \n\t" /* r3 = (b0*a1 + a0*b1) << 16 */
-        "lsrs r2, #16 \n\t"     /* r2 = (b0*a1 + a0*b1) >> 16 */
-        "adds r0, r3 \n\t"      /* r0 = low word = a0*b0 + ((b0*a1 + a0*b1) << 16) */
-        "adcs r5, r2 \n\t"      /* r5 = high word = a1*b1 + carry + ((b0*a1 + a0*b1) >> 16) */
+        "lsls r3, r2, #16 \n\t" /* r3 = (b0 * a1 + a0 * b1) << 16 */
+        "lsrs r2, #16 \n\t"     /* r2 = (b0 * a1 + a0 * b1) >> 16 */
+        "adds r0, r3 \n\t"      /* r0 = low word = a0 * b0 + ((b0 * a1 + a0 * b1) << 16) */
+        "adcs r5, r2 \n\t"      /* r5 = high word = a1 * b1 + carry + ((b0 * a1 + a0 * b1) >> 16) */
     
         "movs r3, #0 \n\t"  /* r3 = 0 */
-        "cmp r6, r7 \n\t"   /* (i < k-i) ? */
+        "cmp r6, r7 \n\t"   /* (i < k - i) ? */
         "mov r7, r3 \n\t"   /* r7 = 0 (does not affect condition)*/
-        "bge 4f \n\t" /* if i >= k-i, skip */
+        "bge 4f \n\t"       /*   if i >= k - i, skip */
         "lsls r5, #1 \n\t"  /* high word << 1 */
         "adcs r7, r3 \n\t"  /* r7 = carry bit for c2 */
         "lsls r0, #1 \n\t"  /* low word << 1 */
@@ -1870,33 +1868,34 @@
         
         "adds r6, #4 \n\t"     /* i += 4 */
         "cmp r6, r5 \n\t"      /* i <= k? */
-        "bge 5f \n\t" /* if not, exit the loop */
-        "subs r7, r5, r6 \n\t" /* r7 = k-i */
-        "cmp r6, r7 \n\t"      /* i <= k-i? */
-        "ble 3b \n\t" /* if so, continue looping */
+        "bge 5f \n\t"          /*   if not, exit the loop */
+        "subs r7, r5, r6 \n\t" /* r7 = k - i */
+        "cmp r6, r7 \n\t"      /* i <= k - i? */
+        "ble 3b \n\t"          /*   if so, continue looping */
         
         "5: \n\t" /* end inner loop */
         
-        "ldr r0, [sp, #0] \n\t" /* r0 = p_result */
+        "ldr r0, [sp, #0] \n\t" /* r0 = result */
         
-        "str r2, [r0, r5] \n\t"   /* p_result[k] = c0 */
+        "str r2, [r0, r5] \n\t"   /* result[k] = c0 */
         "mov r2, r3 \n\t"         /* c0 = c1 */
         "mov r3, r4 \n\t"         /* c1 = c2 */
         "movs r4, #0 \n\t"        /* c2 = 0 */
         "adds r5, #4 \n\t"        /* k += 4 */
         "cmp r5, %[eccd] \n\t"    /* k < uECC_WORDS (times 4) ? */
-        "blt 1b \n\t" /* if not, loop back, start with i = 0 */
+        "blt 1b \n\t"             /*   if not, loop back, start with i = 0 */
         "cmp r5, %[eccd2m1] \n\t" /* k < uECC_WORDS * 2 - 1 (times 4) ? */
-        "blt 2b \n\t" /* if not, loop back, start with i = (k+1) - uECC_WORDS */
+        "blt 2b \n\t"             /*   if not, loop back, start with i = (k + 1) - uECC_WORDS */
         /* end outer loop */
         
-        "str r2, [r0, r5] \n\t" /* p_result[uECC_WORDS * 2 - 1] = c0 */
-        "pop {r0} \n\t"         /* pop p_result off the stack */
+        "str r2, [r0, r5] \n\t" /* result[uECC_WORDS * 2 - 1] = c0 */
+        "pop {r0} \n\t"        /* pop result off the stack */
 
         ".syntax divided \n\t"
         : [r0] "+l" (r0), [r1] "+l" (r1)
-        : [eccd] "I" (uECC_WORDS * 4), [eccdm1] "I" ((uECC_WORDS-1) * 4), [eccd2m1] "I" ((uECC_WORDS * 2 - 1) * 4)
-        : "r2", "r3", "r4", "r5", "r6", "r7", "cc", "memory"
+        : [eccd] "I" (uECC_WORDS * 4), [eccdm1] "I" ((uECC_WORDS-1) * 4),
+          [eccd2m1] "I" ((uECC_WORDS * 2 - 1) * 4)
+        : "r2", "r3", "r4", "r5", "r6", "cc", "memory"
     );
 #endif
 }
diff --git a/asm_avr.inc b/asm_avr.inc
index 48d8f32..b176af7 100644
--- a/asm_avr.inc
+++ b/asm_avr.inc
@@ -44,32 +44,30 @@
 
 #if (uECC_ASM == uECC_asm_fast)
 
-static void vli_clear(uint8_t *p_vli)
-{
+static void vli_clear(uint8_t *vli) {
     __asm__ volatile (
-        REPEAT(uECC_BYTES, "st %a[ptr]+, r1 \n\t")
-
-        : [ptr] "+e" (p_vli)
+        REPEAT(uECC_BYTES,
+            "st %a[ptr]+, r1 \n\t")
+        : [ptr] "+e" (vli)
         :
         : "r0", "cc", "memory"
     );
 }
 #define asm_clear 1
 
-static void vli_set(uint8_t *p_dest, const uint8_t *p_src)
-{
+static void vli_set(uint8_t *dest, const uint8_t *src) {
     __asm__ volatile (
-        REPEAT(uECC_BYTES, "ld r0, %a[sptr]+ \n\t"
+        REPEAT(uECC_BYTES,
+            "ld r0, %a[sptr]+ \n\t"
             "st %a[dptr]+, r0 \n\t")
-        : [dptr] "+e" (p_dest), [sptr] "+e" (p_src)
+        : [dptr] "+e" (dest), [sptr] "+e" (src)
         :
         : "r0", "cc", "memory"
     );
 }
 #define asm_set 1
 
-static void vli_rshift1(uint8_t *p_vli)
-{
+static void vli_rshift1(uint8_t *vli) {
     __asm__ volatile (
         "adiw r30, " STR(uECC_BYTES) " \n\t"
         "ld r0, -z \n\t"  /* Load byte. */
@@ -77,23 +75,22 @@
         "st z, r0 \n\t"  /* Store the first result byte. */
 
         /* Now we just do the remaining bytes with the carry bit (using ROR) */
-        REPEAT(DEC(uECC_BYTES), "ld r0, -z \n\t"
+        REPEAT(DEC(uECC_BYTES),
+            "ld r0, -z \n\t"
             "ror r0 \n\t"
             "st z, r0 \n\t")
-
-        : "+z" (p_vli)
+        : "+z" (vli)
         :
         : "r0", "cc", "memory"
     );
 }
 #define asm_rshift1 1
 
-/* Computes p_result = p_left + p_right, returning carry. Can modify in place. */
-static uint8_t vli_add(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
-    uint8_t l_carry = 0;
-    uint8_t l_left;
-    uint8_t l_right;
+/* Computes result = left + right, returning carry. Can modify in place. */
+static uint8_t vli_add(uint8_t *result, const uint8_t *left, const uint8_t *right) {
+    uint8_t carry = 0;
+    uint8_t left_byte;
+    uint8_t right_byte;
 
     __asm__ volatile (
         "ld %[left], x+ \n\t"  /* Load left byte. */
@@ -102,30 +99,29 @@
         "st z+, %[left] \n\t"  /* Store the first result byte. */
         
         /* Now we just do the remaining bytes with the carry bit (using ADC) */
-        REPEAT(DEC(uECC_BYTES), "ld %[left], x+ \n\t"
+        REPEAT(DEC(uECC_BYTES),
+            "ld %[left], x+ \n\t"
             "ld %[right], y+ \n\t"
             "adc %[left], %[right] \n\t"
             "st z+, %[left] \n\t")
         
-        "adc %[carry], %[carry] \n\t"    /* Store carry bit in l_carry. */
-        
+        "adc %[carry], %[carry] \n\t" /* Store carry bit. */
         "sbiw r28, " STR(uECC_BYTES) " \n\t" /* Restore Y */
 
-        : "+z" (p_result), "+x" (p_left),
-            [carry] "+r" (l_carry), [left] "=&r" (l_left), [right] "=&r" (l_right)
-        : "y" (p_right)
+        : "+z" (result), "+x" (left),
+          [carry] "+r" (carry), [left] "=&r" (left_byte), [right] "=&r" (right_byte)
+        : "y" (right)
         : "cc", "memory"
     );
-    return l_carry;
+    return carry;
 }
 #define asm_add 1
 
-/* Computes p_result = p_left - p_right, returning borrow. Can modify in place. */
-static uint8_t vli_sub(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
-    uint8_t l_borrow = 0;
-    uint8_t l_left;
-    uint8_t l_right;
+/* Computes result = left - right, returning borrow. Can modify in place. */
+static uint8_t vli_sub(uint8_t *result, const uint8_t *left, const uint8_t *right) {
+    uint8_t borrow = 0;
+    uint8_t left_byte;
+    uint8_t right_byte;
 
     __asm__ volatile (
         "ld %[left], x+ \n\t"  /* Load left byte. */
@@ -134,28 +130,27 @@
         "st z+, %[left] \n\t"  /* Store the first result byte. */
         
         /* Now we just do the remaining bytes with the carry bit (using SBC) */
-        REPEAT(DEC(uECC_BYTES), "ld %[left], x+ \n\t"
+        REPEAT(DEC(uECC_BYTES),
+            "ld %[left], x+ \n\t"
             "ld %[right], y+ \n\t"
             "sbc %[left], %[right] \n\t"
             "st z+, %[left] \n\t")
         
-        "adc %[borrow], %[borrow] \n\t"    /* Store carry bit in l_borrow. */
-        
+        "adc %[borrow], %[borrow] \n\t" /* Store carry bit in borrow. */
         "sbiw r28, " STR(uECC_BYTES) " \n\t" /* Restore Y */
 
-        : "+z" (p_result), "+x" (p_left),
-            [borrow] "+r" (l_borrow), [left] "=&r" (l_left), [right] "=&r" (l_right)
-        : "y" (p_right)
+        : "+z" (result), "+x" (left),
+            [borrow] "+r" (borrow), [left] "=&r" (left_byte), [right] "=&r" (right_byte)
+        : "y" (right)
         : "cc", "memory"
     );
-    return l_borrow;
+    return borrow;
 }
 #define asm_sub 1
 
 #if (uECC_BYTES == 20)
 __attribute((noinline))
-static void vli_mult(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static void vli_mult(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     __asm__ volatile (
         "adiw r30, 10 \n\t"
         "adiw r28, 10 \n\t"
@@ -2060,17 +2055,17 @@
         "st z+, r23 \n\t"
         "st z+, r24 \n\t"
         "eor r1, r1 \n\t"
-        : "+x" (p_left), "+y" (p_right), "+z" (p_result)
+        : "+x" (left), "+y" (right), "+z" (result)
         :
-        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12",
-          "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "cc", "memory"
+        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+          "r11", "r12", "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20",
+          "r21", "r22", "r23", "r24", "r25", "cc", "memory"
     );
 }
 #define asm_mult 1
 #elif (uECC_BYTES == 24)
 __attribute((noinline))
-static void vli_mult(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static void vli_mult(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     __asm__ volatile (
         "adiw r30, 20 \n\t"
         "adiw r28, 20 \n\t"
@@ -4843,17 +4838,17 @@
         "st z+, r23 \n\t"
 
         "eor r1, r1 \n\t"
-        : "+x" (p_left), "+y" (p_right), "+z" (p_result)
+        : "+x" (left), "+y" (right), "+z" (result)
         :
-        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12",
-          "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "cc", "memory"
+        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+          "r11", "r12", "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20",
+          "r21", "r22", "r23", "r24", "r25", "cc", "memory"
     );
 }
 #define asm_mult 1
 #elif (uECC_BYTES == 32)
 __attribute((noinline))
-static void vli_mult(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static void vli_mult(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     __asm__ volatile (
         "adiw r30, 30 \n\t"
         "adiw r28, 30 \n\t"
@@ -9769,10 +9764,11 @@
         "st z+, r24 \n\t"
 
         "eor r1, r1 \n\t"
-        : "+x" (p_left), "+y" (p_right), "+z" (p_result)
+        : "+x" (left), "+y" (right), "+z" (result)
         :
-        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12",
-          "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "cc", "memory"
+        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+          "r11", "r12", "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20",
+          "r21", "r22", "r23", "r24", "r25", "cc", "memory"
     );
 }
 #define asm_mult 1
@@ -9781,8 +9777,7 @@
 #if uECC_SQUARE_FUNC
 
 #if (uECC_BYTES == 20)
-static void vli_square(uint8_t *p_result, const uint8_t *p_left)
-{
+static void vli_square(uint8_t *result, const uint8_t *left) {
     __asm__ volatile (
         "ld r2, x+ \n\t"
         "ld r3, x+ \n\t"
@@ -10937,10 +10932,11 @@
         "st z+, r23 \n\t"
         "st z+, r25 \n\t"
         "eor r1, r1 \n\t"
-        : "+x" (p_left), "+z" (p_result)
+        : "+x" (left), "+z" (result)
         :
-        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12",
-          "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "cc", "memory"
+        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+          "r11", "r12", "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20",
+          "r21", "r22", "r23", "r24", "r25", "cc", "memory"
     );
 }
 #define asm_square 1
@@ -10948,8 +10944,7 @@
 #elif (uECC_BYTES == 24)
 
 __attribute((noinline))
-static void vli_square(uint8_t *p_result, const uint8_t *p_left)
-{
+static void vli_square(uint8_t *result, const uint8_t *left) {
     __asm__ volatile (
         "ldi r25, 0 \n\t"
         "movw r28, r26 \n\t"
@@ -12596,10 +12591,11 @@
         "st z+, r23 \n\t"
         "st z+, r28 \n\t"
         "eor r1, r1 \n\t"
-        : "+x" (p_left), "+z" (p_result)
+        : "+x" (left), "+z" (result)
         :
-        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12",
-          "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "r28", "r29", "cc", "memory"
+        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+          "r11", "r12", "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20",
+          "r21", "r22", "r23", "r24", "r25", "r28", "r29", "cc", "memory"
     );
 }
 #define asm_square 1
@@ -12607,8 +12603,7 @@
 #elif (uECC_BYTES == 32)
 
 __attribute((noinline))
-static void vli_square(uint8_t *p_result, const uint8_t *p_left)
-{
+static void vli_square(uint8_t *result, const uint8_t *left) {
     __asm__ volatile (
         "ldi r25, 0 \n\t"
         "movw r28, r26 \n\t"
@@ -15431,10 +15426,11 @@
         "st z+, r23 \n\t"
         "st z+, r28 \n\t"
         "eor r1, r1 \n\t"
-        : "+x" (p_left), "+z" (p_result)
+        : "+x" (left), "+z" (result)
         :
-        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12",
-          "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "r28", "r29", "cc", "memory"
+        : "r0", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+          "r11", "r12", "r13", "r14", "r15", "r16", "r17", "r18", "r19", "r20",
+          "r21", "r22", "r23", "r24", "r25", "r28", "r29", "cc", "memory"
     );
 }
 #define asm_square 1
@@ -15442,29 +15438,29 @@
 #endif /* uECC_BYTES == xx */
 #endif /* uECC_SQUARE_FUNC */
 
-static void vli_modSub_fast(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static void vli_modSub_fast(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     uint8_t t1, t2;
     __asm__ volatile (
         "push r28 \n\t" /* Save Y */
         "push r29 \n\t"
         
-        "ld %[t1], x+ \n\t"  /* Load left word. */
-        "ld %[t2], y+ \n\t" /* Load right word. */
+        "ld %[t1], x+ \n\t"     /* Load left word. */
+        "ld %[t2], y+ \n\t"     /* Load right word. */
         "sub %[t1], %[t2] \n\t" /* Subtract the first word. */
-        "st z+, %[t1] \n\t"  /* Store the first result word. */
+        "st z+, %[t1] \n\t"     /* Store the first result word. */
         
         /* Now we just do the remaining words with the carry bit (using SBC) */
-        REPEAT(DEC(uECC_BYTES), "ld %[t1], x+ \n\t"
+        REPEAT(DEC(uECC_BYTES),
+            "ld %[t1], x+ \n\t"
             "ld %[t2], y+ \n\t"
             "sbc %[t1], %[t2] \n\t"
             "st z+, %[t1] \n\t")
         
-        "brcs 1f \n\t" /* If borrow is set, then we need to add */
+        "brcs 1f \n\t"   /* If borrow is set, then we need to add */
         "rjmp done \n\t" /* otherwise we are done */
         "1: \n\t"
         
-        "sbiw r30, " STR(uECC_BYTES) " \n\t" /* make z point at p_result again */
+        "sbiw r30, " STR(uECC_BYTES) " \n\t" /* make z point at result again */
         "ldi r28, lo8(curve_p) \n\t" /* make y point at curve_p */
     	"ldi r29, hi8(curve_p) \n\t"
     	
@@ -15473,7 +15469,8 @@
         "ld %[t2], y+ \n\t"
         "add %[t1], %[t2] \n\t"
         "st z+, %[t1] \n\t"
-        REPEAT(DEC(uECC_BYTES), "ld %[t1], z \n\t"
+        REPEAT(DEC(uECC_BYTES),
+            "ld %[t1], z \n\t"
             "ld %[t2], y+ \n\t"
             "adc %[t1], %[t2] \n\t"
             "st z+, %[t1] \n\t")
@@ -15482,18 +15479,17 @@
         "pop r29 \n\t" /* Restore Y */
         "pop r28 \n\t"
 
-        : "+z" (p_result), "+x" (p_left),
+        : "+z" (result), "+x" (left),
           [t1] "=&r" (t1), [t2] "=&r" (t2)
-        : "y" (p_right)
+        : "y" (right)
         : "cc", "memory"
     );
 }
 #define asm_modSub_fast 1
 
 #if uECC_CURVE == uECC_secp160r1
-static void vli_mmod_fast(uint8_t *RESTRICT p_result, uint8_t *RESTRICT p_product)
-{
-    uint8_t l_carry = 0;
+static void vli_mmod_fast(uint8_t *RESTRICT result, uint8_t *RESTRICT product) {
+    uint8_t carry = 0;
     __asm__ volatile (
         "in r30, __SP_L__ \n\t"
     	"in r31, __SP_H__ \n\t"
@@ -15504,23 +15500,25 @@
     	"out __SREG__, r0 \n\t"
     	"out __SP_L__, r30 \n\t"
     	
-    	"adiw r30, 25 \n\t" /* we are shifting by 31 bits, so shift over 4 bytes (+ 1 since z initially points below the stack) */
-        "adiw r26, 40 \n\t" /* end of p_product */
-        "ld r18, -x \n\t"  /* Load word. */
-        "lsr r18 \n\t" /* Shift. */
-        "st -z, r18 \n\t"  /* Store the first result word. */
+    	"adiw r30, 25 \n\t" /* we are shifting by 31 bits, so shift over 4 bytes
+    	                       (+ 1 since z initially points below the stack) */
+        "adiw r26, 40 \n\t" /* end of product */
+        "ld r18, -x \n\t"   /* Load word. */
+        "lsr r18 \n\t"      /* Shift. */
+        "st -z, r18 \n\t"   /* Store the first result word. */
 
         /* Now we just do the remaining words with the carry bit (using ROR) */
-        REPEAT(19, "ld r18, -x \n\t"
+        REPEAT(19,
+            "ld r18, -x \n\t"
             "ror r18 \n\t"
             "st -z, r18 \n\t")
 
         "eor r18, r18 \n\t" /* r18 = 0 */
-        "ror r18 \n\t" /* get last bit */
-        "st -z, r18 \n\t" /* store it */
+        "ror r18 \n\t"      /* get last bit */
+        "st -z, r18 \n\t"   /* store it */
 
         "sbiw r30, 3 \n\t" /* move z back to point at tmp */
-        /* now we add p_right */
+        /* now we add right */
         "ld r18, x+ \n\t"
         "st z+, r18 \n\t" /* the first 3 bytes do not need to be added */
         "ld r18, x+ \n\t"
@@ -15534,12 +15532,13 @@
         "st z+, r18 \n\t"
 
         /* Now we just do the remaining words with the carry bit (using ADC) */
-        REPEAT(16, "ld r18, x+ \n\t"
+        REPEAT(16,
+            "ld r18, x+ \n\t"
             "ld r19, z \n\t"
             "adc r18, r19 \n\t"
             "st z+, r18 \n\t")
 
-        /* Propagate over the remaining bytes of p_result */
+        /* Propagate over the remaining bytes of result */
         "ld r18, z \n\t"
         "adc r18, r1 \n\t"
         "st z+, r18 \n\t"
@@ -15557,27 +15556,29 @@
         "st z+, r18 \n\t"
         
         "sbiw r30, 24 \n\t" /* move z back to point at tmp */
-        "sbiw r26, 40 \n\t" /* move x back to point at p_product */
+        "sbiw r26, 40 \n\t" /* move x back to point at product */
         
-        /* add low bytes of tmp to p_product, storing in p_result */
+        /* add low bytes of tmp to product, storing in result */
         "ld r18, z+ \n\t"
         "ld r19, x+ \n\t"
         "add r18, r19 \n\t"
         "st y+, r18 \n\t"
-        REPEAT(19, "ld r18, z+ \n\t"
+        REPEAT(19,
+            "ld r18, z+ \n\t"
             "ld r19, x+ \n\t"
             "adc r18, r19 \n\t"
             "st y+, r18 \n\t")
-        "adc %[carry], __zero_reg__ \n\t"    /* Store carry bit (carry flag is cleared). */
-        /* at this point x is at the end of p_product, y is at the end of p_result, z is 20 bytes into tmp */
-        "sbiw r28, 20 \n\t" /* move y back to point at p_result */
-        "adiw r30, 4 \n\t" /* move z to point to the end of tmp */
+        "adc %[carry], __zero_reg__ \n\t" /* Store carry bit (carry flag is cleared). */
+        /* at this point x is at the end of product, y is at the end of result,
+           z is 20 bytes into tmp */
+        "sbiw r28, 20 \n\t" /* move y back to point at result */
+        "adiw r30, 4 \n\t"  /* move z to point to the end of tmp */
         
         /* do omega_mult again with the 4 relevant bytes */
-        /* z points to the end of tmp, x points to the end of p_product */
-        "ld r18, -z \n\t"  /* Load word. */
-        "lsr r18 \n\t" /* Shift. */
-        "st -x, r18 \n\t"  /* Store the first result word. */
+        /* z points to the end of tmp, x points to the end of product */
+        "ld r18, -z \n\t" /* Load word. */
+        "lsr r18 \n\t"    /* Shift. */
+        "st -x, r18 \n\t" /* Store the first result word. */
         
         "ld r18, -z \n\t"
         "ror r18 \n\t"
@@ -15590,8 +15591,8 @@
         "st -x, r18 \n\t"
         
         "eor r18, r18 \n\t" /* r18 = 0 */
-        "ror r18 \n\t" /* get last bit */
-        "st -x, r18 \n\t" /* store it */
+        "ror r18 \n\t"      /* get last bit */
+        "st -x, r18 \n\t"   /* store it */
         
         "sbiw r26, 3 \n\t" /* move x back to point at beginning */
         /* now we add a copy of the 4 bytes */
@@ -15624,25 +15625,28 @@
         "adc r18, r1 \n\t"
         "st x+, r18 \n\t"
         
-        /* now z points to the end of tmp, x points to the end of p_product (y still points at p_result) */
+        /* now z points to the end of tmp, x points to the end of product
+           (y still points at result) */
         "sbiw r26, 8 \n\t" /* move x back to point at beginning of actual data */
-        /* add into p_result */
+        /* add into result */
         "ld r18, x+ \n\t"
         "ld r19, y \n\t"
         "add r18, r19 \n\t"
         "st y+, r18 \n\t"
-        REPEAT(7, "ld r18, x+ \n\t"
+        REPEAT(7,
+            "ld r18, x+ \n\t"
             "ld r19, y \n\t"
             "adc r18, r19 \n\t"
             "st y+, r18 \n\t")
         
         /* Done adding, now propagate carry bit */
-        REPEAT(12, "ld r18, y \n\t"
+        REPEAT(12,
+            "ld r18, y \n\t"
             "adc r18, __zero_reg__ \n\t"
             "st y+, r18 \n\t")
         
-        "adc %[carry], __zero_reg__ \n\t"    /* Store carry bit (carry flag is cleared). */
-        "sbiw r28, 20 \n\t" /* move y back to point at p_result */
+        "adc %[carry], __zero_reg__ \n\t" /* Store carry bit (carry flag is cleared). */
+        "sbiw r28, 20 \n\t" /* move y back to point at result */
         
         "sbiw r30, 1 \n\t" /* fix stack pointer */
     	"in r0, __SREG__ \n\t"
@@ -15651,32 +15655,27 @@
     	"out __SREG__, r0 \n\t"
     	"out __SP_L__, r30 \n\t"
         
-        : "+x" (p_product), [carry] "+r" (l_carry)
-        : "y" (p_result)
+        : "+x" (product), [carry] "+r" (carry)
+        : "y" (result)
         : "r0", "r18", "r19", "r30", "r31", "cc", "memory"
     );
     
-    if(l_carry > 0)
-    {
-        --l_carry;
-        vli_sub(p_result, p_result, curve_p);
+    if (carry > 0) {
+        --carry;
+        vli_sub(result, result, curve_p);
     }
-    if(l_carry > 0)
-    {
-        vli_sub(p_result, p_result, curve_p);
+    if (carry > 0) {
+        vli_sub(result, result, curve_p);
     }
-    
-    if(vli_cmp(p_result, curve_p) > 0)
-    {
-        vli_sub(p_result, p_result, curve_p);
+    if (vli_cmp(result, curve_p) > 0) {
+        vli_sub(result, result, curve_p);
     }
 }
 #define asm_mmod_fast 1
 
 #elif (uECC_CURVE == uECC_secp256k1)
-static void vli_mmod_fast(uint8_t *RESTRICT p_result, uint8_t *RESTRICT p_product)
-{
-    uint8_t l_carry = 0;
+static void vli_mmod_fast(uint8_t *RESTRICT result, uint8_t *RESTRICT product) {
+    uint8_t carry = 0;
     __asm__ volatile (
         "in r30, __SP_L__ \n\t"
     	"in r31, __SP_H__ \n\t"
@@ -15687,8 +15686,8 @@
     	"out __SREG__, r0 \n\t"
     	"out __SP_L__, r30 \n\t"
     	
-    	"adiw r30, 1 \n\t" /* add 1 since z initially points below the stack */
-        "adiw r26, 32 \n\t" /* p_product + uECC_WORDS */
+    	"adiw r30, 1 \n\t"  /* add 1 since z initially points below the stack */
+        "adiw r26, 32 \n\t" /* product + uECC_WORDS */
         "ldi r25, 0x03 \n\t"
         "ldi r24, 0xD1 \n\t"
         "ld r18, x+ \n\t"
@@ -15852,27 +15851,29 @@
         "eor r1, r1 \n\t" /* make r1 be 0 again */
         
         "sbiw r30, 37 \n\t" /* move z back to point at tmp */
-        "subi r26, 64 \n\t" /* move x back to point at p_product */
+        "subi r26, 64 \n\t" /* move x back to point at product */
         "sbc r27, __zero_reg__ \n\t"
         
-        /* add low bytes of tmp to p_product, storing in p_result */
+        /* add low bytes of tmp to product, storing in result */
         "ld r18, z+ \n\t"
         "ld r19, x+ \n\t"
         "add r18, r19 \n\t"
         "st y+, r18 \n\t"
-        REPEAT(31, "ld r18, z+ \n\t"
+        REPEAT(31,
+            "ld r18, z+ \n\t"
             "ld r19, x+ \n\t"
             "adc r18, r19 \n\t"
             "st y+, r18 \n\t")
         
-        "adc %[carry], __zero_reg__ \n\t"    /* Store carry bit (carry flag is cleared). */
-        /* at this point x is at the end of p_product, y is at the end of p_result, z is 32 bytes into tmp */
-        "sbiw r28, 32 \n\t" /* move y back to point at p_result */
+        "adc %[carry], __zero_reg__ \n\t" /* Store carry bit (carry flag is cleared). */
+        /* at this point x is at the end of product, y is at the end of result,
+           z is 32 bytes into tmp */
+        "sbiw r28, 32 \n\t" /* move y back to point at result */
 
         /* do omega_mult again with the 5 relevant bytes */
-        /* z points to l_tmp + uECC_WORDS, x points to the end of p_product */
-        "sbiw r26, 32 \n\t" /* shift x back to point into the p_product buffer (we can overwrite it now) */
-        
+        /* z points to tmp + uECC_WORDS, x points to the end of product */
+        "sbiw r26, 32 \n\t" /* shift x back to point into the product buffer
+                               (we can overwrite it now) */
         "ld r18, z+ \n\t"
         "ld r19, z+ \n\t"
         "ld r20, z+ \n\t"
@@ -15947,25 +15948,28 @@
         "st x+, r22 \n\t"
         "eor r1, r1 \n\t" /* make r1 be 0 again */
         
-        /* now z points to the end of tmp, x points to the end of p_product (y still points at p_result) */
+        /* now z points to the end of tmp, x points to the end of product
+           (y still points at result) */
         "sbiw r26, 10 \n\t" /* move x back to point at beginning of actual data */
-        /* add into p_result */
+        /* add into result */
         "ld r18, x+ \n\t"
         "ld r19, y \n\t"
         "add r18, r19 \n\t"
         "st y+, r18 \n\t"
-        REPEAT(9, "ld r18, x+ \n\t"
+        REPEAT(9,
+            "ld r18, x+ \n\t"
             "ld r19, y \n\t"
             "adc r18, r19 \n\t"
             "st y+, r18 \n\t")
         
         /* Done adding, now propagate carry bit */
-        REPEAT(22, "ld r18, y \n\t"
+        REPEAT(22,
+            "ld r18, y \n\t"
             "adc r18, __zero_reg__ \n\t"
             "st y+, r18 \n\t")
         
         "adc %[carry], __zero_reg__ \n\t"    /* Store carry bit (carry flag is cleared). */
-        "sbiw r28, 32 \n\t" /* move y back to point at p_result */
+        "sbiw r28, 32 \n\t" /* move y back to point at result */
         
         "sbiw r30, 1 \n\t" /* fix stack pointer */
     	"in r0, __SREG__ \n\t"
@@ -15974,24 +15978,20 @@
     	"out __SREG__, r0 \n\t"
     	"out __SP_L__, r30 \n\t"
         
-        : "+x" (p_product), [carry] "+r" (l_carry)
-        : "y" (p_result)
+        : "+x" (product), [carry] "+r" (carry)
+        : "y" (result)
         : "r0", "r18", "r19", "r20", "r21", "r22", "r23", "r24", "r25", "r30", "r31", "cc", "memory"
     );
     
-    if(l_carry > 0)
-    {
-        --l_carry;
-        vli_sub(p_result, p_result, curve_p);
+    if (carry > 0) {
+        --carry;
+        vli_sub(result, result, curve_p);
     }
-    if(l_carry > 0)
-    {
-        vli_sub(p_result, p_result, curve_p);
+    if (carry > 0) {
+        vli_sub(result, result, curve_p);
     }
-    
-    if(vli_cmp(p_result, curve_p) > 0)
-    {
-        vli_sub(p_result, p_result, curve_p);
+    if (vli_cmp(result, curve_p) > 0) {
+        vli_sub(result, result, curve_p);
     }
 }
 #define asm_mmod_fast 1
@@ -16001,8 +16001,7 @@
 #endif /* (uECC_ASM == uECC_asm_fast) */
 
 #if !asm_rshift1
-static void vli_rshift1(uint8_t *p_vli)
-{
+static void vli_rshift1(uint8_t *vli) {
     uint8_t i = uECC_BYTES;
     __asm__ volatile (
         "adiw r30, " STR(uECC_BYTES) " \n\t"
@@ -16015,7 +16014,7 @@
         "dec %[i] \n\t"
         "brne 1b \n\t"
 
-        : "+z" (p_vli), [i] "+r" (i)
+        : "+z" (vli), [i] "+r" (i)
         : 
         : "r0", "cc", "memory"
     );
@@ -16024,12 +16023,11 @@
 #endif
 
 #if !asm_add
-static uint8_t vli_add(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static uint8_t vli_add(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     uint8_t i = uECC_BYTES;
-    uint8_t l_carry = 0;
-    uint8_t l_left;
-    uint8_t l_right;
+    uint8_t carry = 0;
+    uint8_t left_byte;
+    uint8_t right_byte;
 
     __asm__ volatile (
         "clc \n\t"
@@ -16042,27 +16040,25 @@
         "dec %[i] \n\t"
         "brne 1b \n\t"
         
-        "adc %[carry], %[carry] \n\t"    /* Store carry bit in l_carry. */
-        
+        "adc %[carry], %[carry] \n\t" /* Store carry bit. */
         "sbiw r28, " STR(uECC_BYTES) " \n\t" /* Restore Y */
 
-        : "+z" (p_result), "+x" (p_left), [i] "+r" (i),
-            [carry] "+r" (l_carry), [left] "=&r" (l_left), [right] "=&r" (l_right)
-        : "y" (p_right)
+        : "+z" (result), "+x" (left), [i] "+r" (i),
+            [carry] "+r" (carry), [left] "=&r" (left_byte), [right] "=&r" (right_byte)
+        : "y" (right)
         : "cc", "memory"
     );
-    return l_carry;
+    return carry;
 }
 #define asm_add 1
 #endif
 
 #if !asm_sub
-static uint8_t vli_sub(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static uint8_t vli_sub(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     uint8_t i = uECC_BYTES;
-    uint8_t l_borrow = 0;
-    uint8_t l_left;
-    uint8_t l_right;
+    uint8_t borrow = 0;
+    uint8_t left_byte;
+    uint8_t right_byte;
 
     __asm__ volatile (
         "clc \n\t"
@@ -16075,37 +16071,33 @@
         "dec %[i] \n\t"
         "brne 1b \n\t"
         
-        "adc %[borrow], %[borrow] \n\t"    /* Store carry bit in l_borrow. */
-        
+        "adc %[borrow], %[borrow] \n\t" /* Store carry bit in borrow. */
         "sbiw r28, " STR(uECC_BYTES) " \n\t" /* Restore Y */
 
-        : "+z" (p_result), "+x" (p_left), [i] "+r" (i),
-            [borrow] "+r" (l_borrow), [left] "=&r" (l_left), [right] "=&r" (l_right)
-        : "y" (p_right)
+        : "+z" (result), "+x" (left), [i] "+r" (i),
+            [borrow] "+r" (borrow), [left] "=&r" (left_byte), [right] "=&r" (right_byte)
+        : "y" (right)
         : "cc", "memory"
     );
-    return l_borrow;
+    return borrow;
 }
 #define asm_sub 1
 #endif
 
 #if !asm_mult
 __attribute((noinline))
-static void vli_mult(uint8_t *p_result, const uint8_t *p_left, const uint8_t *p_right)
-{
+static void vli_mult(uint8_t *result, const uint8_t *left, const uint8_t *right) {
     uint8_t r0 = 0;
     uint8_t r1 = 0;
     uint8_t r2 = 0;
-    
-    uint8_t l_zero = 0;
-    
+    uint8_t zero = 0;
     uint8_t k, i;
     
     __asm__ volatile (
         "ldi %[k], 1 \n\t" /* k = 1; k < uECC_BYTES; ++k */
         
         "1: \n\t"
-        "ldi %[i], 0 \n\t"  /* i=0; i < k; ++i */
+        "ldi %[i], 0 \n\t"  /* i = 0; i < k; ++i */
         
         "add r28, %[k] \n\t" /* pre-add right ptr */
         "adc r29, %[zero] \n\t"
@@ -16137,10 +16129,10 @@
         
         /* second half */
         "ldi %[k], " STR(uECC_BYTES) " \n\t" /* k = uECC_BYTES; k > 0; --k */
-        "adiw r28, " STR(uECC_BYTES) " \n\t" /* move right ptr to point at the end of p_right */
+        "adiw r28, " STR(uECC_BYTES) " \n\t" /* move right ptr to point at the end of right */
         
         "1: \n\t"
-        "ldi %[i], 0 \n\t" /* i=0; i < k; ++i */
+        "ldi %[i], 0 \n\t" /* i = 0; i < k; ++i */
         
         "2: \n\t"
         "ld r0, x+ \n\t"
@@ -16164,22 +16156,21 @@
         "mov %[r2], %[zero] \n\t"
         
         "dec %[k] \n\t"
-        "sub r26, %[k] \n\t" /* fix up left ptr (after k is decremented, so next time we start 1 higher) */
+        "sub r26, %[k] \n\t" /* fix up left ptr (after k is decremented, so next time
+                                we start 1 higher) */
         "sbc r27, %[zero] \n\t"
         
         "cpi %[k], 0 \n\t"
         "brne 1b \n\t" /* loop if k > 0 */
         
         "st z+, %[r0] \n\t"  /* Store last result byte. */
-        
         "eor r1, r1 \n\t" /* fix r1 to be 0 again */
-        
         "sbiw r28, " STR(uECC_BYTES) " \n\t" /* Restore Y */
     
-        : "+z" (p_result), "+x" (p_left),
-          [r0] "+r" (r0), [r1] "+r" (r1), [r2] "+r" (r2), [zero] "+r" (l_zero),
+        : "+z" (result), "+x" (left),
+          [r0] "+r" (r0), [r1] "+r" (r1), [r2] "+r" (r2), [zero] "+r" (zero),
           [k] "=&a" (k), [i] "=&a" (i)
-        : "y" (p_right)
+        : "y" (right)
         : "r0", "cc", "memory"
     );
 }
@@ -16188,18 +16179,15 @@
 
 #if uECC_SQUARE_FUNC
 #if !asm_square
-static void vli_square(uint8_t *p_result, const uint8_t *p_left)
-{
+static void vli_square(uint8_t *result, const uint8_t *left) {
     uint8_t r0 = 0;
     uint8_t r1 = 0;
     uint8_t r2 = 0;
-    
-    uint8_t l_zero = 0;
-    
+    uint8_t zero = 0;
     uint8_t k;
     
     __asm__ volatile (
-        "ldi %[k], 1 \n\t" /* k = 1; k < uECC_BYTES*2; ++k */
+        "ldi %[k], 1 \n\t" /* k = 1; k < uECC_BYTES * 2; ++k */
         
         "1: \n\t"
         
@@ -16223,7 +16211,8 @@
         
         "3: \n\t"
         "ld r0, x+ \n\t"
-        "cp r26, r30 \n\t" /* if left == right here, then we are done after this mult (and we don't need to double) */
+        "cp r26, r30 \n\t" /* if left == right here, then we are done after this mult
+                              (and we don't need to double) */
         "breq 4f \n\t"
         "ld r1, -z \n\t"
         "mul r0, r1 \n\t"
@@ -16248,9 +16237,9 @@
         "adc %[r2], %[zero] \n\t"
         
         "5: \n\t"
-        "movw r30, %[result] \n\t"  /* make z point to result */
-        "st z+, %[r0] \n\t"  /* Store the result. */
-        "movw %[result], r30 \n\t"  /* update result ptr*/
+        "movw r30, %[result] \n\t" /* make z point to result */
+        "st z+, %[r0] \n\t"        /* Store the result. */
+        "movw %[result], r30 \n\t" /* update result ptr*/
         "mov %[r0], %[r1] \n\t"
         "mov %[r1], %[r2] \n\t"
         "mov %[r2], %[zero] \n\t"
@@ -16261,13 +16250,12 @@
         
         "movw r30, %[result] \n\t"  /* make z point to result */
         "st z+, %[r0] \n\t"  /* Store last result byte. */
-        
         "eor r1, r1 \n\t" /* fix r1 to be 0 again */
     
-        : [result] "+r" (p_result),
-          [r0] "+r" (r0), [r1] "+r" (r1), [r2] "+r" (r2), [zero] "+r" (l_zero),
+        : [result] "+r" (result),
+          [r0] "+r" (r0), [r1] "+r" (r1), [r2] "+r" (r2), [zero] "+r" (zero),
           [k] "=&a" (k)
-        : [orig] "r" (p_left), [max] "M" (2*uECC_BYTES)
+        : [orig] "r" (left), [max] "M" (2*uECC_BYTES)
         : "r0", "r26", "r27", "r30", "r31", "cc", "memory"
     );
 }
diff --git a/test/ecc_test/ecc_test.ino b/test/ecc_test/ecc_test.ino
index a72c368..8fde301 100644
--- a/test/ecc_test/ecc_test.ino
+++ b/test/ecc_test/ecc_test.ino
@@ -2,95 +2,82 @@
 
 extern "C" {
 
-static int RNG(uint8_t *p_dest, unsigned p_size)
-{
-  // Use the least-significant bits from the ADC for an unconnected pin (or connected to a source of random noise)
-  // This can take a long time to generate random data if the result of analogRead(0) doesn't change very frequently.
-  while(p_size) {
-    uint8_t l_val = 0;
-    for(unsigned i=0; i<8; ++i)
-    {
-      int l_init = analogRead(0);
-      int l_count = 0;
-      while(analogRead(0) == l_init)
-      {
-        ++l_count;
+static int RNG(uint8_t *dest, unsigned size) {
+  // Use the least-significant bits from the ADC for an unconnected pin (or connected to a source of 
+  // random noise). This can take a long time to generate random data if the result of analogRead(0) 
+  // doesn't change very frequently.
+  while (size) {
+    uint8_t val = 0;
+    for (unsigned i = 0; i < 8; ++i) {
+      int init = analogRead(0);
+      int count = 0;
+      while (analogRead(0) == init) {
+        ++count;
       }
       
-      if(l_count == 0)
-      {
-         l_val = (l_val << 1) | (l_init & 0x01);
-      }
-      else
-      {
-         l_val = (l_val << 1) | (l_count & 0x01);
+      if (count == 0) {
+         val = (val << 1) | (init & 0x01);
+      } else {
+         val = (val << 1) | (count & 0x01);
       }
     }
-    *p_dest = l_val;
-    ++p_dest;
-    --p_size;
+    *dest = val;
+    ++dest;
+    --size;
   }
-  
   // NOTE: it would be a good idea to hash the resulting random data using SHA-256 or similar.
   return 1;
 }
 
-}
+}  // extern "C"
 
-void setup()
-{
+void setup() {
   Serial.begin(115200);
   Serial.print("Testing ecc\n");
-  
   uECC_set_rng(&RNG);
 }
 
 void loop() {
-  uint8_t l_private1[uECC_BYTES];
-  uint8_t l_private2[uECC_BYTES];
+  uint8_t private1[uECC_BYTES];
+  uint8_t private2[uECC_BYTES];
   
-  uint8_t l_public1[uECC_BYTES * 2];
-  uint8_t l_public2[uECC_BYTES * 2];
+  uint8_t public1[uECC_BYTES * 2];
+  uint8_t public2[uECC_BYTES * 2];
   
-  uint8_t l_secret1[uECC_BYTES];
-  uint8_t l_secret2[uECC_BYTES];
+  uint8_t secret1[uECC_BYTES];
+  uint8_t secret2[uECC_BYTES];
   
   unsigned long a = millis();
-  uECC_make_key(l_public1, l_private1);
+  uECC_make_key(public1, private1);
   unsigned long b = millis();
   
   Serial.print("Made key 1 in "); Serial.println(b-a);
   a = millis();
-  uECC_make_key(l_public2, l_private2);
+  uECC_make_key(public2, private2);
   b = millis();
   Serial.print("Made key 2 in "); Serial.println(b-a);
 
   a = millis();
-  int r = uECC_shared_secret(l_public2, l_private1, l_secret1);
+  int r = uECC_shared_secret(public2, private1, secret1);
   b = millis();
   Serial.print("Shared secret 1 in "); Serial.println(b-a);
-  if(!r)
-  {
+  if (!r) {
     Serial.print("shared_secret() failed (1)\n");
     return;
   }
 
   a = millis();
-  r = uECC_shared_secret(l_public1, l_private2, l_secret2);
+  r = uECC_shared_secret(public1, private2, secret2);
   b = millis();
   Serial.print("Shared secret 2 in "); Serial.println(b-a);
-  if(!r)
-  {
+  if (!r) {
     Serial.print("shared_secret() failed (2)\n");
     return;
   }
     
-  if(memcmp(l_secret1, l_secret2, sizeof(l_secret1)) != 0)
-  {
+  if (memcmp(secret1, secret2, sizeof(secret1)) != 0) {
     Serial.print("Shared secrets are not identical!\n");
-  }
-  else
-  {
+  } else {
     Serial.print("Shared secrets are identical\n");
   }
 }
diff --git a/test/test_compute.c b/test/test_compute.c
index 88b6703..fe2292e 100644
--- a/test/test_compute.c
+++ b/test/test_compute.c
@@ -5,64 +5,57 @@
 #include <stdio.h>
 #include <string.h>
 
-void vli_print(uint8_t *p_vli, unsigned int p_size)
-{
-    while(p_size)
-    {
-        printf("%02X ", (unsigned)p_vli[p_size - 1]);
-        --p_size;
+void vli_print(uint8_t *vli, unsigned int size) {
+    while (size) {
+        printf("%02X ", (unsigned)vli[size - 1]);
+        --size;
     }
 }
 
-int main()
-{
+int main() {
     int i;
     int success;
-
-    uint8_t l_private[uECC_BYTES];
-
-    uint8_t l_public[uECC_BYTES * 2];
-    uint8_t l_public_computed[uECC_BYTES * 2];
+    uint8_t private[uECC_BYTES];
+    uint8_t public[uECC_BYTES * 2];
+    uint8_t public_computed[uECC_BYTES * 2];
 
     printf("Testing 256 random private key pairs\n");
-
-    for(i=0; i<256; ++i)
-    {
+    for (i = 0; i < 256; ++i) {
         printf(".");
+    #if !LPC11XX
         fflush(stdout);
+    #endif
 
-        int success = uECC_make_key(l_public, l_private);
+        success = uECC_make_key(public, private);
         if (!success) {
             printf("uECC_make_key() failed\n");
             return 1;
         }
 
-        success = uECC_compute_public_key(l_private, l_public_computed);
+        success = uECC_compute_public_key(private, public_computed);
         if (!success) {
             printf("uECC_compute_public_key() failed\n");
         }
 
-        if(memcmp(l_public, l_public_computed, sizeof(l_public)) != 0)
-        {
+        if (memcmp(public, public_computed, sizeof(public)) != 0) {
             printf("Computed and provided public keys are not identical!\n");
             printf("Computed public key = ");
-            vli_print(l_public_computed, uECC_BYTES);
+            vli_print(public_computed, uECC_BYTES);
             printf("\n");
             printf("Provided public key = ");
-            vli_print(l_public, uECC_BYTES);
+            vli_print(public, uECC_BYTES);
             printf("\n");
             printf("Private key = ");
-            vli_print(l_private, uECC_BYTES);
+            vli_print(private, uECC_BYTES);
             printf("\n");
         }
     }
 
     printf("\n");
-
     printf("Testing private key = 0\n");
 
-    memset(l_private, 0, uECC_BYTES);
-    success = uECC_compute_public_key(l_private, l_public_computed);
+    memset(private, 0, uECC_BYTES);
+    success = uECC_compute_public_key(private, public_computed);
     if (success) {
         printf("uECC_compute_public_key() should have failed\n");
     }
diff --git a/test/test_ecdh.c b/test/test_ecdh.c
index 4b4176b..2388126 100644
--- a/test/test_ecdh.c
+++ b/test/test_ecdh.c
@@ -11,34 +11,29 @@
 #include "/Projects/lpc11xx/peripherals/time.h"
 
 static uint64_t g_rand = 88172645463325252ull;
-int fake_rng(uint8_t *p_dest, unsigned p_size)
-{
-    while(p_size)
-    {
+int fake_rng(uint8_t *dest, unsigned size) {
+    while (size) {
         g_rand ^= (g_rand << 13);
         g_rand ^= (g_rand >> 7);
         g_rand ^= (g_rand << 17);
 
-        unsigned l_amount = (p_size > 8 ? 8 : p_size);
-        memcpy(p_dest, &g_rand, l_amount);
-        p_size -= l_amount;
+        unsigned amount = (size > 8 ? 8 : size);
+        memcpy(dest, &g_rand, amount);
+        size -= amount;
     }
     return 1;
 }
 
 #endif
 
-void vli_print(uint8_t *p_vli, unsigned int p_size)
-{
-    while(p_size)
-    {
-        printf("%02X ", (unsigned)p_vli[p_size - 1]);
-        --p_size;
+void vli_print(uint8_t *vli, unsigned int size) {
+    while (size) {
+        printf("%02X ", (unsigned)vli[size - 1]);
+        --size;
     }
 }
 
-int main()
-{
+int main() {
 #if LPC11XX
     uartInit(BAUD_115200);
 	initTime();
@@ -47,57 +42,49 @@
 #endif
 	
     int i;
-    
-    uint8_t l_private1[uECC_BYTES];
-    uint8_t l_private2[uECC_BYTES];
-    
-    uint8_t l_public1[uECC_BYTES * 2];
-    uint8_t l_public2[uECC_BYTES * 2];
-    
-    uint8_t l_secret1[uECC_BYTES];
-    uint8_t l_secret2[uECC_BYTES];
+    uint8_t private1[uECC_BYTES];
+    uint8_t private2[uECC_BYTES];
+    uint8_t public1[uECC_BYTES * 2];
+    uint8_t public2[uECC_BYTES * 2];
+    uint8_t secret1[uECC_BYTES];
+    uint8_t secret2[uECC_BYTES];
     
     printf("Testing 256 random private key pairs\n");
 
-    for(i=0; i<256; ++i)
-    {
+    for (i = 0; i < 256; ++i) {
         printf(".");
     #if !LPC11XX
         fflush(stdout);
     #endif
 
-        if(!uECC_make_key(l_public1, l_private1) || !uECC_make_key(l_public2, l_private2))
-        {
+        if (!uECC_make_key(public1, private1) || !uECC_make_key(public2, private2)) {
             printf("uECC_make_key() failed\n");
             return 1;
         }
 
-        if(!uECC_shared_secret(l_public2, l_private1, l_secret1))
-        {
+        if (!uECC_shared_secret(public2, private1, secret1)) {
             printf("shared_secret() failed (1)\n");
             return 1;
         }
 
-        if(!uECC_shared_secret(l_public1, l_private2, l_secret2))
-        {
+        if (!uECC_shared_secret(public1, private2, secret2)) {
             printf("shared_secret() failed (2)\n");
             return 1;
         }
         
-        if(memcmp(l_secret1, l_secret2, sizeof(l_secret1)) != 0)
-        {
+        if (memcmp(secret1, secret2, sizeof(secret1)) != 0) {
             printf("Shared secrets are not identical!\n");
             printf("Shared secret 1 = ");
-            vli_print(l_secret1, uECC_BYTES);
+            vli_print(secret1, uECC_BYTES);
             printf("\n");
             printf("Shared secret 2 = ");
-            vli_print(l_secret2, uECC_BYTES);
+            vli_print(secret2, uECC_BYTES);
             printf("\n");
             printf("Private key 1 = ");
-            vli_print(l_private1, uECC_BYTES);
+            vli_print(private1, uECC_BYTES);
             printf("\n");
             printf("Private key 2 = ");
-            vli_print(l_private2, uECC_BYTES);
+            vli_print(private2, uECC_BYTES);
             printf("\n");
         }
     }
diff --git a/test/test_ecdsa.c b/test/test_ecdsa.c
index 9be3b93..2fc75be 100644
--- a/test/test_ecdsa.c
+++ b/test/test_ecdsa.c
@@ -11,25 +11,22 @@
 #include "/Projects/lpc11xx/peripherals/time.h"
 
 static uint64_t g_rand = 88172645463325252ull;
-int fake_rng(uint8_t *p_dest, unsigned p_size)
-{
-    while(p_size)
-    {
+int fake_rng(uint8_t *dest, unsigned size) {
+    while (size) {
         g_rand ^= (g_rand << 13);
         g_rand ^= (g_rand >> 7);
         g_rand ^= (g_rand << 17);
 
-        unsigned l_amount = (p_size > 8 ? 8 : p_size);
-        memcpy(p_dest, &g_rand, l_amount);
-        p_size -= l_amount;
+        unsigned amount = (size > 8 ? 8 : size);
+        memcpy(dest, &g_rand, amount);
+        size -= amount;
     }
     return 1;
 }
 
 #endif
 
-int main()
-{
+int main() {
 #if LPC11XX
     uartInit(BAUD_115200);
 	initTime();
@@ -37,39 +34,31 @@
     uECC_set_rng(&fake_rng);
 #endif
 
-    uint8_t l_public[uECC_BYTES*2];
-    uint8_t l_private[uECC_BYTES];
-
-    uint8_t l_hash[uECC_BYTES];
-    
-    uint8_t l_sig[uECC_BYTES*2];
+    uint8_t public[uECC_BYTES * 2];
+    uint8_t private[uECC_BYTES];
+    uint8_t hash[uECC_BYTES];
+    uint8_t sig[uECC_BYTES * 2];
     
     int i;
-    
     printf("Testing 256 signatures\n");
-    
-    for(i=0; i<256; ++i)
-    {
+    for (i = 0; i < 256; ++i) {
         printf(".");
     #if !LPC11XX
         fflush(stdout);
     #endif
         
-        if(!uECC_make_key(l_public, l_private))
-        {
+        if (!uECC_make_key(public, private)) {
             printf("uECC_make_key() failed\n");
             continue;
         }
-        memcpy(l_hash, l_public, uECC_BYTES);
+        memcpy(hash, public, uECC_BYTES);
         
-        if(!uECC_sign(l_private, l_hash, l_sig))
-        {
+        if (!uECC_sign(private, hash, sig)) {
             printf("uECC_sign() failed\n");
             continue;
         }
         
-        if(!uECC_verify(l_public, l_hash, l_sig))
-        {
+        if (!uECC_verify(public, hash, sig)) {
             printf("uECC_verify() failed\n");
         }
     }
diff --git a/uECC.c b/uECC.c
index 281922f..4166a18 100644
--- a/uECC.c
+++ b/uECC.c
@@ -49,7 +49,9 @@
     #define uECC_WORD_SIZE 1
 #endif
 
-#if (uECC_ASM && (uECC_PLATFORM == uECC_arm || uECC_PLATFORM == uECC_arm_thumb) && (uECC_WORD_SIZE != 4))
+#if (uECC_ASM && \
+     (uECC_PLATFORM == uECC_arm || uECC_PLATFORM == uECC_arm_thumb) && \
+     (uECC_WORD_SIZE != 4))
     #pragma message ("uECC_WORD_SIZE must be 4 when using ARM asm")
     #undef uECC_WORD_SIZE
     #define uECC_WORD_SIZE 4
@@ -200,13 +202,17 @@
 
 #define Curve_P_1 {0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
 #define Curve_P_2 {0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
-#define Curve_P_3 {0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0xFFFFFFFF}
-#define Curve_P_4 {0xFFFFFC2F, 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
+#define Curve_P_3 {0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, \
+                   0x00000000, 0x00000000, 0x00000001, 0xFFFFFFFF}
+#define Curve_P_4 {0xFFFFFC2F, 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, \
+                   0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
 
 #define Curve_B_1 {0xC565FA45, 0x81D4D4AD, 0x65ACF89F, 0x54BD7A8B, 0x1C97BEFC}
 #define Curve_B_2 {0xC146B9B1, 0xFEB8DEEC, 0x72243049, 0x0FA7E9AB, 0xE59C80E7, 0x64210519}
-#define Curve_B_3 {0x27D2604B, 0x3BCE3C3E, 0xCC53B0F6, 0x651D06B0, 0x769886BC, 0xB3EBBD55, 0xAA3A93E7, 0x5AC635D8}
-#define Curve_B_4 {0x00000007, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}
+#define Curve_B_3 {0x27D2604B, 0x3BCE3C3E, 0xCC53B0F6, 0x651D06B0, \
+                   0x769886BC, 0xB3EBBD55, 0xAA3A93E7, 0x5AC635D8}
+#define Curve_B_4 {0x00000007, 0x00000000, 0x00000000, 0x00000000, \
+                   0x00000000, 0x00000000, 0x00000000, 0x00000000}
 
 #define Curve_G_1 { \
     {0x13CBFC82, 0x68C38BB9, 0x46646989, 0x8EF57328, 0x4A96B568}, \
@@ -217,17 +223,23 @@
     {0x1E794811, 0x73F977A1, 0x6B24CDD5, 0x631011ED, 0xFFC8DA78, 0x07192B95}}
     
 #define Curve_G_3 { \
-    {0xD898C296, 0xF4A13945, 0x2DEB33A0, 0x77037D81, 0x63A440F2, 0xF8BCE6E5, 0xE12C4247, 0x6B17D1F2}, \
-    {0x37BF51F5, 0xCBB64068, 0x6B315ECE, 0x2BCE3357, 0x7C0F9E16, 0x8EE7EB4A, 0xFE1A7F9B, 0x4FE342E2}}
+    {0xD898C296, 0xF4A13945, 0x2DEB33A0, 0x77037D81,  \
+     0x63A440F2, 0xF8BCE6E5, 0xE12C4247, 0x6B17D1F2}, \
+    {0x37BF51F5, 0xCBB64068, 0x6B315ECE, 0x2BCE3357,  \
+     0x7C0F9E16, 0x8EE7EB4A, 0xFE1A7F9B, 0x4FE342E2}}
 
 #define Curve_G_4 { \
-    {0x16F81798, 0x59F2815B, 0x2DCE28D9, 0x029BFCDB, 0xCE870B07, 0x55A06295, 0xF9DCBBAC, 0x79BE667E}, \
-    {0xFB10D4B8, 0x9C47D08F, 0xA6855419, 0xFD17B448, 0x0E1108A8, 0x5DA4FBFC, 0x26A3C465, 0x483ADA77}}
+    {0x16F81798, 0x59F2815B, 0x2DCE28D9, 0x029BFCDB,  \
+     0xCE870B07, 0x55A06295, 0xF9DCBBAC, 0x79BE667E}, \
+    {0xFB10D4B8, 0x9C47D08F, 0xA6855419, 0xFD17B448,  \
+     0x0E1108A8, 0x5DA4FBFC, 0x26A3C465, 0x483ADA77}}
 
 #define Curve_N_1 {0xCA752257, 0xF927AED3, 0x0001F4C8, 0x00000000, 0x00000000, 0x00000001}
 #define Curve_N_2 {0xB4D22831, 0x146BC9B1, 0x99DEF836, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
-#define Curve_N_3 {0xFC632551, 0xF3B9CAC2, 0xA7179E84, 0xBCE6FAAD, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFFFFFFFF}
-#define Curve_N_4 {0xD0364141, 0xBFD25E8C, 0xAF48A03B, 0xBAAEDCE6, 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
+#define Curve_N_3 {0xFC632551, 0xF3B9CAC2, 0xA7179E84, 0xBCE6FAAD, \
+                   0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFFFFFFFF}
+#define Curve_N_4 {0xD0364141, 0xBFD25E8C, 0xAF48A03B, 0xBAAEDCE6, \
+                   0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF}
 
 #elif (uECC_WORD_SIZE == 8)
 
@@ -257,13 +269,17 @@
 
 #define Curve_P_1 {0xFFFFFFFF7FFFFFFFull, 0xFFFFFFFFFFFFFFFFull, 0x00000000FFFFFFFFull}
 #define Curve_P_2 {0xFFFFFFFFFFFFFFFFull, 0xFFFFFFFFFFFFFFFEull, 0xFFFFFFFFFFFFFFFFull}
-#define Curve_P_3 {0xFFFFFFFFFFFFFFFFull, 0x00000000FFFFFFFFull, 0x0000000000000000ull, 0xFFFFFFFF00000001ull}
-#define Curve_P_4 {0xFFFFFFFEFFFFFC2Full, 0xFFFFFFFFFFFFFFFFull, 0xFFFFFFFFFFFFFFFFull, 0xFFFFFFFFFFFFFFFFull}
+#define Curve_P_3 {0xFFFFFFFFFFFFFFFFull, 0x00000000FFFFFFFFull, \
+                   0x0000000000000000ull, 0xFFFFFFFF00000001ull}
+#define Curve_P_4 {0xFFFFFFFEFFFFFC2Full, 0xFFFFFFFFFFFFFFFFull, \
+                   0xFFFFFFFFFFFFFFFFull, 0xFFFFFFFFFFFFFFFFull}
 
 #define Curve_B_1 {0x81D4D4ADC565FA45ull, 0x54BD7A8B65ACF89Full, 0x000000001C97BEFCull}
 #define Curve_B_2 {0xFEB8DEECC146B9B1ull, 0x0FA7E9AB72243049ull, 0x64210519E59C80E7ull}
-#define Curve_B_3 {0x3BCE3C3E27D2604Bull, 0x651D06B0CC53B0F6ull, 0xB3EBBD55769886BCull, 0x5AC635D8AA3A93E7ull}
-#define Curve_B_4 {0x0000000000000007ull, 0x0000000000000000ull, 0x0000000000000000ull, 0x0000000000000000ull}
+#define Curve_B_3 {0x3BCE3C3E27D2604Bull, 0x651D06B0CC53B0F6ull, \
+                   0xB3EBBD55769886BCull, 0x5AC635D8AA3A93E7ull}
+#define Curve_B_4 {0x0000000000000007ull, 0x0000000000000000ull, \
+                   0x0000000000000000ull, 0x0000000000000000ull}
 
 #define Curve_G_1 { \
     {0x68C38BB913CBFC82ull, 0x8EF5732846646989ull, 0x000000004A96B568ull}, \
@@ -278,21 +294,22 @@
     {0xCBB6406837BF51F5ull, 0x2BCE33576B315ECEull, 0x8EE7EB4A7C0F9E16ull, 0x4FE342E2FE1A7F9Bull}}
 
 #define Curve_G_4 { \
-    {0x59F2815B16F81798, 0x029BFCDB2DCE28D9, 0x55A06295CE870B07, 0x79BE667EF9DCBBAC}, \
-    {0x9C47D08FFB10D4B8, 0xFD17B448A6855419, 0x5DA4FBFC0E1108A8, 0x483ADA7726A3C465}}
+    {0x59F2815B16F81798ull, 0x029BFCDB2DCE28D9ull, 0x55A06295CE870B07ull, 0x79BE667EF9DCBBACull}, \
+    {0x9C47D08FFB10D4B8ull, 0xFD17B448A6855419ull, 0x5DA4FBFC0E1108A8ull, 0x483ADA7726A3C465ull}}
 
 #define Curve_N_1 {0xF927AED3CA752257ull, 0x000000000001F4C8ull, 0x0000000100000000ull}
 #define Curve_N_2 {0x146BC9B1B4D22831ull, 0xFFFFFFFF99DEF836ull, 0xFFFFFFFFFFFFFFFFull}
-#define Curve_N_3 {0xF3B9CAC2FC632551ull, 0xBCE6FAADA7179E84ull, 0xFFFFFFFFFFFFFFFFull, 0xFFFFFFFF00000000ull}
-#define Curve_N_4 {0xBFD25E8CD0364141, 0xBAAEDCE6AF48A03B, 0xFFFFFFFFFFFFFFFE, 0xFFFFFFFFFFFFFFFF}
+#define Curve_N_3 {0xF3B9CAC2FC632551ull, 0xBCE6FAADA7179E84ull, \
+                   0xFFFFFFFFFFFFFFFFull, 0xFFFFFFFF00000000ull}
+#define Curve_N_4 {0xBFD25E8CD0364141ull, 0xBAAEDCE6AF48A03Bull, \
+                   0xFFFFFFFFFFFFFFFEull, 0xFFFFFFFFFFFFFFFFull}
 
 #endif /* (uECC_WORD_SIZE == 8) */
 
 #define uECC_WORDS uECC_CONCAT(uECC_WORDS_, uECC_CURVE)
 #define uECC_N_WORDS uECC_CONCAT(uECC_N_WORDS_, uECC_CURVE)
 
-typedef struct EccPoint
-{
+typedef struct EccPoint {
     uECC_word_t x[uECC_WORDS];
     uECC_word_t y[uECC_WORDS];
 } EccPoint;
@@ -310,13 +327,25 @@
 static cmpresult_t vli_cmp(const uECC_word_t *p_left, const uECC_word_t *p_right);
 static cmpresult_t vli_equal(const uECC_word_t *p_left, const uECC_word_t *p_right);
 static void vli_rshift1(uECC_word_t *p_vli);
-static uECC_word_t vli_add(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right);
-static uECC_word_t vli_sub(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right);
+static uECC_word_t vli_add(uECC_word_t *p_result,
+                           const uECC_word_t *p_left,
+                           const uECC_word_t *p_right);
+static uECC_word_t vli_sub(uECC_word_t *p_result,
+                           const uECC_word_t *p_left,
+                           const uECC_word_t *p_right);
 static void vli_mult(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right);
-static void vli_modAdd(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right, const uECC_word_t *p_mod);
-static void vli_modSub(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right, const uECC_word_t *p_mod);
+static void vli_modAdd(uECC_word_t *p_result,
+                       const uECC_word_t *p_left,
+                       const uECC_word_t *p_right,
+                       const uECC_word_t *p_mod);
+static void vli_modSub(uECC_word_t *p_result,
+                       const uECC_word_t *p_left,
+                       const uECC_word_t *p_right,
+                       const uECC_word_t *p_mod);
 static void vli_mmod_fast(uECC_word_t *RESTRICT p_result, uECC_word_t *RESTRICT p_product);
-static void vli_modMult_fast(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right);
+static void vli_modMult_fast(uECC_word_t *p_result,
+                             const uECC_word_t *p_left,
+                             const uECC_word_t *p_right);
 static void vli_modInv(uECC_word_t *p_result, const uECC_word_t *p_input, const uECC_word_t *p_mod);
 #if uECC_SQUARE_FUNC
 static void vli_square(uECC_word_t *p_result, const uECC_word_t *p_left);
@@ -330,17 +359,14 @@
 #include <windows.h>
 #include <wincrypt.h>
 
-static int default_RNG(uint8_t *p_dest, unsigned p_size)
-{
-    HCRYPTPROV l_prov;
-    if(!CryptAcquireContext(&l_prov, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT))
-    {
+static int default_RNG(uint8_t *dest, unsigned size) {
+    HCRYPTPROV prov;
+    if (!CryptAcquireContext(&prov, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) {
         return 0;
     }
 
-    CryptGenRandom(l_prov, p_size, (BYTE *)p_dest);
-    CryptReleaseContext(l_prov, 0);
-    
+    CryptGenRandom(prov, size, (BYTE *)dest);
+    CryptReleaseContext(prov, 0);
     return 1;
 }
 
@@ -356,50 +382,43 @@
     #define O_CLOEXEC 0
 #endif
 
-static int default_RNG(uint8_t *p_dest, unsigned p_size)
-{
-    int l_fd = open("/dev/urandom", O_RDONLY | O_CLOEXEC);
-    if(l_fd == -1)
-    {
-        l_fd = open("/dev/random", O_RDONLY | O_CLOEXEC);
-        if(l_fd == -1)
-        {
+static int default_RNG(uint8_t *dest, unsigned size) {
+    int fd = open("/dev/urandom", O_RDONLY | O_CLOEXEC);
+    if (fd == -1) {
+        fd = open("/dev/random", O_RDONLY | O_CLOEXEC);
+        if (fd == -1) {
             return 0;
         }
     }
     
-    char *l_ptr = (char *)p_dest;
-    size_t l_left = p_size;
-    while(l_left > 0)
-    {
-        ssize_t l_read = read(l_fd, l_ptr, l_left);
-        if(l_read <= 0)
-        { // read failed
-            close(l_fd);
+    char *ptr = (char *)dest;
+    size_t left = size;
+    while (left > 0) {
+        ssize_t bytes_read = read(fd, ptr, left);
+        if (bytes_read <= 0) { // read failed
+            close(fd);
             return 0;
         }
-        l_left -= l_read;
-        l_ptr += l_read;
+        left -= bytes_read;
+        ptr += bytes_read;
     }
     
-    close(l_fd);
+    close(fd);
     return 1;
 }
 
 #else /* Some other platform */
 
-static int default_RNG(uint8_t *p_dest, unsigned p_size)
-{
+static int default_RNG(uint8_t *dest, unsigned size) {
     return 0;
 }
 
 #endif
 
-static uECC_RNG_Function g_rng = &default_RNG;
+static uECC_RNG_Function g_rng_function = &default_RNG;
 
-void uECC_set_rng(uECC_RNG_Function p_rng)
-{
-    g_rng = p_rng;
+void uECC_set_rng(uECC_RNG_Function rng_function) {
+    g_rng_function = rng_function;
 }
 
 #ifdef __GNUC__ /* Only support GCC inline asm for now */
@@ -407,31 +426,27 @@
         #include "asm_avr.inc"
     #endif
 
-    #if (uECC_ASM && (uECC_PLATFORM == uECC_arm || uECC_PLATFORM == uECC_arm_thumb || uECC_PLATFORM == uECC_arm_thumb2))
+    #if (uECC_ASM && (uECC_PLATFORM == uECC_arm || uECC_PLATFORM == uECC_arm_thumb || \
+                      uECC_PLATFORM == uECC_arm_thumb2))
         #include "asm_arm.inc"
     #endif
 #endif
 
 #if !asm_clear
-static void vli_clear(uECC_word_t *p_vli)
-{
+static void vli_clear(uECC_word_t *vli) {
     wordcount_t i;
-    for(i = 0; i < uECC_WORDS; ++i)
-    {
-        p_vli[i] = 0;
+    for (i = 0; i < uECC_WORDS; ++i) {
+        vli[i] = 0;
     }
 }
 #endif
 
-/* Returns 1 if p_vli == 0, 0 otherwise. */
+/* Returns 1 if vli == 0, 0 otherwise. */
 #if !asm_isZero
-static uECC_word_t vli_isZero(const uECC_word_t *p_vli)
-{
+static uECC_word_t vli_isZero(const uECC_word_t *vli) {
     wordcount_t i;
-    for(i = 0; i < uECC_WORDS; ++i)
-    {
-        if(p_vli[i])
-        {
+    for (i = 0; i < uECC_WORDS; ++i) {
+        if (vli[i]) {
             return 0;
         }
     }
@@ -439,75 +454,62 @@
 }
 #endif
 
-/* Returns nonzero if bit p_bit of p_vli is set. */
+/* Returns nonzero if bit 'bit' of vli is set. */
 #if !asm_testBit
-static uECC_word_t vli_testBit(const uECC_word_t *p_vli, bitcount_t p_bit)
-{
-    return (p_vli[p_bit >> uECC_WORD_BITS_SHIFT] & ((uECC_word_t)1 << (p_bit & uECC_WORD_BITS_MASK)));
+static uECC_word_t vli_testBit(const uECC_word_t *vli, bitcount_t bit) {
+    return (vli[bit >> uECC_WORD_BITS_SHIFT] & ((uECC_word_t)1 << (bit & uECC_WORD_BITS_MASK)));
 }
 #endif
 
-/* Counts the number of words in p_vli. */
+/* Counts the number of words in vli. */
 #if !asm_numBits
-static wordcount_t vli_numDigits(const uECC_word_t *p_vli, wordcount_t p_maxWords)
-{
+static wordcount_t vli_numDigits(const uECC_word_t *vli, wordcount_t max_words) {
     swordcount_t i;
     /* Search from the end until we find a non-zero digit.
        We do it in reverse because we expect that most digits will be nonzero. */
-    for(i = p_maxWords-1; i >= 0 && p_vli[i] == 0; --i)
-    {
+    for (i = max_words - 1; i >= 0 && vli[i] == 0; --i) {
     }
 
     return (i + 1);
 }
 
-/* Counts the number of bits required to represent p_vli. */
-static bitcount_t vli_numBits(const uECC_word_t *p_vli, wordcount_t p_maxWords)
-{
+/* Counts the number of bits required to represent vli. */
+static bitcount_t vli_numBits(const uECC_word_t *vli, wordcount_t max_words) {
     uECC_word_t i;
-    uECC_word_t l_digit;
+    uECC_word_t digit;
     
-    wordcount_t l_numDigits = vli_numDigits(p_vli, p_maxWords);
-    if(l_numDigits == 0)
-    {
+    wordcount_t num_digits = vli_numDigits(vli, max_words);
+    if (num_digits == 0) {
         return 0;
     }
 
-    l_digit = p_vli[l_numDigits - 1];
-    for(i = 0; l_digit; ++i)
-    {
-        l_digit >>= 1;
+    digit = vli[num_digits - 1];
+    for (i = 0; digit; ++i) {
+        digit >>= 1;
     }
     
-    return (((bitcount_t)(l_numDigits - 1) << uECC_WORD_BITS_SHIFT) + i);
+    return (((bitcount_t)(num_digits - 1) << uECC_WORD_BITS_SHIFT) + i);
 }
 #endif /* !asm_numBits */
 
-/* Sets p_dest = p_src. */
+/* Sets dest = src. */
 #if !asm_set
-static void vli_set(uECC_word_t *p_dest, const uECC_word_t *p_src)
-{
+static void vli_set(uECC_word_t *dest, const uECC_word_t *src) {
     wordcount_t i;
-    for(i=0; i<uECC_WORDS; ++i)
-    {
-        p_dest[i] = p_src[i];
+    for (i = 0; i < uECC_WORDS; ++i) {
+        dest[i] = src[i];
     }
 }
 #endif
 
-/* Returns sign of p_left - p_right. */
+/* Returns sign of left - right. */
 #if !asm_cmp
-static cmpresult_t vli_cmp(const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
+static cmpresult_t vli_cmp(const uECC_word_t *left, const uECC_word_t *right) {
     swordcount_t i;
-    for(i = uECC_WORDS-1; i >= 0; --i)
-    {
-        if(p_left[i] > p_right[i])
-        {
+    for (i = uECC_WORDS - 1; i >= 0; --i) {
+        if (left[i] > right[i]) {
             return 1;
-        }
-        else if(p_left[i] < p_right[i])
-        {
+        } else if (left[i] < right[i]) {
             return -1;
         }
     }
@@ -515,77 +517,68 @@
 }
 #endif
 
-static cmpresult_t vli_equal(const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_result = 0;
-    
+static cmpresult_t vli_equal(const uECC_word_t *left, const uECC_word_t *right) {
+    uECC_word_t result = 0;
     swordcount_t i;
-    for(i = uECC_WORDS-1; i >= 0; --i)
-    {
-        l_result |= (p_left[i] ^ p_right[i]);
+    for (i = uECC_WORDS - 1; i >= 0; --i) {
+        result |= (left[i] ^ right[i]);
     }
-    
-    return (l_result == 0);
+    return (result == 0);
 }
 
-/* Computes p_vli = p_vli >> 1. */
+/* Computes vli = vli >> 1. */
 #if !asm_rshift1
-static void vli_rshift1(uECC_word_t *p_vli)
-{
-    uECC_word_t *l_end = p_vli;
-    uECC_word_t l_carry = 0;
+static void vli_rshift1(uECC_word_t *vli) {
+    uECC_word_t *end = vli;
+    uECC_word_t carry = 0;
     
-    p_vli += uECC_WORDS;
-    while(p_vli-- > l_end)
-    {
-        uECC_word_t l_temp = *p_vli;
-        *p_vli = (l_temp >> 1) | l_carry;
-        l_carry = l_temp << (uECC_WORD_BITS - 1);
+    vli += uECC_WORDS;
+    while (vli-- > end) {
+        uECC_word_t temp = *vli;
+        *vli = (temp >> 1) | carry;
+        carry = temp << (uECC_WORD_BITS - 1);
     }
 }
 #endif
 
-/* Computes p_result = p_left + p_right, returning carry. Can modify in place. */
+/* Computes result = left + right, returning carry. Can modify in place. */
 #if !asm_add
-static uECC_word_t vli_add(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_carry = 0;
+static uECC_word_t vli_add(uECC_word_t *result, const uECC_word_t *left, const uECC_word_t *right) {
+    uECC_word_t carry = 0;
     wordcount_t i;
-    for(i = 0; i < uECC_WORDS; ++i)
-    {
-        uECC_word_t l_sum = p_left[i] + p_right[i] + l_carry;
-        if(l_sum != p_left[i])
-        {
-            l_carry = (l_sum < p_left[i]);
+    for (i = 0; i < uECC_WORDS; ++i) {
+        uECC_word_t sum = left[i] + right[i] + carry;
+        if (sum != left[i]) {
+            carry = (sum < left[i]);
         }
-        p_result[i] = l_sum;
+        result[i] = sum;
     }
-    return l_carry;
+    return carry;
 }
 #endif
 
-/* Computes p_result = p_left - p_right, returning borrow. Can modify in place. */
+/* Computes result = left - right, returning borrow. Can modify in place. */
 #if !asm_sub
-static uECC_word_t vli_sub(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_borrow = 0;
+static uECC_word_t vli_sub(uECC_word_t *result, const uECC_word_t *left, const uECC_word_t *right) {
+    uECC_word_t borrow = 0;
     wordcount_t i;
-    for(i = 0; i < uECC_WORDS; ++i)
-    {
-        uECC_word_t l_diff = p_left[i] - p_right[i] - l_borrow;
-        if(l_diff != p_left[i])
-        {
-            l_borrow = (l_diff > p_left[i]);
+    for (i = 0; i < uECC_WORDS; ++i) {
+        uECC_word_t diff = left[i] - right[i] - borrow;
+        if (diff != left[i]) {
+            borrow = (diff > left[i]);
         }
-        p_result[i] = l_diff;
+        result[i] = diff;
     }
-    return l_borrow;
+    return borrow;
 }
 #endif
 
 #if (!asm_mult || !asm_square || uECC_CURVE == uECC_secp256k1)
-static void muladd(uECC_word_t a, uECC_word_t b, uECC_word_t *r0, uECC_word_t *r1, uECC_word_t *r2)
-{
+static void muladd(uECC_word_t a,
+                   uECC_word_t b,
+                   uECC_word_t *r0,
+                   uECC_word_t *r1,
+                   uECC_word_t *r2) {
 #if uECC_WORD_SIZE == 8 && !SUPPORTS_INT128
     uint64_t a0 = a & 0xffffffffull;
     uint64_t a1 = a >> 32;
@@ -601,8 +594,7 @@
     
     i2 += (i0 >> 32);
     i2 += i1;
-    if(i2 < i1)
-    { // overflow
+    if (i2 < i1) { // overflow
         i3 += 0x100000000ull;
     }
     
@@ -625,47 +617,43 @@
 #endif
 
 #if !asm_mult
-static void vli_mult(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
+static void vli_mult(uECC_word_t *result, const uECC_word_t *left, const uECC_word_t *right) {
     uECC_word_t r0 = 0;
     uECC_word_t r1 = 0;
     uECC_word_t r2 = 0;
-    
     wordcount_t i, k;
     
-    /* Compute each digit of p_result in sequence, maintaining the carries. */
-    for(k = 0; k < uECC_WORDS; ++k)
-    {
-        for(i = 0; i <= k; ++i)
-        {
-            muladd(p_left[i], p_right[k-i], &r0, &r1, &r2);
+    /* Compute each digit of result in sequence, maintaining the carries. */
+    for (k = 0; k < uECC_WORDS; ++k) {
+        for (i = 0; i <= k; ++i) {
+            muladd(left[i], right[k - i], &r0, &r1, &r2);
         }
-        p_result[k] = r0;
+        result[k] = r0;
         r0 = r1;
         r1 = r2;
         r2 = 0;
     }
-    for(k = uECC_WORDS; k < uECC_WORDS*2 - 1; ++k)
-    {
-        for(i = (k + 1) - uECC_WORDS; i<uECC_WORDS; ++i)
-        {
-            muladd(p_left[i], p_right[k-i], &r0, &r1, &r2);
+    for (k = uECC_WORDS; k < uECC_WORDS * 2 - 1; ++k) {
+        for (i = (k + 1) - uECC_WORDS; i < uECC_WORDS; ++i) {
+            muladd(left[i], right[k - i], &r0, &r1, &r2);
         }
-        p_result[k] = r0;
+        result[k] = r0;
         r0 = r1;
         r1 = r2;
         r2 = 0;
     }
-    
-    p_result[uECC_WORDS*2 - 1] = r0;
+    result[uECC_WORDS * 2 - 1] = r0;
 }
 #endif
 
 #if uECC_SQUARE_FUNC
 
 #if !asm_square
-static void mul2add(uECC_word_t a, uECC_word_t b, uECC_word_t *r0, uECC_word_t *r1, uECC_word_t *r2)
-{
+static void mul2add(uECC_word_t a,
+                    uECC_word_t b,
+                    uECC_word_t *r0,
+                    uECC_word_t *r1,
+                    uECC_word_t *r2) {
 #if uECC_WORD_SIZE == 8 && !SUPPORTS_INT128
     uint64_t a0 = a & 0xffffffffull;
     uint64_t a1 = a >> 32;
@@ -681,7 +669,7 @@
     
     i2 += (i0 >> 32);
     i2 += i1;
-    if(i2 < i1)
+    if (i2 < i1)
     { // overflow
         i3 += 0x100000000ull;
     }
@@ -708,35 +696,29 @@
 #endif
 }
 
-static void vli_square(uECC_word_t *p_result, const uECC_word_t *p_left)
-{
+static void vli_square(uECC_word_t *result, const uECC_word_t *left) {
     uECC_word_t r0 = 0;
     uECC_word_t r1 = 0;
     uECC_word_t r2 = 0;
     
     wordcount_t i, k;
     
-    for(k = 0; k < uECC_WORDS*2 - 1; ++k)
-    {
-        uECC_word_t l_min = (k < uECC_WORDS ? 0 : (k + 1) - uECC_WORDS);
-        for(i = l_min; i<=k && i<=k-i; ++i)
-        {
-            if(i < k-i)
-            {
-                mul2add(p_left[i], p_left[k-i], &r0, &r1, &r2);
-            }
-            else
-            {
-                muladd(p_left[i], p_left[k-i], &r0, &r1, &r2);
+    for (k = 0; k < uECC_WORDS * 2 - 1; ++k) {
+        uECC_word_t min = (k < uECC_WORDS ? 0 : (k + 1) - uECC_WORDS);
+        for (i = min; i <= k && i <= k - i; ++i) {
+            if (i < k-i) {
+                mul2add(left[i], left[k - i], &r0, &r1, &r2);
+            } else {
+                muladd(left[i], left[k - i], &r0, &r1, &r2);
             }
         }
-        p_result[k] = r0;
+        result[k] = r0;
         r0 = r1;
         r1 = r2;
         r2 = 0;
     }
     
-    p_result[uECC_WORDS*2 - 1] = r0;
+    result[uECC_WORDS * 2 - 1] = r0;
 }
 #endif
 
@@ -747,29 +729,33 @@
 #endif /* uECC_SQUARE_FUNC */
 
 
-/* Computes p_result = (p_left + p_right) % p_mod.
-   Assumes that p_left < p_mod and p_right < p_mod, p_result != p_mod. */
+/* Computes result = (left + right) % mod.
+   Assumes that left < mod and right < mod, and that result does not overlap mod. */
 #if !asm_modAdd
-static void vli_modAdd(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right, const uECC_word_t *p_mod)
-{
-    uECC_word_t l_carry = vli_add(p_result, p_left, p_right);
-    if(l_carry || vli_cmp(p_result, p_mod) >= 0)
-    { /* p_result > p_mod (p_result = p_mod + remainder), so subtract p_mod to get remainder. */
-        vli_sub(p_result, p_result, p_mod);
+static void vli_modAdd(uECC_word_t *result,
+                       const uECC_word_t *left,
+                       const uECC_word_t *right,
+                       const uECC_word_t *mod) {
+    uECC_word_t carry = vli_add(result, left, right);
+    if (carry || vli_cmp(result, mod) >= 0) {
+        /* result > mod (result = mod + remainder), so subtract mod to get remainder. */
+        vli_sub(result, result, mod);
     }
 }
 #endif
 
-/* Computes p_result = (p_left - p_right) % p_mod.
-   Assumes that p_left < p_mod and p_right < p_mod, p_result != p_mod. */
+/* Computes result = (left - right) % mod.
+   Assumes that left < mod and right < mod, and that result does not overlap mod. */
 #if !asm_modSub
-static void vli_modSub(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right, const uECC_word_t *p_mod)
-{
-    uECC_word_t l_borrow = vli_sub(p_result, p_left, p_right);
-    if(l_borrow)
-    { /* In this case, p_result == -diff == (max int) - diff.
-         Since -x % d == d - x, we can get the correct result from p_result + p_mod (with overflow). */
-        vli_add(p_result, p_result, p_mod);
+static void vli_modSub(uECC_word_t *result,
+                       const uECC_word_t *left,
+                       const uECC_word_t *right,
+                       const uECC_word_t *mod) {
+    uECC_word_t l_borrow = vli_sub(result, left, right);
+    if (l_borrow) {
+        /* In this case, result == -diff == (max int) - diff. Since -x % d == d - x,
+           we can get the correct result from result + mod (with overflow). */
+        vli_add(result, result, mod);
     }
 }
 #endif
@@ -782,36 +768,32 @@
 
 #if (uECC_CURVE == uECC_secp160r1 || uECC_CURVE == uECC_secp256k1)
 /* omega_mult() is defined farther below for the different curves / word sizes */
-static void omega_mult(uECC_word_t * RESTRICT p_result, const uECC_word_t * RESTRICT p_right);
+static void omega_mult(uECC_word_t * RESTRICT result, const uECC_word_t * RESTRICT right);
 
-/* Computes p_result = p_product % curve_p
+/* Computes result = product % curve_p
     see http://www.isys.uni-klu.ac.at/PDF/2001-0126-MT.pdf page 354
     
-    Note that this only works if log2(omega) < log2(p)/2 */
-static void vli_mmod_fast(uECC_word_t *RESTRICT p_result, uECC_word_t *RESTRICT p_product)
-{
-    uECC_word_t l_tmp[2*uECC_WORDS];
-    uECC_word_t l_carry;
+    Note that this only works if log2(omega) < log2(p) / 2 */
+static void vli_mmod_fast(uECC_word_t *RESTRICT result, uECC_word_t *RESTRICT product) {
+    uECC_word_t tmp[2 * uECC_WORDS];
+    uECC_word_t carry;
     
-    vli_clear(l_tmp);
-    vli_clear(l_tmp + uECC_WORDS);
+    vli_clear(tmp);
+    vli_clear(tmp + uECC_WORDS);
     
-    omega_mult(l_tmp, p_product + uECC_WORDS); /* (Rq, q) = q * c */
+    omega_mult(tmp, product + uECC_WORDS); /* (Rq, q) = q * c */
     
-    l_carry = vli_add(p_result, p_product, l_tmp); /* (C, r) = r + q       */
-    vli_clear(p_product);
-    omega_mult(p_product, l_tmp + uECC_WORDS); /* Rq*c */
-    l_carry += vli_add(p_result, p_result, p_product); /* (C1, r) = r + Rq*c */
+    carry = vli_add(result, product, tmp); /* (C, r) = r + q       */
+    vli_clear(product);
+    omega_mult(product, tmp + uECC_WORDS); /* Rq*c */
+    carry += vli_add(result, result, product); /* (C1, r) = r + Rq*c */
     
-    while(l_carry > 0)
-    {
-        --l_carry;
-        vli_sub(p_result, p_result, curve_p);
+    while (carry > 0) {
+        --carry;
+        vli_sub(result, result, curve_p);
     }
-    
-    if(vli_cmp(p_result, curve_p) > 0)
-    {
-        vli_sub(p_result, p_result, curve_p);
+    if (vli_cmp(result, curve_p) > 0) {
+        vli_sub(result, result, curve_p);
     }
 }
 
@@ -820,435 +802,407 @@
 #if uECC_CURVE == uECC_secp160r1
 
 #if uECC_WORD_SIZE == 1
-static void omega_mult(uint8_t * RESTRICT p_result, const uint8_t * RESTRICT p_right)
-{
-    uint8_t l_carry;
+static void omega_mult(uint8_t * RESTRICT result, const uint8_t * RESTRICT right) {
+    uint8_t carry;
     uint8_t i;
     
     /* Multiply by (2^31 + 1). */
-    vli_set(p_result + 4, p_right); /* 2^32 */
-    vli_rshift1(p_result + 4); /* 2^31 */
-    p_result[3] = p_right[0] << 7; /* get last bit from shift */
+    vli_set(result + 4, right); /* 2^32 */
+    vli_rshift1(result + 4); /* 2^31 */
+    result[3] = right[0] << 7; /* get last bit from shift */
     
-    l_carry = vli_add(p_result, p_result, p_right); /* 2^31 + 1 */
-    for(i = uECC_WORDS; l_carry; ++i)
-    {
-        uint16_t l_sum = (uint16_t)p_result[i] + l_carry;
-        p_result[i] = (uint8_t)l_sum;
-        l_carry = l_sum >> 8;
+    carry = vli_add(result, result, right); /* 2^31 + 1 */
+    for (i = uECC_WORDS; carry; ++i) {
+        uint16_t sum = (uint16_t)result[i] + carry;
+        result[i] = (uint8_t)sum;
+        carry = sum >> 8;
     }
 }
 #elif uECC_WORD_SIZE == 4
-static void omega_mult(uint32_t * RESTRICT p_result, const uint32_t * RESTRICT p_right)
-{
-    uint32_t l_carry;
+static void omega_mult(uint32_t * RESTRICT result, const uint32_t * RESTRICT right) {
+    uint32_t carry;
     unsigned i;
     
     /* Multiply by (2^31 + 1). */
-    vli_set(p_result + 1, p_right); /* 2^32 */
-    vli_rshift1(p_result + 1); /* 2^31 */
-    p_result[0] = p_right[0] << 31; /* get last bit from shift */
+    vli_set(result + 1, right); /* 2^32 */
+    vli_rshift1(result + 1); /* 2^31 */
+    result[0] = right[0] << 31; /* get last bit from shift */
     
-    l_carry = vli_add(p_result, p_result, p_right); /* 2^31 + 1 */
-    for(i = uECC_WORDS; l_carry; ++i)
-    {
-        uint64_t l_sum = (uint64_t)p_result[i] + l_carry;
-        p_result[i] = (uint32_t)l_sum;
-        l_carry = l_sum >> 32;
+    carry = vli_add(result, result, right); /* 2^31 + 1 */
+    for (i = uECC_WORDS; carry; ++i) {
+        uint64_t sum = (uint64_t)result[i] + carry;
+        result[i] = (uint32_t)sum;
+        carry = sum >> 32;
     }
 }
 #endif /* uECC_WORD_SIZE */
 
 #elif uECC_CURVE == uECC_secp192r1
 
-/* Computes p_result = p_product % curve_p.
+/* Computes result = product % curve_p.
    See algorithm 5 and 6 from http://www.isys.uni-klu.ac.at/PDF/2001-0126-MT.pdf */
 #if uECC_WORD_SIZE == 1
-static void vli_mmod_fast(uint8_t *RESTRICT p_result, uint8_t *RESTRICT p_product)
-{
-    uint8_t l_tmp[uECC_WORDS];
-    uint8_t l_carry;
+static void vli_mmod_fast(uint8_t *RESTRICT result, uint8_t *RESTRICT product) {
+    uint8_t tmp[uECC_WORDS];
+    uint8_t carry;
     
-    vli_set(p_result, p_product);
+    vli_set(result, product);
     
-    vli_set(l_tmp, &p_product[24]);
-    l_carry = vli_add(p_result, p_result, l_tmp);
+    vli_set(tmp, &product[24]);
+    carry = vli_add(result, result, tmp);
     
-    l_tmp[0] = l_tmp[1] = l_tmp[2] = l_tmp[3] = l_tmp[4] = l_tmp[5] = l_tmp[6] = l_tmp[7] = 0;
-    l_tmp[8] = p_product[24]; l_tmp[9] = p_product[25]; l_tmp[10] = p_product[26]; l_tmp[11] = p_product[27];
-    l_tmp[12] = p_product[28]; l_tmp[13] = p_product[29]; l_tmp[14] = p_product[30]; l_tmp[15] = p_product[31];
-    l_tmp[16] = p_product[32]; l_tmp[17] = p_product[33]; l_tmp[18] = p_product[34]; l_tmp[19] = p_product[35];
-    l_tmp[20] = p_product[36]; l_tmp[21] = p_product[37]; l_tmp[22] = p_product[38]; l_tmp[23] = p_product[39];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[1] = tmp[2] = tmp[3] = tmp[4] = tmp[5] = tmp[6] = tmp[7] = 0;
+    tmp[8] = product[24]; tmp[9] = product[25]; tmp[10] = product[26]; tmp[11] = product[27];
+    tmp[12] = product[28]; tmp[13] = product[29]; tmp[14] = product[30]; tmp[15] = product[31];
+    tmp[16] = product[32]; tmp[17] = product[33]; tmp[18] = product[34]; tmp[19] = product[35];
+    tmp[20] = product[36]; tmp[21] = product[37]; tmp[22] = product[38]; tmp[23] = product[39];
+    carry += vli_add(result, result, tmp);
     
-    l_tmp[0] = l_tmp[8] = p_product[40];
-    l_tmp[1] = l_tmp[9] = p_product[41];
-    l_tmp[2] = l_tmp[10] = p_product[42];
-    l_tmp[3] = l_tmp[11] = p_product[43];
-    l_tmp[4] = l_tmp[12] = p_product[44];
-    l_tmp[5] = l_tmp[13] = p_product[45];
-    l_tmp[6] = l_tmp[14] = p_product[46];
-    l_tmp[7] = l_tmp[15] = p_product[47];
-    l_tmp[16] = l_tmp[17] = l_tmp[18] = l_tmp[19] = l_tmp[20] = l_tmp[21] = l_tmp[22] = l_tmp[23] = 0;
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[8] = product[40];
+    tmp[1] = tmp[9] = product[41];
+    tmp[2] = tmp[10] = product[42];
+    tmp[3] = tmp[11] = product[43];
+    tmp[4] = tmp[12] = product[44];
+    tmp[5] = tmp[13] = product[45];
+    tmp[6] = tmp[14] = product[46];
+    tmp[7] = tmp[15] = product[47];
+    tmp[16] = tmp[17] = tmp[18] = tmp[19] = tmp[20] = tmp[21] = tmp[22] = tmp[23] = 0;
+    carry += vli_add(result, result, tmp);
     
-    while(l_carry || vli_cmp(curve_p, p_result) != 1)
-    {
-        l_carry -= vli_sub(p_result, p_result, curve_p);
+    while (carry || vli_cmp(curve_p, result) != 1) {
+        carry -= vli_sub(result, result, curve_p);
     }
 }
 #elif uECC_WORD_SIZE == 4
-static void vli_mmod_fast(uint32_t *RESTRICT p_result, uint32_t *RESTRICT p_product)
-{
-    uint32_t l_tmp[uECC_WORDS];
-    int l_carry;
+static void vli_mmod_fast(uint32_t *RESTRICT result, uint32_t *RESTRICT product) {
+    uint32_t tmp[uECC_WORDS];
+    int carry;
     
-    vli_set(p_result, p_product);
+    vli_set(result, product);
     
-    vli_set(l_tmp, &p_product[6]);
-    l_carry = vli_add(p_result, p_result, l_tmp);
+    vli_set(tmp, &product[6]);
+    carry = vli_add(result, result, tmp);
     
-    l_tmp[0] = l_tmp[1] = 0;
-    l_tmp[2] = p_product[6];
-    l_tmp[3] = p_product[7];
-    l_tmp[4] = p_product[8];
-    l_tmp[5] = p_product[9];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[1] = 0;
+    tmp[2] = product[6];
+    tmp[3] = product[7];
+    tmp[4] = product[8];
+    tmp[5] = product[9];
+    carry += vli_add(result, result, tmp);
     
-    l_tmp[0] = l_tmp[2] = p_product[10];
-    l_tmp[1] = l_tmp[3] = p_product[11];
-    l_tmp[4] = l_tmp[5] = 0;
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[2] = product[10];
+    tmp[1] = tmp[3] = product[11];
+    tmp[4] = tmp[5] = 0;
+    carry += vli_add(result, result, tmp);
     
-    while(l_carry || vli_cmp(curve_p, p_result) != 1)
-    {
-        l_carry -= vli_sub(p_result, p_result, curve_p);
+    while (carry || vli_cmp(curve_p, result) != 1) {
+        carry -= vli_sub(result, result, curve_p);
     }
 }
 #else
-static void vli_mmod_fast(uint64_t *RESTRICT p_result, uint64_t *RESTRICT p_product)
-{
-    uint64_t l_tmp[uECC_WORDS];
-    int l_carry;
+static void vli_mmod_fast(uint64_t *RESTRICT result, uint64_t *RESTRICT product) {
+    uint64_t tmp[uECC_WORDS];
+    int carry;
     
-    vli_set(p_result, p_product);
+    vli_set(result, product);
     
-    vli_set(l_tmp, &p_product[3]);
-    l_carry = vli_add(p_result, p_result, l_tmp);
+    vli_set(tmp, &product[3]);
+    carry = vli_add(result, result, tmp);
     
-    l_tmp[0] = 0;
-    l_tmp[1] = p_product[3];
-    l_tmp[2] = p_product[4];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = 0;
+    tmp[1] = product[3];
+    tmp[2] = product[4];
+    carry += vli_add(result, result, tmp);
     
-    l_tmp[0] = l_tmp[1] = p_product[5];
-    l_tmp[2] = 0;
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[1] = product[5];
+    tmp[2] = 0;
+    carry += vli_add(result, result, tmp);
     
-    while(l_carry || vli_cmp(curve_p, p_result) != 1)
-    {
-        l_carry -= vli_sub(p_result, p_result, curve_p);
+    while (carry || vli_cmp(curve_p, result) != 1) {
+        carry -= vli_sub(result, result, curve_p);
     }
 }
 #endif /* uECC_WORD_SIZE */
 
 #elif uECC_CURVE == uECC_secp256r1
 
-/* Computes p_result = p_product % curve_p
+/* Computes result = product % curve_p
    from http://www.nsa.gov/ia/_files/nist-routines.pdf */
 #if uECC_WORD_SIZE == 1
-static void vli_mmod_fast(uint8_t *RESTRICT p_result, uint8_t *RESTRICT p_product)
-{
-    uint8_t l_tmp[uECC_BYTES];
-    int8_t l_carry;
+static void vli_mmod_fast(uint8_t *RESTRICT result, uint8_t *RESTRICT product) {
+    uint8_t tmp[uECC_BYTES];
+    int8_t carry;
     
     /* t */
-    vli_set(p_result, p_product);
+    vli_set(result, product);
     
     /* s1 */
-    l_tmp[0] = l_tmp[1] = l_tmp[2] = l_tmp[3] = 0;
-    l_tmp[4] = l_tmp[5] = l_tmp[6] = l_tmp[7] = 0;
-    l_tmp[8] = l_tmp[9] = l_tmp[10] = l_tmp[11] = 0;
-    l_tmp[12] = p_product[44]; l_tmp[13] = p_product[45]; l_tmp[14] = p_product[46]; l_tmp[15] = p_product[47];
-    l_tmp[16] = p_product[48]; l_tmp[17] = p_product[49]; l_tmp[18] = p_product[50]; l_tmp[19] = p_product[51];
-    l_tmp[20] = p_product[52]; l_tmp[21] = p_product[53]; l_tmp[22] = p_product[54]; l_tmp[23] = p_product[55];
-    l_tmp[24] = p_product[56]; l_tmp[25] = p_product[57]; l_tmp[26] = p_product[58]; l_tmp[27] = p_product[59];
-    l_tmp[28] = p_product[60]; l_tmp[29] = p_product[61]; l_tmp[30] = p_product[62]; l_tmp[31] = p_product[63];
-    l_carry = vli_add(l_tmp, l_tmp, l_tmp);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[1] = tmp[2] = tmp[3] = 0;
+    tmp[4] = tmp[5] = tmp[6] = tmp[7] = 0;
+    tmp[8] = tmp[9] = tmp[10] = tmp[11] = 0;
+    tmp[12] = product[44]; tmp[13] = product[45]; tmp[14] = product[46]; tmp[15] = product[47];
+    tmp[16] = product[48]; tmp[17] = product[49]; tmp[18] = product[50]; tmp[19] = product[51];
+    tmp[20] = product[52]; tmp[21] = product[53]; tmp[22] = product[54]; tmp[23] = product[55];
+    tmp[24] = product[56]; tmp[25] = product[57]; tmp[26] = product[58]; tmp[27] = product[59];
+    tmp[28] = product[60]; tmp[29] = product[61]; tmp[30] = product[62]; tmp[31] = product[63];
+    carry = vli_add(tmp, tmp, tmp);
+    carry += vli_add(result, result, tmp);
     
     /* s2 */
-    l_tmp[12] = p_product[48]; l_tmp[13] = p_product[49]; l_tmp[14] = p_product[50]; l_tmp[15] = p_product[51];
-    l_tmp[16] = p_product[52]; l_tmp[17] = p_product[53]; l_tmp[18] = p_product[54]; l_tmp[19] = p_product[55];
-    l_tmp[20] = p_product[56]; l_tmp[21] = p_product[57]; l_tmp[22] = p_product[58]; l_tmp[23] = p_product[59];
-    l_tmp[24] = p_product[60]; l_tmp[25] = p_product[61]; l_tmp[26] = p_product[62]; l_tmp[27] = p_product[63];
-    l_tmp[28] = l_tmp[29] = l_tmp[30] = l_tmp[31] = 0;
-    l_carry += vli_add(l_tmp, l_tmp, l_tmp);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[12] = product[48]; tmp[13] = product[49]; tmp[14] = product[50]; tmp[15] = product[51];
+    tmp[16] = product[52]; tmp[17] = product[53]; tmp[18] = product[54]; tmp[19] = product[55];
+    tmp[20] = product[56]; tmp[21] = product[57]; tmp[22] = product[58]; tmp[23] = product[59];
+    tmp[24] = product[60]; tmp[25] = product[61]; tmp[26] = product[62]; tmp[27] = product[63];
+    tmp[28] = tmp[29] = tmp[30] = tmp[31] = 0;
+    carry += vli_add(tmp, tmp, tmp);
+    carry += vli_add(result, result, tmp);
     
     /* s3 */
-    l_tmp[0] = p_product[32]; l_tmp[1] = p_product[33]; l_tmp[2] = p_product[34]; l_tmp[3] = p_product[35];
-    l_tmp[4] = p_product[36]; l_tmp[5] = p_product[37]; l_tmp[6] = p_product[38]; l_tmp[7] = p_product[39];
-    l_tmp[8] = p_product[40]; l_tmp[9] = p_product[41]; l_tmp[10] = p_product[42]; l_tmp[11] = p_product[43];
-    l_tmp[12] = l_tmp[13] = l_tmp[14] = l_tmp[15] = 0;
-    l_tmp[16] = l_tmp[17] = l_tmp[18] = l_tmp[19] = 0;
-    l_tmp[20] = l_tmp[21] = l_tmp[22] = l_tmp[23] = 0;
-    l_tmp[24] = p_product[56]; l_tmp[25] = p_product[57]; l_tmp[26] = p_product[58]; l_tmp[27] = p_product[59];
-    l_tmp[28] = p_product[60]; l_tmp[29] = p_product[61]; l_tmp[30] = p_product[62]; l_tmp[31] = p_product[63];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = product[32]; tmp[1] = product[33]; tmp[2] = product[34]; tmp[3] = product[35];
+    tmp[4] = product[36]; tmp[5] = product[37]; tmp[6] = product[38]; tmp[7] = product[39];
+    tmp[8] = product[40]; tmp[9] = product[41]; tmp[10] = product[42]; tmp[11] = product[43];
+    tmp[12] = tmp[13] = tmp[14] = tmp[15] = 0;
+    tmp[16] = tmp[17] = tmp[18] = tmp[19] = 0;
+    tmp[20] = tmp[21] = tmp[22] = tmp[23] = 0;
+    tmp[24] = product[56]; tmp[25] = product[57]; tmp[26] = product[58]; tmp[27] = product[59];
+    tmp[28] = product[60]; tmp[29] = product[61]; tmp[30] = product[62]; tmp[31] = product[63];
+    carry += vli_add(result, result, tmp);
     
     /* s4 */
-    l_tmp[0] = p_product[36]; l_tmp[1] = p_product[37]; l_tmp[2] = p_product[38]; l_tmp[3] = p_product[39];
-    l_tmp[4] = p_product[40]; l_tmp[5] = p_product[41]; l_tmp[6] = p_product[42]; l_tmp[7] = p_product[43];
-    l_tmp[8] = p_product[44]; l_tmp[9] = p_product[45]; l_tmp[10] = p_product[46]; l_tmp[11] = p_product[47];
-    l_tmp[12] = p_product[52]; l_tmp[13] = p_product[53]; l_tmp[14] = p_product[54]; l_tmp[15] = p_product[55];
-    l_tmp[16] = p_product[56]; l_tmp[17] = p_product[57]; l_tmp[18] = p_product[58]; l_tmp[19] = p_product[59];
-    l_tmp[20] = p_product[60]; l_tmp[21] = p_product[61]; l_tmp[22] = p_product[62]; l_tmp[23] = p_product[63];
-    l_tmp[24] = p_product[52]; l_tmp[25] = p_product[53]; l_tmp[26] = p_product[54]; l_tmp[27] = p_product[55];
-    l_tmp[28] = p_product[32]; l_tmp[29] = p_product[33]; l_tmp[30] = p_product[34]; l_tmp[31] = p_product[35];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = product[36]; tmp[1] = product[37]; tmp[2] = product[38]; tmp[3] = product[39];
+    tmp[4] = product[40]; tmp[5] = product[41]; tmp[6] = product[42]; tmp[7] = product[43];
+    tmp[8] = product[44]; tmp[9] = product[45]; tmp[10] = product[46]; tmp[11] = product[47];
+    tmp[12] = product[52]; tmp[13] = product[53]; tmp[14] = product[54]; tmp[15] = product[55];
+    tmp[16] = product[56]; tmp[17] = product[57]; tmp[18] = product[58]; tmp[19] = product[59];
+    tmp[20] = product[60]; tmp[21] = product[61]; tmp[22] = product[62]; tmp[23] = product[63];
+    tmp[24] = product[52]; tmp[25] = product[53]; tmp[26] = product[54]; tmp[27] = product[55];
+    tmp[28] = product[32]; tmp[29] = product[33]; tmp[30] = product[34]; tmp[31] = product[35];
+    carry += vli_add(result, result, tmp);
     
     /* d1 */
-    l_tmp[0] = p_product[44]; l_tmp[1] = p_product[45]; l_tmp[2] = p_product[46]; l_tmp[3] = p_product[47];
-    l_tmp[4] = p_product[48]; l_tmp[5] = p_product[49]; l_tmp[6] = p_product[50]; l_tmp[7] = p_product[51];
-    l_tmp[8] = p_product[52]; l_tmp[9] = p_product[53]; l_tmp[10] = p_product[54]; l_tmp[11] = p_product[55];
-    l_tmp[12] = l_tmp[13] = l_tmp[14] = l_tmp[15] = 0;
-    l_tmp[16] = l_tmp[17] = l_tmp[18] = l_tmp[19] = 0;
-    l_tmp[20] = l_tmp[21] = l_tmp[22] = l_tmp[23] = 0;
-    l_tmp[24] = p_product[32]; l_tmp[25] = p_product[33]; l_tmp[26] = p_product[34]; l_tmp[27] = p_product[35];
-    l_tmp[28] = p_product[40]; l_tmp[29] = p_product[41]; l_tmp[30] = p_product[42]; l_tmp[31] = p_product[43];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[44]; tmp[1] = product[45]; tmp[2] = product[46]; tmp[3] = product[47];
+    tmp[4] = product[48]; tmp[5] = product[49]; tmp[6] = product[50]; tmp[7] = product[51];
+    tmp[8] = product[52]; tmp[9] = product[53]; tmp[10] = product[54]; tmp[11] = product[55];
+    tmp[12] = tmp[13] = tmp[14] = tmp[15] = 0;
+    tmp[16] = tmp[17] = tmp[18] = tmp[19] = 0;
+    tmp[20] = tmp[21] = tmp[22] = tmp[23] = 0;
+    tmp[24] = product[32]; tmp[25] = product[33]; tmp[26] = product[34]; tmp[27] = product[35];
+    tmp[28] = product[40]; tmp[29] = product[41]; tmp[30] = product[42]; tmp[31] = product[43];
+    carry -= vli_sub(result, result, tmp);
     
     /* d2 */
-    l_tmp[0] = p_product[48]; l_tmp[1] = p_product[49]; l_tmp[2] = p_product[50]; l_tmp[3] = p_product[51];
-    l_tmp[4] = p_product[52]; l_tmp[5] = p_product[53]; l_tmp[6] = p_product[54]; l_tmp[7] = p_product[55];
-    l_tmp[8] = p_product[56]; l_tmp[9] = p_product[57]; l_tmp[10] = p_product[58]; l_tmp[11] = p_product[59];
-    l_tmp[12] = p_product[60]; l_tmp[13] = p_product[61]; l_tmp[14] = p_product[62]; l_tmp[15] = p_product[63];
-    l_tmp[16] = l_tmp[17] = l_tmp[18] = l_tmp[19] = 0;
-    l_tmp[20] = l_tmp[21] = l_tmp[22] = l_tmp[23] = 0;
-    l_tmp[24] = p_product[36]; l_tmp[25] = p_product[37]; l_tmp[26] = p_product[38]; l_tmp[27] = p_product[39];
-    l_tmp[28] = p_product[44]; l_tmp[29] = p_product[45]; l_tmp[30] = p_product[46]; l_tmp[31] = p_product[47];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[48]; tmp[1] = product[49]; tmp[2] = product[50]; tmp[3] = product[51];
+    tmp[4] = product[52]; tmp[5] = product[53]; tmp[6] = product[54]; tmp[7] = product[55];
+    tmp[8] = product[56]; tmp[9] = product[57]; tmp[10] = product[58]; tmp[11] = product[59];
+    tmp[12] = product[60]; tmp[13] = product[61]; tmp[14] = product[62]; tmp[15] = product[63];
+    tmp[16] = tmp[17] = tmp[18] = tmp[19] = 0;
+    tmp[20] = tmp[21] = tmp[22] = tmp[23] = 0;
+    tmp[24] = product[36]; tmp[25] = product[37]; tmp[26] = product[38]; tmp[27] = product[39];
+    tmp[28] = product[44]; tmp[29] = product[45]; tmp[30] = product[46]; tmp[31] = product[47];
+    carry -= vli_sub(result, result, tmp);
     
     /* d3 */
-    l_tmp[0] = p_product[52]; l_tmp[1] = p_product[53]; l_tmp[2] = p_product[54]; l_tmp[3] = p_product[55];
-    l_tmp[4] = p_product[56]; l_tmp[5] = p_product[57]; l_tmp[6] = p_product[58]; l_tmp[7] = p_product[59];
-    l_tmp[8] = p_product[60]; l_tmp[9] = p_product[61]; l_tmp[10] = p_product[62]; l_tmp[11] = p_product[63];
-    l_tmp[12] = p_product[32]; l_tmp[13] = p_product[33]; l_tmp[14] = p_product[34]; l_tmp[15] = p_product[35];
-    l_tmp[16] = p_product[36]; l_tmp[17] = p_product[37]; l_tmp[18] = p_product[38]; l_tmp[19] = p_product[39];
-    l_tmp[20] = p_product[40]; l_tmp[21] = p_product[41]; l_tmp[22] = p_product[42]; l_tmp[23] = p_product[43];
-    l_tmp[24] = l_tmp[25] = l_tmp[26] = l_tmp[27] = 0;
-    l_tmp[28] = p_product[48]; l_tmp[29] = p_product[49]; l_tmp[30] = p_product[50]; l_tmp[31] = p_product[51];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[52]; tmp[1] = product[53]; tmp[2] = product[54]; tmp[3] = product[55];
+    tmp[4] = product[56]; tmp[5] = product[57]; tmp[6] = product[58]; tmp[7] = product[59];
+    tmp[8] = product[60]; tmp[9] = product[61]; tmp[10] = product[62]; tmp[11] = product[63];
+    tmp[12] = product[32]; tmp[13] = product[33]; tmp[14] = product[34]; tmp[15] = product[35];
+    tmp[16] = product[36]; tmp[17] = product[37]; tmp[18] = product[38]; tmp[19] = product[39];
+    tmp[20] = product[40]; tmp[21] = product[41]; tmp[22] = product[42]; tmp[23] = product[43];
+    tmp[24] = tmp[25] = tmp[26] = tmp[27] = 0;
+    tmp[28] = product[48]; tmp[29] = product[49]; tmp[30] = product[50]; tmp[31] = product[51];
+    carry -= vli_sub(result, result, tmp);
     
     /* d4 */
-    l_tmp[0] = p_product[56]; l_tmp[1] = p_product[57]; l_tmp[2] = p_product[58]; l_tmp[3] = p_product[59];
-    l_tmp[4] = p_product[60]; l_tmp[5] = p_product[61]; l_tmp[6] = p_product[62]; l_tmp[7] = p_product[63];
-    l_tmp[8] = l_tmp[9] = l_tmp[10] = l_tmp[11] = 0;
-    l_tmp[12] = p_product[36]; l_tmp[13] = p_product[37]; l_tmp[14] = p_product[38]; l_tmp[15] = p_product[39];
-    l_tmp[16] = p_product[40]; l_tmp[17] = p_product[41]; l_tmp[18] = p_product[42]; l_tmp[19] = p_product[43];
-    l_tmp[20] = p_product[44]; l_tmp[21] = p_product[45]; l_tmp[22] = p_product[46]; l_tmp[23] = p_product[47];
-    l_tmp[24] = l_tmp[25] = l_tmp[26] = l_tmp[27] = 0;
-    l_tmp[28] = p_product[52]; l_tmp[29] = p_product[53]; l_tmp[30] = p_product[54]; l_tmp[31] = p_product[55];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[56]; tmp[1] = product[57]; tmp[2] = product[58]; tmp[3] = product[59];
+    tmp[4] = product[60]; tmp[5] = product[61]; tmp[6] = product[62]; tmp[7] = product[63];
+    tmp[8] = tmp[9] = tmp[10] = tmp[11] = 0;
+    tmp[12] = product[36]; tmp[13] = product[37]; tmp[14] = product[38]; tmp[15] = product[39];
+    tmp[16] = product[40]; tmp[17] = product[41]; tmp[18] = product[42]; tmp[19] = product[43];
+    tmp[20] = product[44]; tmp[21] = product[45]; tmp[22] = product[46]; tmp[23] = product[47];
+    tmp[24] = tmp[25] = tmp[26] = tmp[27] = 0;
+    tmp[28] = product[52]; tmp[29] = product[53]; tmp[30] = product[54]; tmp[31] = product[55];
+    carry -= vli_sub(result, result, tmp);
     
-    if(l_carry < 0)
-    {
-        do
-        {
-            l_carry += vli_add(p_result, p_result, curve_p);
-        } while(l_carry < 0);
-    }
-    else
-    {
-        while(l_carry || vli_cmp(curve_p, p_result) != 1)
-        {
-            l_carry -= vli_sub(p_result, p_result, curve_p);
+    if (carry < 0) {
+        do {
+            carry += vli_add(result, result, curve_p);
+        } while (carry < 0);
+    } else {
+        while (carry || vli_cmp(curve_p, result) != 1) {
+            carry -= vli_sub(result, result, curve_p);
         }
     }
 }
 #elif uECC_WORD_SIZE == 4
-static void vli_mmod_fast(uint32_t *RESTRICT p_result, uint32_t *RESTRICT p_product)
-{
-    uint32_t l_tmp[uECC_WORDS];
-    int l_carry;
+static void vli_mmod_fast(uint32_t *RESTRICT result, uint32_t *RESTRICT product) {
+    uint32_t tmp[uECC_WORDS];
+    int carry;
     
     /* t */
-    vli_set(p_result, p_product);
+    vli_set(result, product);
     
     /* s1 */
-    l_tmp[0] = l_tmp[1] = l_tmp[2] = 0;
-    l_tmp[3] = p_product[11];
-    l_tmp[4] = p_product[12];
-    l_tmp[5] = p_product[13];
-    l_tmp[6] = p_product[14];
-    l_tmp[7] = p_product[15];
-    l_carry = vli_add(l_tmp, l_tmp, l_tmp);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = tmp[1] = tmp[2] = 0;
+    tmp[3] = product[11];
+    tmp[4] = product[12];
+    tmp[5] = product[13];
+    tmp[6] = product[14];
+    tmp[7] = product[15];
+    carry = vli_add(tmp, tmp, tmp);
+    carry += vli_add(result, result, tmp);
     
     /* s2 */
-    l_tmp[3] = p_product[12];
-    l_tmp[4] = p_product[13];
-    l_tmp[5] = p_product[14];
-    l_tmp[6] = p_product[15];
-    l_tmp[7] = 0;
-    l_carry += vli_add(l_tmp, l_tmp, l_tmp);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[3] = product[12];
+    tmp[4] = product[13];
+    tmp[5] = product[14];
+    tmp[6] = product[15];
+    tmp[7] = 0;
+    carry += vli_add(tmp, tmp, tmp);
+    carry += vli_add(result, result, tmp);
     
     /* s3 */
-    l_tmp[0] = p_product[8];
-    l_tmp[1] = p_product[9];
-    l_tmp[2] = p_product[10];
-    l_tmp[3] = l_tmp[4] = l_tmp[5] = 0;
-    l_tmp[6] = p_product[14];
-    l_tmp[7] = p_product[15];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = product[8];
+    tmp[1] = product[9];
+    tmp[2] = product[10];
+    tmp[3] = tmp[4] = tmp[5] = 0;
+    tmp[6] = product[14];
+    tmp[7] = product[15];
+    carry += vli_add(result, result, tmp);
     
     /* s4 */
-    l_tmp[0] = p_product[9];
-    l_tmp[1] = p_product[10];
-    l_tmp[2] = p_product[11];
-    l_tmp[3] = p_product[13];
-    l_tmp[4] = p_product[14];
-    l_tmp[5] = p_product[15];
-    l_tmp[6] = p_product[13];
-    l_tmp[7] = p_product[8];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = product[9];
+    tmp[1] = product[10];
+    tmp[2] = product[11];
+    tmp[3] = product[13];
+    tmp[4] = product[14];
+    tmp[5] = product[15];
+    tmp[6] = product[13];
+    tmp[7] = product[8];
+    carry += vli_add(result, result, tmp);
     
     /* d1 */
-    l_tmp[0] = p_product[11];
-    l_tmp[1] = p_product[12];
-    l_tmp[2] = p_product[13];
-    l_tmp[3] = l_tmp[4] = l_tmp[5] = 0;
-    l_tmp[6] = p_product[8];
-    l_tmp[7] = p_product[10];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[11];
+    tmp[1] = product[12];
+    tmp[2] = product[13];
+    tmp[3] = tmp[4] = tmp[5] = 0;
+    tmp[6] = product[8];
+    tmp[7] = product[10];
+    carry -= vli_sub(result, result, tmp);
     
     /* d2 */
-    l_tmp[0] = p_product[12];
-    l_tmp[1] = p_product[13];
-    l_tmp[2] = p_product[14];
-    l_tmp[3] = p_product[15];
-    l_tmp[4] = l_tmp[5] = 0;
-    l_tmp[6] = p_product[9];
-    l_tmp[7] = p_product[11];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[12];
+    tmp[1] = product[13];
+    tmp[2] = product[14];
+    tmp[3] = product[15];
+    tmp[4] = tmp[5] = 0;
+    tmp[6] = product[9];
+    tmp[7] = product[11];
+    carry -= vli_sub(result, result, tmp);
     
     /* d3 */
-    l_tmp[0] = p_product[13];
-    l_tmp[1] = p_product[14];
-    l_tmp[2] = p_product[15];
-    l_tmp[3] = p_product[8];
-    l_tmp[4] = p_product[9];
-    l_tmp[5] = p_product[10];
-    l_tmp[6] = 0;
-    l_tmp[7] = p_product[12];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[13];
+    tmp[1] = product[14];
+    tmp[2] = product[15];
+    tmp[3] = product[8];
+    tmp[4] = product[9];
+    tmp[5] = product[10];
+    tmp[6] = 0;
+    tmp[7] = product[12];
+    carry -= vli_sub(result, result, tmp);
     
     /* d4 */
-    l_tmp[0] = p_product[14];
-    l_tmp[1] = p_product[15];
-    l_tmp[2] = 0;
-    l_tmp[3] = p_product[9];
-    l_tmp[4] = p_product[10];
-    l_tmp[5] = p_product[11];
-    l_tmp[6] = 0;
-    l_tmp[7] = p_product[13];
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[14];
+    tmp[1] = product[15];
+    tmp[2] = 0;
+    tmp[3] = product[9];
+    tmp[4] = product[10];
+    tmp[5] = product[11];
+    tmp[6] = 0;
+    tmp[7] = product[13];
+    carry -= vli_sub(result, result, tmp);
     
-    if(l_carry < 0)
-    {
-        do
-        {
-            l_carry += vli_add(p_result, p_result, curve_p);
-        } while(l_carry < 0);
-    }
-    else
-    {
-        while(l_carry || vli_cmp(curve_p, p_result) != 1)
-        {
-            l_carry -= vli_sub(p_result, p_result, curve_p);
+    if (carry < 0) {
+        do {
+            carry += vli_add(result, result, curve_p);
+        } while (carry < 0);
+    } else {
+        while (carry || vli_cmp(curve_p, result) != 1) {
+            carry -= vli_sub(result, result, curve_p);
         }
     }
 }
 #else
-static void vli_mmod_fast(uint64_t *RESTRICT p_result, uint64_t *RESTRICT p_product)
-{
-    uint64_t l_tmp[uECC_WORDS];
-    int l_carry;
+static void vli_mmod_fast(uint64_t *RESTRICT result, uint64_t *RESTRICT product) {
+    uint64_t tmp[uECC_WORDS];
+    int carry;
     
     /* t */
-    vli_set(p_result, p_product);
+    vli_set(result, product);
     
     /* s1 */
-    l_tmp[0] = 0;
-    l_tmp[1] = p_product[5] & 0xffffffff00000000ull;
-    l_tmp[2] = p_product[6];
-    l_tmp[3] = p_product[7];
-    l_carry = vli_add(l_tmp, l_tmp, l_tmp);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = 0;
+    tmp[1] = product[5] & 0xffffffff00000000ull;
+    tmp[2] = product[6];
+    tmp[3] = product[7];
+    carry = vli_add(tmp, tmp, tmp);
+    carry += vli_add(result, result, tmp);
     
     /* s2 */
-    l_tmp[1] = p_product[6] << 32;
-    l_tmp[2] = (p_product[6] >> 32) | (p_product[7] << 32);
-    l_tmp[3] = p_product[7] >> 32;
-    l_carry += vli_add(l_tmp, l_tmp, l_tmp);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[1] = product[6] << 32;
+    tmp[2] = (product[6] >> 32) | (product[7] << 32);
+    tmp[3] = product[7] >> 32;
+    carry += vli_add(tmp, tmp, tmp);
+    carry += vli_add(result, result, tmp);
     
     /* s3 */
-    l_tmp[0] = p_product[4];
-    l_tmp[1] = p_product[5] & 0xffffffff;
-    l_tmp[2] = 0;
-    l_tmp[3] = p_product[7];
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = product[4];
+    tmp[1] = product[5] & 0xffffffff;
+    tmp[2] = 0;
+    tmp[3] = product[7];
+    carry += vli_add(result, result, tmp);
     
     /* s4 */
-    l_tmp[0] = (p_product[4] >> 32) | (p_product[5] << 32);
-    l_tmp[1] = (p_product[5] >> 32) | (p_product[6] & 0xffffffff00000000ull);
-    l_tmp[2] = p_product[7];
-    l_tmp[3] = (p_product[6] >> 32) | (p_product[4] << 32);
-    l_carry += vli_add(p_result, p_result, l_tmp);
+    tmp[0] = (product[4] >> 32) | (product[5] << 32);
+    tmp[1] = (product[5] >> 32) | (product[6] & 0xffffffff00000000ull);
+    tmp[2] = product[7];
+    tmp[3] = (product[6] >> 32) | (product[4] << 32);
+    carry += vli_add(result, result, tmp);
     
     /* d1 */
-    l_tmp[0] = (p_product[5] >> 32) | (p_product[6] << 32);
-    l_tmp[1] = (p_product[6] >> 32);
-    l_tmp[2] = 0;
-    l_tmp[3] = (p_product[4] & 0xffffffff) | (p_product[5] << 32);
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = (product[5] >> 32) | (product[6] << 32);
+    tmp[1] = (product[6] >> 32);
+    tmp[2] = 0;
+    tmp[3] = (product[4] & 0xffffffff) | (product[5] << 32);
+    carry -= vli_sub(result, result, tmp);
     
     /* d2 */
-    l_tmp[0] = p_product[6];
-    l_tmp[1] = p_product[7];
-    l_tmp[2] = 0;
-    l_tmp[3] = (p_product[4] >> 32) | (p_product[5] & 0xffffffff00000000ull);
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[6];
+    tmp[1] = product[7];
+    tmp[2] = 0;
+    tmp[3] = (product[4] >> 32) | (product[5] & 0xffffffff00000000ull);
+    carry -= vli_sub(result, result, tmp);
     
     /* d3 */
-    l_tmp[0] = (p_product[6] >> 32) | (p_product[7] << 32);
-    l_tmp[1] = (p_product[7] >> 32) | (p_product[4] << 32);
-    l_tmp[2] = (p_product[4] >> 32) | (p_product[5] << 32);
-    l_tmp[3] = (p_product[6] << 32);
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = (product[6] >> 32) | (product[7] << 32);
+    tmp[1] = (product[7] >> 32) | (product[4] << 32);
+    tmp[2] = (product[4] >> 32) | (product[5] << 32);
+    tmp[3] = (product[6] << 32);
+    carry -= vli_sub(result, result, tmp);
     
     /* d4 */
-    l_tmp[0] = p_product[7];
-    l_tmp[1] = p_product[4] & 0xffffffff00000000ull;
-    l_tmp[2] = p_product[5];
-    l_tmp[3] = p_product[6] & 0xffffffff00000000ull;
-    l_carry -= vli_sub(p_result, p_result, l_tmp);
+    tmp[0] = product[7];
+    tmp[1] = product[4] & 0xffffffff00000000ull;
+    tmp[2] = product[5];
+    tmp[3] = product[6] & 0xffffffff00000000ull;
+    carry -= vli_sub(result, result, tmp);
     
-    if(l_carry < 0)
-    {
-        do
-        {
-            l_carry += vli_add(p_result, p_result, curve_p);
-        } while(l_carry < 0);
-    }
-    else
-    {
-        while(l_carry || vli_cmp(curve_p, p_result) != 1)
-        {
-            l_carry -= vli_sub(p_result, p_result, curve_p);
+    if (carry < 0) {
+        do {
+            carry += vli_add(result, result, curve_p);
+        } while (carry < 0);
+    } else {
+        while (carry || vli_cmp(curve_p, result) != 1) {
+            carry -= vli_sub(result, result, curve_p);
         }
     }
 }
@@ -1257,97 +1211,87 @@
 #elif uECC_CURVE == uECC_secp256k1
 
 #if uECC_WORD_SIZE == 1
-static void omega_mult(uint8_t * RESTRICT p_result, const uint8_t * RESTRICT p_right)
-{
+static void omega_mult(uint8_t * RESTRICT result, const uint8_t * RESTRICT right) {
     /* Multiply by (2^32 + 2^9 + 2^8 + 2^7 + 2^6 + 2^4 + 1). */
     uECC_word_t r0 = 0;
     uECC_word_t r1 = 0;
     uECC_word_t r2 = 0;
-    
     wordcount_t k;
     
     /* Multiply by (2^9 + 2^8 + 2^7 + 2^6 + 2^4 + 1). */
-    muladd(0xD1, p_right[0], &r0, &r1, &r2);
-    p_result[0] = r0;
+    muladd(0xD1, right[0], &r0, &r1, &r2);
+    result[0] = r0;
     r0 = r1;
     r1 = r2;
     /* r2 is still 0 */
     
-    for(k = 1; k < uECC_WORDS; ++k)
-    {
-        muladd(0x03, p_right[k-1], &r0, &r1, &r2);
-        muladd(0xD1, p_right[k], &r0, &r1, &r2);
-        p_result[k] = r0;
+    for (k = 1; k < uECC_WORDS; ++k) {
+        muladd(0x03, right[k - 1], &r0, &r1, &r2);
+        muladd(0xD1, right[k], &r0, &r1, &r2);
+        result[k] = r0;
         r0 = r1;
         r1 = r2;
         r2 = 0;
     }
-    
-    muladd(0x03, p_right[uECC_WORDS-1], &r0, &r1, &r2);
-    p_result[uECC_WORDS] = r0;
-    p_result[uECC_WORDS + 1] = r1;
-    
-    p_result[4 + uECC_WORDS] = vli_add(p_result + 4, p_result + 4, p_right); /* add the 2^32 multiple */
+    muladd(0x03, right[uECC_WORDS - 1], &r0, &r1, &r2);
+    result[uECC_WORDS] = r0;
+    result[uECC_WORDS + 1] = r1;
+
+    result[4 + uECC_WORDS] = vli_add(result + 4, result + 4, right); /* add the 2^32 multiple */
 }
 #elif uECC_WORD_SIZE == 4
-static void omega_mult(uint32_t * RESTRICT p_result, const uint32_t * RESTRICT p_right)
-{
+static void omega_mult(uint32_t * RESTRICT result, const uint32_t * RESTRICT right) {
     /* Multiply by (2^9 + 2^8 + 2^7 + 2^6 + 2^4 + 1). */
-    uint32_t l_carry = 0;
+    uint32_t carry = 0;
     wordcount_t k;
     
-    for(k = 0; k < uECC_WORDS; ++k)
-    {
-        uint64_t p = (uint64_t)0x3D1 * p_right[k] + l_carry;
-        p_result[k] = (p & 0xffffffff);
-        l_carry = p >> 32;
+    for (k = 0; k < uECC_WORDS; ++k) {
+        uint64_t p = (uint64_t)0x3D1 * right[k] + carry;
+        result[k] = (p & 0xffffffff);
+        carry = p >> 32;
     }
-    p_result[uECC_WORDS] = l_carry;
+    result[uECC_WORDS] = carry;
     
-    p_result[1 + uECC_WORDS] = vli_add(p_result + 1, p_result + 1, p_right); /* add the 2^32 multiple */
+    result[1 + uECC_WORDS] = vli_add(result + 1, result + 1, right); /* add the 2^32 multiple */
 }
 #else
-static void omega_mult(uint64_t * RESTRICT p_result, const uint64_t * RESTRICT p_right)
-{
+static void omega_mult(uint64_t * RESTRICT result, const uint64_t * RESTRICT right) {
     uECC_word_t r0 = 0;
     uECC_word_t r1 = 0;
     uECC_word_t r2 = 0;
-    
     wordcount_t k;
     
     /* Multiply by (2^32 + 2^9 + 2^8 + 2^7 + 2^6 + 2^4 + 1). */
-    for(k = 0; k < uECC_WORDS; ++k)
-    {
-        muladd(0x1000003D1ull, p_right[k], &r0, &r1, &r2);
-        p_result[k] = r0;
+    for (k = 0; k < uECC_WORDS; ++k) {
+        muladd(0x1000003D1ull, right[k], &r0, &r1, &r2);
+        result[k] = r0;
         r0 = r1;
         r1 = r2;
         r2 = 0;
     }
-    
-    p_result[uECC_WORDS] = r0;
+    result[uECC_WORDS] = r0;
 }
 #endif /* uECC_WORD_SIZE */
 
 #endif /* uECC_CURVE */
 #endif /* !asm_mmod_fast */
 
-/* Computes p_result = (p_left * p_right) % curve_p. */
-static void vli_modMult_fast(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_product[2 * uECC_WORDS];
-    vli_mult(l_product, p_left, p_right);
-    vli_mmod_fast(p_result, l_product);
+/* Computes result = (left * right) % curve_p. */
+static void vli_modMult_fast(uECC_word_t *result,
+                             const uECC_word_t *left,
+                             const uECC_word_t *right) {
+    uECC_word_t product[2 * uECC_WORDS];
+    vli_mult(product, left, right);
+    vli_mmod_fast(result, product);
 }
 
 #if uECC_SQUARE_FUNC
 
-/* Computes p_result = p_left^2 % curve_p. */
-static void vli_modSquare_fast(uECC_word_t *p_result, const uECC_word_t *p_left)
-{
-    uECC_word_t l_product[2 * uECC_WORDS];
-    vli_square(l_product, p_left);
-    vli_mmod_fast(p_result, l_product);
+/* Computes result = left^2 % curve_p. */
+static void vli_modSquare_fast(uECC_word_t *result, const uECC_word_t *left) {
+    uECC_word_t product[2 * uECC_WORDS];
+    vli_square(product, left);
+    vli_mmod_fast(result, product);
 }
 
 #else /* uECC_SQUARE_FUNC */
@@ -1358,106 +1302,84 @@
 
 
 #define EVEN(vli) (!(vli[0] & 1))
-/* Computes p_result = (1 / p_input) % p_mod. All VLIs are the same size.
+/* Computes result = (1 / input) % mod. All VLIs are the same size.
    See "From Euclid's GCD to Montgomery Multiplication to the Great Divide"
    https://labs.oracle.com/techrep/2001/smli_tr-2001-95.pdf */
 #if !asm_modInv
-static void vli_modInv(uECC_word_t *p_result, const uECC_word_t *p_input, const uECC_word_t *p_mod)
-{
+static void vli_modInv(uECC_word_t *result, const uECC_word_t *input, const uECC_word_t *mod) {
     uECC_word_t a[uECC_WORDS], b[uECC_WORDS], u[uECC_WORDS], v[uECC_WORDS];
-    uECC_word_t l_carry;
-    cmpresult_t l_cmpResult;
+    uECC_word_t carry;
+    cmpresult_t cmpResult;
     
-    if(vli_isZero(p_input))
-    {
-        vli_clear(p_result);
+    if (vli_isZero(input)) {
+        vli_clear(result);
         return;
     }
 
-    vli_set(a, p_input);
-    vli_set(b, p_mod);
+    vli_set(a, input);
+    vli_set(b, mod);
     vli_clear(u);
     u[0] = 1;
     vli_clear(v);
-    while((l_cmpResult = vli_cmp(a, b)) != 0)
-    {
-        l_carry = 0;
-        if(EVEN(a))
-        {
+    while ((cmpResult = vli_cmp(a, b)) != 0) {
+        carry = 0;
+        if (EVEN(a)) {
             vli_rshift1(a);
-            if(!EVEN(u))
-            {
-                l_carry = vli_add(u, u, p_mod);
+            if (!EVEN(u)) {
+                carry = vli_add(u, u, mod);
             }
             vli_rshift1(u);
-            if(l_carry)
-            {
-                u[uECC_WORDS-1] |= HIGH_BIT_SET;
+            if (carry) {
+                u[uECC_WORDS - 1] |= HIGH_BIT_SET;
             }
-        }
-        else if(EVEN(b))
-        {
+        } else if (EVEN(b)) {
             vli_rshift1(b);
-            if(!EVEN(v))
-            {
-                l_carry = vli_add(v, v, p_mod);
+            if (!EVEN(v)) {
+                carry = vli_add(v, v, mod);
             }
             vli_rshift1(v);
-            if(l_carry)
-            {
-                v[uECC_WORDS-1] |= HIGH_BIT_SET;
+            if (carry) {
+                v[uECC_WORDS - 1] |= HIGH_BIT_SET;
             }
-        }
-        else if(l_cmpResult > 0)
-        {
+        } else if (cmpResult > 0) {
             vli_sub(a, a, b);
             vli_rshift1(a);
-            if(vli_cmp(u, v) < 0)
-            {
-                vli_add(u, u, p_mod);
+            if (vli_cmp(u, v) < 0) {
+                vli_add(u, u, mod);
             }
             vli_sub(u, u, v);
-            if(!EVEN(u))
-            {
-                l_carry = vli_add(u, u, p_mod);
+            if (!EVEN(u)) {
+                carry = vli_add(u, u, mod);
             }
             vli_rshift1(u);
-            if(l_carry)
-            {
-                u[uECC_WORDS-1] |= HIGH_BIT_SET;
+            if (carry) {
+                u[uECC_WORDS - 1] |= HIGH_BIT_SET;
             }
-        }
-        else
-        {
+        } else {
             vli_sub(b, b, a);
             vli_rshift1(b);
-            if(vli_cmp(v, u) < 0)
-            {
-                vli_add(v, v, p_mod);
+            if (vli_cmp(v, u) < 0) {
+                vli_add(v, v, mod);
             }
             vli_sub(v, v, u);
-            if(!EVEN(v))
-            {
-                l_carry = vli_add(v, v, p_mod);
+            if (!EVEN(v)) {
+                carry = vli_add(v, v, mod);
             }
             vli_rshift1(v);
-            if(l_carry)
-            {
-                v[uECC_WORDS-1] |= HIGH_BIT_SET;
+            if (carry) {
+                v[uECC_WORDS - 1] |= HIGH_BIT_SET;
             }
         }
     }
-    
-    vli_set(p_result, u);
+    vli_set(result, u);
 }
 #endif /* !asm_modInv */
 
 /* ------ Point operations ------ */
 
-/* Returns 1 if p_point is the point at infinity, 0 otherwise. */
-static cmpresult_t EccPoint_isZero(const EccPoint *p_point)
-{
-    return (vli_isZero(p_point->x) && vli_isZero(p_point->y));
+/* Returns 1 if 'point' is the point at infinity, 0 otherwise. */
+static cmpresult_t EccPoint_isZero(const EccPoint *point) {
+    return (vli_isZero(point->x) && vli_isZero(point->y));
 }
 
 /* Point multiplication algorithm using Montgomery's ladder with co-Z coordinates.
@@ -1466,14 +1388,14 @@
 
 /* Double in place */
 #if (uECC_CURVE == uECC_secp256k1)
-static void EccPoint_double_jacobian(uECC_word_t * RESTRICT X1, uECC_word_t * RESTRICT Y1, uECC_word_t * RESTRICT Z1)
-{
+static void EccPoint_double_jacobian(uECC_word_t * RESTRICT X1,
+                                     uECC_word_t * RESTRICT Y1,
+                                     uECC_word_t * RESTRICT Z1) {
     /* t1 = X, t2 = Y, t3 = Z */
     uECC_word_t t4[uECC_WORDS];
     uECC_word_t t5[uECC_WORDS];
     
-    if(vli_isZero(Z1))
-    {
+    if (vli_isZero(Z1)) {
         return;
     }
     
@@ -1485,19 +1407,16 @@
     
     vli_modAdd(Y1, X1, X1, curve_p); /* t2 = 2*x1^2 */
     vli_modAdd(Y1, Y1, X1, curve_p); /* t2 = 3*x1^2 */
-    if(vli_testBit(Y1, 0))
-    {
-        uECC_word_t l_carry = vli_add(Y1, Y1, curve_p);
+    if (vli_testBit(Y1, 0)) {
+        uECC_word_t carry = vli_add(Y1, Y1, curve_p);
         vli_rshift1(Y1);
-        Y1[uECC_WORDS-1] |= l_carry << (uECC_WORD_BITS - 1);
-    }
-    else
-    {
+        Y1[uECC_WORDS - 1] |= carry << (uECC_WORD_BITS - 1);
+    } else {
         vli_rshift1(Y1);
     }
     /* t2 = 3/2*(x1^2) = B */
     
-    vli_modSquare_fast(X1, Y1);   /* t1 = B^2 */
+    vli_modSquare_fast(X1, Y1);      /* t1 = B^2 */
     vli_modSub(X1, X1, t4, curve_p); /* t1 = B^2 - A */
     vli_modSub(X1, X1, t4, curve_p); /* t1 = B^2 - 2A = x3 */
     
@@ -1506,14 +1425,14 @@
     vli_modSub(Y1, Y1, t5, curve_p); /* t2 = B * (A - x3) - y1^4 = y3 */
 }
 #else
-static void EccPoint_double_jacobian(uECC_word_t * RESTRICT X1, uECC_word_t * RESTRICT Y1, uECC_word_t * RESTRICT Z1)
-{
+static void EccPoint_double_jacobian(uECC_word_t * RESTRICT X1,
+                                     uECC_word_t * RESTRICT Y1,
+                                     uECC_word_t * RESTRICT Z1) {
     /* t1 = X, t2 = Y, t3 = Z */
     uECC_word_t t4[uECC_WORDS];
     uECC_word_t t5[uECC_WORDS];
     
-    if(vli_isZero(Z1))
-    {
+    if (vli_isZero(Z1)) {
         return;
     }
     
@@ -1525,29 +1444,26 @@
     
     vli_modAdd(X1, X1, Z1, curve_p); /* t1 = x1 + z1^2 */
     vli_modAdd(Z1, Z1, Z1, curve_p); /* t3 = 2*z1^2 */
-    vli_modSub_fast(Z1, X1, Z1); /* t3 = x1 - z1^2 */
+    vli_modSub_fast(Z1, X1, Z1);     /* t3 = x1 - z1^2 */
     vli_modMult_fast(X1, X1, Z1);    /* t1 = x1^2 - z1^4 */
     
     vli_modAdd(Z1, X1, X1, curve_p); /* t3 = 2*(x1^2 - z1^4) */
     vli_modAdd(X1, X1, Z1, curve_p); /* t1 = 3*(x1^2 - z1^4) */
-    if(vli_testBit(X1, 0))
-    {
+    if (vli_testBit(X1, 0)) {
         uECC_word_t l_carry = vli_add(X1, X1, curve_p);
         vli_rshift1(X1);
-        X1[uECC_WORDS-1] |= l_carry << (uECC_WORD_BITS - 1);
-    }
-    else
-    {
+        X1[uECC_WORDS - 1] |= l_carry << (uECC_WORD_BITS - 1);
+    } else {
         vli_rshift1(X1);
     }
     /* t1 = 3/2*(x1^2 - z1^4) = B */
     
-    vli_modSquare_fast(Z1, X1);      /* t3 = B^2 */
-    vli_modSub_fast(Z1, Z1, t5); /* t3 = B^2 - A */
-    vli_modSub_fast(Z1, Z1, t5); /* t3 = B^2 - 2A = x3 */
-    vli_modSub_fast(t5, t5, Z1); /* t5 = A - x3 */
-    vli_modMult_fast(X1, X1, t5);    /* t1 = B * (A - x3) */
-    vli_modSub_fast(t4, X1, t4); /* t4 = B * (A - x3) - y1^4 = y3 */
+    vli_modSquare_fast(Z1, X1);   /* t3 = B^2 */
+    vli_modSub_fast(Z1, Z1, t5);  /* t3 = B^2 - A */
+    vli_modSub_fast(Z1, Z1, t5);  /* t3 = B^2 - 2A = x3 */
+    vli_modSub_fast(t5, t5, Z1);  /* t5 = A - x3 */
+    vli_modMult_fast(X1, X1, t5); /* t1 = B * (A - x3) */
+    vli_modSub_fast(t4, X1, t4);  /* t4 = B * (A - x3) - y1^4 = y3 */
     
     vli_set(X1, Z1);
     vli_set(Z1, Y1);
@@ -1556,8 +1472,9 @@
 #endif
 
 /* Modify (x1, y1) => (x1 * z^2, y1 * z^3) */
-static void apply_z(uECC_word_t * RESTRICT X1, uECC_word_t * RESTRICT Y1, const uECC_word_t * RESTRICT Z)
-{
+static void apply_z(uECC_word_t * RESTRICT X1,
+                    uECC_word_t * RESTRICT Y1,
+                    const uECC_word_t * RESTRICT Z) {
     uECC_word_t t1[uECC_WORDS];
 
     vli_modSquare_fast(t1, Z);    /* z^2 */
@@ -1567,9 +1484,11 @@
 }
 
 /* P = (x1, y1) => 2P, (x2, y2) => P' */
-static void XYcZ_initial_double(uECC_word_t * RESTRICT X1, uECC_word_t * RESTRICT Y1,
-    uECC_word_t * RESTRICT X2, uECC_word_t * RESTRICT Y2, const uECC_word_t * RESTRICT p_initialZ)
-{
+static void XYcZ_initial_double(uECC_word_t * RESTRICT X1,
+                                uECC_word_t * RESTRICT Y1,
+                                uECC_word_t * RESTRICT X2,
+                                uECC_word_t * RESTRICT Y2,
+                                const uECC_word_t * RESTRICT p_initialZ) {
     uECC_word_t z[uECC_WORDS];
     
     vli_set(X2, X1);
@@ -1577,15 +1496,12 @@
     
     vli_clear(z);
     z[0] = 1;
-    if(p_initialZ)
-    {
+    if (p_initialZ) {
         vli_set(z, p_initialZ);
     }
 
     apply_z(X1, Y1, z);
-    
     EccPoint_double_jacobian(X1, Y1, z);
-    
     apply_z(X2, Y2, z);
 }
 
@@ -1593,25 +1509,27 @@
    Output P' = (x1', y1', Z3), P + Q = (x3, y3, Z3)
    or P => P', Q => P + Q
 */
-static void XYcZ_add(uECC_word_t * RESTRICT X1, uECC_word_t * RESTRICT Y1, uECC_word_t * RESTRICT X2, uECC_word_t * RESTRICT Y2)
-{
+static void XYcZ_add(uECC_word_t * RESTRICT X1,
+                     uECC_word_t * RESTRICT Y1,
+                     uECC_word_t * RESTRICT X2,
+                     uECC_word_t * RESTRICT Y2) {
     /* t1 = X1, t2 = Y1, t3 = X2, t4 = Y2 */
     uECC_word_t t5[uECC_WORDS];
     
-    vli_modSub_fast(t5, X2, X1); /* t5 = x2 - x1 */
-    vli_modSquare_fast(t5, t5);      /* t5 = (x2 - x1)^2 = A */
-    vli_modMult_fast(X1, X1, t5);    /* t1 = x1*A = B */
-    vli_modMult_fast(X2, X2, t5);    /* t3 = x2*A = C */
-    vli_modSub_fast(Y2, Y2, Y1); /* t4 = y2 - y1 */
-    vli_modSquare_fast(t5, Y2);      /* t5 = (y2 - y1)^2 = D */
+    vli_modSub_fast(t5, X2, X1);  /* t5 = x2 - x1 */
+    vli_modSquare_fast(t5, t5);   /* t5 = (x2 - x1)^2 = A */
+    vli_modMult_fast(X1, X1, t5); /* t1 = x1*A = B */
+    vli_modMult_fast(X2, X2, t5); /* t3 = x2*A = C */
+    vli_modSub_fast(Y2, Y2, Y1);  /* t4 = y2 - y1 */
+    vli_modSquare_fast(t5, Y2);   /* t5 = (y2 - y1)^2 = D */
     
-    vli_modSub_fast(t5, t5, X1); /* t5 = D - B */
-    vli_modSub_fast(t5, t5, X2); /* t5 = D - B - C = x3 */
-    vli_modSub_fast(X2, X2, X1); /* t3 = C - B */
-    vli_modMult_fast(Y1, Y1, X2);    /* t2 = y1*(C - B) */
-    vli_modSub_fast(X2, X1, t5); /* t3 = B - x3 */
-    vli_modMult_fast(Y2, Y2, X2);    /* t4 = (y2 - y1)*(B - x3) */
-    vli_modSub_fast(Y2, Y2, Y1); /* t4 = y3 */
+    vli_modSub_fast(t5, t5, X1);  /* t5 = D - B */
+    vli_modSub_fast(t5, t5, X2);  /* t5 = D - B - C = x3 */
+    vli_modSub_fast(X2, X2, X1);  /* t3 = C - B */
+    vli_modMult_fast(Y1, Y1, X2); /* t2 = y1*(C - B) */
+    vli_modSub_fast(X2, X1, t5);  /* t3 = B - x3 */
+    vli_modMult_fast(Y2, Y2, X2); /* t4 = (y2 - y1)*(B - x3) */
+    vli_modSub_fast(Y2, Y2, Y1);  /* t4 = y3 */
     
     vli_set(X2, t5);
 }
@@ -1620,42 +1538,46 @@
    Output P + Q = (x3, y3, Z3), P - Q = (x3', y3', Z3)
    or P => P - Q, Q => P + Q
 */
-static void XYcZ_addC(uECC_word_t * RESTRICT X1, uECC_word_t * RESTRICT Y1, uECC_word_t * RESTRICT X2, uECC_word_t * RESTRICT Y2)
-{
+static void XYcZ_addC(uECC_word_t * RESTRICT X1,
+                      uECC_word_t * RESTRICT Y1,
+                      uECC_word_t * RESTRICT X2,
+                      uECC_word_t * RESTRICT Y2) {
     /* t1 = X1, t2 = Y1, t3 = X2, t4 = Y2 */
     uECC_word_t t5[uECC_WORDS];
     uECC_word_t t6[uECC_WORDS];
     uECC_word_t t7[uECC_WORDS];
     
-    vli_modSub_fast(t5, X2, X1); /* t5 = x2 - x1 */
+    vli_modSub_fast(t5, X2, X1);     /* t5 = x2 - x1 */
     vli_modSquare_fast(t5, t5);      /* t5 = (x2 - x1)^2 = A */
     vli_modMult_fast(X1, X1, t5);    /* t1 = x1*A = B */
     vli_modMult_fast(X2, X2, t5);    /* t3 = x2*A = C */
     vli_modAdd(t5, Y2, Y1, curve_p); /* t4 = y2 + y1 */
-    vli_modSub_fast(Y2, Y2, Y1); /* t4 = y2 - y1 */
+    vli_modSub_fast(Y2, Y2, Y1);     /* t4 = y2 - y1 */
 
-    vli_modSub_fast(t6, X2, X1); /* t6 = C - B */
+    vli_modSub_fast(t6, X2, X1);     /* t6 = C - B */
     vli_modMult_fast(Y1, Y1, t6);    /* t2 = y1 * (C - B) */
     vli_modAdd(t6, X1, X2, curve_p); /* t6 = B + C */
     vli_modSquare_fast(X2, Y2);      /* t3 = (y2 - y1)^2 */
-    vli_modSub_fast(X2, X2, t6); /* t3 = x3 */
+    vli_modSub_fast(X2, X2, t6);     /* t3 = x3 */
     
-    vli_modSub_fast(t7, X1, X2); /* t7 = B - x3 */
-    vli_modMult_fast(Y2, Y2, t7);    /* t4 = (y2 - y1)*(B - x3) */
-    vli_modSub_fast(Y2, Y2, Y1); /* t4 = y3 */
+    vli_modSub_fast(t7, X1, X2);  /* t7 = B - x3 */
+    vli_modMult_fast(Y2, Y2, t7); /* t4 = (y2 - y1)*(B - x3) */
+    vli_modSub_fast(Y2, Y2, Y1);  /* t4 = y3 */
     
-    vli_modSquare_fast(t7, t5);      /* t7 = (y2 + y1)^2 = F */
-    vli_modSub_fast(t7, t7, t6); /* t7 = x3' */
-    vli_modSub_fast(t6, t7, X1); /* t6 = x3' - B */
-    vli_modMult_fast(t6, t6, t5);    /* t6 = (y2 + y1)*(x3' - B) */
-    vli_modSub_fast(Y1, t6, Y1); /* t2 = y3' */
+    vli_modSquare_fast(t7, t5);   /* t7 = (y2 + y1)^2 = F */
+    vli_modSub_fast(t7, t7, t6);  /* t7 = x3' */
+    vli_modSub_fast(t6, t7, X1);  /* t6 = x3' - B */
+    vli_modMult_fast(t6, t6, t5); /* t6 = (y2 + y1)*(x3' - B) */
+    vli_modSub_fast(Y1, t6, Y1);  /* t2 = y3' */
     
     vli_set(X1, t7);
 }
 
-static void EccPoint_mult(EccPoint * RESTRICT p_result, const EccPoint * RESTRICT p_point,
-    const uECC_word_t * RESTRICT p_scalar, const uECC_word_t * RESTRICT p_initialZ, bitcount_t p_numBits)
-{
+static void EccPoint_mult(EccPoint * RESTRICT result,
+                          const EccPoint * RESTRICT point,
+                          const uECC_word_t * RESTRICT scalar,
+                          const uECC_word_t * RESTRICT initialZ,
+                          bitcount_t numBits) {
     /* R0 and R1 */
     uECC_word_t Rx[2][uECC_WORDS];
     uECC_word_t Ry[2][uECC_WORDS];
@@ -1664,67 +1586,58 @@
     bitcount_t i;
     uECC_word_t nb;
     
-    vli_set(Rx[1], p_point->x);
-    vli_set(Ry[1], p_point->y);
+    vli_set(Rx[1], point->x);
+    vli_set(Ry[1], point->y);
 
-    XYcZ_initial_double(Rx[1], Ry[1], Rx[0], Ry[0], p_initialZ);
+    XYcZ_initial_double(Rx[1], Ry[1], Rx[0], Ry[0], initialZ);
 
-    for(i = p_numBits - 2; i > 0; --i)
-    {
-        nb = !vli_testBit(p_scalar, i);
-        XYcZ_addC(Rx[1-nb], Ry[1-nb], Rx[nb], Ry[nb]);
-        XYcZ_add(Rx[nb], Ry[nb], Rx[1-nb], Ry[1-nb]);
+    for (i = numBits - 2; i > 0; --i) {
+        nb = !vli_testBit(scalar, i);
+        XYcZ_addC(Rx[1 - nb], Ry[1 - nb], Rx[nb], Ry[nb]);
+        XYcZ_add(Rx[nb], Ry[nb], Rx[1 - nb], Ry[1 - nb]);
     }
 
-    nb = !vli_testBit(p_scalar, 0);
-    XYcZ_addC(Rx[1-nb], Ry[1-nb], Rx[nb], Ry[nb]);
+    nb = !vli_testBit(scalar, 0);
+    XYcZ_addC(Rx[1 - nb], Ry[1 - nb], Rx[nb], Ry[nb]);
     
     /* Find final 1/Z value. */
-    vli_modSub_fast(z, Rx[1], Rx[0]); /* X1 - X0 */
-    vli_modMult_fast(z, z, Ry[1-nb]);     /* Yb * (X1 - X0) */
-    vli_modMult_fast(z, z, p_point->x);   /* xP * Yb * (X1 - X0) */
-    vli_modInv(z, z, curve_p);            /* 1 / (xP * Yb * (X1 - X0)) */
-    vli_modMult_fast(z, z, p_point->y);   /* yP / (xP * Yb * (X1 - X0)) */
-    vli_modMult_fast(z, z, Rx[1-nb]);     /* Xb * yP / (xP * Yb * (X1 - X0)) */
+    vli_modSub_fast(z, Rx[1], Rx[0]);   /* X1 - X0 */
+    vli_modMult_fast(z, z, Ry[1 - nb]); /* Yb * (X1 - X0) */
+    vli_modMult_fast(z, z, point->x); /* xP * Yb * (X1 - X0) */
+    vli_modInv(z, z, curve_p);          /* 1 / (xP * Yb * (X1 - X0)) */
+    vli_modMult_fast(z, z, point->y); /* yP / (xP * Yb * (X1 - X0)) */
+    vli_modMult_fast(z, z, Rx[1 - nb]); /* Xb * yP / (xP * Yb * (X1 - X0)) */
     /* End 1/Z calculation */
 
-    XYcZ_add(Rx[nb], Ry[nb], Rx[1-nb], Ry[1-nb]);
-    
+    XYcZ_add(Rx[nb], Ry[nb], Rx[1 - nb], Ry[1 - nb]);
     apply_z(Rx[0], Ry[0], z);
     
-    vli_set(p_result->x, Rx[0]);
-    vli_set(p_result->y, Ry[0]);
+    vli_set(result->x, Rx[0]);
+    vli_set(result->y, Ry[0]);
 }
 
-static int EccPoint_compute_public_key(EccPoint *p_result, const uECC_word_t *p_private) {
-
+static int EccPoint_compute_public_key(EccPoint *result, const uECC_word_t *private) {
     /* Make sure the private key is in the range [1, n-1]. */
-    if(vli_isZero(p_private))
-    {
+    if (vli_isZero(private)) {
         return 0;
     }
 
 #if uECC_CURVE != uECC_secp160r1
-    if(vli_cmp(curve_n, p_private) != 1)
-    {
+    if (vli_cmp(curve_n, private) != 1) {
         return 0;
     }
 #endif
 
     /* Compute the public point */
-    EccPoint_mult(p_result, &curve_G, p_private, 0, vli_numBits(p_private, uECC_WORDS));
-
-    if (EccPoint_isZero(p_result))
-    {
+    EccPoint_mult(result, &curve_G, private, 0, vli_numBits(private, uECC_WORDS));
+    if (EccPoint_isZero(result)) {
         return 0;
     }
-
     return 1;
 }
 
 /* Compute a = sqrt(a) (mod curve_p). */
-static void mod_sqrt(uECC_word_t *a)
-{
+static void mod_sqrt(uECC_word_t *a) {
     bitcount_t i;
     uECC_word_t p1[uECC_WORDS] = {1};
     uECC_word_t l_result[uECC_WORDS] = {1};
@@ -1732,11 +1645,9 @@
     /* Since curve_p == 3 (mod 4) for all supported curves, we can
        compute sqrt(a) = a^((curve_p + 1) / 4) (mod curve_p). */
     vli_add(p1, curve_p, p1); /* p1 = curve_p + 1 */
-    for(i = vli_numBits(p1, uECC_WORDS) - 1; i > 1; --i)
-    {
+    for (i = vli_numBits(p1, uECC_WORDS) - 1; i > 1; --i) {
         vli_modSquare_fast(l_result, l_result);
-        if(vli_testBit(p1, i))
-        {
+        if (vli_testBit(p1, i)) {
             vli_modMult_fast(l_result, l_result, a);
         }
     }
@@ -1745,12 +1656,10 @@
 
 #if uECC_WORD_SIZE == 1
 
-static void vli_nativeToBytes(uint8_t * RESTRICT p_dest, const uint8_t * RESTRICT p_src)
-{
+static void vli_nativeToBytes(uint8_t * RESTRICT dest, const uint8_t * RESTRICT src) {
     uint8_t i;
-    for(i=0; i<uECC_BYTES; ++i)
-    {
-        p_dest[i] = p_src[(uECC_BYTES - 1) - i];
+    for (i = 0; i < uECC_BYTES; ++i) {
+        dest[i] = src[(uECC_BYTES - 1) - i];
     }
 }
 
@@ -1758,250 +1667,250 @@
 
 #elif uECC_WORD_SIZE == 4
 
-static void vli_nativeToBytes(uint8_t *p_bytes, const uint32_t *p_native)
-{
+static void vli_nativeToBytes(uint8_t *bytes, const uint32_t *native) {
     unsigned i;
-    for(i=0; i<uECC_WORDS; ++i)
-    {
-        uint8_t *p_digit = p_bytes + 4 * (uECC_WORDS - 1 - i);
-        p_digit[0] = p_native[i] >> 24;
-        p_digit[1] = p_native[i] >> 16;
-        p_digit[2] = p_native[i] >> 8;
-        p_digit[3] = p_native[i];
+    for (i = 0; i < uECC_WORDS; ++i) {
+        uint8_t *digit = bytes + 4 * (uECC_WORDS - 1 - i);
+        digit[0] = native[i] >> 24;
+        digit[1] = native[i] >> 16;
+        digit[2] = native[i] >> 8;
+        digit[3] = native[i];
     }
 }
 
-static void vli_bytesToNative(uint32_t *p_native, const uint8_t *p_bytes)
-{
+static void vli_bytesToNative(uint32_t *native, const uint8_t *bytes) {
     unsigned i;
-    for(i=0; i<uECC_WORDS; ++i)
-    {
-        const uint8_t *p_digit = p_bytes + 4 * (uECC_WORDS - 1 - i);
-        p_native[i] = ((uint32_t)p_digit[0] << 24) | ((uint32_t)p_digit[1] << 16) | ((uint32_t)p_digit[2] << 8) | (uint32_t)p_digit[3];
+    for (i = 0; i < uECC_WORDS; ++i) {
+        const uint8_t *digit = bytes + 4 * (uECC_WORDS - 1 - i);
+        native[i] = ((uint32_t)digit[0] << 24) | ((uint32_t)digit[1] << 16) |
+                    ((uint32_t)digit[2] << 8) | (uint32_t)digit[3];
     }
 }
 
 #else
 
-static void vli_nativeToBytes(uint8_t *p_bytes, const uint64_t *p_native)
-{
+static void vli_nativeToBytes(uint8_t *bytes, const uint64_t *native) {
     unsigned i;
-    for(i=0; i<uECC_WORDS; ++i)
-    {
-        uint8_t *p_digit = p_bytes + 8 * (uECC_WORDS - 1 - i);
-        p_digit[0] = p_native[i] >> 56;
-        p_digit[1] = p_native[i] >> 48;
-        p_digit[2] = p_native[i] >> 40;
-        p_digit[3] = p_native[i] >> 32;
-        p_digit[4] = p_native[i] >> 24;
-        p_digit[5] = p_native[i] >> 16;
-        p_digit[6] = p_native[i] >> 8;
-        p_digit[7] = p_native[i];
+    for (i = 0; i < uECC_WORDS; ++i) {
+        uint8_t *digit = bytes + 8 * (uECC_WORDS - 1 - i);
+        digit[0] = native[i] >> 56;
+        digit[1] = native[i] >> 48;
+        digit[2] = native[i] >> 40;
+        digit[3] = native[i] >> 32;
+        digit[4] = native[i] >> 24;
+        digit[5] = native[i] >> 16;
+        digit[6] = native[i] >> 8;
+        digit[7] = native[i];
     }
 }
 
-static void vli_bytesToNative(uint64_t *p_native, const uint8_t *p_bytes)
-{
+static void vli_bytesToNative(uint64_t *native, const uint8_t *bytes) {
     unsigned i;
-    for(i=0; i<uECC_WORDS; ++i)
-    {
-        const uint8_t *p_digit = p_bytes + 8 * (uECC_WORDS - 1 - i);
-        p_native[i] = ((uint64_t)p_digit[0] << 56) | ((uint64_t)p_digit[1] << 48) | ((uint64_t)p_digit[2] << 40) | ((uint64_t)p_digit[3] << 32) |
-            ((uint64_t)p_digit[4] << 24) | ((uint64_t)p_digit[5] << 16) | ((uint64_t)p_digit[6] << 8) | (uint64_t)p_digit[7];
+    for (i = 0; i < uECC_WORDS; ++i) {
+        const uint8_t *digit = bytes + 8 * (uECC_WORDS - 1 - i);
+        native[i] = ((uint64_t)digit[0] << 56) | ((uint64_t)digit[1] << 48) |
+                    ((uint64_t)digit[2] << 40) | ((uint64_t)digit[3] << 32) |
+                    ((uint64_t)digit[4] << 24) | ((uint64_t)digit[5] << 16) |
+                    ((uint64_t)digit[6] << 8) | (uint64_t)digit[7];
     }
 }
 
 #endif /* uECC_WORD_SIZE */
 
-int uECC_make_key(uint8_t p_publicKey[uECC_BYTES*2], uint8_t p_privateKey[uECC_BYTES])
-{
-    uECC_word_t l_private[uECC_WORDS];
-    uECC_word_t l_tries = 0;
+int uECC_make_key(uint8_t public_key[uECC_BYTES*2], uint8_t private_key[uECC_BYTES]) {
+    uECC_word_t private[uECC_WORDS];
+    uECC_word_t tries = 0;
+    EccPoint public;
 
-    EccPoint l_public;
-
-    while (1)
-    {
-        if(!g_rng((uint8_t *)l_private, sizeof(l_private)) || (l_tries++ >= MAX_TRIES))
-        {
+    while (1) {
+        if (!g_rng_function((uint8_t *)private, sizeof(private)) || (tries++ >= MAX_TRIES)) {
             return 0;
         }
-
-        if (EccPoint_compute_public_key(&l_public, l_private)) {
+        if (EccPoint_compute_public_key(&public, private)) {
             break;
         }
     }
 
-    vli_nativeToBytes(p_privateKey, l_private);
-
-    vli_nativeToBytes(p_publicKey, l_public.x);
-    vli_nativeToBytes(p_publicKey + uECC_BYTES, l_public.y);
-
+    vli_nativeToBytes(private_key, private);
+    vli_nativeToBytes(public_key, public.x);
+    vli_nativeToBytes(public_key + uECC_BYTES, public.y);
     return 1;
 }
 
-int uECC_shared_secret(const uint8_t p_publicKey[uECC_BYTES*2], const uint8_t p_privateKey[uECC_BYTES], uint8_t p_secret[uECC_BYTES])
-{
-    EccPoint l_public;
-    EccPoint l_product;
-    uECC_word_t l_private[uECC_WORDS];
-    uECC_word_t l_random[uECC_WORDS];
+int uECC_shared_secret(const uint8_t public_key[uECC_BYTES*2],
+                       const uint8_t private_key[uECC_BYTES],
+                       uint8_t secret[uECC_BYTES]) {
+    EccPoint public;
+    EccPoint product;
+    uECC_word_t private[uECC_WORDS];
+    uECC_word_t random[uECC_WORDS];
     
-    g_rng((uint8_t *)l_random, sizeof(l_random));
+    g_rng_function((uint8_t *)random, sizeof(random));
     
-    vli_bytesToNative(l_private, p_privateKey);
-    vli_bytesToNative(l_public.x, p_publicKey);
-    vli_bytesToNative(l_public.y, p_publicKey + uECC_BYTES);
+    vli_bytesToNative(private, private_key);
+    vli_bytesToNative(public.x, public_key);
+    vli_bytesToNative(public.y, public_key + uECC_BYTES);
     
-    EccPoint_mult(&l_product, &l_public, l_private, (vli_isZero(l_random) ? 0: l_random), vli_numBits(l_private, uECC_WORDS));
-    
-    vli_nativeToBytes(p_secret, l_product.x);
-    
-    return !EccPoint_isZero(&l_product);
+    EccPoint_mult(&product,
+                  &public,
+                  private,
+                  (vli_isZero(random) ? 0: random),
+                  vli_numBits(private, uECC_WORDS));
+    vli_nativeToBytes(secret, product.x);
+    return !EccPoint_isZero(&product);
 }
 
-void uECC_compress(const uint8_t p_publicKey[uECC_BYTES*2], uint8_t p_compressed[uECC_BYTES+1])
-{
+void uECC_compress(const uint8_t public_key[uECC_BYTES*2], uint8_t compressed[uECC_BYTES+1]) {
     wordcount_t i;
-    for(i=0; i<uECC_BYTES; ++i)
-    {
-        p_compressed[i+1] = p_publicKey[i];
+    for (i = 0; i < uECC_BYTES; ++i) {
+        compressed[i+1] = public_key[i];
     }
-    p_compressed[0] = 2 + (p_publicKey[uECC_BYTES * 2 - 1] & 0x01);
+    compressed[0] = 2 + (public_key[uECC_BYTES * 2 - 1] & 0x01);
 }
 
-/* Computes p_result = x^3 + ax + b. p_result must not overlap x. */
-static void curve_x_side(uECC_word_t * RESTRICT p_result, const uECC_word_t * RESTRICT x)
-{
+/* Computes result = x^3 + ax + b. result must not overlap x. */
+static void curve_x_side(uECC_word_t * RESTRICT result, const uECC_word_t * RESTRICT x) {
 #if (uECC_CURVE == uECC_secp256k1)
-    vli_modSquare_fast(p_result, x); /* r = x^2 */
-    vli_modMult_fast(p_result, p_result, x); /* r = x^3 */
-    vli_modAdd(p_result, p_result, curve_b, curve_p); /* r = x^3 + b */
+    vli_modSquare_fast(result, x); /* r = x^2 */
+    vli_modMult_fast(result, result, x); /* r = x^3 */
+    vli_modAdd(result, result, curve_b, curve_p); /* r = x^3 + b */
 #else
     uECC_word_t _3[uECC_WORDS] = {3}; /* -a = 3 */
 
-    vli_modSquare_fast(p_result, x); /* r = x^2 */
-    vli_modSub_fast(p_result, p_result, _3); /* r = x^2 - 3 */
-    vli_modMult_fast(p_result, p_result, x); /* r = x^3 - 3x */
-    vli_modAdd(p_result, p_result, curve_b, curve_p); /* r = x^3 - 3x + b */
+    vli_modSquare_fast(result, x); /* r = x^2 */
+    vli_modSub_fast(result, result, _3); /* r = x^2 - 3 */
+    vli_modMult_fast(result, result, x); /* r = x^3 - 3x */
+    vli_modAdd(result, result, curve_b, curve_p); /* r = x^3 - 3x + b */
 #endif
 }
 
-void uECC_decompress(const uint8_t p_compressed[uECC_BYTES+1], uint8_t p_publicKey[uECC_BYTES*2])
-{
-    EccPoint l_point;
-    vli_bytesToNative(l_point.x, p_compressed + 1);
-    curve_x_side(l_point.y, l_point.x);
-    mod_sqrt(l_point.y);
+void uECC_decompress(const uint8_t compressed[uECC_BYTES+1], uint8_t public_key[uECC_BYTES*2]) {
+    EccPoint point;
+    vli_bytesToNative(point.x, compressed + 1);
+    curve_x_side(point.y, point.x);
+    mod_sqrt(point.y);
     
-    if((l_point.y[0] & 0x01) != (p_compressed[0] & 0x01))
-    {
-        vli_sub(l_point.y, curve_p, l_point.y);
+    if ((point.y[0] & 0x01) != (compressed[0] & 0x01)) {
+        vli_sub(point.y, curve_p, point.y);
     }
     
-    vli_nativeToBytes(p_publicKey, l_point.x);
-    vli_nativeToBytes(p_publicKey + uECC_BYTES, l_point.y);
+    vli_nativeToBytes(public_key, point.x);
+    vli_nativeToBytes(public_key + uECC_BYTES, point.y);
 }
 
-int uECC_valid_public_key(const uint8_t p_publicKey[uECC_BYTES*2])
-{
-    uECC_word_t l_tmp1[uECC_WORDS];
-    uECC_word_t l_tmp2[uECC_WORDS];
-    EccPoint l_public;
-    vli_bytesToNative(l_public.x, p_publicKey);
-    vli_bytesToNative(l_public.y, p_publicKey + uECC_BYTES);
+int uECC_valid_public_key(const uint8_t public_key[uECC_BYTES*2]) {
+    uECC_word_t tmp1[uECC_WORDS];
+    uECC_word_t tmp2[uECC_WORDS];
+    EccPoint public;
+    vli_bytesToNative(public.x, public_key);
+    vli_bytesToNative(public.y, public_key + uECC_BYTES);
     
     // The point at infinity is invalid.
-    if(EccPoint_isZero(&l_public))
-    {
+    if (EccPoint_isZero(&public)) {
         return 0;
     }
     
     // x and y must be smaller than p.
-    if(vli_cmp(curve_p, l_public.x) != 1 || vli_cmp(curve_p, l_public.y) != 1)
-    {
+    if (vli_cmp(curve_p, public.x) != 1 || vli_cmp(curve_p, public.y) != 1) {
         return 0;
     }
     
-    vli_modSquare_fast(l_tmp1, l_public.y); /* tmp1 = y^2 */
-    
-    curve_x_side(l_tmp2, l_public.x); /* tmp2 = x^3 + ax + b */
+    vli_modSquare_fast(tmp1, public.y); /* tmp1 = y^2 */
+    curve_x_side(tmp2, public.x); /* tmp2 = x^3 + ax + b */
     
     /* Make sure that y^2 == x^3 + ax + b */
-    return (vli_cmp(l_tmp1, l_tmp2) == 0);
+    return (vli_cmp(tmp1, tmp2) == 0);
+}
+
+int uECC_compute_public_key(const uint8_t private_key[uECC_BYTES],
+                            uint8_t public_key[uECC_BYTES * 2]) {
+    uECC_word_t private[uECC_WORDS];
+    EccPoint public;
+
+    vli_bytesToNative(private, private_key);
+
+    if (!EccPoint_compute_public_key(&public, private)) {
+        return 0;
+    }
+
+    vli_nativeToBytes(public_key, public.x);
+    vli_nativeToBytes(public_key + uECC_BYTES, public.y);
+    return 1;
+}
+
+int uECC_bytes(void) {
+    return uECC_BYTES;
+}
+
+int uECC_curve(void) {
+    return uECC_CURVE;
 }
 
 /* -------- ECDSA code -------- */
 
 #if (uECC_CURVE == uECC_secp160r1)
-static void vli_clear_n(uECC_word_t *p_vli)
-{
-    vli_clear(p_vli);
-    p_vli[uECC_N_WORDS - 1] = 0;
+static void vli_clear_n(uECC_word_t *vli) {
+    vli_clear(vli);
+    vli[uECC_N_WORDS - 1] = 0;
 }
 
-static uECC_word_t vli_isZero_n(const uECC_word_t *p_vli)
-{
-    if(p_vli[uECC_N_WORDS - 1])
-    {
+static uECC_word_t vli_isZero_n(const uECC_word_t *vli) {
+    if (vli[uECC_N_WORDS - 1]) {
         return 0;
     }
-    return vli_isZero(p_vli);
+    return vli_isZero(vli);
 }
 
-static void vli_set_n(uECC_word_t *p_dest, const uECC_word_t *p_src)
-{
-    vli_set(p_dest, p_src);
-    p_dest[uECC_N_WORDS-1] = p_src[uECC_N_WORDS-1];
+static void vli_set_n(uECC_word_t *dest, const uECC_word_t *src) {
+    vli_set(dest, src);
+    dest[uECC_N_WORDS - 1] = src[uECC_N_WORDS - 1];
 }
 
-static cmpresult_t vli_cmp_n(const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    if(p_left[uECC_N_WORDS-1] > p_right[uECC_N_WORDS-1])
-    {
+static cmpresult_t vli_cmp_n(const uECC_word_t *left, const uECC_word_t *right) {
+    if (left[uECC_N_WORDS - 1] > right[uECC_N_WORDS - 1]) {
         return 1;
-    }
-    else if(p_left[uECC_N_WORDS-1] < p_right[uECC_N_WORDS-1])
-    {
+    } else if (left[uECC_N_WORDS - 1] < right[uECC_N_WORDS - 1]) {
         return -1;
     }
-    return vli_cmp(p_left, p_right);
+    return vli_cmp(left, right);
 }
 
-static void vli_rshift1_n(uECC_word_t *p_vli)
-{
-    vli_rshift1(p_vli);
-    p_vli[uECC_N_WORDS-2] |= p_vli[uECC_N_WORDS-1] << (uECC_WORD_BITS - 1);
-    p_vli[uECC_N_WORDS-1] = p_vli[uECC_N_WORDS-1] >> 1;
+static void vli_rshift1_n(uECC_word_t *vli) {
+    vli_rshift1(vli);
+    vli[uECC_N_WORDS - 2] |= vli[uECC_N_WORDS - 1] << (uECC_WORD_BITS - 1);
+    vli[uECC_N_WORDS - 1] = vli[uECC_N_WORDS - 1] >> 1;
 }
 
-static uECC_word_t vli_add_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_carry = vli_add(p_result, p_left, p_right);
-    uECC_word_t l_sum = p_left[uECC_N_WORDS-1] + p_right[uECC_N_WORDS-1] + l_carry;
-    if(l_sum != p_left[uECC_N_WORDS-1])
-    {
-        l_carry = (l_sum < p_left[uECC_N_WORDS-1]);
+static uECC_word_t vli_add_n(uECC_word_t *result,
+                             const uECC_word_t *left,
+                             const uECC_word_t *right) {
+    uECC_word_t carry = vli_add(result, left, right);
+    uECC_word_t sum = left[uECC_N_WORDS - 1] + right[uECC_N_WORDS - 1] + carry;
+    if (sum != left[uECC_N_WORDS - 1]) {
+        carry = (sum < left[uECC_N_WORDS - 1]);
     }
-    p_result[uECC_N_WORDS-1] = l_sum;
-    return l_carry;
+    result[uECC_N_WORDS - 1] = sum;
+    return carry;
 }
 
-static uECC_word_t vli_sub_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_borrow = vli_sub(p_result, p_left, p_right);
-    uECC_word_t l_diff = p_left[uECC_N_WORDS-1] - p_right[uECC_N_WORDS-1] - l_borrow;
-    if(l_diff != p_left[uECC_N_WORDS-1])
-    {
-        l_borrow = (l_diff > p_left[uECC_N_WORDS-1]);
+static uECC_word_t vli_sub_n(uECC_word_t *result,
+                             const uECC_word_t *left,
+                             const uECC_word_t *right) {
+    uECC_word_t borrow = vli_sub(result, left, right);
+    uECC_word_t diff = left[uECC_N_WORDS - 1] - right[uECC_N_WORDS - 1] - borrow;
+    if (diff != left[uECC_N_WORDS - 1]) {
+        borrow = (diff > left[uECC_N_WORDS - 1]);
     }
-    p_result[uECC_N_WORDS-1] = l_diff;
-    return l_borrow;
+    result[uECC_N_WORDS - 1] = diff;
+    return borrow;
 }
 
 #if !muladd_exists
-static void muladd(uECC_word_t a, uECC_word_t b, uECC_word_t *r0, uECC_word_t *r1, uECC_word_t *r2)
-{
+static void muladd(uECC_word_t a,
+                   uECC_word_t b,
+                   uECC_word_t *r0,
+                   uECC_word_t *r1,
+                   uECC_word_t *r2) {
     uECC_dword_t p = (uECC_dword_t)a * b;
     uECC_dword_t r01 = ((uECC_dword_t)(*r1) << uECC_WORD_BITS) | *r0;
     r01 += p;
@@ -2012,146 +1921,149 @@
 #define muladd_exists 1
 #endif
 
-static void vli_mult_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
+static void vli_mult_n(uECC_word_t *result, const uECC_word_t *left, const uECC_word_t *right) {
     uECC_word_t r0 = 0;
     uECC_word_t r1 = 0;
     uECC_word_t r2 = 0;
-    
     wordcount_t i, k;
-    for(k = 0; k < uECC_N_WORDS*2 - 1; ++k)
-    {
-        wordcount_t l_min = (k < uECC_N_WORDS ? 0 : (k + 1) - uECC_N_WORDS);
-        wordcount_t l_max = (k < uECC_N_WORDS ? k : uECC_N_WORDS-1);
-        for(i = l_min; i <= l_max; ++i)
-        {
-            muladd(p_left[i], p_right[k-i], &r0, &r1, &r2);
+    
+    for (k = 0; k < uECC_N_WORDS * 2 - 1; ++k) {
+        wordcount_t min = (k < uECC_N_WORDS ? 0 : (k + 1) - uECC_N_WORDS);
+        wordcount_t max = (k < uECC_N_WORDS ? k : uECC_N_WORDS - 1);
+        for (i = min; i <= max; ++i) {
+            muladd(left[i], right[k - i], &r0, &r1, &r2);
         }
-        p_result[k] = r0;
+        result[k] = r0;
         r0 = r1;
         r1 = r2;
         r2 = 0;
     }
-    
-    p_result[uECC_N_WORDS*2 - 1] = r0;
+    result[uECC_N_WORDS * 2 - 1] = r0;
 }
 
-static void vli_modAdd_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right, const uECC_word_t *p_mod)
-{
-    uECC_word_t l_carry = vli_add_n(p_result, p_left, p_right);
-    if(l_carry || vli_cmp_n(p_result, p_mod) >= 0)
-    {
-        vli_sub_n(p_result, p_result, p_mod);
+static void vli_modAdd_n(uECC_word_t *result,
+                         const uECC_word_t *left,
+                         const uECC_word_t *right,
+                         const uECC_word_t *mod) {
+    uECC_word_t carry = vli_add_n(result, left, right);
+    if (carry || vli_cmp_n(result, mod) >= 0) {
+        vli_sub_n(result, result, mod);
     }
 }
 
-static void vli_modInv_n(uECC_word_t *p_result, const uECC_word_t *p_input, const uECC_word_t *p_mod)
-{
+static void vli_modInv_n(uECC_word_t *result, const uECC_word_t *input, const uECC_word_t *mod) {
     uECC_word_t a[uECC_N_WORDS], b[uECC_N_WORDS], u[uECC_N_WORDS], v[uECC_N_WORDS];
-    uECC_word_t l_carry;
-    cmpresult_t l_cmpResult;
+    uECC_word_t carry;
+    cmpresult_t cmpResult;
     
-    if(vli_isZero_n(p_input))
-    {
-        vli_clear_n(p_result);
+    if (vli_isZero_n(input)) {
+        vli_clear_n(result);
         return;
     }
 
-    vli_set_n(a, p_input);
-    vli_set_n(b, p_mod);
+    vli_set_n(a, input);
+    vli_set_n(b, mod);
     vli_clear_n(u);
     u[0] = 1;
     vli_clear_n(v);
-    while((l_cmpResult = vli_cmp_n(a, b)) != 0)
-    {
-        l_carry = 0;
-        if(EVEN(a))
-        {
+    while ((cmpResult = vli_cmp_n(a, b)) != 0) {
+        carry = 0;
+        if (EVEN(a)) {
             vli_rshift1_n(a);
-            if(!EVEN(u)) l_carry = vli_add_n(u, u, p_mod);
+            if (!EVEN(u)) {
+                carry = vli_add_n(u, u, mod);
+            }
             vli_rshift1_n(u);
-            if(l_carry) u[uECC_N_WORDS-1] |= HIGH_BIT_SET;
-        }
-        else if(EVEN(b))
-        {
+            if (carry) {
+                u[uECC_N_WORDS - 1] |= HIGH_BIT_SET;
+            }
+        } else if (EVEN(b)) {
             vli_rshift1_n(b);
-            if(!EVEN(v)) l_carry = vli_add_n(v, v, p_mod);
+            if (!EVEN(v)) {
+                carry = vli_add_n(v, v, mod);
+            }
             vli_rshift1_n(v);
-            if(l_carry) v[uECC_N_WORDS-1] |= HIGH_BIT_SET;
-        }
-        else if(l_cmpResult > 0)
-        {
+            if (carry) {
+                v[uECC_N_WORDS - 1] |= HIGH_BIT_SET;
+            }
+        } else if (cmpResult > 0) {
             vli_sub_n(a, a, b);
             vli_rshift1_n(a);
-            if(vli_cmp_n(u, v) < 0) vli_add_n(u, u, p_mod);
+            if (vli_cmp_n(u, v) < 0) {
+                vli_add_n(u, u, mod);
+            }
             vli_sub_n(u, u, v);
-            if(!EVEN(u)) l_carry = vli_add_n(u, u, p_mod);
+            if (!EVEN(u)) {
+                carry = vli_add_n(u, u, mod);
+            }
             vli_rshift1_n(u);
-            if(l_carry) u[uECC_N_WORDS-1] |= HIGH_BIT_SET;
-        }
-        else
-        {
+            if (carry) {
+                u[uECC_N_WORDS - 1] |= HIGH_BIT_SET;
+            }
+        } else {
             vli_sub_n(b, b, a);
             vli_rshift1_n(b);
-            if(vli_cmp_n(v, u) < 0) vli_add_n(v, v, p_mod);
+            if (vli_cmp_n(v, u) < 0) {
+                vli_add_n(v, v, mod);
+            }
             vli_sub_n(v, v, u);
-            if(!EVEN(v)) l_carry = vli_add_n(v, v, p_mod);
+            if (!EVEN(v)) {
+                carry = vli_add_n(v, v, mod);
+            }
             vli_rshift1_n(v);
-            if(l_carry) v[uECC_N_WORDS-1] |= HIGH_BIT_SET;
+            if (carry) {
+                v[uECC_N_WORDS - 1] |= HIGH_BIT_SET;
+            }
         }
     }
-    
-    vli_set_n(p_result, u);
+    vli_set_n(result, u);
 }
 
-static void vli2_rshift1_n(uECC_word_t *p_vli)
-{
-    vli_rshift1_n(p_vli);
-    p_vli[uECC_N_WORDS-1] |= p_vli[uECC_N_WORDS] << (uECC_WORD_BITS - 1);
-    vli_rshift1_n(p_vli + uECC_N_WORDS);
+static void vli2_rshift1_n(uECC_word_t *vli) {
+    vli_rshift1_n(vli);
+    vli[uECC_N_WORDS - 1] |= vli[uECC_N_WORDS] << (uECC_WORD_BITS - 1);
+    vli_rshift1_n(vli + uECC_N_WORDS);
 }
 
-static uECC_word_t vli2_sub_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_borrow = 0;
+static uECC_word_t vli2_sub_n(uECC_word_t *result,
+                              const uECC_word_t *left,
+                              const uECC_word_t *right) {
+    uECC_word_t borrow = 0;
     wordcount_t i;
-    for(i=0; i<uECC_N_WORDS*2; ++i)
-    {
-        uECC_word_t l_diff = p_left[i] - p_right[i] - l_borrow;
-        if(l_diff != p_left[i])
-        {
-            l_borrow = (l_diff > p_left[i]);
+    for (i = 0; i < uECC_N_WORDS * 2; ++i) {
+        uECC_word_t diff = left[i] - right[i] - borrow;
+        if (diff != left[i]) {
+            borrow = (diff > left[i]);
         }
-        p_result[i] = l_diff;
+        result[i] = diff;
     }
-    return l_borrow;
+    return borrow;
 }
 
-/* Computes p_result = (p_left * p_right) % curve_n. */
-static void vli_modMult_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
+/* Computes result = (left * right) % curve_n. */
+static void vli_modMult_n(uECC_word_t *result, const uECC_word_t *left, const uECC_word_t *right) {
     bitcount_t i;
-    uECC_word_t l_product[2 * uECC_N_WORDS];
-    uECC_word_t l_modMultiple[2 * uECC_N_WORDS];
-    uECC_word_t l_tmp[2 * uECC_N_WORDS];
-    uECC_word_t *v[2] = {l_tmp, l_product};
-    uECC_word_t l_index = 1;
+    uECC_word_t product[2 * uECC_N_WORDS];
+    uECC_word_t modMultiple[2 * uECC_N_WORDS];
+    uECC_word_t tmp[2 * uECC_N_WORDS];
+    uECC_word_t *v[2] = {tmp, product};
+    uECC_word_t index = 1;
     
-    vli_mult_n(l_product, p_left, p_right);
-    vli_clear_n(l_modMultiple);
-    vli_set(l_modMultiple + uECC_N_WORDS + 1, curve_n);
-    vli_rshift1(l_modMultiple + uECC_N_WORDS + 1);
-    l_modMultiple[2 * uECC_N_WORDS - 1] |= HIGH_BIT_SET;
-    l_modMultiple[uECC_N_WORDS] = HIGH_BIT_SET;
+    vli_mult_n(product, left, right);
+    vli_clear_n(modMultiple);
+    vli_set(modMultiple + uECC_N_WORDS + 1, curve_n);
+    vli_rshift1(modMultiple + uECC_N_WORDS + 1);
+    modMultiple[2 * uECC_N_WORDS - 1] |= HIGH_BIT_SET;
+    modMultiple[uECC_N_WORDS] = HIGH_BIT_SET;
     
-    for(i=0; i<=((((bitcount_t)uECC_N_WORDS) << uECC_WORD_BITS_SHIFT) + (uECC_WORD_BITS - 1)); ++i)
-    {
-        uECC_word_t l_borrow = vli2_sub_n(v[1-l_index], v[l_index], l_modMultiple);
-        l_index = !(l_index ^ l_borrow); /* Swap the index if there was no borrow */
-        vli2_rshift1_n(l_modMultiple);
+    for (i = 0;
+         i <= ((((bitcount_t)uECC_N_WORDS) << uECC_WORD_BITS_SHIFT) + (uECC_WORD_BITS - 1));
+         ++i) {
+        uECC_word_t borrow = vli2_sub_n(v[1 - index], v[index], modMultiple);
+        index = !(index ^ borrow); /* Swap the index if there was no borrow */
+        vli2_rshift1_n(modMultiple);
     }
-
-    vli_set_n(p_result, v[l_index]);
+    vli_set_n(result, v[index]);
 }
 
 #else
@@ -2159,232 +2071,217 @@
 #define vli_modInv_n vli_modInv
 #define vli_modAdd_n vli_modAdd
 
-static void vli2_rshift1(uECC_word_t *p_vli)
-{
-    vli_rshift1(p_vli);
-    p_vli[uECC_WORDS-1] |= p_vli[uECC_WORDS] << (uECC_WORD_BITS - 1);
-    vli_rshift1(p_vli + uECC_WORDS);
+static void vli2_rshift1(uECC_word_t *vli) {
+    vli_rshift1(vli);
+    vli[uECC_WORDS - 1] |= vli[uECC_WORDS] << (uECC_WORD_BITS - 1);
+    vli_rshift1(vli + uECC_WORDS);
 }
 
-static uECC_word_t vli2_sub(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_borrow = 0;
+static uECC_word_t vli2_sub(uECC_word_t *result,
+                            const uECC_word_t *left,
+                            const uECC_word_t *right) {
+    uECC_word_t borrow = 0;
     wordcount_t i;
-    for(i=0; i<uECC_WORDS*2; ++i)
-    {
-        uECC_word_t l_diff = p_left[i] - p_right[i] - l_borrow;
-        if(l_diff != p_left[i])
-        {
-            l_borrow = (l_diff > p_left[i]);
+    for (i = 0; i < uECC_WORDS * 2; ++i) {
+        uECC_word_t diff = left[i] - right[i] - borrow;
+        if (diff != left[i]) {
+            borrow = (diff > left[i]);
         }
-        p_result[i] = l_diff;
+        result[i] = diff;
     }
-    return l_borrow;
+    return borrow;
 }
 
-/* Computes p_result = (p_left * p_right) % curve_n. */
-static void vli_modMult_n(uECC_word_t *p_result, const uECC_word_t *p_left, const uECC_word_t *p_right)
-{
-    uECC_word_t l_product[2 * uECC_WORDS];
-    uECC_word_t l_modMultiple[2 * uECC_WORDS];
-    uECC_word_t l_tmp[2 * uECC_WORDS];
-    uECC_word_t *v[2] = {l_tmp, l_product};
+/* Computes result = (left * right) % curve_n. */
+static void vli_modMult_n(uECC_word_t *result, const uECC_word_t *left, const uECC_word_t *right) {
+    uECC_word_t product[2 * uECC_WORDS];
+    uECC_word_t modMultiple[2 * uECC_WORDS];
+    uECC_word_t tmp[2 * uECC_WORDS];
+    uECC_word_t *v[2] = {tmp, product};
     
-    vli_mult(l_product, p_left, p_right);
-    vli_set(l_modMultiple + uECC_WORDS, curve_n); /* works if curve_n has its highest bit set */
-    vli_clear(l_modMultiple);
+    vli_mult(product, left, right);
+    vli_set(modMultiple + uECC_WORDS, curve_n); /* works if curve_n has its highest bit set */
+    vli_clear(modMultiple);
     
     bitcount_t i;
-    uECC_word_t l_index = 1;
-    for(i=0; i<=uECC_BYTES * 8; ++i)
-    {
-        uECC_word_t l_borrow = vli2_sub(v[1-l_index], v[l_index], l_modMultiple);
-        l_index = !(l_index ^ l_borrow); /* Swap the index if there was no borrow */
-        vli2_rshift1(l_modMultiple);
+    uECC_word_t index = 1;
+    for (i = 0; i <= uECC_BYTES * 8; ++i) {
+        uECC_word_t borrow = vli2_sub(v[1 - index], v[index], modMultiple);
+        index = !(index ^ borrow); /* Swap the index if there was no borrow */
+        vli2_rshift1(modMultiple);
     }
-
-    vli_set(p_result, v[l_index]);
+    vli_set(result, v[index]);
 }
 #endif /* (uECC_CURVE != uECC_secp160r1) */
 
-int uECC_sign(const uint8_t p_privateKey[uECC_BYTES], const uint8_t p_hash[uECC_BYTES], uint8_t p_signature[uECC_BYTES*2])
-{
+int uECC_sign(const uint8_t private_key[uECC_BYTES],
+              const uint8_t hash[uECC_BYTES],
+              uint8_t signature[uECC_BYTES*2]) {
     uECC_word_t k[uECC_N_WORDS];
-    uECC_word_t l_tmp[uECC_N_WORDS];
+    uECC_word_t tmp[uECC_N_WORDS];
     uECC_word_t s[uECC_N_WORDS];
-    uECC_word_t *k2[2] = {l_tmp, s};
+    uECC_word_t *k2[2] = {tmp, s};
     EccPoint p;
-    uECC_word_t l_tries = 0;
+    uECC_word_t tries = 0;
     
     do
     {
-        uECC_word_t l_carry;
+        uECC_word_t carry;
     repeat:
-        if(!g_rng((uint8_t *)k, sizeof(k)) || (l_tries++ >= MAX_TRIES))
-        {
+        if (!g_rng_function((uint8_t *)k, sizeof(k)) || (tries++ >= MAX_TRIES)) {
             return 0;
         }
         
-        if(vli_isZero(k))
-        {
+        if (vli_isZero(k)) {
             goto repeat;
         }
         
     #if (uECC_CURVE == uECC_secp160r1)
         k[uECC_WORDS] &= 0x01;
-        if(vli_cmp_n(curve_n, k) != 1)
-        {
+        if (vli_cmp_n(curve_n, k) != 1) {
             goto repeat;
         }
         
         /* make sure that we don't leak timing information about k. See http://eprint.iacr.org/2011/232.pdf */
-        vli_add_n(l_tmp, k, curve_n);
-        l_carry = (l_tmp[uECC_WORDS] & 0x02);
-        vli_add_n(s, l_tmp, curve_n);
+        vli_add_n(tmp, k, curve_n);
+        carry = (tmp[uECC_WORDS] & 0x02);
+        vli_add_n(s, tmp, curve_n);
     
         /* p = k * G */
-        EccPoint_mult(&p, &curve_G, k2[!l_carry], 0, (uECC_BYTES * 8) + 2);
+        EccPoint_mult(&p, &curve_G, k2[!carry], 0, (uECC_BYTES * 8) + 2);
     #else
-        if(vli_cmp(curve_n, k) != 1)
-        {
+        if (vli_cmp(curve_n, k) != 1) {
             goto repeat;
         }
         
         /* make sure that we don't leak timing information about k. See http://eprint.iacr.org/2011/232.pdf */
-        l_carry = vli_add(l_tmp, k, curve_n);
-        vli_add(s, l_tmp, curve_n);
+        carry = vli_add(tmp, k, curve_n);
+        vli_add(s, tmp, curve_n);
     
         /* p = k * G */
-        EccPoint_mult(&p, &curve_G, k2[!l_carry], 0, (uECC_BYTES * 8) + 1);
+        EccPoint_mult(&p, &curve_G, k2[!carry], 0, (uECC_BYTES * 8) + 1);
     
         /* r = x1 (mod n) */
-        if(vli_cmp(curve_n, p.x) != 1)
-        {
+        if (vli_cmp(curve_n, p.x) != 1) {
             vli_sub(p.x, p.x, curve_n);
         }
     #endif
-    } while(vli_isZero(p.x));
+    } while (vli_isZero(p.x));
     
-    l_tries = 0;
+    tries = 0;
     do
     {
-        if(!g_rng((uint8_t *)l_tmp, sizeof(l_tmp)) || (l_tries++ >= MAX_TRIES))
-        {
+        if (!g_rng_function((uint8_t *)tmp, sizeof(tmp)) || (tries++ >= MAX_TRIES)) {
             return 0;
         }
-    } while(vli_isZero(l_tmp));
+    } while (vli_isZero(tmp));
     
     /* Prevent side channel analysis of vli_modInv() to determine
        bits of k / the private key by premultiplying by a random number */
-    vli_modMult_n(k, k, l_tmp); /* k' = rand * k */
+    vli_modMult_n(k, k, tmp); /* k' = rand * k */
     vli_modInv_n(k, k, curve_n); /* k = 1 / k' */
-    vli_modMult_n(k, k, l_tmp); /* k = 1 / k */
+    vli_modMult_n(k, k, tmp); /* k = 1 / k */
     
-    vli_nativeToBytes(p_signature, p.x); /* store r */
+    vli_nativeToBytes(signature, p.x); /* store r */
     
-    l_tmp[uECC_N_WORDS-1] = 0;
-    vli_bytesToNative(l_tmp, p_privateKey); /* tmp = d */
-    s[uECC_N_WORDS-1] = 0;
+    tmp[uECC_N_WORDS - 1] = 0;
+    vli_bytesToNative(tmp, private_key); /* tmp = d */
+    s[uECC_N_WORDS - 1] = 0;
     vli_set(s, p.x);
-    vli_modMult_n(s, l_tmp, s); /* s = r*d */
+    vli_modMult_n(s, tmp, s); /* s = r*d */
 
-    vli_bytesToNative(l_tmp, p_hash);
-    vli_modAdd_n(s, l_tmp, s, curve_n); /* s = e + r*d */
+    vli_bytesToNative(tmp, hash);
+    vli_modAdd_n(s, tmp, s, curve_n); /* s = e + r*d */
     vli_modMult_n(s, s, k); /* s = (e + r*d) / k */
 #if (uECC_CURVE == uECC_secp160r1)
-    if(s[uECC_N_WORDS-1])
-    {
+    if (s[uECC_N_WORDS - 1]) {
         goto repeat;
     }
 #endif
-    vli_nativeToBytes(p_signature + uECC_BYTES, s);
+    vli_nativeToBytes(signature + uECC_BYTES, s);
     
     return 1;
 }
 
-static bitcount_t smax(bitcount_t a, bitcount_t b)
-{
+static bitcount_t smax(bitcount_t a, bitcount_t b) {
     return (a > b ? a : b);
 }
 
-int uECC_verify(const uint8_t p_publicKey[uECC_BYTES*2], const uint8_t p_hash[uECC_BYTES], const uint8_t p_signature[uECC_BYTES*2])
-{
+int uECC_verify(const uint8_t public_key[uECC_BYTES*2],
+                const uint8_t hash[uECC_BYTES],
+                const uint8_t signature[uECC_BYTES*2]) {
     uECC_word_t u1[uECC_N_WORDS], u2[uECC_N_WORDS];
     uECC_word_t z[uECC_N_WORDS];
-    EccPoint l_public, l_sum;
+    EccPoint public, sum;
     uECC_word_t rx[uECC_WORDS];
     uECC_word_t ry[uECC_WORDS];
     uECC_word_t tx[uECC_WORDS];
     uECC_word_t ty[uECC_WORDS];
     uECC_word_t tz[uECC_WORDS];
     
-    const EccPoint *l_points[4];
-    const EccPoint *l_point;
-    bitcount_t l_numBits;
+    const EccPoint *points[4];
+    const EccPoint *point;
+    bitcount_t numBits;
     bitcount_t i;
 
     uECC_word_t r[uECC_N_WORDS], s[uECC_N_WORDS];
-    r[uECC_N_WORDS-1] = 0;
-    s[uECC_N_WORDS-1] = 0;
+    r[uECC_N_WORDS - 1] = 0;
+    s[uECC_N_WORDS - 1] = 0;
 
-    vli_bytesToNative(l_public.x, p_publicKey);
-    vli_bytesToNative(l_public.y, p_publicKey + uECC_BYTES);
-    vli_bytesToNative(r, p_signature);
-    vli_bytesToNative(s, p_signature + uECC_BYTES);
+    vli_bytesToNative(public.x, public_key);
+    vli_bytesToNative(public.y, public_key + uECC_BYTES);
+    vli_bytesToNative(r, signature);
+    vli_bytesToNative(s, signature + uECC_BYTES);
     
-    if(vli_isZero(r) || vli_isZero(s))
-    { /* r, s must not be 0. */
+    if (vli_isZero(r) || vli_isZero(s)) { /* r, s must not be 0. */
         return 0;
     }
     
 #if (uECC_CURVE != uECC_secp160r1)
-    if(vli_cmp(curve_n, r) != 1 || vli_cmp(curve_n, s) != 1)
-    { /* r, s must be < n. */
+    if (vli_cmp(curve_n, r) != 1 || vli_cmp(curve_n, s) != 1) { /* r, s must be < n. */
         return 0;
     }
 #endif
 
     /* Calculate u1 and u2. */
     vli_modInv_n(z, s, curve_n); /* Z = s^-1 */
-    u1[uECC_N_WORDS-1] = 0;
-    vli_bytesToNative(u1, p_hash);
+    u1[uECC_N_WORDS - 1] = 0;
+    vli_bytesToNative(u1, hash);
     vli_modMult_n(u1, u1, z); /* u1 = e/s */
     vli_modMult_n(u2, r, z); /* u2 = r/s */
     
-    /* Calculate l_sum = G + Q. */
-    vli_set(l_sum.x, l_public.x);
-    vli_set(l_sum.y, l_public.y);
+    /* Calculate sum = G + Q. */
+    vli_set(sum.x, public.x);
+    vli_set(sum.y, public.y);
     vli_set(tx, curve_G.x);
     vli_set(ty, curve_G.y);
-    vli_modSub_fast(z, l_sum.x, tx); /* Z = x2 - x1 */
-    XYcZ_add(tx, ty, l_sum.x, l_sum.y);
+    vli_modSub_fast(z, sum.x, tx); /* Z = x2 - x1 */
+    XYcZ_add(tx, ty, sum.x, sum.y);
     vli_modInv(z, z, curve_p); /* Z = 1/Z */
-    apply_z(l_sum.x, l_sum.y, z);
+    apply_z(sum.x, sum.y, z);
     
     /* Use Shamir's trick to calculate u1*G + u2*Q */
-    l_points[0] = 0;
-    l_points[1] = &curve_G;
-    l_points[2] = &l_public;
-    l_points[3] = &l_sum;
-    l_numBits = smax(vli_numBits(u1, uECC_N_WORDS), vli_numBits(u2, uECC_N_WORDS));
+    points[0] = 0;
+    points[1] = &curve_G;
+    points[2] = &public;
+    points[3] = &sum;
+    numBits = smax(vli_numBits(u1, uECC_N_WORDS), vli_numBits(u2, uECC_N_WORDS));
     
-    l_point = l_points[(!!vli_testBit(u1, l_numBits-1)) | ((!!vli_testBit(u2, l_numBits-1)) << 1)];
-    vli_set(rx, l_point->x);
-    vli_set(ry, l_point->y);
+    point = points[(!!vli_testBit(u1, numBits - 1)) | ((!!vli_testBit(u2, numBits - 1)) << 1)];
+    vli_set(rx, point->x);
+    vli_set(ry, point->y);
     vli_clear(z);
     z[0] = 1;
 
-    for(i = l_numBits - 2; i >= 0; --i)
-    {
-        uECC_word_t l_index;
+    for (i = numBits - 2; i >= 0; --i) {
+        uECC_word_t index;
         EccPoint_double_jacobian(rx, ry, z);
         
-        l_index = (!!vli_testBit(u1, i)) | ((!!vli_testBit(u2, i)) << 1);
-        l_point = l_points[l_index];
-        if(l_point)
-        {
-            vli_set(tx, l_point->x);
-            vli_set(ty, l_point->y);
+        index = (!!vli_testBit(u1, i)) | ((!!vli_testBit(u2, i)) << 1);
+        point = points[index];
+        if (point) {
+            vli_set(tx, point->x);
+            vli_set(ty, point->y);
             apply_z(tx, ty, z);
             vli_modSub_fast(tz, rx, tx); /* Z = x2 - x1 */
             XYcZ_add(tx, ty, rx, ry);
@@ -2397,8 +2294,7 @@
     
     /* v = x1 (mod n) */
 #if (uECC_CURVE != uECC_secp160r1)
-    if(vli_cmp(curve_n, rx) != 1)
-    {
+    if (vli_cmp(curve_n, rx) != 1) {
         vli_sub(rx, rx, curve_n);
     }
 #endif
@@ -2406,30 +2302,3 @@
     /* Accept only if v == r. */
     return vli_equal(rx, r);
 }
-
-int uECC_compute_public_key(const uint8_t p_privateKey[uECC_BYTES], uint8_t p_publicKey[uECC_BYTES * 2])
-{
-    uECC_word_t l_private[uECC_WORDS];
-    EccPoint l_public;
-
-    vli_bytesToNative(l_private, p_privateKey);
-
-    if (!EccPoint_compute_public_key(&l_public, l_private)) {
-        return 0;
-    }
-
-    vli_nativeToBytes(p_publicKey, l_public.x);
-    vli_nativeToBytes(p_publicKey + uECC_BYTES, l_public.y);
-
-    return 1;
-}
-
-int uECC_bytes(void)
-{
-    return uECC_BYTES;
-}
-
-int uECC_curve(void)
-{
-    return uECC_CURVE;
-}
diff --git a/uECC.h b/uECC.h
index 0a89add..b8bdc6d 100644
--- a/uECC.h
+++ b/uECC.h
@@ -17,11 +17,13 @@
 #define uECC_arm_thumb2 6
 
 /* If desired, you can define uECC_WORD_SIZE as appropriate for your platform (1, 4, or 8 bytes).
-If uECC_WORD_SIZE is not explicitly defined then it will be automatically set based on your platform. */
+If uECC_WORD_SIZE is not explicitly defined then it will be automatically set based on your
+platform. */
 
 /* Inline assembly options.
 uECC_asm_none  - Use standard C99 only.
-uECC_asm_small - Use GCC inline assembly for the target platform (if available), optimized for minimum size.
+uECC_asm_small - Use GCC inline assembly for the target platform (if available), optimized for
+                 minimum size.
 uECC_asm_fast  - Use GCC inline assembly optimized for maximum speed. */
 #define uECC_asm_none  0
 #define uECC_asm_small 1
@@ -39,8 +41,9 @@
     #define uECC_CURVE uECC_secp160r1
 #endif
 
-/* uECC_SQUARE_FUNC - If enabled (defined as nonzero), this will cause a specific function to be used for (scalar) squaring
-    instead of the generic multiplication function. This will make things faster by about 8% but increases the code size. */
+/* uECC_SQUARE_FUNC - If enabled (defined as nonzero), this will cause a specific function to be
+used for (scalar) squaring instead of the generic multiplication function. This will make things
+faster by about 8% but increases the code size. */
 #ifndef uECC_SQUARE_FUNC
     #define uECC_SQUARE_FUNC 1
 #endif
@@ -61,8 +64,8 @@
 #endif
 
 /* uECC_RNG_Function type
-The RNG function should fill p_size random bytes into p_dest. It should return 1 if
-p_dest was filled with random data, or 0 if the random data could not be generated.
+The RNG function should fill 'size' random bytes into 'dest'. It should return 1 if
+'dest' was filled with random data, or 0 if the random data could not be generated.
 The filled-in values should be either truly random, or from a cryptographically-secure PRNG.
 
 A correctly functioning RNG function must be set (using uECC_set_rng()) before calling
@@ -73,7 +76,7 @@
 you can define uECC_POSIX to use the predefined RNG. For embedded platforms there is no predefined
 RNG function; you must provide your own.
 */
-typedef int (*uECC_RNG_Function)(uint8_t *p_dest, unsigned p_size);
+typedef int (*uECC_RNG_Function)(uint8_t *dest, unsigned size);
 
 /* uECC_set_rng() function.
 Set the function that will be used to generate random bytes. The RNG function should
@@ -83,35 +86,38 @@
 be called before uECC_make_key() or uECC_sign() are used.
 
 Inputs:
-    p_rng  - The function that will be used to generate random bytes.
+    rng_function - The function that will be used to generate random bytes.
 */
-void uECC_set_rng(uECC_RNG_Function p_rng);
+void uECC_set_rng(uECC_RNG_Function rng_function);
 
 /* uECC_make_key() function.
 Create a public/private key pair.
 
 Outputs:
-    p_publicKey  - Will be filled in with the public key.
-    p_privateKey - Will be filled in with the private key.
+    public_key  - Will be filled in with the public key.
+    private_key - Will be filled in with the private key.
 
 Returns 1 if the key pair was generated successfully, 0 if an error occurred.
 */
-int uECC_make_key(uint8_t p_publicKey[uECC_BYTES*2], uint8_t p_privateKey[uECC_BYTES]);
+int uECC_make_key(uint8_t public_key[uECC_BYTES*2], uint8_t private_key[uECC_BYTES]);
 
 /* uECC_shared_secret() function.
 Compute a shared secret given your secret key and someone else's public key.
-Note: It is recommended that you hash the result of uECC_shared_secret() before using it for symmetric encryption or HMAC.
+Note: It is recommended that you hash the result of uECC_shared_secret() before using it for
+symmetric encryption or HMAC.
 
 Inputs:
-    p_publicKey  - The public key of the remote party.
-    p_privateKey - Your private key.
+    public_key  - The public key of the remote party.
+    private_key - Your private key.
 
 Outputs:
-    p_secret - Will be filled in with the shared secret value.
+    secret - Will be filled in with the shared secret value.
 
 Returns 1 if the shared secret was generated successfully, 0 if an error occurred.
 */
-int uECC_shared_secret(const uint8_t p_publicKey[uECC_BYTES*2], const uint8_t p_privateKey[uECC_BYTES], uint8_t p_secret[uECC_BYTES]);
+int uECC_shared_secret(const uint8_t public_key[uECC_BYTES*2],
+                       const uint8_t private_key[uECC_BYTES],
+                       uint8_t secret[uECC_BYTES]);
 
 /* uECC_sign() function.
 Generate an ECDSA signature for a given hash value.
@@ -120,15 +126,17 @@
 this function along with your private key.
 
 Inputs:
-    p_privateKey - Your private key.
-    p_hash       - The message hash to sign.
+    private_key - Your private key.
+    hash        - The message hash to sign.
 
 Outputs:
-    p_signature  - Will be filled in with the signature value.
+    signature - Will be filled in with the signature value.
 
 Returns 1 if the signature generated successfully, 0 if an error occurred.
 */
-int uECC_sign(const uint8_t p_privateKey[uECC_BYTES], const uint8_t p_hash[uECC_BYTES], uint8_t p_signature[uECC_BYTES*2]);
+int uECC_sign(const uint8_t private_key[uECC_BYTES],
+              const uint8_t hash[uECC_BYTES],
+              uint8_t signature[uECC_BYTES*2]);
 
 /* uECC_verify() function.
 Verify an ECDSA signature.
@@ -137,35 +145,37 @@
 pass it to this function along with the signer's public key and the signature values (r and s).
 
 Inputs:
-    p_publicKey - The signer's public key
-    p_hash      - The hash of the signed data.
-    p_signature - The signature value.
+    public_key - The signer's public key
+    hash       - The hash of the signed data.
+    signature  - The signature value.
 
 Returns 1 if the signature is valid, 0 if it is invalid.
 */
-int uECC_verify(const uint8_t p_publicKey[uECC_BYTES*2], const uint8_t p_hash[uECC_BYTES], const uint8_t p_signature[uECC_BYTES*2]);
+int uECC_verify(const uint8_t private_key[uECC_BYTES*2],
+                const uint8_t hash[uECC_BYTES],
+                const uint8_t signature[uECC_BYTES*2]);
 
 /* uECC_compress() function.
 Compress a public key.
 
 Inputs:
-    p_publicKey - The public key to compress.
+    public_key - The public key to compress.
 
 Outputs:
-    p_compressed - Will be filled in with the compressed public key.
+    compressed - Will be filled in with the compressed public key.
 */
-void uECC_compress(const uint8_t p_publicKey[uECC_BYTES*2], uint8_t p_compressed[uECC_BYTES+1]);
+void uECC_compress(const uint8_t public_key[uECC_BYTES*2], uint8_t compressed[uECC_BYTES+1]);
 
 /* uECC_decompress() function.
 Decompress a compressed public key.
 
 Inputs:
-    p_compressed - The compressed public key.
+    compressed - The compressed public key.
 
 Outputs:
-    p_publicKey - Will be filled in with the decompressed public key.
+    public_key - Will be filled in with the decompressed public key.
 */
-void uECC_decompress(const uint8_t p_compressed[uECC_BYTES+1], uint8_t p_publicKey[uECC_BYTES*2]);
+void uECC_decompress(const uint8_t compressed[uECC_BYTES+1], uint8_t public_key[uECC_BYTES*2]);
 
 /* uECC_valid_public_key() function.
 Check to see if a public key is valid.
@@ -175,24 +185,25 @@
 verifying a signature using an invalid public key.
 
 Inputs:
-    p_publicKey - The public key to check.
+    public_key - The public key to check.
 
 Returns 1 if the public key is valid, 0 if it is invalid.
 */
-int uECC_valid_public_key(const uint8_t p_publicKey[uECC_BYTES*2]);
+int uECC_valid_public_key(const uint8_t public_key[uECC_BYTES*2]);
 
 /* uECC_compute_public_key() function.
 Compute the corresponding public key for a private key.
 
 Inputs:
-    p_privateKey - The private key to compute the public key for
+    private_key - The private key to compute the public key for
 
 Outputs:
-    p_publicKey - Will be filled in with the corresponding public key
+    public_key - Will be filled in with the corresponding public key
 
 Returns 1 if the key was computed successfully, 0 if an error occurred.
 */
-int uECC_compute_public_key(const uint8_t p_privateKey[uECC_BYTES], uint8_t p_publicKey[uECC_BYTES * 2]);
+int uECC_compute_public_key(const uint8_t private_key[uECC_BYTES],
+                            uint8_t public_key[uECC_BYTES * 2]);
 
 
 /* uECC_bytes() function.