<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: Data Fields - Variables</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>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.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.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</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_z"></a>- z -</h3><ul>
<li>z
: <a class="el" href="structECP2__BLS381.html#a0df8d468341bc1ce4debf108b94c3479">ECP2_BLS381</a>
, <a class="el" href="structECP2__BLS383.html#a2b66bfcf4865f4405dfbb37e1dce295e">ECP2_BLS383</a>
, <a class="el" href="structECP2__BLS461.html#a575f6297ed211daf9baa6c8f2544061c">ECP2_BLS461</a>
, <a class="el" href="structECP2__BN254.html#a337720a42e224384e888ea6781ada18c">ECP2_BN254</a>
, <a class="el" href="structECP2__BN254CX.html#acba8c9fb3c17e39d8c8761e17a7e595e">ECP2_BN254CX</a>
, <a class="el" href="structECP2__FP256BN.html#a1dd224695acc0039c3681c35d7f27447">ECP2_FP256BN</a>
, <a class="el" href="structECP2__FP512BN.html#a7500b35a9c2079546b4de8c6a6388fc5">ECP2_FP512BN</a>
, <a class="el" href="structECP4__BLS24.html#ad8ed2a95beb461dd97345c3576edc5b3">ECP4_BLS24</a>
, <a class="el" href="structECP8__BLS48.html#a3c9b9e61c408e80689dc8a3b42eff643">ECP8_BLS48</a>
, <a class="el" href="structECP__ANSSI.html#a6482007d6cb593703f0714e46f7f5d90">ECP_ANSSI</a>
, <a class="el" href="structECP__BLS24.html#aebdde6337534b356abd9020c878537a6">ECP_BLS24</a>
, <a class="el" href="structECP__BLS381.html#af2d0930c4cc890faf9ea9c5bc1934ed6">ECP_BLS381</a>
, <a class="el" href="structECP__BLS383.html#a586055b3fb53d23e1bd51a3623418fd2">ECP_BLS383</a>
, <a class="el" href="structECP__BLS461.html#a93521a980194d8c67e7dd53c8e43fb83">ECP_BLS461</a>
, <a class="el" href="structECP__BLS48.html#ac16016b981e0f426ff081fa8493b61af">ECP_BLS48</a>
, <a class="el" href="structECP__BN254.html#a02886f291594c1bf931ecab041e12ee1">ECP_BN254</a>
, <a class="el" href="structECP__BN254CX.html#a3a16cd6f248b7a5feb177ee8d8c4998e">ECP_BN254CX</a>
, <a class="el" href="structECP__BRAINPOOL.html#a78f1c51622fbe527966b27020f73ca76">ECP_BRAINPOOL</a>
, <a class="el" href="structECP__C25519.html#abc8acabd37b17cba126258d8b42a98eb">ECP_C25519</a>
, <a class="el" href="structECP__C41417.html#af64fe5623308d77cb539e2825a1a1d6b">ECP_C41417</a>
, <a class="el" href="structECP__ED25519.html#a0f5becc7fa0a3a3d3f56767810c3462d">ECP_ED25519</a>
, <a class="el" href="structECP__FP256BN.html#a71a8693fa97688aa72a71768afcc900b">ECP_FP256BN</a>
, <a class="el" href="structECP__FP512BN.html#a5ff94a5d36716c69d73e2204e8c363e1">ECP_FP512BN</a>
, <a class="el" href="structECP__GOLDILOCKS.html#a8080dd2499336c58a9a719986fa30a8c">ECP_GOLDILOCKS</a>
, <a class="el" href="structECP__HIFIVE.html#a70e1f555918de6cefee6cda4b1435549">ECP_HIFIVE</a>
, <a class="el" href="structECP__NIST256.html#a22b6ce2219b31595cdbb3c22e293e901">ECP_NIST256</a>
, <a class="el" href="structECP__NIST384.html#a55fd4f36bff91563d54fcc697808864d">ECP_NIST384</a>
, <a class="el" href="structECP__NIST521.html#a74fb68b4dca4eb9d7758a127aa3dee15">ECP_NIST521</a>
, <a class="el" href="structECP__NUMS256E.html#afd91fe55332649ff0c79bc352dd58e1d">ECP_NUMS256E</a>
, <a class="el" href="structECP__NUMS256W.html#a97b56a4867ad20a4e97c5bd0e50c06af">ECP_NUMS256W</a>
, <a class="el" href="structECP__NUMS384E.html#aab78b77f2ee0265660d1e7e258df6165">ECP_NUMS384E</a>
, <a class="el" href="structECP__NUMS384W.html#a86ecf6ce6ea87387a0d0fd600902a6b0">ECP_NUMS384W</a>
, <a class="el" href="structECP__NUMS512E.html#a7045f2e416efa88d5f9436b34e44a561">ECP_NUMS512E</a>
, <a class="el" href="structECP__NUMS512W.html#afcded90a6d93b334108eb56e5a31007e">ECP_NUMS512W</a>
, <a class="el" href="structECP__SECP256K1.html#ae84d326fd938dab8ef40bf43d96bd736">ECP_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.13
</small></address>
</body>
</html>
