<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: Globals</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">AMCL
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="contents">
&#160;

<h3><a id="index_f"></a>- f -</h3><ul>
<li>FEXCESS_25519
: <a class="el" href="fp__25519_8h.html#a2adfb0aa5ff3e92c1b3688161ddda97c">fp_25519.h</a>
</li>
<li>FEXCESS_256PME
: <a class="el" href="fp__256PME_8h.html#a9ca7763369a36c34dee3699f51122d27">fp_256PME.h</a>
</li>
<li>FEXCESS_256PMW
: <a class="el" href="fp__256PMW_8h.html#a04f507586fd0cfb1c9a403fad9fc7c76">fp_256PMW.h</a>
</li>
<li>FEXCESS_384PM
: <a class="el" href="fp__384PM_8h.html#a09850d89909bfe78ed9c008c213aa256">fp_384PM.h</a>
</li>
<li>FEXCESS_512PM
: <a class="el" href="fp__512PM_8h.html#a53a5fc5689a588f70728699a4f9adbc3">fp_512PM.h</a>
</li>
<li>FEXCESS_ANSSI
: <a class="el" href="fp__ANSSI_8h.html#a06ff48f2852204de608729a4dbe35cfe">fp_ANSSI.h</a>
</li>
<li>FEXCESS_BLS24
: <a class="el" href="fp__BLS24_8h.html#a01c07718b6373a650b4f020539a011de">fp_BLS24.h</a>
</li>
<li>FEXCESS_BLS381
: <a class="el" href="fp__BLS381_8h.html#a4d85e9890eac395143ddd2255f7a6544">fp_BLS381.h</a>
</li>
<li>FEXCESS_BLS383
: <a class="el" href="fp__BLS383_8h.html#a9a47fb39fd2c44a8a1e5b35c9f7b4e11">fp_BLS383.h</a>
</li>
<li>FEXCESS_BLS461
: <a class="el" href="fp__BLS461_8h.html#ae5a279aea2a63985201547f8f1e03189">fp_BLS461.h</a>
</li>
<li>FEXCESS_BLS48
: <a class="el" href="fp__BLS48_8h.html#a0c4c59f8a2fc5f1089772282f0a1abf4">fp_BLS48.h</a>
</li>
<li>FEXCESS_BN254
: <a class="el" href="fp__BN254_8h.html#a22540457c1bcce596f902e3bf3c738ea">fp_BN254.h</a>
</li>
<li>FEXCESS_BN254CX
: <a class="el" href="fp__BN254CX_8h.html#ac9efd59092ebb1d3dcd928c09ef06c23">fp_BN254CX.h</a>
</li>
<li>FEXCESS_BRAINPOOL
: <a class="el" href="fp__BRAINPOOL_8h.html#aaeee0ee06a9694a4ab69237ccc2a250e">fp_BRAINPOOL.h</a>
</li>
<li>FEXCESS_C41417
: <a class="el" href="fp__C41417_8h.html#a7ac20a461f2e70f033f189f9454a3efa">fp_C41417.h</a>
</li>
<li>FEXCESS_FP256BN
: <a class="el" href="fp__FP256BN_8h.html#a372e83e45275e6bb50b2a6c745669301">fp_FP256BN.h</a>
</li>
<li>FEXCESS_FP512BN
: <a class="el" href="fp__FP512BN_8h.html#a9732b39339b24f218fd115b563ef0394">fp_FP512BN.h</a>
</li>
<li>FEXCESS_GOLDILOCKS
: <a class="el" href="fp__GOLDILOCKS_8h.html#abfe6057a33e222e13d2c297d4a1e26cf">fp_GOLDILOCKS.h</a>
</li>
<li>FEXCESS_HIFIVE
: <a class="el" href="fp__HIFIVE_8h.html#a17ffc867f3aa99310db749a7ba510f7d">fp_HIFIVE.h</a>
</li>
<li>FEXCESS_NIST256
: <a class="el" href="fp__NIST256_8h.html#a4d2c2670a232a846467501e143b3363b">fp_NIST256.h</a>
</li>
<li>FEXCESS_NIST384
: <a class="el" href="fp__NIST384_8h.html#ae5cc1eb38851d0efcfe9eefb02c6ac69">fp_NIST384.h</a>
</li>
<li>FEXCESS_NIST521
: <a class="el" href="fp__NIST521_8h.html#a92000b2cda458492152fb63f9e468d9c">fp_NIST521.h</a>
</li>
<li>FEXCESS_SECP256K1
: <a class="el" href="fp__SECP256K1_8h.html#ad2ec0536f260d035a05201ef89b20d49">fp_SECP256K1.h</a>
</li>
<li>FFLEN_2048
: <a class="el" href="config__ff__2048_8h.html#a9d97b1d9ded0164b99640480ddac4f1e">config_ff_2048.h</a>
</li>
<li>FFLEN_3072
: <a class="el" href="config__ff__3072_8h.html#aaaf83c3d8d02afcc96d24bcabc418da4">config_ff_3072.h</a>
</li>
<li>FFLEN_4096
: <a class="el" href="config__ff__4096_8h.html#af3c21ac004bc32aa00e7a20811de549c">config_ff_4096.h</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>
