%
%
vvhq=['vvhqwvvrhmusgjgthkihtssejchlsfcbgvwcrlryqtfsvgahwkcuhwauglq', ...
   'hnslrljshbltspisprdxljsveeghlqwkasskuwepwqtwvspgoelkcqyfnsv', ...
   'wljsniqkgnrgybwlwgoviokhkazkqkxzgyhcecmeiujoqkwfwvefqhkijrc', ...
   'lrlkbienqfrjljsdhgrhlsfqtwlauqrhwdmwlgusgikkflryvcwvspgpmlk', ...
   'assjvoqxeggveyggzmljcxxljsvpaivwikvrdrygfrjljslveggveyggeia', ...
   'puuisfpbtgnwwmuczrvtwglrwugumnczvile'];


ycve=['ycvejqwvhqtdtwvwu'];
lcll=['lcllewljazlnnzmvyiylhrmhza'];
edsg=['edsgickxhuklzveqzvkxwkzukcvuh'];
tcab=['tcabtiqmfheqqmrmvmtmaq'];
jidf=['jidfbidzzteztxjsichfoihuszzsfsaichbipahsibdhuhzsichjujgfabbczggjsvzubehhgjsv'];
xkju= ['xkjurowmllpxwznpimbvbqjcnowxpcchhvvfvsllfvxhazityxohulxqojaxelx', ...
     'zxmyjaqfstsrulhhucdskbxknjqidallpqslluhiaqfpbpcidsvcihwhwewthbt', ...
     'xrljnrsncihuvffuxvoukjljswmaqfvjwjsdyljogjxdboxajultucpzmpliwml', ...
     'ubzxvoodybafdskxgqfadshxnxehsaruojaqfpfkndhsaafvulluwtaqfrupwjr', ...
     'szxgpfutjqiynrxnyntwmhcukjfbirzsmehhsjshyonddzzntzmplilrwnmwmlv', ...
     'uryonthuhabwnvw'];

ocwy=['ocwyikoooniwugpmxwktzdwgtssayjzwyemdlbnqaaavsuwdvbrflauplooubfgq', ...
    'hgcscmgzlatoedcsdeidpbhtmuovpiekifpimfnoamvlpqfxejsmxmpgkccaykwf', ...
    'zpyuavtelwhrhmwkbbvgtguvtefjlodfefkvpxsgrsorvgtajbsauhzrzalkwuow', ...
    'hgedefnswmrciwcpaaavogpdnfpktdbalsisurlnpsjyeatcuceesohhdarkhwot', ...
    'ikbroqrdfmzghgucebvgwcdqxgpbgqwlpbdaylooqdmuhbdqgmyweuik'];

hdsf=['hdsfgvmkoowafweetcmfthskucaqbilgjofmaqlgspvatvxqbiryscpcfrmvsw', ...
      'rvnqlszdmgaoqsakmlupsqforvtwvdfcjzvgsoaoqsacjkbrsevbelvbksarls', ...
      'cdcaarmnvrysywxqgvellcyluwwveoafgclazowafojdlhssfiksepsoywxafo', ...
      'wlbfcsocylngqsyzxgjbmlvgrggokgfgmhlmejabsjvgmlnrvqzcrggcrghgeu', ...
      'pcyfgtydycjkhqluhgxgzovqswpdvbwsffsenbxapasgazmyuhgsfhmftayjxm', ...
      'wznrsofrsoaopgauaaarmftqsmahvqecev'];

sci=['themethodusedforthepreparationandreadingofcodemessagesissimplei', ...
     'ntheextremeandatthesametimeimpossibleoftranslationunlessthekeyi', ...
     'sknowntheeasewithwhichthekeymaybechangedisanotherpointinfavorof', ...
     'theadoptionofthiscodebythosedesiringtotransmitimportantmessages', ...
     'withouttheslightestdangeroftheirmessagesbeingreadbypoliticalorb', ...
     'usinessrivalsetc'];

vvhq=['vvhqwvvrhmusgjgthkihtssejchlsfcbgvwcrlryqtfsvgahwkcuhwauglqhns', ...
      'lrljshbltspisprdxljsveeghlqwkasskuwepwqtwvspgoelkcqyfnsvwljsni', ...
      'qkgnrgybwlwgoviokhkazkqkxzgyhcecmeiujoqkwfwvefqhkijrclrlkbienq', ...
      'frjljsdhgrhlsfqtwlauqrhwdmwlgusgikkflryvcwvspgpmlkassjvoqxeggv', ...
      'eyggzmljcxxljsvpaivwikvrdrygfrjljslveggveyggeiapuuisfpbtgnwwmu', ...
      'czrvtwglrwugumnczvile'];



L100= [1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, ...
       0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, ...
       1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, ...
       1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, ...
       1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0];

L011= [0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, ...
      0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, ...
      1, 1, 0, 1, 0, 1];

L101= [1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, ...
      1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, ...
      0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, ...
      0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, ...
      0, 0];


gaat=['GAATTCGCGGCCGCAATTAACCCTCACTAAAGGGATCTCTAGAACT'];

zirk=['zirkzwopjjoptfapuhfhadrq'];



% Chapter 16

hammingpc=[  0  0  0  0  1  1  1  1  1  1  1 1  0  0  0;
  1  1  1  0  0  0  0  1  1  1  1 0  1  0  0;
  0  1  1  1  0  1  1  0  0  1  1 0  0  1  0;
  1  0  1  1  1  0  1  0  1  0  1 0  0  0  1];

golay=[1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,1,0,0,0,1, ...
    0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,1,1,0,0,0,1, ...
    0,0,1,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,1,1,1,0,0,0,0,0, ...
    0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,1,0,1,1,1,0,0,0,0,0,0, ...
    1,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,1,1,1,0,0,0,0,0,0,1, ...
    0,0,0,0,0,0,1,0,0,0,1,0,1,1,0,1,1,1,0,0,0,0,0,0,1,0, ...
    0,0,0,0,1,1,0,0,0,1,0,1,1,0,1,1,0,0,0,0,0,0,0,1,0,0, ...
    0,0,1,1,1,0,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,1,0,0,0, ...
    1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0, ...
    1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1, ...
    1,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1, ...
    1,1,1,1,1,1];

golay=reshape(golay,24,12)';

golayb=golay(:,13:24);

n1=sym('8834884587090814646372459890377418962766907');
naive= sym('152415787501905985701881832150835089037858868621211004433');
cnaive=sym('141077461765569500241199505617854673388398574333341423525');
sigpairm1=('418726553997094258577980055061305150940547956');
sigpairs1=('749142649641548101520133634736865752883277237');
sigpairm2=('14823765232498712344512418717130930');
sigpairs2=sym('43176121628465441340112418672065063');
signa=sym('171024704183616109700818066925197841516671277');
signb=sym('839073542734369359260871355939062622747633109');
sigpb=('98763457697834568934613');
sigqb=('8495789457893457345793');
rsan=sym('114381625757888867669235779976146612010218296721242362562561842935706935245733897830597123563958705058989075147599290026879543541');
rsap=sym('3490529510847650949147849619903898133417764638493387843990820577');
rsaq=sym('32769132993266709549961988190834461413177642967992942539798288533');
rsaci=sym('96869613754622061477140922254355882905759991124574319874695120930816298225145708356931476622883989628013391990551829945157815154');
rsae=sym('9007');


