--- VHDL generated by LogSynth framework (c) Petr Fiser
Library IEEE;
use IEEE.std_logic_1164.all;

entity IWLS93__alu2 is 
  Port (
    pi0,pi1,pi2,pi3,pi4,pi5,pi6,pi7,pi8,pi9: in std_logic;
    po0,po1,po2,po3,po4,po5: inout std_logic
  );
end IWLS93__alu2;

architecture IWLS93__alu2_behav of IWLS93__alu2 is
signal n22,n23,n24,n25,n26,n27,n28,n29,n30,n31,n32,n33,n34,n35,n36,n37,n38,n39,n40,n41,n42,n43,n44,n45,n46,n47,n48,n49,n50,n51,n52,n53,n54,n55,n56,n57,n58,n59,n60,n61,n62,n63,n64,n65,n66,n67,n68,n69,n70,n71,n72,n73,n74,n75,n76,n77,n78,n79,n80,n81,n82,n83,n84,n85,n86,n87,n88,n89,n90,n91,n92,n93,n94,n95,n96,n97,n98,n99,n100,n101,n102,n103,n104,n105,n106,n107,n108,n109,n110,n111,n112,n113,n114,n115,n116,n117,n118,n119,n120,n121,n122,n123,n124,n125,n126,n127,n128,n129,n130,n131,n132,n133,n134,n135,n136,n137,n138,n139,n140,n141,n142,n143,n144,n145,n146,n147,n148,n149,n150,n151,n152,n153,n154,n155,n156,n157,n158,n159,n160,n161,n162,n163,n164,n165,n166,n167,n168,n169,n170,n171,n172,n173,n174,n175,n176,n177,n178,n179,n180,n181,n182,n183,n184,n185,n186,n187,n188,n189,n190,n191,n192,n193,n194,n195,n196,n197,n198,n199,n200,n201,n202,n203,n204,n205,n206,n207,n208,n209,n210,n211,n212,n213,n214,n215,n216,n217,n218,n219,n220,n221: std_logic;
begin
    po0 <= ( n149 )
      or ( n188 );
    po1 <= ( n43 )
      or ( n44 )
      or ( n45 )
      or ( n46 )
      or ( n47 )
      or ( n48 )
      or ( n49 )
      or ( n50 )
      or ( n51 )
      or ( n52 )
      or ( n53 )
      or ( n23 )
      or ( n54 )
      or ( n55 )
      or ( n56 )
      or ( n57 )
      or ( n58 )
      or ( n59 );
    po2 <= ( n25 )
      or ( n61 )
      or ( n86 )
      or ( n46 )
      or ( n77 )
      or ( n124 )
      or ( n116 )
      or ( n99 )
      or ( n117 )
      or ( n78 )
      or ( n63 )
      or ( n27 )
      or ( n131 )
      or ( n182 )
      or ( n87 )
      or ( n185 )
      or ( n56 )
      or ( n186 )
      or ( n123 )
      or ( n129 );
    po3 <= ( po4 )
      or ( not n183 );
    po4 <= ( pi1 and pi3 );
    po5 <= ( n134 )
      or ( n135 )
      or ( n46 )
      or ( n136 )
      or ( n137 )
      or ( n80 )
      or ( n88 )
      or ( n138 )
      or ( n139 )
      or ( n140 )
      or ( n141 )
      or ( n142 )
      or ( n143 )
      or ( n144 )
      or ( n145 )
      or ( n146 )
      or ( n100 )
      or ( n147 )
      or ( n148 )
      or ( n119 );
    n22 <= ( pi0 and pi2 );
    n23 <= ( pi5 and pi7 and not pi9 and n22 );
    n24 <= ( not pi4 and not pi6 and n26 );
    n25 <= ( pi3 and not pi9 and n24 );
    n26 <= ( n103 )
      or ( n104 )
      or ( n105 )
      or ( n106 )
      or ( n107 )
      or ( n108 )
      or ( n109 )
      or ( n110 )
      or ( n111 )
      or ( n112 )
      or ( n113 )
      or ( n114 );
    n27 <= ( not pi5 and pi6 and pi7 and not pi9 and n26 );
    n28 <= ( not pi4 and pi5 );
    n29 <= ( not n26 and not n75 );
    n30 <= ( pi6 and not pi7 and pi9 and n28 and n29 );
    n31 <= ( pi4 and not pi5 );
    n32 <= ( n75 and n37 );
    n33 <= ( pi6 and not pi7 and pi9 and not n26 and n31 and n32 and not n65 );
    n34 <= ( pi4 and pi5 );
    n35 <= ( not pi6 and pi7 and pi9 and n34 and not n75 );
    n36 <= ( not pi5 and pi6 );
    n37 <= ( n215 )
      or ( n212 );
    n38 <= ( pi4 and not pi7 and pi9 and n36 and n37 and not n75 );
    n39 <= ( not pi4 and not pi5 );
    n40 <= ( pi9 and n98 );
    n41 <= ( not n26 and n39 and n40 );
    n42 <= ( n31 and n40 and not n151 );
    n43 <= ( pi7 and not pi9 and n67 );
    n44 <= ( pi2 and not pi4 and not pi9 and n122 );
    n45 <= ( not pi8 and pi9 and not n74 );
    n46 <= ( not pi7 and pi9 and n97 );
    n47 <= ( pi8 and pi9 and n74 );
    n48 <= ( not pi2 and pi4 and not pi5 and pi6 and not pi7 and not pi9 );
    n49 <= ( pi4 and not pi5 and not pi6 and not pi7 and not pi9 and not n75 );
    n50 <= ( not pi5 and pi6 and pi7 and not pi9 and n75 );
    n51 <= ( not pi5 and pi7 and not pi9 and n96 and n115 );
    n52 <= ( not pi4 and pi5 and not pi9 and n98 and not n189 );
    n53 <= ( pi4 and pi5 and pi6 and not pi9 and n121 );
    n54 <= ( pi5 and not pi9 and n22 and n62 );
    n55 <= ( pi2 and pi5 and not pi9 and n60 );
    n56 <= ( not pi5 and pi7 and not pi9 and n62 );
    n57 <= ( not pi5 and pi7 and not pi9 and n101 );
    n58 <= ( not pi4 and not pi5 and not pi9 and n181 );
    n59 <= ( not pi5 and pi7 and not pi9 and n125 );
    n60 <= ( not pi4 and pi7 );
    n61 <= ( not pi5 and not pi9 and n24 );
    n62 <= ( not pi4 and pi6 );
    n63 <= ( pi5 and not pi9 and po4 and n62 );
    n64 <= ( not pi6 and pi7 and pi9 and n29 and n34 );
    n65 <= ( n42 )
      or ( n73 );
    n66 <= ( pi6 and not pi7 and pi9 and n26 and n31 and n32 and n65 );
    n67 <= ( pi0 and pi6 );
    n68 <= ( pi7 and pi9 and not n34 and n67 and not n75 );
    n69 <= ( not pi6 and pi7 and pi9 and n28 and n37 and not n92 );
    n70 <= ( n31 and po4 and n40 );
    n71 <= ( not pi6 and po4 );
    n72 <= ( n60 and n190 );
    n73 <= ( n71 and n72 );
    n74 <= ( n35 )
      or ( n68 )
      or ( n159 )
      or ( n160 )
      or ( n154 )
      or ( n84 )
      or ( n161 )
      or ( n69 )
      or ( n38 )
      or ( n93 )
      or ( n132 )
      or ( n162 )
      or ( n126 )
      or ( n102 )
      or ( n120 )
      or ( n83 )
      or ( n91 );
    n75 <= ( n192 )
      or ( n193 )
      or ( n198 )
      or ( n204 )
      or ( n219 )
      or ( n220 )
      or ( n214 )
      or ( n211 );
    n76 <= ( n166 )
      or ( n167 )
      or ( n82 )
      or ( n168 )
      or ( n90 )
      or ( n165 )
      or ( n164 )
      or ( n169 )
      or ( n170 )
      or ( n152 )
      or ( n158 )
      or ( n171 )
      or ( n172 )
      or ( n173 )
      or ( n174 )
      or ( n175 )
      or ( n176 )
      or ( n177 )
      or ( n178 )
      or ( n33 )
      or ( n30 )
      or ( n66 )
      or ( n64 )
      or ( n163 )
      or ( n150 )
      or ( n179 )
      or ( n180 )
      or ( n157 );
    n77 <= ( pi9 and not n74 and n76 );
    n78 <= ( pi5 and pi7 and not pi9 and po4 );
    n79 <= ( n92 and n37 );
    n80 <= ( not pi6 and pi7 and pi9 and n28 and n65 and n79 );
    n81 <= ( not pi5 and n96 );
    n82 <= ( pi3 and not pi7 and pi9 and n81 );
    n83 <= ( pi0 and not pi6 and not pi7 and pi9 and not n34 );
    n84 <= ( pi4 and not pi7 and pi9 and n36 and not n37 and n75 );
    n85 <= ( pi1 and n72 );
    n86 <= ( pi8 and pi9 and n76 );
    n87 <= ( pi3 and pi5 and not pi9 and n60 );
    n88 <= ( pi4 and not pi7 and pi9 and n26 and n36 and n65 );
    n89 <= ( n22 and n81 );
    n90 <= ( pi9 and po4 and n89 );
    n91 <= ( not pi0 and pi6 and pi7 and pi9 and n75 );
    n92 <= ( n200 )
      or ( n201 )
      or ( n202 )
      or ( n203 )
      or ( n197 );
    n93 <= ( not pi6 and pi7 and pi9 and n28 and not n37 and n92 );
    n94 <= ( pi1 and n26 );
    n95 <= ( n94 and n34 and n40 );
    n96 <= ( pi4 and not pi6 );
    n97 <= ( not pi6 and n34 );
    n98 <= ( pi6 and not pi7 );
    n99 <= ( not pi3 and pi4 and not pi5 and pi6 and not pi7 and not pi9 );
    n100 <= ( pi5 and not pi7 and pi9 and n29 and n62 );
    n101 <= ( pi0 and not pi4 );
    n102 <= ( not pi5 and not pi6 and pi9 and not n75 and n101 );
    n103 <= ( n183 and n31 and n194 );
    n104 <= ( not pi1 and not pi4 and n191 );
    n105 <= ( pi9 and n199 );
    n106 <= ( not pi4 and n199 );
    n107 <= ( not pi3 and n207 );
    n108 <= ( not pi4 and pi5 and pi9 and not n115 and n187 );
    n109 <= ( not pi4 and pi5 and pi9 and n98 and not n115 and n130 );
    n110 <= ( not pi4 and not pi5 and pi7 and pi9 and n67 );
    n111 <= ( not pi4 and pi5 and pi9 and n115 and not n183 );
    n112 <= ( not pi4 and not pi5 and pi7 and pi9 and n71 );
    n113 <= ( pi4 and pi7 and n71 and n190 );
    n114 <= ( not pi4 and pi9 and po4 and n98 and n115 );
    n115 <= ( not pi0 and pi2 );
    n116 <= ( not pi4 and pi5 and not pi9 and n98 and not n183 );
    n117 <= ( pi4 and not pi5 and not pi6 and not pi7 and not pi9 and not n26 );
    n118 <= ( n62 )
      or ( n39 )
      or ( n36 );
    n119 <= ( pi7 and pi9 and n94 and n118 );
    n120 <= ( not pi5 and not pi7 and pi9 and not n92 and n101 );
    n121 <= ( pi0 and n75 );
    n122 <= ( not pi6 and n75 );
    n123 <= ( not pi8 and pi9 and n74 and not n76 );
    n124 <= ( pi4 and pi5 and pi6 and not pi9 and n94 );
    n125 <= ( pi0 and not pi2 );
    n126 <= ( pi4 and not pi5 and not pi6 and pi9 and n125 );
    n127 <= ( pi1 and not pi4 );
    n128 <= ( pi0 and n92 );
    n129 <= ( pi1 and pi6 and pi7 and not pi9 );
    n130 <= ( not pi1 and pi3 );
    n131 <= ( not pi5 and pi7 and not pi9 and n96 and n130 );
    n132 <= ( pi4 and not pi5 and not pi6 and pi9 and n115 );
    n133 <= ( n34 and not n92 and not n151 );
    n134 <= ( not pi8 and pi9 and n74 and n76 );
    n135 <= ( pi7 and pi9 and n89 and n183 );
    n136 <= ( not pi7 and pi9 and n133 );
    n137 <= ( pi9 and n29 and n97 );
    n138 <= ( pi4 and not pi7 and pi9 and n32 and n36 and n65 );
    n139 <= ( pi4 and not pi7 and pi9 and n26 and n32 and n36 );
    n140 <= ( not pi4 and not pi7 and pi9 and n36 and n128 and n151 );
    n141 <= ( pi1 and not pi4 and not pi7 and pi9 and n36 and n151 );
    n142 <= ( not pi6 and pi7 and pi9 and n28 and n65 and n151 );
    n143 <= ( not pi6 and pi7 and pi9 and n28 and n79 and n151 );
    n144 <= ( pi1 and pi7 and pi9 and n118 and n121 );
    n145 <= ( pi7 and pi9 and n26 and n118 and n121 );
    n146 <= ( not pi0 and not pi1 and pi7 and pi9 and n153 );
    n147 <= ( not pi7 and pi9 and n36 and n127 and n128 );
    n148 <= ( pi7 and pi9 and po4 and n81 );
    n149 <= ( po3 and not n189 );
    n150 <= ( not pi5 and not pi7 and pi9 and n127 and not n155 );
    n151 <= ( n41 )
      or ( n70 )
      or ( n85 )
      or ( n95 )
      or ( n184 );
    n152 <= ( pi6 and not pi7 and pi9 and n34 and n92 and n151 );
    n153 <= ( pi6 and n34 );
    n154 <= ( not pi0 and pi7 and pi9 and n153 );
    n155 <= ( n221 )
      or ( n218 );
    n156 <= ( n195 )
      or ( n196 );
    n157 <= ( not pi5 and not pi6 and pi9 and n127 and n156 );
    n158 <= ( not pi0 and not pi1 and pi6 and pi7 and pi9 and n34 );
    n159 <= ( not pi7 and pi9 and n28 and n181 );
    n160 <= ( not pi7 and pi9 and not n92 and n153 );
    n161 <= ( not pi0 and not pi4 and not pi7 and pi9 and n36 and n92 );
    n162 <= ( not pi0 and pi7 and pi9 and n39 and n75 );
    n163 <= ( pi1 and not pi6 and not pi7 and pi9 and not n34 );
    n164 <= ( pi1 and pi7 and pi9 and n34 and n67 );
    n165 <= ( not pi6 and pi7 and pi9 and n28 and not n65 and not n79 and n151 );
    n166 <= ( pi7 and pi9 and n89 and not n183 );
    n167 <= ( pi9 and not n22 and n81 and n130 );
    n168 <= ( pi6 and not pi7 and pi9 and n133 );
    n169 <= ( not pi6 and pi7 and pi9 and n28 and n65 and not n79 and not n151 );
    n170 <= ( not pi1 and pi6 and not pi7 and pi9 and n39 and n155 );
    n171 <= ( pi6 and not pi7 and pi9 and n26 and n31 and not n32 and not n65 );
    n172 <= ( not pi7 and pi9 and n26 and n28 and n75 );
    n173 <= ( pi6 and not pi7 and pi9 and not n26 and n31 and not n32 and n65 );
    n174 <= ( pi1 and pi7 and pi9 and n118 and n156 );
    n175 <= ( not pi6 and pi7 and pi9 and n28 and not n65 and n79 and not n151 );
    n176 <= ( not pi1 and pi7 and pi9 and n118 and not n156 );
    n177 <= ( not pi6 and pi7 and pi9 and n28 and n65 and n79 and n151 );
    n178 <= ( pi7 and pi9 and n26 and n34 and n122 );
    n179 <= ( not pi6 and not pi7 and pi9 and n26 and n28 );
    n180 <= ( pi9 and not n22 and n81 and n187 );
    n181 <= ( n205 )
      or ( n122 );
    n182 <= ( not pi5 and pi7 and not pi9 and n127 );
    n183 <= ( pi1 )
      or ( pi3 );
    n184 <= ( n26 and n72 );
    n185 <= ( not pi5 and pi7 and not pi9 and n187 );
    n186 <= ( not pi5 and not pi9 and not n26 and n62 );
    n187 <= ( pi1 and not pi3 );
    n188 <= ( n22 and po3 );
    n189 <= ( pi0 )
      or ( pi2 );
    n190 <= ( pi5 and pi9 );
    n191 <= ( n208 )
      or ( n206 );
    n192 <= ( not pi0 and not pi4 and n191 );
    n193 <= ( not pi4 and n98 and n115 and n190 );
    n194 <= ( n209 )
      or ( n210 );
    n195 <= ( not n26 and not n121 );
    n196 <= ( n121 and n26 );
    n197 <= ( n75 and n72 );
    n198 <= ( n194 and n31 and n189 );
    n199 <= ( not pi5 and po4 and n98 );
    n200 <= ( n31 and n22 and n40 );
    n201 <= ( n39 and n40 and not n75 );
    n202 <= ( pi0 and n72 );
    n203 <= ( n121 and n34 and n40 );
    n204 <= ( not pi4 and n125 and n190 );
    n205 <= ( pi6 and not n75 );
    n206 <= ( not pi5 and not pi6 and not pi9 );
    n207 <= ( n213 )
      or ( n217 )
      or ( n216 );
    n208 <= ( not pi6 and not pi7 and not pi9 );
    n209 <= ( not pi6 and not pi7 and not pi9 );
    n210 <= ( pi6 and pi9 );
    n211 <= ( not pi6 and pi7 and pi9 and n22 and n34 );
    n212 <= ( n31 and n40 and not n92 );
    n213 <= ( not pi4 and not n98 and n190 );
    n214 <= ( not pi4 and not pi5 and n22 and n98 );
    n215 <= ( not pi6 and n22 and n72 );
    n216 <= ( n98 and n34 );
    n217 <= ( pi4 and pi7 and not pi9 and n36 );
    n218 <= ( n128 and not n151 );
    n219 <= ( not pi2 and n207 );
    n220 <= ( not pi6 and pi7 and pi9 and n22 and n39 );
    n221 <= ( not n128 and n151 );
end IWLS93__alu2_behav;
