<?xml version="1.0" standalone="no"?>
<grammar name="VHDL" version="4" ext="vhd" type="All Gates">
   <!--List of all the Boolean functions supported by GeneXproTools 4.0. All functions must be completely defined.-->
   <!--To generate Carriage Return Line Feeds (CrLf) use the token {CRLF} (curly braces included).-->
   <!--To generate Tabs use the token {TAB} (curly braces included).-->
   <!--Use {CHARX} as an escape for the x in the definition of the functions.-->
   <functions count="258">
      <function idx="10000" symbol="Not" terminals="1" uniontype="">(not(x0))</function>
      <function idx="10001" symbol="And" terminals="2" uniontype="({tempvarname} and {member})">(x0 and x1)</function>
      <function idx="10002" symbol="Or" terminals="2" uniontype="({tempvarname} or {member})">(x0 or x1)</function>
      <function idx="10003" symbol="Nand" terminals="2" uniontype="({tempvarname} nand {member})">(x0 nand x1)</function>
      <function idx="10004" symbol="Nor" terminals="2" uniontype="({tempvarname} nor {member})">(x0 nor x1)</function>
      <function idx="10005" symbol="Xor" terminals="2" uniontype="({tempvarname} {CHARX}or {member})">(x0 {CHARX}or x1)</function>
      <function idx="10006" symbol="Nxor" terminals="2" uniontype="({tempvarname} {CHARX}nor {member})">(x0 {CHARX}nor x1)</function>

      <function idx="10007" symbol="And3" terminals="3" uniontype="">gepAnd3(x0,x1,x2)</function>
      <function idx="10008" symbol="Or3" terminals="3" uniontype="">gepOr3(x0,x1,x2)</function>
      <function idx="10009" symbol="Nand3" terminals="3" uniontype="">gepNand3(x0,x1,x2)</function>
      <function idx="10010" symbol="Nor3" terminals="3" uniontype="">gepNor3(x0,x1,x2)</function>
      <function idx="10011" symbol="Odd3" terminals="3" uniontype="">gepOdd3(x0,x1,x2)</function>
      <function idx="10012" symbol="Even3" terminals="3" uniontype="">gepEven3(x0,x1,x2)</function>

      <function idx="10013" symbol="And4" terminals="4" uniontype="">gepAnd4(x0,x1,x2,x3)</function>
      <function idx="10014" symbol="Or4" terminals="4" uniontype="">gepOr4(x0,x1,x2,x3)</function>
      <function idx="10015" symbol="Nand4" terminals="4" uniontype="">gepNand4(x0,x1,x2,x3)</function>
      <function idx="10016" symbol="Nor4" terminals="4" uniontype="">gepNor4(x0,x1,x2,x3)</function>
      <function idx="10017" symbol="Odd4" terminals="4" uniontype="">gepOdd4(x0,x1,x2,x3)</function>
      <function idx="10018" symbol="Even4" terminals="4" uniontype="">gepEven4(x0,x1,x2,x3)</function>

      <function idx="10019" symbol="Id" terminals="1" uniontype="">(x0)</function>
      <function idx="10020" symbol="Zero" terminals="1" uniontype="">('0')</function>
      <function idx="10021" symbol="One" terminals="1" uniontype="">('1')</function>

      <function idx="10022" symbol="LT" terminals="2" uniontype="gepLT({tempvarname},{member})">gepLT(x0,x1)</function>
      <function idx="10023" symbol="GT" terminals="2" uniontype="gepGT({tempvarname},{member})">gepGT(x0,x1)</function>
      <function idx="10024" symbol="LOE" terminals="2" uniontype="gepLOE({tempvarname},{member})">gepLOE(x0,x1)</function>
      <function idx="10025" symbol="GOE" terminals="2" uniontype="gepGOE({tempvarname},{member})">gepGOE(x0,x1)</function>
      <function idx="10026" symbol="NotA" terminals="2" uniontype="">(not(x0))</function>
      <function idx="10027" symbol="NotB" terminals="2" uniontype="">(not(x1))</function>
      <function idx="10028" symbol="IdA" terminals="2" uniontype="">(x0)</function>
      <function idx="10029" symbol="IdB" terminals="2" uniontype="">(x1)</function>
      <function idx="10030" symbol="Zero2" terminals="2" uniontype="">('0')</function>
      <function idx="10031" symbol="One2" terminals="2" uniontype="">('1')</function>

      <function idx="10032" symbol="LT3" terminals="3" uniontype="">gepLT3(x0,x1,x2)</function>
      <function idx="10033" symbol="GT3" terminals="3" uniontype="">gepGT3(x0,x1,x2)</function>
      <function idx="10034" symbol="LOE3" terminals="3" uniontype="">gepLOE3(x0,x1,x2)</function>
      <function idx="10035" symbol="GOE3" terminals="3" uniontype="">gepGOE3(x0,x1,x2)</function>
      <function idx="10036" symbol="Mux" terminals="3" uniontype="">gepMu{CHARX}(x0,x1,x2)</function>
      <function idx="10037" symbol="If" terminals="3" uniontype="">gepIf(x0,x1,x2)</function>
      <function idx="10038" symbol="Maj" terminals="3" uniontype="">gepMaj(x0,x1,x2)</function>
      <function idx="10039" symbol="Min" terminals="3" uniontype="">gepMin(x0,x1,x2)</function>
      <function idx="10040" symbol="2Off" terminals="3" uniontype="">gep2Off(x0,x1,x2)</function>
      <function idx="10041" symbol="2On" terminals="3" uniontype="">gep2On(x0,x1,x2)</function>

      <function idx="10042" symbol="LM3A1" terminals="3" uniontype="">gepLM3A1(x0,x1,x2)</function>
      <function idx="10043" symbol="LM3A2" terminals="3" uniontype="">gepLM3A2(x0,x1,x2)</function>
      <function idx="10044" symbol="LM3A3" terminals="3" uniontype="">gepLM3A3(x0,x1,x2)</function>
      <function idx="10045" symbol="LM3A4" terminals="3" uniontype="">gepLM3A4(x0,x1,x2)</function>

      <function idx="10046" symbol="LM3B1" terminals="3" uniontype="">gepLM3B1(x0,x1,x2)</function>
      <function idx="10047" symbol="LM3B2" terminals="3" uniontype="">gepLM3B2(x0,x1,x2)</function>
      <function idx="10048" symbol="LM3B3" terminals="3" uniontype="">gepLM3B3(x0,x1,x2)</function>
      <function idx="10049" symbol="LM3B4" terminals="3" uniontype="">gepLM3B4(x0,x1,x2)</function>

      <function idx="10050" symbol="LM3C1" terminals="3" uniontype="">gepLM3C1(x0,x1,x2)</function>
      <function idx="10051" symbol="LM3C2" terminals="3" uniontype="">gepLM3C2(x0,x1,x2)</function>
      <function idx="10052" symbol="LM3C3" terminals="3" uniontype="">gepLM3C3(x0,x1,x2)</function>
      <function idx="10053" symbol="LM3C4" terminals="3" uniontype="">gepLM3C4(x0,x1,x2)</function>

      <function idx="10054" symbol="LM3D1" terminals="3" uniontype="">gepLM3D1(x0,x1,x2)</function>
      <function idx="10055" symbol="LM3D2" terminals="3" uniontype="">gepLM3D2(x0,x1,x2)</function>
      <function idx="10056" symbol="LM3D3" terminals="3" uniontype="">gepLM3D3(x0,x1,x2)</function>
      <function idx="10057" symbol="LM3D4" terminals="3" uniontype="">gepLM3D4(x0,x1,x2)</function>

      <function idx="10058" symbol="LM3E1" terminals="3" uniontype="">gepLM3E1(x0,x1,x2)</function>
      <function idx="10059" symbol="LM3E2" terminals="3" uniontype="">gepLM3E2(x0,x1,x2)</function>
      <function idx="10060" symbol="LM3E3" terminals="3" uniontype="">gepLM3E3(x0,x1,x2)</function>

      <function idx="10061" symbol="LM3F1" terminals="3" uniontype="">gepLM3F1(x0,x1,x2)</function>
      <function idx="10062" symbol="LM3F2" terminals="3" uniontype="">gepLM3F2(x0,x1,x2)</function>
      <function idx="10063" symbol="LM3F3" terminals="3" uniontype="">gepLM3F3(x0,x1,x2)</function>

      <function idx="10064" symbol="LM3G1" terminals="3" uniontype="">gepLM3G1(x0,x1,x2)</function>
      <function idx="10065" symbol="LM3G2" terminals="3" uniontype="">gepLM3G2(x0,x1,x2)</function>
      <function idx="10066" symbol="LM3G3" terminals="3" uniontype="">gepLM3G3(x0,x1,x2)</function>
      <function idx="10067" symbol="LM3G4" terminals="3" uniontype="">gepLM3G4(x0,x1,x2)</function>

      <function idx="10068" symbol="LM3H1" terminals="3" uniontype="">gepLM3H1(x0,x1,x2)</function>
      <function idx="10069" symbol="LM3H2" terminals="3" uniontype="">gepLM3H2(x0,x1,x2)</function>
      <function idx="10070" symbol="LM3H3" terminals="3" uniontype="">gepLM3H3(x0,x1,x2)</function>
      <function idx="10071" symbol="LM3H4" terminals="3" uniontype="">gepLM3H4(x0,x1,x2)</function>

      <function idx="10072" symbol="LT3A" terminals="3" uniontype="">gepLT3A(x0,x1,x2)</function>
      <function idx="10073" symbol="GT3A" terminals="3" uniontype="">gepGT3A(x0,x1,x2)</function>
      <function idx="10074" symbol="LOE3A" terminals="3" uniontype="">gepLOE3A(x0,x1,x2)</function>
      <function idx="10075" symbol="GOE3A" terminals="3" uniontype="">gepGOE3A(x0,x1,x2)</function>
      <function idx="10076" symbol="ET3A" terminals="3" uniontype="">gepET3A(x0,x1,x2)</function>
      <function idx="10077" symbol="NET3A" terminals="3" uniontype="">gepNET3A(x0,x1,x2)</function>

      <function idx="10078" symbol="LT3B" terminals="3" uniontype="">gepLT3B(x0,x1,x2)</function>
      <function idx="10079" symbol="GT3B" terminals="3" uniontype="">gepGT3B(x0,x1,x2)</function>
      <function idx="10080" symbol="LOE3B" terminals="3" uniontype="">gepLOE3B(x0,x1,x2)</function>
      <function idx="10081" symbol="GOE3B" terminals="3" uniontype="">gepGOE3B(x0,x1,x2)</function>
      <function idx="10082" symbol="ET3B" terminals="3" uniontype="">gepET3B(x0,x1,x2)</function>
      <function idx="10083" symbol="NET3B" terminals="3" uniontype="">gepNET3B(x0,x1,x2)</function>

      <function idx="10084" symbol="LT3C" terminals="3" uniontype="">gepLT3C(x0,x1,x2)</function>
      <function idx="10085" symbol="GT3C" terminals="3" uniontype="">gepGT3C(x0,x1,x2)</function>
      <function idx="10086" symbol="LOE3C" terminals="3" uniontype="">gepLOE3C(x0,x1,x2)</function>
      <function idx="10087" symbol="GOE3C" terminals="3" uniontype="">gepGOE3C(x0,x1,x2)</function>
      <function idx="10088" symbol="ET3C" terminals="3" uniontype="">gepET3C(x0,x1,x2)</function>
      <function idx="10089" symbol="NET3C" terminals="3" uniontype="">gepNET3C(x0,x1,x2)</function>

      <function idx="10090" symbol="T004" terminals="3" uniontype="">gepT004(x0,x1,x2)</function>
      <function idx="10091" symbol="T008" terminals="3" uniontype="">gepT008(x0,x1,x2)</function>
      <function idx="10092" symbol="T009" terminals="3" uniontype="">gepT009(x0,x1,x2)</function>
      <function idx="10093" symbol="T032" terminals="3" uniontype="">gepT032(x0,x1,x2)</function>

      <function idx="10094" symbol="T033" terminals="3" uniontype="">gepT033(x0,x1,x2)</function>
      <function idx="10095" symbol="T041" terminals="3" uniontype="">gepT041(x0,x1,x2)</function>
      <function idx="10096" symbol="T055" terminals="3" uniontype="">gepT055(x0,x1,x2)</function>
      <function idx="10097" symbol="T057" terminals="3" uniontype="">gepT057(x0,x1,x2)</function>

      <function idx="10098" symbol="T064" terminals="3" uniontype="">gepT064(x0,x1,x2)</function>
      <function idx="10099" symbol="T065" terminals="3" uniontype="">gepT065(x0,x1,x2)</function>
      <function idx="10100" symbol="T069" terminals="3" uniontype="">gepT069(x0,x1,x2)</function>
      <function idx="10101" symbol="T073" terminals="3" uniontype="">gepT073(x0,x1,x2)</function>

      <function idx="10102" symbol="T081" terminals="3" uniontype="">gepT081(x0,x1,x2)</function>
      <function idx="10103" symbol="T089" terminals="3" uniontype="">gepT089(x0,x1,x2)</function>
      <function idx="10104" symbol="T093" terminals="3" uniontype="">gepT093(x0,x1,x2)</function>
      <function idx="10105" symbol="T096" terminals="3" uniontype="">gepT096(x0,x1,x2)</function>

      <function idx="10106" symbol="T101" terminals="3" uniontype="">gepT101(x0,x1,x2)</function>
      <function idx="10107" symbol="T109" terminals="3" uniontype="">gepT109(x0,x1,x2)</function>
      <function idx="10108" symbol="T111" terminals="3" uniontype="">gepT111(x0,x1,x2)</function>
      <function idx="10109" symbol="T121" terminals="3" uniontype="">gepT121(x0,x1,x2)</function>

      <function idx="10110" symbol="T123" terminals="3" uniontype="">gepT123(x0,x1,x2)</function>
      <function idx="10111" symbol="T125" terminals="3" uniontype="">gepT125(x0,x1,x2)</function>
      <function idx="10112" symbol="T154" terminals="3" uniontype="">gepT154(x0,x1,x2)</function>
      <function idx="10113" symbol="T223" terminals="3" uniontype="">gepT223(x0,x1,x2)</function>

      <function idx="10114" symbol="T239" terminals="3" uniontype="">gepT239(x0,x1,x2)</function>
      <function idx="10115" symbol="T249" terminals="3" uniontype="">gepT249(x0,x1,x2)</function>
      <function idx="10116" symbol="T251" terminals="3" uniontype="">gepT251(x0,x1,x2)</function>
      <function idx="10117" symbol="T253" terminals="3" uniontype="">gepT253(x0,x1,x2)</function>

      <function idx="10118" symbol="LT4" terminals="4" uniontype="">gepLT4(x0,x1,x2,x3)</function>
      <function idx="10119" symbol="GT4" terminals="4" uniontype="">gepGT4(x0,x1,x2,x3)</function>
      <function idx="10120" symbol="LOE4" terminals="4" uniontype="">gepLOE4(x0,x1,x2,x3)</function>
      <function idx="10121" symbol="GOE4" terminals="4" uniontype="">gepGOE4(x0,x1,x2,x3)</function>

      <function idx="10122" symbol="Tie" terminals="4" uniontype="">gepTie(x0,x1,x2,x3)</function>
      <function idx="10123" symbol="Ntie" terminals="4" uniontype="">gepNtie(x0,x1,x2,x3)</function>
      <function idx="10124" symbol="3Off" terminals="4" uniontype="">gep3Off(x0,x1,x2,x3)</function>
      <function idx="10125" symbol="3On" terminals="4" uniontype="">gep3On(x0,x1,x2,x3)</function>

      <function idx="10126" symbol="LM4A1" terminals="4" uniontype="">gepLM4A1(x0,x1,x2,x3)</function>
      <function idx="10127" symbol="LM4A2" terminals="4" uniontype="">gepLM4A2(x0,x1,x2,x3)</function>
      <function idx="10128" symbol="LM4A3" terminals="4" uniontype="">gepLM4A3(x0,x1,x2,x3)</function>
      <function idx="10129" symbol="LM4A4" terminals="4" uniontype="">gepLM4A4(x0,x1,x2,x3)</function>
      <function idx="10130" symbol="LM4A5" terminals="4" uniontype="">gepLM4A5(x0,x1,x2,x3)</function>
      <function idx="10131" symbol="LM4A6" terminals="4" uniontype="">gepLM4A6(x0,x1,x2,x3)</function>
      <function idx="10132" symbol="LM4A7" terminals="4" uniontype="">gepLM4A7(x0,x1,x2,x3)</function>
      <function idx="10133" symbol="LM4A8" terminals="4" uniontype="">gepLM4A8(x0,x1,x2,x3)</function>

      <function idx="10134" symbol="LM4B1" terminals="4" uniontype="">gepLM4B1(x0,x1,x2,x3)</function>
      <function idx="10135" symbol="LM4B2" terminals="4" uniontype="">gepLM4B2(x0,x1,x2,x3)</function>
      <function idx="10136" symbol="LM4B3" terminals="4" uniontype="">gepLM4B3(x0,x1,x2,x3)</function>
      <function idx="10137" symbol="LM4B4" terminals="4" uniontype="">gepLM4B4(x0,x1,x2,x3)</function>
      <function idx="10138" symbol="LM4B5" terminals="4" uniontype="">gepLM4B5(x0,x1,x2,x3)</function>
      <function idx="10139" symbol="LM4B6" terminals="4" uniontype="">gepLM4B6(x0,x1,x2,x3)</function>
      <function idx="10140" symbol="LM4B7" terminals="4" uniontype="">gepLM4B7(x0,x1,x2,x3)</function>
      <function idx="10141" symbol="LM4B8" terminals="4" uniontype="">gepLM4B8(x0,x1,x2,x3)</function>

      <function idx="10142" symbol="LM4C1" terminals="4" uniontype="">gepLM4C1(x0,x1,x2,x3)</function>
      <function idx="10143" symbol="LM4C2" terminals="4" uniontype="">gepLM4C2(x0,x1,x2,x3)</function>
      <function idx="10144" symbol="LM4C3" terminals="4" uniontype="">gepLM4C3(x0,x1,x2,x3)</function>
      <function idx="10145" symbol="LM4C4" terminals="4" uniontype="">gepLM4C4(x0,x1,x2,x3)</function>
      <function idx="10146" symbol="LM4C5" terminals="4" uniontype="">gepLM4C5(x0,x1,x2,x3)</function>
      <function idx="10147" symbol="LM4C6" terminals="4" uniontype="">gepLM4C6(x0,x1,x2,x3)</function>
      <function idx="10148" symbol="LM4C7" terminals="4" uniontype="">gepLM4C7(x0,x1,x2,x3)</function>
      <function idx="10149" symbol="LM4C8" terminals="4" uniontype="">gepLM4C8(x0,x1,x2,x3)</function>

      <function idx="10150" symbol="LM4D1" terminals="4" uniontype="">gepLM4D1(x0,x1,x2,x3)</function>
      <function idx="10151" symbol="LM4D2" terminals="4" uniontype="">gepLM4D2(x0,x1,x2,x3)</function>
      <function idx="10152" symbol="LM4D3" terminals="4" uniontype="">gepLM4D3(x0,x1,x2,x3)</function>
      <function idx="10153" symbol="LM4D4" terminals="4" uniontype="">gepLM4D4(x0,x1,x2,x3)</function>
      <function idx="10154" symbol="LM4D5" terminals="4" uniontype="">gepLM4D5(x0,x1,x2,x3)</function>
      <function idx="10155" symbol="LM4D6" terminals="4" uniontype="">gepLM4D6(x0,x1,x2,x3)</function>
      <function idx="10156" symbol="LM4D7" terminals="4" uniontype="">gepLM4D7(x0,x1,x2,x3)</function>
      <function idx="10157" symbol="LM4D8" terminals="4" uniontype="">gepLM4D8(x0,x1,x2,x3)</function>

      <function idx="10158" symbol="LM4E1" terminals="4" uniontype="">gepLM4E1(x0,x1,x2,x3)</function>
      <function idx="10159" symbol="LM4E2" terminals="4" uniontype="">gepLM4E2(x0,x1,x2,x3)</function>
      <function idx="10160" symbol="LM4E3" terminals="4" uniontype="">gepLM4E3(x0,x1,x2,x3)</function>
      <function idx="10161" symbol="LM4E4" terminals="4" uniontype="">gepLM4E4(x0,x1,x2,x3)</function>
      <function idx="10162" symbol="LM4E5" terminals="4" uniontype="">gepLM4E5(x0,x1,x2,x3)</function>
      <function idx="10163" symbol="LM4E6" terminals="4" uniontype="">gepLM4E6(x0,x1,x2,x3)</function>
      <function idx="10164" symbol="LM4E7" terminals="4" uniontype="">gepLM4E7(x0,x1,x2,x3)</function>
      <function idx="10165" symbol="LM4E8" terminals="4" uniontype="">gepLM4E8(x0,x1,x2,x3)</function>

      <function idx="10166" symbol="LM4F1" terminals="4" uniontype="">gepLM4F1(x0,x1,x2,x3)</function>
      <function idx="10167" symbol="LM4F2" terminals="4" uniontype="">gepLM4F2(x0,x1,x2,x3)</function>
      <function idx="10168" symbol="LM4F3" terminals="4" uniontype="">gepLM4F3(x0,x1,x2,x3)</function>
      <function idx="10169" symbol="LM4F4" terminals="4" uniontype="">gepLM4F4(x0,x1,x2,x3)</function>
      <function idx="10170" symbol="LM4F5" terminals="4" uniontype="">gepLM4F5(x0,x1,x2,x3)</function>
      <function idx="10171" symbol="LM4F6" terminals="4" uniontype="">gepLM4F6(x0,x1,x2,x3)</function>
      <function idx="10172" symbol="LM4F7" terminals="4" uniontype="">gepLM4F7(x0,x1,x2,x3)</function>
      <function idx="10173" symbol="LM4F8" terminals="4" uniontype="">gepLM4F8(x0,x1,x2,x3)</function>

      <function idx="10174" symbol="LM4G1" terminals="4" uniontype="">gepLM4G1(x0,x1,x2,x3)</function>
      <function idx="10175" symbol="LM4G2" terminals="4" uniontype="">gepLM4G2(x0,x1,x2,x3)</function>
      <function idx="10176" symbol="LM4G3" terminals="4" uniontype="">gepLM4G3(x0,x1,x2,x3)</function>
      <function idx="10177" symbol="LM4G4" terminals="4" uniontype="">gepLM4G4(x0,x1,x2,x3)</function>
      <function idx="10178" symbol="LM4G5" terminals="4" uniontype="">gepLM4G5(x0,x1,x2,x3)</function>
      <function idx="10179" symbol="LM4G6" terminals="4" uniontype="">gepLM4G6(x0,x1,x2,x3)</function>
      <function idx="10180" symbol="LM4G7" terminals="4" uniontype="">gepLM4G7(x0,x1,x2,x3)</function>
      <function idx="10181" symbol="LM4G8" terminals="4" uniontype="">gepLM4G8(x0,x1,x2,x3)</function>

      <function idx="10182" symbol="LM4H1" terminals="4" uniontype="">gepLM4H1(x0,x1,x2,x3)</function>
      <function idx="10183" symbol="LM4H2" terminals="4" uniontype="">gepLM4H2(x0,x1,x2,x3)</function>
      <function idx="10184" symbol="LM4H3" terminals="4" uniontype="">gepLM4H3(x0,x1,x2,x3)</function>
      <function idx="10185" symbol="LM4H4" terminals="4" uniontype="">gepLM4H4(x0,x1,x2,x3)</function>
      <function idx="10186" symbol="LM4H5" terminals="4" uniontype="">gepLM4H5(x0,x1,x2,x3)</function>
      <function idx="10187" symbol="LM4H6" terminals="4" uniontype="">gepLM4H6(x0,x1,x2,x3)</function>
      <function idx="10188" symbol="LM4H7" terminals="4" uniontype="">gepLM4H7(x0,x1,x2,x3)</function>
      <function idx="10189" symbol="LM4H8" terminals="4" uniontype="">gepLM4H8(x0,x1,x2,x3)</function>

      <function idx="10190" symbol="LM4I1" terminals="4" uniontype="">gepLM4I1(x0,x1,x2,x3)</function>
      <function idx="10191" symbol="LM4I2" terminals="4" uniontype="">gepLM4I2(x0,x1,x2,x3)</function>
      <function idx="10192" symbol="LM4I3" terminals="4" uniontype="">gepLM4I3(x0,x1,x2,x3)</function>
      <function idx="10193" symbol="LM4I4" terminals="4" uniontype="">gepLM4I4(x0,x1,x2,x3)</function>
      <function idx="10194" symbol="LM4I5" terminals="4" uniontype="">gepLM4I5(x0,x1,x2,x3)</function>
      <function idx="10195" symbol="LM4I6" terminals="4" uniontype="">gepLM4I6(x0,x1,x2,x3)</function>
      <function idx="10196" symbol="LM4I7" terminals="4" uniontype="">gepLM4I7(x0,x1,x2,x3)</function>
      <function idx="10197" symbol="LM4I8" terminals="4" uniontype="">gepLM4I8(x0,x1,x2,x3)</function>

      <function idx="10198" symbol="LT4A" terminals="4" uniontype="">gepLT4A(x0,x1,x2,x3)</function>
      <function idx="10199" symbol="GT4A" terminals="4" uniontype="">gepGT4A(x0,x1,x2,x3)</function>
      <function idx="10200" symbol="LOE4A" terminals="4" uniontype="">gepLOE4A(x0,x1,x2,x3)</function>
      <function idx="10201" symbol="GOE4A" terminals="4" uniontype="">gepGOE4A(x0,x1,x2,x3)</function>
      <function idx="10202" symbol="ET4A" terminals="4" uniontype="">gepET4A(x0,x1,x2,x3)</function>
      <function idx="10203" symbol="NET4A" terminals="4" uniontype="">gepNET4A(x0,x1,x2,x3)</function>

      <function idx="10204" symbol="LT4B" terminals="4" uniontype="">gepLT4B(x0,x1,x2,x3)</function>
      <function idx="10205" symbol="GT4B" terminals="4" uniontype="">gepGT4B(x0,x1,x2,x3)</function>
      <function idx="10206" symbol="LOE4B" terminals="4" uniontype="">gepLOE4B(x0,x1,x2,x3)</function>
      <function idx="10207" symbol="GOE4B" terminals="4" uniontype="">gepGOE4B(x0,x1,x2,x3)</function>
      <function idx="10208" symbol="ET4B" terminals="4" uniontype="">gepET4B(x0,x1,x2,x3)</function>
      <function idx="10209" symbol="NET4B" terminals="4" uniontype="">gepNET4B(x0,x1,x2,x3)</function>

      <function idx="10210" symbol="LT4C" terminals="4" uniontype="">gepLT4C(x0,x1,x2,x3)</function>
      <function idx="10211" symbol="GT4C" terminals="4" uniontype="">gepGT4C(x0,x1,x2,x3)</function>
      <function idx="10212" symbol="LOE4C" terminals="4" uniontype="">gepLOE4C(x0,x1,x2,x3)</function>
      <function idx="10213" symbol="GOE4C" terminals="4" uniontype="">gepGOE4C(x0,x1,x2,x3)</function>
      <function idx="10214" symbol="ET4C" terminals="4" uniontype="">gepET4C(x0,x1,x2,x3)</function>
      <function idx="10215" symbol="NET4C" terminals="4" uniontype="">gepNET4C(x0,x1,x2,x3)</function>

      <function idx="10216" symbol="LT4D" terminals="4" uniontype="">gepLT4D(x0,x1,x2,x3)</function>
      <function idx="10217" symbol="GT4D" terminals="4" uniontype="">gepGT4D(x0,x1,x2,x3)</function>
      <function idx="10218" symbol="LOE4D" terminals="4" uniontype="">gepLOE4D(x0,x1,x2,x3)</function>
      <function idx="10219" symbol="GOE4D" terminals="4" uniontype="">gepGOE4D(x0,x1,x2,x3)</function>
      <function idx="10220" symbol="ET4D" terminals="4" uniontype="">gepET4D(x0,x1,x2,x3)</function>
      <function idx="10221" symbol="NET4D" terminals="4" uniontype="">gepNET4D(x0,x1,x2,x3)</function>

      <function idx="10222" symbol="LT4E" terminals="4" uniontype="">gepLT4E(x0,x1,x2,x3)</function>
      <function idx="10223" symbol="GT4E" terminals="4" uniontype="">gepGT4E(x0,x1,x2,x3)</function>
      <function idx="10224" symbol="LOE4E" terminals="4" uniontype="">gepLOE4E(x0,x1,x2,x3)</function>
      <function idx="10225" symbol="GOE4E" terminals="4" uniontype="">gepGOE4E(x0,x1,x2,x3)</function>
      <function idx="10226" symbol="ET4E" terminals="4" uniontype="">gepET4E(x0,x1,x2,x3)</function>
      <function idx="10227" symbol="NET4E" terminals="4" uniontype="">gepNET4E(x0,x1,x2,x3)</function>

      <function idx="10228" symbol="Q0002" terminals="4" uniontype="">gepQ0002(x0,x1,x2,x3)</function>
      <function idx="10229" symbol="Q001C" terminals="4" uniontype="">gepQ001C(x0,x1,x2,x3)</function>
      <function idx="10230" symbol="Q0048" terminals="4" uniontype="">gepQ0048(x0,x1,x2,x3)</function>
      <function idx="10231" symbol="Q0800" terminals="4" uniontype="">gepQ0800(x0,x1,x2,x3)</function>
      <function idx="10232" symbol="Q3378" terminals="4" uniontype="">gepQ3378(x0,x1,x2,x3)</function>

      <function idx="10233" symbol="Q3475" terminals="4" uniontype="">gepQ3475(x0,x1,x2,x3)</function>
      <function idx="10234" symbol="Q3CB0" terminals="4" uniontype="">gepQ3CB0(x0,x1,x2,x3)</function>
      <function idx="10235" symbol="Q3DEF" terminals="4" uniontype="">gepQ3DEF(x0,x1,x2,x3)</function>
      <function idx="10236" symbol="Q3DFF" terminals="4" uniontype="">gepQ3DFF(x0,x1,x2,x3)</function>
      <function idx="10237" symbol="Q4200" terminals="4" uniontype="">gepQ4200(x0,x1,x2,x3)</function>

      <function idx="10238" symbol="Q4C11" terminals="4" uniontype="">gepQ4C11(x0,x1,x2,x3)</function>
      <function idx="10239" symbol="Q5100" terminals="4" uniontype="">gepQ5100(x0,x1,x2,x3)</function>
      <function idx="10240" symbol="Q5EEF" terminals="4" uniontype="">gepQ5EEF(x0,x1,x2,x3)</function>
      <function idx="10241" symbol="Q5EFF" terminals="4" uniontype="">gepQ5EFF(x0,x1,x2,x3)</function>
      <function idx="10242" symbol="Q6A6D" terminals="4" uniontype="">gepQ6A6D(x0,x1,x2,x3)</function>

      <function idx="10243" symbol="Q6F75" terminals="4" uniontype="">gepQ6F75(x0,x1,x2,x3)</function>
      <function idx="10244" symbol="Q74C4" terminals="4" uniontype="">gepQ74C4(x0,x1,x2,x3)</function>
      <function idx="10245" symbol="Q7DA3" terminals="4" uniontype="">gepQ7DA3(x0,x1,x2,x3)</function>
      <function idx="10246" symbol="Q8304" terminals="4" uniontype="">gepQ8304(x0,x1,x2,x3)</function>
      <function idx="10247" symbol="Q8430" terminals="4" uniontype="">gepQ8430(x0,x1,x2,x3)</function>

      <function idx="10248" symbol="Q8543" terminals="4" uniontype="">gepQ8543(x0,x1,x2,x3)</function>
      <function idx="10249" symbol="Q9D80" terminals="4" uniontype="">gepQ9D80(x0,x1,x2,x3)</function>
      <function idx="10250" symbol="QA092" terminals="4" uniontype="">gepQA092(x0,x1,x2,x3)</function>
      <function idx="10251" symbol="QB36A" terminals="4" uniontype="">gepQB36A(x0,x1,x2,x3)</function>
      <function idx="10252" symbol="QCBCF" terminals="4" uniontype="">gepQCBCF(x0,x1,x2,x3)</function>

      <function idx="10253" symbol="QEEB1" terminals="4" uniontype="">gepQEEB1(x0,x1,x2,x3)</function>
      <function idx="10254" symbol="QEFFF" terminals="4" uniontype="">gepQEFFF(x0,x1,x2,x3)</function>
      <function idx="10255" symbol="QFF7B" terminals="4" uniontype="">gepQFF7B(x0,x1,x2,x3)</function>
      <function idx="10256" symbol="QFFF6" terminals="4" uniontype="">gepQFFF6(x0,x1,x2,x3)</function>
      <function idx="10257" symbol="QFFFB" terminals="4" uniontype="">gepQFFFB(x0,x1,x2,x3)</function>
   </functions>

    <!-- Code Structure -->
    <order>
        <item name="Open"></item>
        <item name="Helpers"></item>
        <item name="LinkingHelpers"></item>
        <item name="DDF"></item>
        <item name="UDF"></item>
        <item name="Header"></item>
        <item name="RandomConstants"></item>
        <item name="Constants"></item>
        <item name="TemporaryVariable"></item>
        <item name="Body"></item>
        <item name="Footer"></item>
        <item name="Close"></item>
    </order>
    
   <!-- Opening and Closing Statements -->
   <open>
       library IEEE;{CRLF}use IEEE.std_logic_1164.all;{CRLF}{CRLF}
       entity gepModel is{CRLF}
       {TAB}port (d: in bit_vector (0 to {LAST_INPUT_INDEX});{CRLF}
       {TAB}{TAB}    result: out bit);{CRLF}
       end gepModel;{CRLF}{CRLF}
       architecture gepGeneratedCode of gepModel is{CRLF}
   </open>
   <close></close>
   
   <!-- The default header is applied to all non specified cases.-->
   <headers>
      <header type="default" replace="no" format="yes"></header>
   </headers>

   <randomconstants>
       <randomconst type="default" replace="no">{TAB}constant {labelname}: bit := '{labelindex}';{CRLF}</randomconst>
   </randomconstants>

   <!-- Label constants -->
   <constants>
      <constant type="default" replace="no" labelindex="0">{TAB}constant {labelname}: integer := {labelindex};{CRLF}</constant>
   </constants>
    
   <!-- The default temporary variable name is applied to all non specified cases. -->
   <tempvars>
      <tempvar type="LS" typename="variable" varname="gene">signal gene: bit_vector (0 to {LAST_GENE_INDEX});{CRLF}{CRLF}begin</tempvar>
   </tempvars>
   <endline>;{CRLF}</endline>
   <!-- Number of TABs to add to each line in the code block -->
   <indent>1</indent>
   <!-- parenstype can be either 0=() or 1=[]. Defines the parentheses used in arrays-->
   <parenstype>0</parenstype>
   <footers>
      <footer type="default" replace="no">result &lt;= {AGGREGATED_GENES};{CRLF}{CRLF}end architecture gepGeneratedCode;{CRLF}</footer>
   </footers>
   <helpers count="242">
      <helper replaces="And3">{TAB}function gepAnd3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x and y and z);{CRLF}{TAB}end gepAnd3;{CRLF}</helper>
      <helper replaces="Or3">{TAB}function gepOr3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x or y or z);{CRLF}{TAB}end gepOr3;{CRLF}</helper>
      <helper replaces="Nand3">{TAB}function gepNand3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(x and y and z));{CRLF}{TAB}end gepNand3;{CRLF}</helper>
      <helper replaces="Nor3">{TAB}function gepNor3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(x or y or z));{CRLF}{TAB}end gepNor3;{CRLF}</helper>
      <helper replaces="Odd3">{TAB}function gepOdd3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((((not((x and y))) and (x or y)) and z))) and (((not((x and y))) and (x or y)) or z));{CRLF}{TAB}end gepOdd3;{CRLF}</helper>
      <helper replaces="Even3">{TAB}function gepEven3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((not(x)) and ((not((y and z))) and (y or z))))) and ((not(x)) or ((not((y and z))) and (y or z))));{CRLF}{TAB}end gepEven3;{CRLF}</helper>

      <helper replaces="And4">{TAB}function gepAnd4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (a and b and c and d);{CRLF}{TAB}end gepAnd4;{CRLF}</helper>
      <helper replaces="Or4">{TAB}function gepOr4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (a or b or c or d);{CRLF}{TAB}end gepOr4;{CRLF}</helper>
      <helper replaces="Nand4">{TAB}function gepNand4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(a and b and c and d));{CRLF}{TAB}end gepNand4;{CRLF}</helper>
      <helper replaces="Nor4">{TAB}function gepNor4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(a or b or c or d));{CRLF}{TAB}end gepNor4;{CRLF}</helper>
      <helper replaces="Odd4">{TAB}function gepOdd4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((((not((((not((a and b))) and (a or b)) and c))) and (((not((a and b))) and (a or b)) or c)) and d))) and (((not((((not((a and b))) and (a or b)) and c))) and (((not((a and b))) and (a or b)) or c)) or d));{CRLF}{TAB}end gepOdd4;{CRLF}</helper>
      <helper replaces="Even4">{TAB}function gepEven4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((((not((((not((a or b))) or (a and b)) or c))) or (((not((a or b))) or (a and b)) and c)) or d))) or (((not((((not((a or b))) or (a and b)) or c))) or (((not((a or b))) or (a and b)) and c)) and d));{CRLF}{TAB}end gepEven4;{CRLF}</helper>

      <helper replaces="LT">{TAB}function gepLT(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) and y);{CRLF}{TAB}end gepLT;{CRLF}</helper>
      <helper replaces="GT">{TAB}function gepGT(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x and (not(y)));{CRLF}{TAB}end gepGT;{CRLF}</helper>
      <helper replaces="LOE">{TAB}function gepLOE(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) or y);{CRLF}{TAB}end gepLOE;{CRLF}</helper>
      <helper replaces="GOE">{TAB}function gepGOE(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x or (not(y)));{CRLF}{TAB}end gepGOE;{CRLF}</helper>

      <helper replaces="LT3">{TAB}function gepLT3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((not(x)) and y))) and z);{CRLF}{TAB}end gepLT3;{CRLF}</helper>
      <helper replaces="GT3">{TAB}function gepGT3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and (not(y))) and (not(z)));{CRLF}{TAB}end gepGT3;{CRLF}</helper>
      <helper replaces="LOE3">{TAB}function gepLOE3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((not(x)) or y))) or z);{CRLF}{TAB}end gepLOE3;{CRLF}</helper>
      <helper replaces="GOE3">{TAB}function gepGOE3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x or (not((y and z))));{CRLF}{TAB}end gepGOE3;{CRLF}</helper>
      <helper replaces="Mux">{TAB}function gepMux(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) and y) or (x and z));{CRLF}{TAB}end gepMux;{CRLF}</helper>
      <helper replaces="If">{TAB}function gepIf(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) and z) or (x and y));{CRLF}{TAB}end gepIf;{CRLF}</helper>
      <helper replaces="Maj">{TAB}function gepMaj(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x or z) and y) or (x and z));{CRLF}{TAB}end gepMaj;{CRLF}</helper>
      <helper replaces="Min">{TAB}function gepMin(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((x or z) and y) or (x and z))));{CRLF}{TAB}end gepMin;{CRLF}</helper>
      <helper replaces="2Off">{TAB}function gep2Off(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((not(((x or y) or z))) or (((x and z) or y) and (x or z)))));{CRLF}{TAB}end gep2Off;{CRLF}</helper>
      <helper replaces="2On">{TAB}function gep2On(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((x and y) and z))) and ((x and (y or z)) or (y and z)));{CRLF}{TAB}end gep2On;{CRLF}</helper>

      <helper replaces="LM3A1">{TAB}function gepLM3A1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and (not(z))) or (y and z));{CRLF}{TAB}end gepLM3A1;{CRLF}</helper>
      <helper replaces="LM3A2">{TAB}function gepLM3A2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or z) and (not((y and z))));{CRLF}{TAB}end gepLM3A2;{CRLF}</helper>
      <helper replaces="LM3A3">{TAB}function gepLM3A3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or z))) or (y and z));{CRLF}{TAB}end gepLM3A3;{CRLF}</helper>
      <helper replaces="LM3A4">{TAB}function gepLM3A4(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((x or z) and (y or (not(z))))));{CRLF}{TAB}end gepLM3A4;{CRLF}</helper>

      <helper replaces="LM3B1">{TAB}function gepLM3B1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or (not(z))) and (y or z));{CRLF}{TAB}end gepLM3B1;{CRLF}</helper>
      <helper replaces="LM3B2">{TAB}function gepLM3B2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and z) or (not((y or z))));{CRLF}{TAB}end gepLM3B2;{CRLF}</helper>
      <helper replaces="LM3B3">{TAB}function gepLM3B3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and z))) and (y or z));{CRLF}{TAB}end gepLM3B3;{CRLF}</helper>
      <helper replaces="LM3B4">{TAB}function gepLM3B4(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((x and z) or (y and (not(z))))));{CRLF}{TAB}end gepLM3B4;{CRLF}</helper>

      <helper replaces="LM3C1">{TAB}function gepLM3C1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and (not(y))) or (y and z));{CRLF}{TAB}end gepLM3C1;{CRLF}</helper>
      <helper replaces="LM3C2">{TAB}function gepLM3C2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or y) and (not((y and z))));{CRLF}{TAB}end gepLM3C2;{CRLF}</helper>
      <helper replaces="LM3C3">{TAB}function gepLM3C3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or y))) or (y and z));{CRLF}{TAB}end gepLM3C3;{CRLF}</helper>
      <helper replaces="LM3C4">{TAB}function gepLM3C4(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((x and (not(y))) or (y and z))));{CRLF}{TAB}end gepLM3C4;{CRLF}</helper>

      <helper replaces="LM3D1">{TAB}function gepLM3D1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or (not(y))) and (y or z));{CRLF}{TAB}end gepLM3D1;{CRLF}</helper>
      <helper replaces="LM3D2">{TAB}function gepLM3D2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and y) or (not((y or z))));{CRLF}{TAB}end gepLM3D2;{CRLF}</helper>
      <helper replaces="LM3D3">{TAB}function gepLM3D3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and y))) and (y or z));{CRLF}{TAB}end gepLM3D3;{CRLF}</helper>
      <helper replaces="LM3D4">{TAB}function gepLM3D4(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((x or (not(y))) and (y or z))));{CRLF}{TAB}end gepLM3D4;{CRLF}</helper>

      <helper replaces="LM3E1">{TAB}function gepLM3E1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and y))) and (x or z));{CRLF}{TAB}end gepLM3E1;{CRLF}</helper>
      <helper replaces="LM3E2">{TAB}function gepLM3E2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or z))) or (x and y));{CRLF}{TAB}end gepLM3E2;{CRLF}</helper>
      <helper replaces="LM3E3">{TAB}function gepLM3E3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((not(x)) and z) or (x and y))));{CRLF}{TAB}end gepLM3E3;{CRLF}</helper>

      <helper replaces="LM3F1">{TAB}function gepLM3F1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or y))) or (x and z));{CRLF}{TAB}end gepLM3F1;{CRLF}</helper>
      <helper replaces="LM3F2">{TAB}function gepLM3F2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and z))) and (x or y));{CRLF}{TAB}end gepLM3F2;{CRLF}</helper>
      <helper replaces="LM3F3">{TAB}function gepLM3F3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((not(x)) or z) and (x or y))));{CRLF}{TAB}end gepLM3F3;{CRLF}</helper>

      <helper replaces="LM3G1">{TAB}function gepLM3G1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((x or z) and y))) and ((x and z) or y));{CRLF}{TAB}end gepLM3G1;{CRLF}</helper>
      <helper replaces="LM3G2">{TAB}function gepLM3G2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((x or y) or z))) or (x and (y and z)));{CRLF}{TAB}end gepLM3G2;{CRLF}</helper>
      <helper replaces="LM3G3">{TAB}function gepLM3G3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((x or y) and z))) and ((x and y) or z));{CRLF}{TAB}end gepLM3G3;{CRLF}</helper>
      <helper replaces="LM3G4">{TAB}function gepLM3G4(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and (y or z)))) and (x or (y and z)));{CRLF}{TAB}end gepLM3G4;{CRLF}</helper>

      <helper replaces="LM3H1">{TAB}function gepLM3H1(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((not(x and y)) and z));{CRLF}{TAB}end gepLM3H1;{CRLF}</helper>
      <helper replaces="LM3H2">{TAB}function gepLM3H2(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(x and (not(y and z))));{CRLF}{TAB}end gepLM3H2;{CRLF}</helper>
      <helper replaces="LM3H3">{TAB}function gepLM3H3(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((not(x or y)) or z));{CRLF}{TAB}end gepLM3H3;{CRLF}</helper>
      <helper replaces="LM3H4">{TAB}function gepLM3H4(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(x or (not(y or z))));{CRLF}{TAB}end gepLM3H4;{CRLF}</helper>

      <helper replaces="LT3A">{TAB}function gepLT3A(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and (not(z))) or (not(y)));{CRLF}{TAB}end gepLT3A;{CRLF}</helper>
      <helper replaces="GT3A">{TAB}function gepGT3A(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) or (y or z)) and (not((y and z))));{CRLF}{TAB}end gepGT3A;{CRLF}</helper>
      <helper replaces="LOE3A">{TAB}function gepLOE3A(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x and ((not(y)) or z));{CRLF}{TAB}end gepLOE3A;{CRLF}</helper>
      <helper replaces="GOE3A">{TAB}function gepGOE3A(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((x or z) or (not(y))) and (not((x and z))))));{CRLF}{TAB}end gepGOE3A;{CRLF}</helper>
      <helper replaces="ET3A">{TAB}function gepET3A(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and ((not(y)) or z)) or ((not((x or z))) and y));{CRLF}{TAB}end gepET3A;{CRLF}</helper>
      <helper replaces="NET3A">{TAB}function gepNET3A(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((x and y) or z) and (not((y and z)))) or (not((x or y))));{CRLF}{TAB}end gepNET3A;{CRLF}</helper>

      <helper replaces="LT3B">{TAB}function gepLT3B(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) or z) and y);{CRLF}{TAB}end gepLT3B;{CRLF}</helper>
      <helper replaces="GT3B">{TAB}function gepGT3B(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((not(x)) or (y or z)) and (not((y and z))))));{CRLF}{TAB}end gepGT3B;{CRLF}</helper>
      <helper replaces="LOE3B">{TAB}function gepLOE3B(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) or (y and (not(z))));{CRLF}{TAB}end gepLOE3B;{CRLF}</helper>
      <helper replaces="GOE3B">{TAB}function gepGOE3B(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and z))) and ((x or z) or (not(y))));{CRLF}{TAB}end gepGOE3B;{CRLF}</helper>
      <helper replaces="ET3B">{TAB}function gepET3B(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or y))) or (((x or z) and y) and (not((x and z)))));{CRLF}{TAB}end gepET3B;{CRLF}</helper>
      <helper replaces="NET3B">{TAB}function gepNET3B(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and (not((y or z)))) or (((not(x)) or z) and y));{CRLF}{TAB}end gepNET3B;{CRLF}</helper>

      <helper replaces="LT3C">{TAB}function gepLT3C(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((not(x)) and (y and z)) or (not((y or z))))));{CRLF}{TAB}end gepLT3C;{CRLF}</helper>
      <helper replaces="GT3C">{TAB}function gepGT3C(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) and z) or y);{CRLF}{TAB}end gepGT3C;{CRLF}</helper>
      <helper replaces="LOE3C">{TAB}function gepLOE3C(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or z))) or ((x and z) and (not(y))));{CRLF}{TAB}end gepLOE3C;{CRLF}</helper>
      <helper replaces="GOE3C">{TAB}function gepGOE3C(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) and (y or (not(z))));{CRLF}{TAB}end gepGOE3C;{CRLF}</helper>
      <helper replaces="ET3C">{TAB}function gepET3C(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x and (not(y))) and z) or (not((x or ((not(y)) and z)))));{CRLF}{TAB}end gepET3C;{CRLF}</helper>
      <helper replaces="NET3C">{TAB}function gepNET3C(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and y) or ((not(((x or y) and z))) and (y or z)));{CRLF}{TAB}end gepNET3C;{CRLF}</helper>

      <helper replaces="T004">{TAB}function gepT004(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or z))) and y);{CRLF}{TAB}end gepT004;{CRLF}</helper>
      <helper replaces="T008">{TAB}function gepT008(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) and (y and z));{CRLF}{TAB}end gepT008;{CRLF}</helper>
      <helper replaces="T009">{TAB}function gepT009(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((x or y) or z))) or ((not(x)) and (y and z)));{CRLF}{TAB}end gepT009;{CRLF}</helper>
      <helper replaces="T032">{TAB}function gepT032(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and z) and (not(y)));{CRLF}{TAB}end gepT032;{CRLF}</helper>

      <helper replaces="T033">{TAB}function gepT033(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((x or z) and (not((x and z)))) or y)));{CRLF}{TAB}end gepT033;{CRLF}</helper>
      <helper replaces="T041">{TAB}function gepT041(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((x or y) or z))) or ((not((x and y))) and ((x or y) and z)));{CRLF}{TAB}end gepT041;{CRLF}</helper>
      <helper replaces="T055">{TAB}function gepT055(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((x or z) and y)));{CRLF}{TAB}end gepT055;{CRLF}</helper>
      <helper replaces="T057">{TAB}function gepT057(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x or (y and z)) or (not((y or z)))) and (not((x and y))));{CRLF}{TAB}end gepT057;{CRLF}</helper>

      <helper replaces="T064">{TAB}function gepT064(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and y) and (not(z)));{CRLF}{TAB}end gepT064;{CRLF}</helper>
      <helper replaces="T065">{TAB}function gepT065(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x and y) or (not((x or y)))) and (not(z)));{CRLF}{TAB}end gepT065;{CRLF}</helper>
      <helper replaces="T069">{TAB}function gepT069(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((x and (not(y))) or z)));{CRLF}{TAB}end gepT069;{CRLF}</helper>
      <helper replaces="T073">{TAB}function gepT073(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x or (y or z)))) or (((x or z) and y) and (not((x and z)))));{CRLF}{TAB}end gepT073;{CRLF}</helper>

      <helper replaces="T081">{TAB}function gepT081(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or (not(y))) and (not(z)));{CRLF}{TAB}end gepT081;{CRLF}</helper>
      <helper replaces="T089">{TAB}function gepT089(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((x or (not(y))) and z) or (not(((x or (not(y))) or z))))));{CRLF}{TAB}end gepT089;{CRLF}</helper>
      <helper replaces="T093">{TAB}function gepT093(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) and y) or (not(z)));{CRLF}{TAB}end gepT093;{CRLF}</helper>
      <helper replaces="T096">{TAB}function gepT096(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x and (y or z)) and (not((y and z))));{CRLF}{TAB}end gepT096;{CRLF}</helper>

      <helper replaces="T101">{TAB}function gepT101(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x and (y or z)) or (not((x or z)))) and (not((y and z))));{CRLF}{TAB}end gepT101;{CRLF}</helper>
      <helper replaces="T109">{TAB}function gepT109(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((x and (y and z)))) and (((x and z) or y) or (not((x or z)))));{CRLF}{TAB}end gepT109;{CRLF}</helper>
      <helper replaces="T111">{TAB}function gepT111(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((x and ((not((y or z))) or (y and z)))));{CRLF}{TAB}end gepT111;{CRLF}</helper>
      <helper replaces="T121">{TAB}function gepT121(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x or (y and z)) or (not((y or z)))) and (not(((x and y) and z))));{CRLF}{TAB}end gepT121;{CRLF}</helper>

      <helper replaces="T123">{TAB}function gepT123(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(y)) or ((not((x and z))) and (x or z)));{CRLF}{TAB}end gepT123;{CRLF}</helper>
      <helper replaces="T125">{TAB}function gepT125(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((x and y) or (not((x or y)))) and z)));{CRLF}{TAB}end gepT125;{CRLF}</helper>
      <helper replaces="T154">{TAB}function gepT154(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((x and (not(y))) or z) and ((not((x and z))) or y));{CRLF}{TAB}end gepT154;{CRLF}</helper>
      <helper replaces="T223">{TAB}function gepT223(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(x)) or y) or (not(z)));{CRLF}{TAB}end gepT223;{CRLF}</helper>

      <helper replaces="T239">{TAB}function gepT239(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) or (y or z));{CRLF}{TAB}end gepT239;{CRLF}</helper>
      <helper replaces="T249">{TAB}function gepT249(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or (y and z)) or (not((y or z))));{CRLF}{TAB}end gepT249;{CRLF}</helper>
      <helper replaces="T251">{TAB}function gepT251(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or z) or (not(y)));{CRLF}{TAB}end gepT251;{CRLF}</helper>
      <helper replaces="T253">{TAB}function gepT253(x, y, z: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((x or y) or (not(z)));{CRLF}{TAB}end gepT253;{CRLF}</helper>

      <helper replaces="LT4">{TAB}function gepLT4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((not(((not(a)) and b))) and c))) and d);{CRLF}{TAB}end gepLT4;{CRLF}</helper>
      <helper replaces="GT4">{TAB}function gepGT4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) and (not(c))) and (not(d)));{CRLF}{TAB}end gepGT4;{CRLF}</helper>
      <helper replaces="LOE4">{TAB}function gepLOE4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((not(((not(a)) or b))) or c))) or d);{CRLF}{TAB}end gepLOE4;{CRLF}</helper>
      <helper replaces="GOE4">{TAB}function gepGOE4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a or (not(b))) or (not(c))) or (not(d)));{CRLF}{TAB}end gepGOE4;{CRLF}</helper>

      <helper replaces="Tie">{TAB}function gepTie(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((not(((((a and b) or c) or d) and ((a or b) or (c and d))))) or ((((a and c) or (not(b))) or d) and (((a and d) and (b or c)) or (b and c))))));{CRLF}{TAB}end gepTie;{CRLF}</helper>
      <helper replaces="Ntie">{TAB}function gepNtie(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((((a and d) or (b and c)) or ((a or d) and (b or c))))) or (((a or b) and (c and d)) or ((a and b) and (c or d))));{CRLF}{TAB}end gepNtie;{CRLF}</helper>
      <helper replaces="3Off">{TAB}function gep3Off(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((((a or d) and b) or (a and d)))) and ((a or (b or d)) and (not(c))));{CRLF}{TAB}end gep3Off;{CRLF}</helper>
      <helper replaces="3On">{TAB}function gep3On(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((not(((((a and b) or (c and d)) and (a or b)) and ((c and (not(d))) or d)))) or (a and (b and (c and d))))));{CRLF}{TAB}end gep3On;{CRLF}</helper>

      <helper replaces="LM4A1">{TAB}function gepLM4A1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or d) and ((b or c) or (not(d))));{CRLF}{TAB}end gepLM4A1;{CRLF}</helper>
      <helper replaces="LM4A2">{TAB}function gepLM4A2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a or d) and (not((b and d)))) or (c and d));{CRLF}{TAB}end gepLM4A2;{CRLF}</helper>
      <helper replaces="LM4A3">{TAB}function gepLM4A3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or d) and (b or (not((c and d)))));{CRLF}{TAB}end gepLM4A3;{CRLF}</helper>
      <helper replaces="LM4A4">{TAB}function gepLM4A4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or d) and (not(((b and c) and d))));{CRLF}{TAB}end gepLM4A4;{CRLF}</helper>
      <helper replaces="LM4A5">{TAB}function gepLM4A5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a or d))) or ((b or c) and d));{CRLF}{TAB}end gepLM4A5;{CRLF}</helper>
      <helper replaces="LM4A6">{TAB}function gepLM4A6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a and (not(d))) or ((b and d) and (not(c))))));{CRLF}{TAB}end gepLM4A6;{CRLF}</helper>
      <helper replaces="LM4A7">{TAB}function gepLM4A7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a or d))) or ((b or (not(c))) and d));{CRLF}{TAB}end gepLM4A7;{CRLF}</helper>
      <helper replaces="LM4A8">{TAB}function gepLM4A8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or d) and ((b and c) or (not(d))))));{CRLF}{TAB}end gepLM4A8;{CRLF}</helper>

      <helper replaces="LM4B1">{TAB}function gepLM4B1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and d) or ((b and c) and (not(d))));{CRLF}{TAB}end gepLM4B1;{CRLF}</helper>
      <helper replaces="LM4B2">{TAB}function gepLM4B2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and d) or ((not((b or d))) and c));{CRLF}{TAB}end gepLM4B2;{CRLF}</helper>
      <helper replaces="LM4B3">{TAB}function gepLM4B3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and d) or (not(((not(b)) or (c or d)))));{CRLF}{TAB}end gepLM4B3;{CRLF}</helper>
      <helper replaces="LM4B4">{TAB}function gepLM4B4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and d) or (not(((b or c) or d))));{CRLF}{TAB}end gepLM4B4;{CRLF}</helper>
      <helper replaces="LM4B5">{TAB}function gepLM4B5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a and d))) and ((b and c) or d));{CRLF}{TAB}end gepLM4B5;{CRLF}</helper>
      <helper replaces="LM4B6">{TAB}function gepLM4B6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a or (not(d))) and (b or d)))) and (c or d));{CRLF}{TAB}end gepLM4B6;{CRLF}</helper>
      <helper replaces="LM4B7">{TAB}function gepLM4B7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) and d) or (not(((not(b)) or (c or d)))));{CRLF}{TAB}end gepLM4B7;{CRLF}</helper>
      <helper replaces="LM4B8">{TAB}function gepLM4B8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a and d) or ((b or c) and (not(d))))));{CRLF}{TAB}end gepLM4B8;{CRLF}</helper>

      <helper replaces="LM4C1">{TAB}function gepLM4C1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or b) and ((not(b)) or (c or d)));{CRLF}{TAB}end gepLM4C1;{CRLF}</helper>
      <helper replaces="LM4C2">{TAB}function gepLM4C2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or b) and (((not(b)) or (not(c))) or d));{CRLF}{TAB}end gepLM4C2;{CRLF}</helper>
      <helper replaces="LM4C3">{TAB}function gepLM4C3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or b) and ((not((b and d))) or c));{CRLF}{TAB}end gepLM4C3;{CRLF}</helper>
      <helper replaces="LM4C4">{TAB}function gepLM4C4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((not((a or b))) or ((b and c) and d))));{CRLF}{TAB}end gepLM4C4;{CRLF}</helper>
      <helper replaces="LM4C5">{TAB}function gepLM4C5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a or b))) or (b and (c or d)));{CRLF}{TAB}end gepLM4C5;{CRLF}</helper>
      <helper replaces="LM4C6">{TAB}function gepLM4C6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a or b))) or (b and ((not(c)) or d)));{CRLF}{TAB}end gepLM4C6;{CRLF}</helper>
      <helper replaces="LM4C7">{TAB}function gepLM4C7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a or b))) or (b and (c or (not(d)))));{CRLF}{TAB}end gepLM4C7;{CRLF}</helper>
      <helper replaces="LM4C8">{TAB}function gepLM4C8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or b) and ((not(b)) or (c and d)))));{CRLF}{TAB}end gepLM4C8;{CRLF}</helper>

      <helper replaces="LM4D1">{TAB}function gepLM4D1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and b) or ((not(b)) and (c and d)));{CRLF}{TAB}end gepLM4D1;{CRLF}</helper>
      <helper replaces="LM4D2">{TAB}function gepLM4D2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and b) or ((not((b or c))) and d));{CRLF}{TAB}end gepLM4D2;{CRLF}</helper>
      <helper replaces="LM4D3">{TAB}function gepLM4D3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((not((a and b))) and ((b or (not(c))) or d))));{CRLF}{TAB}end gepLM4D3;{CRLF}</helper>
      <helper replaces="LM4D4">{TAB}function gepLM4D4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and b) or (not(((b or c) or d))));{CRLF}{TAB}end gepLM4D4;{CRLF}</helper>
      <helper replaces="LM4D5">{TAB}function gepLM4D5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a and b))) and (b or (c and d)));{CRLF}{TAB}end gepLM4D5;{CRLF}</helper>
      <helper replaces="LM4D6">{TAB}function gepLM4D6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a and b))) and (b or ((not(c)) and d)));{CRLF}{TAB}end gepLM4D6;{CRLF}</helper>
      <helper replaces="LM4D7">{TAB}function gepLM4D7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or (not(b))) and ((b or (not(c))) or d))));{CRLF}{TAB}end gepLM4D7;{CRLF}</helper>
      <helper replaces="LM4D8">{TAB}function gepLM4D8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a and b) or ((not(b)) and (c or d)))));{CRLF}{TAB}end gepLM4D8;{CRLF}</helper>

      <helper replaces="LM4E1">{TAB}function gepLM4E1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or c) and ((b or (not(c))) or d));{CRLF}{TAB}end gepLM4E1;{CRLF}</helper>
      <helper replaces="LM4E2">{TAB}function gepLM4E2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or c) and ((not((b and c))) or d));{CRLF}{TAB}end gepLM4E2;{CRLF}</helper>
      <helper replaces="LM4E3">{TAB}function gepLM4E3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or c) and (b or (not((c and d)))));{CRLF}{TAB}end gepLM4E3;{CRLF}</helper>
      <helper replaces="LM4E4">{TAB}function gepLM4E4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or c) and (not(((b and c) and d))));{CRLF}{TAB}end gepLM4E4;{CRLF}</helper>
      <helper replaces="LM4E5">{TAB}function gepLM4E5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a or c))) or ((b or d) and c));{CRLF}{TAB}end gepLM4E5;{CRLF}</helper>
      <helper replaces="LM4E6">{TAB}function gepLM4E6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a and (not(c))) or ((b and c) and (not(d))))));{CRLF}{TAB}end gepLM4E6;{CRLF}</helper>
      <helper replaces="LM4E7">{TAB}function gepLM4E7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) or c) and ((b or (not(c))) or (not(d))));{CRLF}{TAB}end gepLM4E7;{CRLF}</helper>
      <helper replaces="LM4E8">{TAB}function gepLM4E8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or c) and ((b and d) or (not(c))))));{CRLF}{TAB}end gepLM4E8;{CRLF}</helper>

      <helper replaces="LM4F1">{TAB}function gepLM4F1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and c) or ((b and (not(c))) and d));{CRLF}{TAB}end gepLM4F1;{CRLF}</helper>
      <helper replaces="LM4F2">{TAB}function gepLM4F2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and c) or ((not((b or c))) and d));{CRLF}{TAB}end gepLM4F2;{CRLF}</helper>
      <helper replaces="LM4F3">{TAB}function gepLM4F3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and c) or (b and (not((c or d)))));{CRLF}{TAB}end gepLM4F3;{CRLF}</helper>
      <helper replaces="LM4F4">{TAB}function gepLM4F4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and c) or (not(((b or c) or d))));{CRLF}{TAB}end gepLM4F4;{CRLF}</helper>
      <helper replaces="LM4F5">{TAB}function gepLM4F5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a and c))) and ((b and d) or c));{CRLF}{TAB}end gepLM4F5;{CRLF}</helper>
      <helper replaces="LM4F6">{TAB}function gepLM4F6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or (not(c))) and ((b or c) or (not(d))))));{CRLF}{TAB}end gepLM4F6;{CRLF}</helper>
      <helper replaces="LM4F7">{TAB}function gepLM4F7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or (not(c))) and ((not(b)) or (c or d)))));{CRLF}{TAB}end gepLM4F7;{CRLF}</helper>
      <helper replaces="LM4F8">{TAB}function gepLM4F8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) and c) or (not(((b or c) or d))));{CRLF}{TAB}end gepLM4F8;{CRLF}</helper>

      <helper replaces="LM4G1">{TAB}function gepLM4G1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) or (b or c)) and (a or d));{CRLF}{TAB}end gepLM4G1;{CRLF}</helper>
      <helper replaces="LM4G2">{TAB}function gepLM4G2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a and b) and (not(c))))) and (a or d));{CRLF}{TAB}end gepLM4G2;{CRLF}</helper>
      <helper replaces="LM4G3">{TAB}function gepLM4G3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or d) and ((not((a and c))) or b));{CRLF}{TAB}end gepLM4G3;{CRLF}</helper>
      <helper replaces="LM4G4">{TAB}function gepLM4G4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a and b) and c))) and (a or d));{CRLF}{TAB}end gepLM4G4;{CRLF}</helper>
      <helper replaces="LM4G5">{TAB}function gepLM4G5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and (b or c)) or (not((a or d))));{CRLF}{TAB}end gepLM4G5;{CRLF}</helper>
      <helper replaces="LM4G6">{TAB}function gepLM4G6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and ((not(b)) or c)) or (not((a or d))));{CRLF}{TAB}end gepLM4G6;{CRLF}</helper>
      <helper replaces="LM4G7">{TAB}function gepLM4G7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((a and (not(b))) and c) or ((not(a)) and d))));{CRLF}{TAB}end gepLM4G7;{CRLF}</helper>
      <helper replaces="LM4G8">{TAB}function gepLM4G8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a and b) and c))) and (a or (not(d))));{CRLF}{TAB}end gepLM4G8;{CRLF}</helper>

      <helper replaces="LM4H1">{TAB}function gepLM4H1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) and (b and c)) or (a and d));{CRLF}{TAB}end gepLM4H1;{CRLF}</helper>
      <helper replaces="LM4H2">{TAB}function gepLM4H2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and (not(b))) and c) or (a and d));{CRLF}{TAB}end gepLM4H2;{CRLF}</helper>
      <helper replaces="LM4H3">{TAB}function gepLM4H3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and d) or ((not((a or c))) and b));{CRLF}{TAB}end gepLM4H3;{CRLF}</helper>
      <helper replaces="LM4H4">{TAB}function gepLM4H4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((a or b) or c) and (not((a and d))))));{CRLF}{TAB}end gepLM4H4;{CRLF}</helper>
      <helper replaces="LM4H5">{TAB}function gepLM4H5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) and (b and c)) or (a and (not(d))));{CRLF}{TAB}end gepLM4H5;{CRLF}</helper>
      <helper replaces="LM4H6">{TAB}function gepLM4H6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or ((not(b)) and c)) and (not((a and d))));{CRLF}{TAB}end gepLM4H6;{CRLF}</helper>
      <helper replaces="LM4H7">{TAB}function gepLM4H7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or (b and (not(c)))) and (not((a and d))));{CRLF}{TAB}end gepLM4H7;{CRLF}</helper>
      <helper replaces="LM4H8">{TAB}function gepLM4H8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((not(a)) and (b or c)) or (a and d))));{CRLF}{TAB}end gepLM4H8;{CRLF}</helper>

      <helper replaces="LM4I1">{TAB}function gepLM4I1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((not((not(a and b)) and c)) and d));{CRLF}{TAB}end gepLM4I1;{CRLF}</helper>
      <helper replaces="LM4I2">{TAB}function gepLM4I2(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(a and (not(b and (not(c and d))))));{CRLF}{TAB}end gepLM4I2;{CRLF}</helper>
      <helper replaces="LM4I3">{TAB}function gepLM4I3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((not(a and (not(b and c)))) and d));{CRLF}{TAB}end gepLM4I3;{CRLF}</helper>
      <helper replaces="LM4I4">{TAB}function gepLM4I4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(a and (not((not(b and c)) and d))));{CRLF}{TAB}end gepLM4I4;{CRLF}</helper>
      <helper replaces="LM4I5">{TAB}function gepLM4I5(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((not((not(a or b)) or c)) or d));{CRLF}{TAB}end gepLM4I5;{CRLF}</helper>
      <helper replaces="LM4I6">{TAB}function gepLM4I6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(a or (not(b or (not(c or d))))));{CRLF}{TAB}end gepLM4I6;{CRLF}</helper>
      <helper replaces="LM4I7">{TAB}function gepLM4I7(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((not(a or (not(b or c)))) or d));{CRLF}{TAB}end gepLM4I7;{CRLF}</helper>
      <helper replaces="LM4I8">{TAB}function gepLM4I8(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(a or (not((not(b or c)) or d))));{CRLF}{TAB}end gepLM4I8;{CRLF}</helper>

      <helper replaces="LT4A">{TAB}function gepLT4A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and b) and c) or ((a or (not(b))) and d));{CRLF}{TAB}end gepLT4A;{CRLF}</helper>
      <helper replaces="GT4A">{TAB}function gepGT4A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) and c) or (((not(a)) or b) and d));{CRLF}{TAB}end gepGT4A;{CRLF}</helper>
      <helper replaces="LOE4A">{TAB}function gepLOE4A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) or c) and ((not(a)) or (b or d)));{CRLF}{TAB}end gepLOE4A;{CRLF}</helper>
      <helper replaces="GOE4A">{TAB}function gepGOE4A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and b) or c) and ((a or (not(b))) or d));{CRLF}{TAB}end gepGOE4A;{CRLF}</helper>
      <helper replaces="ET4A">{TAB}function gepET4A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a and b) or (not((a or b)))) and c) or ((not((a and b))) and ((a or b) and d)));{CRLF}{TAB}end gepET4A;{CRLF}</helper>
      <helper replaces="NET4A">{TAB}function gepNET4A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a and b) or c) or (not((a or b)))) and (((a or b) and (not((a and b)))) or d));{CRLF}{TAB}end gepNET4A;{CRLF}</helper>

      <helper replaces="LT4B">{TAB}function gepLT4B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or ((not(b)) or (c and d))) and (not(((a or (not(b))) and d))));{CRLF}{TAB}end gepLT4B;{CRLF}</helper>
      <helper replaces="GT4B">{TAB}function gepGT4B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) and (c and d)) or (not(((a and (not(b))) or d))));{CRLF}{TAB}end gepGT4B;{CRLF}</helper>
      <helper replaces="LOE4B">{TAB}function gepLOE4B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) or b) and (c and d)) or (a and ((not(b)) and (not(d)))));{CRLF}{TAB}end gepLOE4B;{CRLF}</helper>
      <helper replaces="GOE4B">{TAB}function gepGOE4B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a or (not(b))) and c) and d) or ((not((a or d))) and b));{CRLF}{TAB}end gepGOE4B;{CRLF}</helper>
      <helper replaces="ET4B">{TAB}function gepET4B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a and b) or (not((a or b)))) and (c and d)) or ((a or b) and (not(((a and b) or d)))));{CRLF}{TAB}end gepET4B;{CRLF}</helper>
      <helper replaces="NET4B">{TAB}function gepNET4B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((a and b) or (not(((a or b) and (c and d))))) and (((a or b) and (not((a and b)))) or d))));{CRLF}{TAB}end gepNET4B;{CRLF}</helper>

      <helper replaces="LT4C">{TAB}function gepLT4C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and b) and (c or d)) or ((not(((not(a)) and b))) and (not(d))));{CRLF}{TAB}end gepLT4C;{CRLF}</helper>
      <helper replaces="GT4C">{TAB}function gepGT4C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) and (c or d)) or (not(((a and (not(b))) or d))));{CRLF}{TAB}end gepGT4C;{CRLF}</helper>
      <helper replaces="LOE4C">{TAB}function gepLOE4C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a and (not(b))) or c) or d) and ((not((a and d))) or b));{CRLF}{TAB}end gepLOE4C;{CRLF}</helper>
      <helper replaces="GOE4C">{TAB}function gepGOE4C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and b) or (c or d)) and (a or (not((b and d)))));{CRLF}{TAB}end gepGOE4C;{CRLF}</helper>
      <helper replaces="ET4C">{TAB}function gepET4C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((((a or b) and (not((a and b)))) or c) or d) and ((a and b) or (not(((a or b) and d)))));{CRLF}{TAB}end gepET4C;{CRLF}</helper>
      <helper replaces="NET4C">{TAB}function gepNET4C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((a and b) or (not(((a or b) and (c or d))))) and (((a or b) and (not((a and b)))) or d))));{CRLF}{TAB}end gepNET4C;{CRLF}</helper>

      <helper replaces="LT4D">{TAB}function gepLT4D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((not(a)) and b) or (c and d))));{CRLF}{TAB}end gepLT4D;{CRLF}</helper>
      <helper replaces="GT4D">{TAB}function gepGT4D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not((((((not(a)) or b) and c) and d) or (a and (not((b or d)))))));{CRLF}{TAB}end gepGT4D;{CRLF}</helper>
      <helper replaces="LOE4D">{TAB}function gepLOE4D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (a and ((not((b or (c and d)))) or (b and d)));{CRLF}{TAB}end gepLOE4D;{CRLF}</helper>
      <helper replaces="GOE4D">{TAB}function gepGOE4D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not((a or (c and d)))) and b) or (a and d));{CRLF}{TAB}end gepGOE4D;{CRLF}</helper>
      <helper replaces="ET4D">{TAB}function gepET4D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or b) and (not((((a and b) or (c and d)) and (not(((a and b) and d)))))));{CRLF}{TAB}end gepET4D;{CRLF}</helper>
      <helper replaces="NET4D">{TAB}function gepNET4D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) or (not((c and d)))) and ((not((a or b))) or (a and (b or d))));{CRLF}{TAB}end gepNET4D;{CRLF}</helper>

      <helper replaces="LT4E">{TAB}function gepLT4E(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not(a)) and b) or (a and c));{CRLF}{TAB}end gepLT4E;{CRLF}</helper>
      <helper replaces="GT4E">{TAB}function gepGT4E(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (a and ((b and c) or (not((b or d)))));{CRLF}{TAB}end gepGT4E;{CRLF}</helper>
      <helper replaces="LOE4E">{TAB}function gepLOE4E(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(a)) or ((b or c) and (not((b and d)))));{CRLF}{TAB}end gepLOE4E;{CRLF}</helper>
      <helper replaces="GOE4E">{TAB}function gepGOE4E(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or (not(b))) and (not((a and d))));{CRLF}{TAB}end gepGOE4E;{CRLF}</helper>
      <helper replaces="ET4E">{TAB}function gepET4E(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (b or c)) or (not((a or b)))) and (not((b and d))));{CRLF}{TAB}end gepET4E;{CRLF}</helper>
      <helper replaces="NET4E">{TAB}function gepNET4E(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) or c) and b) or ((a and (not(b))) and (not(d))));{CRLF}{TAB}end gepNET4E;{CRLF}</helper>

      <helper replaces="Q0002">{TAB}function gepQ0002(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and (not(b))) and (not(c))) and d);{CRLF}{TAB}end gepQ0002;{CRLF}</helper>
      <helper replaces="Q001C">{TAB}function gepQ001C(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or (b and (c or d))) or (not((b or c))))));{CRLF}{TAB}end gepQ001C;{CRLF}</helper>
      <helper replaces="Q0048">{TAB}function gepQ0048(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and (b or d)) and (not((b and d)))) and c);{CRLF}{TAB}end gepQ0048;{CRLF}</helper>
      <helper replaces="Q0800">{TAB}function gepQ0800(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((a and (not(b))) and c) and d);{CRLF}{TAB}end gepQ0800;{CRLF}</helper>
      <helper replaces="Q3378">{TAB}function gepQ3378(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a or (b and d)) and c))) and ((a or (c and d)) or b));{CRLF}{TAB}end gepQ3378;{CRLF}</helper>

      <helper replaces="Q3475">{TAB}function gepQ3475(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or d) and ((not((b or c))) or ((b or d) and c)))));{CRLF}{TAB}end gepQ3475;{CRLF}</helper>
      <helper replaces="Q3CB0">{TAB}function gepQ3CB0(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and d) or ((not(b)) or (not(c)))) and ((a and c) or b));{CRLF}{TAB}end gepQ3CB0;{CRLF}</helper>
      <helper replaces="Q3DEF">{TAB}function gepQ3DEF(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((((a and d) or c) and (not(c))) or b))) or ((((a or c) or d) and (not((a and c)))) and b));{CRLF}{TAB}end gepQ3DEF;{CRLF}</helper>
      <helper replaces="Q3DFF">{TAB}function gepQ3DFF(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(a)) or ((not((b and c))) and ((b or c) or (not(d)))));{CRLF}{TAB}end gepQ3DFF;{CRLF}</helper>
      <helper replaces="Q4200">{TAB}function gepQ4200(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a and c) or (not(b))) and ((a and d) or b)) and (not((c and d))));{CRLF}{TAB}end gepQ4200;{CRLF}</helper>

      <helper replaces="Q4C11">{TAB}function gepQ4C11(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((a or (c or d)) and (not(((a and ((not(b)) or (not(d)))) and c))))));{CRLF}{TAB}end gepQ4C11;{CRLF}</helper>
      <helper replaces="Q5100">{TAB}function gepQ5100(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and (b or (not(c)))) and (not(d)));{CRLF}{TAB}end gepQ5100;{CRLF}</helper>
      <helper replaces="Q5EEF">{TAB}function gepQ5EEF(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not((a or b))) or c) or ((a or d) and (b or d))) and (not(((a and b) and d))));{CRLF}{TAB}end gepQ5EEF;{CRLF}</helper>
      <helper replaces="Q5EFF">{TAB}function gepQ5EFF(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(a)) or (((b or c) or d) and (not((b and d)))));{CRLF}{TAB}end gepQ5EFF;{CRLF}</helper>
      <helper replaces="Q6A6D">{TAB}function gepQ6A6D(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((not((((a or c) and d) or (b and (c or d))))) and (not(((not(a)) and ((not(b)) and (not(d))))))))) and (not((b and (c and d)))));{CRLF}{TAB}end gepQ6A6D;{CRLF}</helper>

      <helper replaces="Q6F75">{TAB}function gepQ6F75(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (not(((((not((a or b))) or b) and ((a and (not(c))) or d)) and (((not(b)) or (not(d))) or c))));{CRLF}{TAB}end gepQ6F75;{CRLF}</helper>
      <helper replaces="Q74C4">{TAB}function gepQ74C4(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((not(a)) and b) or (not((c and d)))) and ((a and b) or c));{CRLF}{TAB}end gepQ74C4;{CRLF}</helper>
      <helper replaces="Q7DA3">{TAB}function gepQ7DA3(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a and (not(((((a and c) and b) or (not((b or c)))) and d)))) or ((not(a)) and ((not((b or c))) or (b and d))));{CRLF}{TAB}end gepQ7DA3;{CRLF}</helper>
      <helper replaces="Q8304">{TAB}function gepQ8304(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not((((a or d) and c) or b))) or (((a and b) and c) and d)) and (a or c));{CRLF}{TAB}end gepQ8304;{CRLF}</helper>
      <helper replaces="Q8430">{TAB}function gepQ8430(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not((a or c))) and b) or (((a and c) and ((not(b)) or d)) and (b or (not(d)))));{CRLF}{TAB}end gepQ8430;{CRLF}</helper>

      <helper replaces="Q8543">{TAB}function gepQ8543(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a and d) or (((not((a and d))) and ((not(a)) and (b or c))) or b)))) or (((((not(a)) and ((b or c) and (not(d)))) or (a and d)) and b) and c));{CRLF}{TAB}end gepQ8543;{CRLF}</helper>
      <helper replaces="Q9D80">{TAB}function gepQ9D80(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((((a or b) and c) and d) or ((a and (not(d))) and (not((b and c)))));{CRLF}{TAB}end gepQ9D80;{CRLF}</helper>
      <helper replaces="QA092">{TAB}function gepQA092(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not((((a or b) and d) or (a or c)))) and (((a and c) or b) or d)) or ((a or c) and (b and d)));{CRLF}{TAB}end gepQA092;{CRLF}</helper>
      <helper replaces="QB36A">{TAB}function gepQB36A(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or ((b and c) or d)) and (not(((((not((a and d))) or (not(b))) and (a or (b and d))) and c))));{CRLF}{TAB}end gepQB36A;{CRLF}</helper>
      <helper replaces="QCBCF">{TAB}function gepQCBCF(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(((a and c) or b))) or ((b or d) and c));{CRLF}{TAB}end gepQCBCF;{CRLF}</helper>

      <helper replaces="QEEB1">{TAB}function gepQEEB1(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (((not((a or c))) or ((a and c) or d)) and ((a or b) or (not(d))));{CRLF}{TAB}end gepQEEB1;{CRLF}</helper>
      <helper replaces="QEFFF">{TAB}function gepQEFFF(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not((a and b))) or (c or d));{CRLF}{TAB}end gepQEFFF;{CRLF}</helper>
      <helper replaces="QFF7B">{TAB}function gepQFF7B(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or (not(c))) or ((not((b and d))) and (b or d)));{CRLF}{TAB}end gepQFF7B;{CRLF}</helper>
      <helper replaces="QFFF6">{TAB}function gepQFFF6(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (a or (b or ((not((c and d))) and (c or d))));{CRLF}{TAB}end gepQFFF6;{CRLF}</helper>
      <helper replaces="QFFFB">{TAB}function gepQFFFB(a, b, c, d: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((a or b) or ((not(c)) or d));{CRLF}{TAB}end gepQFFFB;{CRLF}</helper>

   </helpers>

   <keywords>
      <keyword>library</keyword>
      <keyword>use</keyword>
      <keyword>entity</keyword>
      <keyword>is</keyword>
      <keyword>of</keyword>
      <keyword>port</keyword>
      <keyword>in</keyword>
      <keyword>out</keyword>
      <keyword>architecture</keyword>
      <keyword>begin</keyword>
      <keyword>end</keyword>
      <keyword>bit_vector</keyword>
      <keyword>bit</keyword>
      <keyword>to</keyword>
      <keyword>function</keyword>
      <keyword>return</keyword>
      <keyword>signal</keyword>
      <keyword>constant</keyword>
      <keyword>integer</keyword>
      <keyword>'0'</keyword>
      <keyword>'1'</keyword>
      <keyword>not</keyword>
      <keyword>nand</keyword>
      <keyword>and</keyword>
      <keyword>xnor</keyword>
      <keyword>nor</keyword>
      <keyword>xor</keyword>
      <keyword>or</keyword>
   </keywords>
   <commentmark>--</commentmark>
   <randomconstant format="G%dC%d"/>
   <assignmentsign>&lt;=</assignmentsign>
   <linkingtype>1</linkingtype>
   <linkingFunctions count="4">
      <linkingFunction replaces="LT">{TAB}function gepLT(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) and y);{CRLF}{TAB}end gepLT;{CRLF}</linkingFunction>
      <linkingFunction replaces="GT">{TAB}function gepGT(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x and (not(y)));{CRLF}{TAB}end gepGT;{CRLF}</linkingFunction>
      <linkingFunction replaces="LOE">{TAB}function gepLOE(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return ((not(x)) or y);{CRLF}{TAB}end gepLOE;{CRLF}</linkingFunction>
      <linkingFunction replaces="GOE">{TAB}function gepGOE(x, y: bit) return bit is{CRLF}{TAB}begin{CRLF}{TAB}{TAB}return (x or (not(y)));{CRLF}{TAB}end gepGOE;{CRLF}</linkingFunction>
   </linkingFunctions>
   <ddfcomment>{TAB}-- Add a DDF with the name {FUNCTION_SYMBOL} in {LANGUAGE}{CRLF}{TAB}-- and a parameter list equivalent to {PARAMETER_LIST}{CRLF}</ddfcomment>
   <udfcomment>{TAB}-- Add a UDF with the name {FUNCTION_SYMBOL} in {LANGUAGE}{CRLF}</udfcomment>
</grammar>
