<!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: Data Fields</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">
<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>

<h3><a id="index_g"></a>- g -</h3><ul>
<li>g
: <a class="el" href="structFP__25519.html#a8e71ac02a5868bd389dc1aa9364656f1">FP_25519</a>
, <a class="el" href="structFP__256PME.html#a035ca7c93c353953f7086ea997a7c9d6">FP_256PME</a>
, <a class="el" href="structFP__256PMW.html#a7de179bbbfbda3b875d92c86d62497cd">FP_256PMW</a>
, <a class="el" href="structFP__384PM.html#ae806d72afd1fa22f3335cbe5ae9e915e">FP_384PM</a>
, <a class="el" href="structFP__512PM.html#a0495ad3a6faee8db898eb80b7dc5cdc8">FP_512PM</a>
, <a class="el" href="structFP__ANSSI.html#aa4b70fab01b24df9cd959735b98dda50">FP_ANSSI</a>
, <a class="el" href="structFP__BLS24.html#a01087bfded6fb63f6bf5fdbcdf10473a">FP_BLS24</a>
, <a class="el" href="structFP__BLS381.html#a56afd3599d82d7d23b7629e04b8061d4">FP_BLS381</a>
, <a class="el" href="structFP__BLS383.html#af897a6bc293e91926cd8dbca4b7b434e">FP_BLS383</a>
, <a class="el" href="structFP__BLS461.html#ac00b9f94cf65d9dd4521ae0d8412ff5b">FP_BLS461</a>
, <a class="el" href="structFP__BLS48.html#aaee07f25142de4ccf00433f731576977">FP_BLS48</a>
, <a class="el" href="structFP__BN254.html#a129ff2f489c492d0ee022189155c0532">FP_BN254</a>
, <a class="el" href="structFP__BN254CX.html#a1892cd176173092da80d3f02ec96f7f2">FP_BN254CX</a>
, <a class="el" href="structFP__BRAINPOOL.html#af6a73673829eecdd48b25db418d8b959">FP_BRAINPOOL</a>
, <a class="el" href="structFP__C41417.html#a1feed9369d9e446c27067311c6db2dfc">FP_C41417</a>
, <a class="el" href="structFP__FP256BN.html#a1735d0f268cdecd1e0c380f161152f16">FP_FP256BN</a>
, <a class="el" href="structFP__FP512BN.html#ad0a2d0c07da43ebec37a3f1a20541333">FP_FP512BN</a>
, <a class="el" href="structFP__GOLDILOCKS.html#a8eafb99985dc5036a6eb266a0ed2449f">FP_GOLDILOCKS</a>
, <a class="el" href="structFP__HIFIVE.html#ab38bf6046806343bd3bb51988658b45d">FP_HIFIVE</a>
, <a class="el" href="structFP__NIST256.html#a52444316d76b4e4aa82a32943037715d">FP_NIST256</a>
, <a class="el" href="structFP__NIST384.html#a72dbc696688d0ae224baeb964a1c658d">FP_NIST384</a>
, <a class="el" href="structFP__NIST521.html#a2a22aa90b36a99811fecf0473dfb191d">FP_NIST521</a>
, <a class="el" href="structFP__SECP256K1.html#a55dc8e0ac8d46dcf2118b951dc4c1e84">FP_SECP256K1</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>
