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

entity DFF is
  Port ( D, CLK: in std_logic;
     Q: out std_logic);
end DFF;

architecture Behavior of DFF is
begin
  process(CLK)
  begin
    if CLK'event and CLK = '1' then
      Q <= D;
    end if;
  end process;
end Behavior;

Library IEEE;
use IEEE.std_logic_1164.all;

entity Cookbook__scrambler_lfsr is 
  Port (
    pi00,pi01,pi02,pi03,pi04,pi05,pi06,pi07,pi08,pi09,pi10,pi11,pi12,pi13,pi14,pi15,pi16,pi17,pi18,pi19,pi20,pi21,pi22,pi23,pi24,pi25,pi26,pi27,pi28,pi29,pi30,pi31,pi32,pi33,pi34,pi35,pi36,pi37,pi38,pi39,pi40,pi41,pi42,pi43,pi44,pi45,pi46,pi47,pi48,pi49,pi50,pi51,pi52,pi53,pi54,pi55,pi56,pi57,pi58,pi59,pi60, CLK: in std_logic;
    po00,po01,po02,po03,po04,po05,po06,po07,po08,po09,po10,po11,po12,po13,po14,po15,po16,po17,po18,po19,po20,po21,po22,po23,po24,po25,po26,po27,po28,po29,po30,po31,po32,po33,po34,po35,po36,po37,po38,po39,po40,po41,po42,po43,po44,po45,po46,po47,po48,po49,po50,po51,po52,po53,po54,po55,po56,po57,po58,po59,po60,po61,po62,po63,po64,po65: inout std_logic
  );
end Cookbook__scrambler_lfsr;

architecture Cookbook__scrambler_lfsr_behav of Cookbook__scrambler_lfsr is
component DFF
  Port ( D, CLK: in std_logic;
     Q: out std_logic);
end component;

