-/* VARIOUS LOW LEVEL STUFFS */
-void s_fp_add(fp_int *a, fp_int *b, fp_int *c);
-void s_fp_sub(fp_int *a, fp_int *b, fp_int *c);
-void bn_reverse(unsigned char *s, int len);
-void fp_mul_comba(fp_int *A, fp_int *B, fp_int *C);
-#ifdef TFM_HUGE
-void fp_mul_comba32(fp_int *A, fp_int *B, fp_int *C);
-#endif
-#ifdef TFM_LARGE
-void fp_mul_comba16(fp_int *A, fp_int *B, fp_int *C);
-#endif
-void fp_mul_comba8(fp_int *A, fp_int *B, fp_int *C);
-void fp_mul_comba4(fp_int *A, fp_int *B, fp_int *C);
-
-void fp_sqr_comba(fp_int *A, fp_int *B);
-void fp_sqr_comba4(fp_int *A, fp_int *B);
-void fp_sqr_comba8(fp_int *A, fp_int *B);
-#ifdef TFM_LARGE
-void fp_sqr_comba16(fp_int *A, fp_int *B);
-#endif
-#ifdef TFM_HUGE
-void fp_sqr_comba32(fp_int *A, fp_int *B);
-void fp_sqr_comba64(fp_int *A, fp_int *B);
-#endif
-extern const char *fp_s_rmap;
+#ifdef TFM_SQR20
+void tfm_fp_sqr_comba20(tfm_fp_int *A, tfm_fp_int *B);
+#endif
+#ifdef TFM_SQR24
+void tfm_fp_sqr_comba24(tfm_fp_int *A, tfm_fp_int *B);
+#endif
+#ifdef TFM_SQR28
+void tfm_fp_sqr_comba28(tfm_fp_int *A, tfm_fp_int *B);
+#endif
+#ifdef TFM_SQR32
+void tfm_fp_sqr_comba32(tfm_fp_int *A, tfm_fp_int *B);
+#endif
+#ifdef TFM_SQR48
+void tfm_fp_sqr_comba48(tfm_fp_int *A, tfm_fp_int *B);
+#endif
+#ifdef TFM_SQR64
+void tfm_fp_sqr_comba64(tfm_fp_int *A, tfm_fp_int *B);
+#endif