signal lo00,lo01,lo02,lo03,lo04,lo05,lo06,lo07,lo08,lo09,lo10,lo11,lo12,lo13,lo14,lo15,lo16,lo17,lo18,lo19,lo20,lo21,lo22,lo23,lo24,lo25,lo26,lo27,lo28,lo29,lo30,lo31,lo32,lo33,lo34,lo35,lo36,lo37,lo38,lo39,lo40,lo41,lo42,lo43,lo44,lo45,lo46,lo47,lo48,lo49,lo50,lo51,lo52,lo53,lo54,lo55,lo56,lo57,lo58,lo59,n307,n308,n309,n310,n311,n312,n313,n314,n315,n316,n317,n318,n319,n320,n321,n322,n323,n324,n325,n326,n327,n328,n329,n330,n331,n332,n333,n334,n335,n336,n337,n338,n339,n340,n341,n342,n343,n344,n345,n346,n347,n348,n349,n350,n351,n352,n353,n354,n355,n356,n357,n358,n359,n360,n361,n362,n363,n364,n371,n372,n373,n374,n375,n376,n377,n378,n379,n380,n381,n382,n383,n384,n385,n386,n387,n388,n389,n390,n391,n392,n393,n394,n395,n396,n397,n398,n399,n400,n401,n402,n403,n404,n405,n406,n407,n408,n409,n410,n411,n412,n413,n414,n415,n416,n417,n418,n419,n420,n421,n422,n423,n424,n425,n426,n427,n428,n429,n430,n431,n432,n433,n434,n435,n436,n437,n438,n439,n440,n441,n442,n443,n444,n445,n446,n447,li02,li03,li04,li05,li06,li07,li08,li09,li10,li11,li12,li13,li14,li15,li16,li17,li18,li19,li20,li21,li22,li23,li24,li25,li26,li27,li28,li29,li30,li31,li32,li33,li34,li35,li36,li37,li38,li39,li40,li41,li42,li43,li44,li45,li46,li47,li48,li49,li50,li51,li52,li53,li54,li55,li56,li57,li58,li59,n506,n507,n508,n509,n510,n511,n512,n513,n514,n515,n516,n517,n518,n519,n520,n521,n522,n523,n524,n525,n526,n527,n528,n529,n530,n531,n532,n533,n534,n535,n536,n537,n538,n539,n540,n541,n542,n543,n544,n545,n546,n547,n548,n549,n550,n551,n552,n553,n554,n555,n556,n557,n558,n559,n560,n561,n562,n563,n564,n565,n566,n567,n568,n569,n570,n571,n572,n573,n574,n575,n576,n577,n578,n579,n580,n581,n582,n583,n584,n585,n586,n587,n588,n589,n590,n591,n592,n593,n594,n595,n596,n597,n598,n599,n600,n601,n602,n603,n604,n605,n606,n607,n608,n609,n610,n611,n612,n613,n614,n615,n616,n617,n618,n619,li01,li00: std_logic;
begin
    DFF0: DFF port map (li00, CLK, lo00);
    DFF1: DFF port map (li01, CLK, lo01);
    DFF2: DFF port map (li02, CLK, lo02);
    DFF3: DFF port map (li03, CLK, lo03);
    DFF4: DFF port map (li04, CLK, lo04);
    DFF5: DFF port map (li05, CLK, lo05);
    DFF6: DFF port map (li06, CLK, lo06);
    DFF7: DFF port map (li07, CLK, lo07);
    DFF8: DFF port map (li08, CLK, lo08);
    DFF9: DFF port map (li09, CLK, lo09);
    DFF10: DFF port map (li10, CLK, lo10);
    DFF11: DFF port map (li11, CLK, lo11);
    DFF12: DFF port map (li12, CLK, lo12);
    DFF13: DFF port map (li13, CLK, lo13);
    DFF14: DFF port map (li14, CLK, lo14);
    DFF15: DFF port map (li15, CLK, lo15);
    DFF16: DFF port map (li16, CLK, lo16);
    DFF17: DFF port map (li17, CLK, lo17);
    DFF18: DFF port map (li18, CLK, lo18);
    DFF19: DFF port map (li19, CLK, lo19);
    DFF20: DFF port map (li20, CLK, lo20);
    DFF21: DFF port map (li21, CLK, lo21);
    DFF22: DFF port map (li22, CLK, lo22);
    DFF23: DFF port map (li23, CLK, lo23);
    DFF24: DFF port map (li24, CLK, lo24);
    DFF25: DFF port map (li25, CLK, lo25);
    DFF26: DFF port map (li26, CLK, lo26);
    DFF27: DFF port map (li27, CLK, lo27);
    DFF28: DFF port map (li28, CLK, lo28);
    DFF29: DFF port map (li29, CLK, lo29);
    DFF30: DFF port map (li30, CLK, lo30);
    DFF31: DFF port map (li31, CLK, lo31);
    DFF32: DFF port map (li32, CLK, lo32);
    DFF33: DFF port map (li33, CLK, lo33);
    DFF34: DFF port map (li34, CLK, lo34);
    DFF35: DFF port map (li35, CLK, lo35);
    DFF36: DFF port map (li36, CLK, lo36);
    DFF37: DFF port map (li37, CLK, lo37);
    DFF38: DFF port map (li38, CLK, lo38);
    DFF39: DFF port map (li39, CLK, lo39);
    DFF40: DFF port map (li40, CLK, lo40);
    DFF41: DFF port map (li41, CLK, lo41);
    DFF42: DFF port map (li42, CLK, lo42);
    DFF43: DFF port map (li43, CLK, lo43);
    DFF44: DFF port map (li44, CLK, lo44);
    DFF45: DFF port map (li45, CLK, lo45);
    DFF46: DFF port map (li46, CLK, lo46);
    DFF47: DFF port map (li47, CLK, lo47);
    DFF48: DFF port map (li48, CLK, lo48);
    DFF49: DFF port map (li49, CLK, lo49);
    DFF50: DFF port map (li50, CLK, lo50);
    DFF51: DFF port map (li51, CLK, lo51);
    DFF52: DFF port map (li52, CLK, lo52);
    DFF53: DFF port map (li53, CLK, lo53);
    DFF54: DFF port map (li54, CLK, lo54);
    DFF55: DFF port map (li55, CLK, lo55);
    DFF56: DFF port map (li56, CLK, lo56);
    DFF57: DFF port map (li57, CLK, lo57);
    DFF58: DFF port map (li58, CLK, lo58);
    DFF59: DFF port map (li59, CLK, lo59);
    n307 <= ( not lo54 and lo16 )
      or ( lo54 and not lo16 );
    n308 <= ( not lo55 and lo17 )
      or ( lo55 and not lo17 );
    n309 <= ( not lo56 and lo18 )
      or ( lo56 and not lo18 );
    n310 <= ( not lo57 and lo19 )
      or ( lo57 and not lo19 );
    n311 <= ( not lo58 and lo20 )
      or ( lo58 and not lo20 );
    n312 <= ( not lo59 and lo21 )
      or ( lo59 and not lo21 );
    n313 <= ( not lo02 and lo22 )
      or ( lo02 and not lo22 );
    n314 <= ( not lo03 and lo23 )
      or ( lo03 and not lo23 );
    n315 <= ( not lo04 and lo24 )
      or ( lo04 and not lo24 );
    n316 <= ( not lo05 and lo25 )
      or ( lo05 and not lo25 );
    n317 <= ( not lo06 and lo26 )
      or ( lo06 and not lo26 );
    n318 <= ( not lo07 and lo27 )
      or ( lo07 and not lo27 );
    n319 <= ( not lo08 and lo28 )
      or ( lo08 and not lo28 );
    n320 <= ( not lo09 and lo29 )
      or ( lo09 and not lo29 );
    n321 <= ( not lo10 and lo30 )
      or ( lo10 and not lo30 );
    n322 <= ( not lo11 and lo31 )
      or ( lo11 and not lo31 );
    n323 <= ( not lo12 and lo32 )
      or ( lo12 and not lo32 );
    n324 <= ( not lo13 and lo33 )
      or ( lo13 and not lo33 );
    n325 <= ( not lo14 and lo34 )
      or ( lo14 and not lo34 );
    n326 <= ( not lo15 and lo35 )
      or ( lo15 and not lo35 );
    n327 <= ( not lo16 and lo36 )
      or ( lo16 and not lo36 );
    n328 <= ( not lo17 and lo37 )
      or ( lo17 and not lo37 );
    n329 <= ( not lo18 and lo38 )
      or ( lo18 and not lo38 );
    n330 <= ( not lo19 and lo39 )
      or ( lo19 and not lo39 );
    n331 <= ( not lo20 and lo40 )
      or ( lo20 and not lo40 );
    n332 <= ( not lo21 and lo02 )
      or ( lo21 and not lo02 );
    n333 <= ( not lo22 and lo03 )
      or ( lo22 and not lo03 );
    n334 <= ( not lo23 and lo04 )
      or ( lo23 and not lo04 );
    n335 <= ( not lo24 and lo05 )
      or ( lo24 and not lo05 );
    n336 <= ( not lo25 and lo06 )
      or ( lo25 and not lo06 );
    n337 <= ( not lo26 and lo07 )
      or ( lo26 and not lo07 );
    n338 <= ( not lo27 and lo08 )
      or ( lo27 and not lo08 );
    n339 <= ( not lo28 and lo09 )
      or ( lo28 and not lo09 );
    n340 <= ( not lo29 and lo10 )
      or ( lo29 and not lo10 );
    n341 <= ( not lo30 and lo11 )
      or ( lo30 and not lo11 );
    n342 <= ( not lo31 and lo12 )
      or ( lo31 and not lo12 );
    n343 <= ( not lo32 and lo13 )
      or ( lo32 and not lo13 );
    n344 <= ( not lo33 and lo14 )
      or ( lo33 and not lo14 );
    n345 <= ( not lo34 and lo15 )
      or ( lo34 and not lo15 );
    n346 <= ( not lo35 and lo16 )
      or ( lo35 and not lo16 );
    n347 <= ( not lo36 and lo17 )
      or ( lo36 and not lo17 );
    n348 <= ( not lo37 and lo18 )
      or ( lo37 and not lo18 );
    n349 <= ( not lo38 and lo19 )
      or ( lo38 and not lo19 );
    n350 <= ( not lo39 and lo20 )
      or ( lo39 and not lo20 );
    n351 <= ( not lo40 and lo21 )
      or ( lo40 and not lo21 );
    n352 <= ( not lo41 and lo22 )
      or ( lo41 and not lo22 );
    n353 <= ( not lo42 and lo23 )
      or ( lo42 and not lo23 );
    n354 <= ( not lo43 and lo24 )
      or ( lo43 and not lo24 );
    n355 <= ( not lo44 and lo25 )
      or ( lo44 and not lo25 );
    n356 <= ( not lo45 and lo26 )
      or ( lo45 and not lo26 );
    n357 <= ( not lo46 and lo27 )
      or ( lo46 and not lo27 );
    n358 <= ( not lo47 and lo28 )
      or ( lo47 and not lo28 );
    n359 <= ( not lo48 and lo29 )
      or ( lo48 and not lo29 );
    n360 <= ( not lo49 and lo30 )
      or ( lo49 and not lo30 );
    n361 <= ( not lo50 and lo31 )
      or ( lo50 and not lo31 );
    n362 <= ( not lo51 and lo32 )
      or ( lo51 and not lo32 );
    n363 <= ( not lo52 and lo33 )
      or ( lo52 and not lo33 );
    n364 <= ( not lo53 and lo34 )
      or ( lo53 and not lo34 );
    po63 <= ( not lo54 and lo35 )
      or ( lo54 and not lo35 );
    po62 <= ( not lo55 and lo36 )
      or ( lo55 and not lo36 );
    po61 <= ( not lo56 and lo37 )
      or ( lo56 and not lo37 );
    po60 <= ( not lo57 and lo38 )
      or ( lo57 and not lo38 );
    po59 <= ( not lo58 and lo39 )
      or ( lo58 and not lo39 );
    po58 <= ( not lo59 and lo40 )
      or ( lo59 and not lo40 );
    n371 <= ( not n313 and lo41 )
      or ( n313 and not lo41 );
    n372 <= ( not n314 and lo42 )
      or ( n314 and not lo42 );
    n373 <= ( not n315 and lo43 )
      or ( n315 and not lo43 );
    n374 <= ( not n316 and lo44 )
      or ( n316 and not lo44 );
    n375 <= ( not n317 and lo45 )
      or ( n317 and not lo45 );
    n376 <= ( not n318 and lo46 )
      or ( n318 and not lo46 );
    n377 <= ( not n319 and lo47 )
      or ( n319 and not lo47 );
    n378 <= ( not n320 and lo48 )
      or ( n320 and not lo48 );
    n379 <= ( not n321 and lo49 )
      or ( n321 and not lo49 );
    n380 <= ( not n322 and lo50 )
      or ( n322 and not lo50 );
    n381 <= ( not n323 and lo51 )
      or ( n323 and not lo51 );
    n382 <= ( not n324 and lo52 )
      or ( n324 and not lo52 );
    n383 <= ( not n325 and lo53 )
      or ( n325 and not lo53 );
    n384 <= ( not n326 and lo54 )
      or ( n326 and not lo54 );
    n385 <= ( not n327 and lo55 )
      or ( n327 and not lo55 );
    n386 <= ( not n328 and lo56 )
      or ( n328 and not lo56 );
    n387 <= ( not n329 and lo57 )
      or ( n329 and not lo57 );
    n388 <= ( not n330 and lo58 )
      or ( n330 and not lo58 );
    n389 <= ( not n331 and lo59 )
      or ( n331 and not lo59 );
    n390 <= ( lo02 and not pi60 )
      or ( n307 and pi60 );
    n391 <= ( lo03 and not pi60 )
      or ( n308 and pi60 );
    n392 <= ( lo04 and not pi60 )
      or ( n309 and pi60 );
    n393 <= ( lo05 and not pi60 )
      or ( n310 and pi60 );
    n394 <= ( lo06 and not pi60 )
      or ( n311 and pi60 );
    n395 <= ( lo07 and not pi60 )
      or ( n312 and pi60 );
    n396 <= ( lo08 and not pi60 )
      or ( n371 and pi60 );
    n397 <= ( lo09 and not pi60 )
      or ( n372 and pi60 );
    n398 <= ( lo10 and not pi60 )
      or ( n373 and pi60 );
    n399 <= ( lo11 and not pi60 )
      or ( n374 and pi60 );
    n400 <= ( lo12 and not pi60 )
      or ( n375 and pi60 );
    n401 <= ( lo13 and not pi60 )
      or ( n376 and pi60 );
    n402 <= ( lo14 and not pi60 )
      or ( n377 and pi60 );
    n403 <= ( lo15 and not pi60 )
      or ( n378 and pi60 );
    n404 <= ( lo16 and not pi60 )
      or ( n379 and pi60 );
    n405 <= ( lo17 and not pi60 )
      or ( n380 and pi60 );
    n406 <= ( lo18 and not pi60 )
      or ( n381 and pi60 );
    n407 <= ( lo19 and not pi60 )
      or ( n382 and pi60 );
    n408 <= ( lo20 and not pi60 )
      or ( n383 and pi60 );
    n409 <= ( lo21 and not pi60 )
      or ( n384 and pi60 );
    n410 <= ( lo22 and not pi60 )
      or ( n385 and pi60 );
    n411 <= ( lo23 and not pi60 )
      or ( n386 and pi60 );
    n412 <= ( lo24 and not pi60 )
      or ( n387 and pi60 );
    n413 <= ( lo25 and not pi60 )
      or ( n388 and pi60 );
    n414 <= ( lo26 and not pi60 )
      or ( n389 and pi60 );
    n415 <= ( lo27 and not pi60 )
      or ( n332 and pi60 );
    n416 <= ( lo28 and not pi60 )
      or ( n333 and pi60 );
    n417 <= ( lo29 and not pi60 )
      or ( n334 and pi60 );
    n418 <= ( lo30 and not pi60 )
      or ( n335 and pi60 );
    n419 <= ( lo31 and not pi60 )
      or ( n336 and pi60 );
    n420 <= ( lo32 and not pi60 )
      or ( n337 and pi60 );
    n421 <= ( lo33 and not pi60 )
      or ( n338 and pi60 );
    n422 <= ( lo34 and not pi60 )
      or ( n339 and pi60 );
    n423 <= ( lo35 and not pi60 )
      or ( n340 and pi60 );
    n424 <= ( lo36 and not pi60 )
      or ( n341 and pi60 );
    n425 <= ( lo37 and not pi60 )
      or ( n342 and pi60 );
    n426 <= ( lo38 and not pi60 )
      or ( n343 and pi60 );
    n427 <= ( lo39 and not pi60 )
      or ( n344 and pi60 );
    n428 <= ( lo40 and not pi60 )
      or ( n345 and pi60 );
    n429 <= ( lo41 and not pi60 )
      or ( n346 and pi60 );
    n430 <= ( lo42 and not pi60 )
      or ( n347 and pi60 );
    n431 <= ( lo43 and not pi60 )
      or ( n348 and pi60 );
    n432 <= ( lo44 and not pi60 )
      or ( n349 and pi60 );
    n433 <= ( lo45 and not pi60 )
      or ( n350 and pi60 );
    n434 <= ( lo46 and not pi60 )
      or ( n351 and pi60 );
    n435 <= ( lo47 and not pi60 )
      or ( n352 and pi60 );
    n436 <= ( lo48 and not pi60 )
      or ( n353 and pi60 );
    n437 <= ( lo49 and not pi60 )
      or ( n354 and pi60 );
    n438 <= ( lo50 and not pi60 )
      or ( n355 and pi60 );
    n439 <= ( lo51 and not pi60 )
      or ( n356 and pi60 );
    n440 <= ( lo52 and not pi60 )
      or ( n357 and pi60 );
    n441 <= ( lo53 and not pi60 )
      or ( n358 and pi60 );
    n442 <= ( lo54 and not pi60 )
      or ( n359 and pi60 );
    n443 <= ( lo55 and not pi60 )
      or ( n360 and pi60 );
    n444 <= ( lo56 and not pi60 )
      or ( n361 and pi60 );
    n445 <= ( lo57 and not pi60 )
      or ( n362 and pi60 );
    n446 <= ( lo58 and not pi60 )
      or ( n363 and pi60 );
    n447 <= ( lo59 and not pi60 )
      or ( n364 and pi60 );
    li02 <= ( n390 and not pi01 )
      or ( pi59 and pi01 );
    li03 <= ( n391 and not pi01 )
      or ( pi58 and pi01 );
    li04 <= ( n392 and not pi01 )
      or ( pi57 and pi01 );
    li05 <= ( n393 and not pi01 )
      or ( pi56 and pi01 );
    li06 <= ( n394 and not pi01 )
      or ( pi55 and pi01 );
    li07 <= ( n395 and not pi01 )
      or ( pi54 and pi01 );
    li08 <= ( n396 and not pi01 )
      or ( pi53 and pi01 );
    li09 <= ( n397 and not pi01 )
      or ( pi52 and pi01 );
    li10 <= ( n398 and not pi01 )
      or ( pi51 and pi01 );
    li11 <= ( n399 and not pi01 )
      or ( pi50 and pi01 );
    li12 <= ( n400 and not pi01 )
      or ( pi49 and pi01 );
    li13 <= ( n401 and not pi01 )
      or ( pi48 and pi01 );
    li14 <= ( n402 and not pi01 )
      or ( pi47 and pi01 );
    li15 <= ( n403 and not pi01 )
      or ( pi46 and pi01 );
    li16 <= ( n404 and not pi01 )
      or ( pi45 and pi01 );
    li17 <= ( n405 and not pi01 )
      or ( pi44 and pi01 );
    li18 <= ( n406 and not pi01 )
      or ( pi43 and pi01 );
    li19 <= ( n407 and not pi01 )
      or ( pi42 and pi01 );
    li20 <= ( n408 and not pi01 )
      or ( pi41 and pi01 );
    li21 <= ( n409 and not pi01 )
      or ( pi40 and pi01 );
    li22 <= ( n410 and not pi01 )
      or ( pi39 and pi01 );
    li23 <= ( n411 and not pi01 )
      or ( pi38 and pi01 );
    li24 <= ( n412 and not pi01 )
      or ( pi37 and pi01 );
    li25 <= ( n413 and not pi01 )
      or ( pi36 and pi01 );
    li26 <= ( n414 and not pi01 )
      or ( pi35 and pi01 );
    li27 <= ( n415 and not pi01 )
      or ( pi34 and pi01 );
    li28 <= ( n416 and not pi01 )
      or ( pi33 and pi01 );
    li29 <= ( n417 and not pi01 )
      or ( pi32 and pi01 );
    li30 <= ( n418 and not pi01 )
      or ( pi31 and pi01 );
    li31 <= ( n419 and not pi01 )
      or ( pi30 and pi01 );
    li32 <= ( n420 and not pi01 )
      or ( pi29 and pi01 );
    li33 <= ( n421 and not pi01 )
      or ( pi28 and pi01 );
    li34 <= ( n422 and not pi01 )
      or ( pi27 and pi01 );
    li35 <= ( n423 and not pi01 )
      or ( pi26 and pi01 );
    li36 <= ( n424 and not pi01 )
      or ( pi25 and pi01 );
    li37 <= ( n425 and not pi01 )
      or ( pi24 and pi01 );
    li38 <= ( n426 and not pi01 )
      or ( pi23 and pi01 );
    li39 <= ( n427 and not pi01 )
      or ( pi22 and pi01 );
    li40 <= ( n428 and not pi01 )
      or ( pi21 and pi01 );
    li41 <= ( n429 and not pi01 )
      or ( pi20 and pi01 );
    li42 <= ( n430 and not pi01 )
      or ( pi19 and pi01 );
    li43 <= ( n431 and not pi01 )
      or ( pi18 and pi01 );
    li44 <= ( n432 and not pi01 )
      or ( pi17 and pi01 );
    li45 <= ( n433 and not pi01 )
      or ( pi16 and pi01 );
    li46 <= ( n434 and not pi01 )
      or ( pi15 and pi01 );
    li47 <= ( n435 and not pi01 )
      or ( pi14 and pi01 );
    li48 <= ( n436 and not pi01 )
      or ( pi13 and pi01 );
    li49 <= ( n437 and not pi01 )
      or ( pi12 and pi01 );
    li50 <= ( n438 and not pi01 )
      or ( pi11 and pi01 );
    li51 <= ( n439 and not pi01 )
      or ( pi10 and pi01 );
    li52 <= ( n440 and not pi01 )
      or ( pi09 and pi01 );
    li53 <= ( n441 and not pi01 )
      or ( pi08 and pi01 );
    li54 <= ( n442 and not pi01 )
      or ( pi07 and pi01 );
    li55 <= ( n443 and not pi01 )
      or ( pi06 and pi01 );
    li56 <= ( n444 and not pi01 )
      or ( pi05 and pi01 );
    li57 <= ( n445 and not pi01 )
      or ( pi04 and pi01 );
    li58 <= ( n446 and not pi01 )
      or ( pi03 and pi01 );
    li59 <= ( n447 and not pi01 )
      or ( pi02 and pi01 );
    n506 <= ( not lo02 and pi59 )
      or ( lo02 and not pi59 );
    n507 <= ( not lo03 and pi58 )
      or ( lo03 and not pi58 );
    n508 <= ( not lo04 and pi57 )
      or ( lo04 and not pi57 );
    n509 <= ( not lo05 and pi56 )
      or ( lo05 and not pi56 );
    n510 <= ( not lo06 and pi55 )
      or ( lo06 and not pi55 );
    n511 <= ( not lo07 and pi54 )
      or ( lo07 and not pi54 );
    n512 <= ( not lo08 and pi53 )
      or ( lo08 and not pi53 );
    n513 <= ( not lo09 and pi52 )
      or ( lo09 and not pi52 );
    n514 <= ( not lo10 and pi51 )
      or ( lo10 and not pi51 );
    n515 <= ( not lo11 and pi50 )
      or ( lo11 and not pi50 );
    n516 <= ( not lo12 and pi49 )
      or ( lo12 and not pi49 );
    n517 <= ( not lo13 and pi48 )
      or ( lo13 and not pi48 );
    n518 <= ( not lo14 and pi47 )
      or ( lo14 and not pi47 );
    n519 <= ( not lo15 and pi46 )
      or ( lo15 and not pi46 );
    n520 <= ( not lo16 and pi45 )
      or ( lo16 and not pi45 );
    n521 <= ( not lo17 and pi44 )
      or ( lo17 and not pi44 );
    n522 <= ( not lo18 and pi43 )
      or ( lo18 and not pi43 );
    n523 <= ( not lo19 and pi42 )
      or ( lo19 and not pi42 );
    n524 <= ( not lo20 and pi41 )
      or ( lo20 and not pi41 );
    n525 <= ( not lo21 and pi40 )
      or ( lo21 and not pi40 );
    n526 <= ( not lo22 and pi39 )
      or ( lo22 and not pi39 );
    n527 <= ( not lo23 and pi38 )
      or ( lo23 and not pi38 );
    n528 <= ( not lo24 and pi37 )
      or ( lo24 and not pi37 );
    n529 <= ( not lo25 and pi36 )
      or ( lo25 and not pi36 );
    n530 <= ( not lo26 and pi35 )
      or ( lo26 and not pi35 );
    n531 <= ( not lo27 and pi34 )
      or ( lo27 and not pi34 );
    n532 <= ( not lo28 and pi33 )
      or ( lo28 and not pi33 );
    n533 <= ( not lo29 and pi32 )
      or ( lo29 and not pi32 );
    n534 <= ( not lo30 and pi31 )
      or ( lo30 and not pi31 );
    n535 <= ( not lo31 and pi30 )
      or ( lo31 and not pi30 );
    n536 <= ( not lo32 and pi29 )
      or ( lo32 and not pi29 );
    n537 <= ( not lo33 and pi28 )
      or ( lo33 and not pi28 );
    n538 <= ( not lo34 and pi27 )
      or ( lo34 and not pi27 );
    n539 <= ( not lo35 and pi26 )
      or ( lo35 and not pi26 );
    n540 <= ( not lo36 and pi25 )
      or ( lo36 and not pi25 );
    n541 <= ( not lo37 and pi24 )
      or ( lo37 and not pi24 );
    n542 <= ( not lo38 and pi23 )
      or ( lo38 and not pi23 );
    n543 <= ( not lo39 and pi22 )
      or ( lo39 and not pi22 );
    n544 <= ( not lo40 and pi21 )
      or ( lo40 and not pi21 );
    n545 <= ( not lo41 and pi20 )
      or ( lo41 and not pi20 );
    n546 <= ( not lo42 and pi19 )
      or ( lo42 and not pi19 );
    n547 <= ( not lo43 and pi18 )
      or ( lo43 and not pi18 );
    n548 <= ( not lo44 and pi17 )
      or ( lo44 and not pi17 );
    n549 <= ( not lo45 and pi16 )
      or ( lo45 and not pi16 );
    n550 <= ( not lo46 and pi15 )
      or ( lo46 and not pi15 );
    n551 <= ( not lo47 and pi14 )
      or ( lo47 and not pi14 );
    n552 <= ( not lo48 and pi13 )
      or ( lo48 and not pi13 );
    n553 <= ( not lo49 and pi12 )
      or ( lo49 and not pi12 );
    n554 <= ( not lo50 and pi11 )
      or ( lo50 and not pi11 );
    n555 <= ( not lo51 and pi10 )
      or ( lo51 and not pi10 );
    n556 <= ( not lo52 and pi09 )
      or ( lo52 and not pi09 );
    n557 <= ( not lo53 and pi08 )
      or ( lo53 and not pi08 );
    n558 <= ( not lo54 and pi07 )
      or ( lo54 and not pi07 );
    n559 <= ( not lo55 and pi06 )
      or ( lo55 and not pi06 );
    n560 <= ( not lo56 and pi05 )
      or ( lo56 and not pi05 );
    n561 <= ( not lo57 and pi04 )
      or ( lo57 and not pi04 );
    n562 <= ( not lo58 and pi03 )
      or ( lo58 and not pi03 );
    n563 <= ( not lo59 and pi02 )
      or ( lo59 and not pi02 );
    n564 <= not (( not n507 and not n508 ));
    n565 <= not (( not n506 and not n564 ));
    n566 <= not (( not n509 and not n510 ));
    n567 <= not (( not n511 and not n512 ));
    n568 <= not (( not n566 and not n567 ));
    n569 <= not (( not n565 and not n568 ));
    n570 <= not (( not n514 and not n515 ));
    n571 <= not (( not n513 and not n570 ));
    n572 <= not (( not n516 and not n517 ));
    n573 <= not (( not n518 and not n519 ));
    n574 <= not (( not n572 and not n573 ));
    n575 <= not (( not n571 and not n574 ));
    n576 <= not (( not n569 and not n575 ));
    n577 <= not (( not n521 and not n522 ));
    n578 <= not (( not n520 and not n577 ));
    n579 <= not (( not n523 and not n524 ));
    n580 <= not (( not n525 and not n526 ));
    n581 <= not (( not n579 and not n580 ));
    n582 <= not (( not n578 and not n581 ));
    n583 <= not (( not n527 and not n528 ));
    n584 <= not (( not n529 and not n530 ));
    n585 <= not (( not n583 and not n584 ));
    n586 <= not (( not n531 and not n532 ));
    n587 <= not (( not n533 and not n534 ));
    n588 <= not (( not n586 and not n587 ));
    n589 <= not (( not n585 and not n588 ));
    n590 <= not (( not n582 and not n589 ));
    n591 <= not (( not n576 and not n590 ));
    n592 <= not (( not n536 and not n537 ));
    n593 <= not (( not n535 and not n592 ));
    n594 <= not (( not n538 and not n539 ));
    n595 <= not (( not n540 and not n541 ));
    n596 <= not (( not n594 and not n595 ));
    n597 <= not (( not n593 and not n596 ));
    n598 <= not (( not n543 and not n544 ));
    n599 <= not (( not n542 and not n598 ));
    n600 <= not (( not n545 and not n546 ));
    n601 <= not (( not n547 and not n548 ));
    n602 <= not (( not n600 and not n601 ));
    n603 <= not (( not n599 and not n602 ));
    n604 <= not (( not n597 and not n603 ));
    n605 <= not (( not n550 and not n551 ));
    n606 <= not (( not n549 and not n605 ));
    n607 <= not (( not n552 and not n553 ));
    n608 <= not (( not n554 and not n555 ));
    n609 <= not (( not n607 and not n608 ));
    n610 <= not (( not n606 and not n609 ));
    n611 <= not (( not n556 and not n557 ));
    n612 <= not (( not n558 and not n559 ));
    n613 <= not (( not n611 and not n612 ));
    n614 <= not (( not n560 and not n561 ));
    n615 <= not (( not n562 and not n563 ));
    n616 <= not (( not n614 and not n615 ));
    n617 <= not (( not n613 and not n616 ));
    n618 <= not (( not n610 and not n617 ));
    n619 <= not (( not n604 and not n618 ));
    li01 <= ( not n591 and not n619 );
    po64 <= ( lo00 and not lo01 );
    po65 <= ( lo00 and lo01 );
    li00 <= ( pi00 );
    po00 <= ( lo59 );
    po01 <= ( lo58 );
    po02 <= ( lo57 );
    po03 <= ( lo56 );
    po04 <= ( lo55 );
    po05 <= ( lo54 );
    po06 <= ( lo53 );
    po07 <= ( lo52 );
    po08 <= ( lo51 );
    po09 <= ( lo50 );
    po10 <= ( lo49 );
    po11 <= ( lo48 );
    po12 <= ( lo47 );
    po13 <= ( lo46 );
    po14 <= ( lo45 );
    po15 <= ( lo44 );
    po16 <= ( lo43 );
    po17 <= ( lo42 );
    po18 <= ( lo41 );
    po19 <= ( lo40 );
    po20 <= ( lo39 );
    po21 <= ( lo38 );
    po22 <= ( lo37 );
    po23 <= ( lo36 );
    po24 <= ( lo35 );
    po25 <= ( lo34 );
    po26 <= ( lo33 );
    po27 <= ( lo32 );
    po28 <= ( lo31 );
    po29 <= ( lo30 );
    po30 <= ( lo29 );
    po31 <= ( lo28 );
    po32 <= ( lo27 );
    po33 <= ( lo26 );
    po34 <= ( lo25 );
    po35 <= ( lo24 );
    po36 <= ( lo23 );
    po37 <= ( lo22 );
    po38 <= ( lo21 );
    po39 <= ( lo20 );
    po40 <= ( lo19 );
    po41 <= ( lo18 );
    po42 <= ( lo17 );
    po43 <= ( lo16 );
    po44 <= ( lo15 );
    po45 <= ( lo14 );
    po46 <= ( lo13 );
    po47 <= ( lo12 );
    po48 <= ( lo11 );
    po49 <= ( lo10 );
    po50 <= ( lo09 );
    po51 <= ( lo08 );
    po52 <= ( lo07 );
    po53 <= ( lo06 );
    po54 <= ( lo05 );
    po55 <= ( lo04 );
    po56 <= ( lo03 );
    po57 <= ( lo02 );
end Cookbook__scrambler_lfsr_behav;
