%!PS-Adobe-2.0 %%Creator: dvips 5.47 Copyright 1986-91 Radical Eye Software %%Title: cryptlesson.dvi %%Pages: 42 1 %%BoundingBox: 0 0 596 843 %%EndComments %%BeginProcSet: tex.pro /TeXDict 200 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{ isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale Resolution VResolution vsize neg mul TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@letter{/vsize 10 N}B /@landscape{/isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@a3{ /vsize 15.5531 N}B /@ledger{/vsize 16 N}B /@legal{/vsize 13 N}B /@manualfeed{ statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{/sf 1 N /fntrx FMat N df-tail} B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{ ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image} imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin 0 0 moveto}N /eop{clear SI restore showpage userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook known{start-hook}if /VResolution X /Resolution X 1000 div /DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for}N /p /show load N /RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V statusdict begin /product where{pop product dup length 7 ge{0 7 getinterval(Display)eq}{pop false}ifelse}{false}ifelse end{{gsave TR -.1 -.1 TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 -.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /a{ moveto}B /delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{ S p tail}B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w }B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p a}B /bos{/SS save N}B /eos{clear SS restore}B end %%EndProcSet TeXDict begin 1000 300 300 @start /Fa 1 1 df0 D E /Fb 6 115 df<00E001E007C007000F001E003C0038007800700070007000F000E000E000 E000E000E000E000E000F000700070007000780038003C001E000F00070007C001E000E00B217A 9C16>40 DI< 1FE0007FF8007FFC00783C00301E00000E00003E0007FE003FFE007FCE00F80E00E00E00E00E00 F01E00F83E007FFFE03FF7E00FC3E013127E9116>97 D<003F00007F00003F0000070000070000 070000070003E7000FFF003FFF003C1F00780F00700F00F00700E00700E00700E00700E00700F0 0F00F00F00781F007C3F003FFFE01FF7F007C7E014197F9816>100 D<7E7C00FFFF007FFF800F 87800F03800F03800E03800E03800E03800E03800E03800E03800E03800E03800E03807FC7F0FF E7F87FC7F01512809116>110 D114 D E /Fc 2 21 df0 D<000001800000078000001E00000078 000001E00000078000001E00000078000001E00000078000001E00000078000000E00000007800 00001E0000000780000001E0000000780000001E0000000780000001E0000000780000001E0000 0007800000018000000000000000000000000000000000000000000000000000000000FFFFFF80 FFFFFF8019227D9920>20 D E /Fd 1 64 df<0FF03FFC703EF83FFC3FFC3FFC3F783E007C00F8 00F001C001C0018001800180018001800000000000000000038007C00FE00FE00FE007C0038010 1D7D9C17>63 D E /Fe 4 110 df<40E04003037D820A>58 D<06070600000000384C4C8C9818 1830326262643808147F930C>105 D<3E0006000C000C000C000C001800187018B81938323034 0038003E006300631063106310C320C1C00D147E9312>107 D<30F87C00590C86004E0D06009C 0E0600980C0600180C0600180C060030180C0030180C8030181880301818806030190060300E00 190D7F8C1D>109 D E /Ff 12 121 df<60F0F0701010101020204080040C7C830C>59 D<00030003000700060006000E000C001C0018001800380030003000700060006000E000C000C0 01C001800380030003000700060006000E000C000C001C001800180038003000700060006000E0 00C000C00010297E9E15>61 D<00000C0000000C0000001C0000001C0000003C0000007C000000 5C0000009C0000008E0000010E0000010E0000020E0000040E0000040E0000080E0000080E0000 100E0000200E00003FFE0000400700004007000080070001000700010007000200070002000700 060007001E000700FF807FF01C1D7F9C1F>65 D<01FE0000FF003E0000F0002E0001E0002E0002 E0002E0002E0002E0004E0004E0009C0004E0009C000470011C000470011C00087002380008700 43800087004380008700838001070107000107010700010382070001038207000203840E000203 880E000203880E000203900E000403A01C000403A01C000401C01C000C01C01C001C01803C00FF 8103FF80281C7E9B28>77 D<01E3000717000C0F00180F00380E00300E00700E00700E00E01C00 E01C00E01C00E01C00E03880E03880E038806078803199001E0E0011127E9116>97 D<0FC00001C00001C0000380000380000380000380000700000700000700000700000E07000E18 800E21C00E23C01C47801C83001D00001E00003F800039C00038E00038E00070E10070E10070E1 0070E200E06200603C00121D7E9C16>107 D<381F004E61804681C04701C08F01C08E01C00E01 C00E01C01C03801C03801C03801C0700380710380710380E10380E2070064030038014127E9119 >110 D<07078009C86008D03008E03011C03011C03801C03801C0380380700380700380700380 600700E00700C00701800783000E86000E78000E00000E00001C00001C00001C00001C00003C00 00FF8000151A819115>112 D<01C206260C1E181E381C301C701C701CE038E038E038E038E070 E070E07060F023E01CE000E000E001C001C001C001C003C01FF80F1A7E9113>I<383C4E424687 470F8E1E8E0C0E000E001C001C001C001C0038003800380038007000300010127E9113>I<01F0 060C04040C0E180C1C001F000FE00FF003F80038201C7018F018F010803060601F800F127E9113 >I<07878008C84010F0C020F1E020E3C040E18000E00000E00001C00001C00001C00001C00063 8080F38080F38100E5810084C60078780013127E9118>120 D E /Fg 23 122 df<0000180000001800000038000000380000007800000078000000B8000001B800000138 000002380000023C0000041C0000041C0000081C0000181C0000101C0000201C0000201C00007F FC0000401C0000801C0001801C0001001C0002001C0002001C0004000E000C000E001C001E00FF 00FFC01A1D7E9C1F>65 D<0003F020001E0C60003002E000E003C001C001C0038001C0070000C0 0E0000801E0000801C0000803C0000803C000000780000007800000078000000F0000000F00000 00F0000000F0000000F0000400F0000400F0000400F00008007000080070001000380020001800 40000C0180000706000001F800001B1E7A9C1E>67 D<01FE0007F8003E000780002E000F00002E 001700002E001700002E002700004E002E00004E004E00004E004E00004E008E00008E011C0000 8E011C00008E021C00008E021C0001070438000107043800010708380001071038000207107000 020720700002072070000207407000040740E000040780E000040700E0000C0700E0001C0601E0 00FF861FFC00251C7D9B25>77 D<0007F000001C1C0000700E0000E0070001C003800380038007 0003800E0003C01E0003C01C0003C03C0003C03C0003C0780003C0780003C0780003C0F0000780 F0000780F0000780F0000F00F0000F00F0000E00F0001E00F0003C0070003800700070007800E0 003801C0001C0380000E0E000003F800001A1E7A9C20>79 D<01FFFC00003C0700003803800038 01C0003801C0003801C0007003C0007003C0007003C00070038000E0078000E0070000E00E0000 E0380001FFE00001C0000001C0000001C000000380000003800000038000000380000007000000 0700000007000000070000000F000000FFE000001A1C7D9B1C>I<01FFF800003C0E0000380700 00380380003803800038038000700780007007800070078000700F0000E00E0000E01C0000E070 0000FFC00001C0C00001C0600001C0700001C07000038070000380700003807000038070000700 F0000700F0400700F0400700F0800F007880FFE0790000001E001A1D7D9B1E>82 D<000F8400304C00403C00801801001803001803001806001006001006000007000007000003E0 0003FC0001FF00007F800007C00001C00001C00000C00000C02000C02000C06001806001806003 00600200F00400CC180083E000161E7D9C17>I<03CC063C0C3C181C3838303870387038E070E0 70E070E070E0E2C0E2C0E261E462643C380F127B9115>97 D<01F007080C08181C383830007000 7000E000E000E000E000E000E008E010602030C01F000E127B9113>99 D<001F80000380000380 000700000700000700000700000E00000E00000E00000E0003DC00063C000C3C00181C00383800 303800703800703800E07000E07000E07000E07000E0E200C0E200C0E20061E4006264003C3800 111D7B9C15>I<01E007100C1018083810701070607F80E000E000E000E000E000E00860106020 30C01F000D127B9113>I<0003C0000670000C70001C60001C00001C0000380000380000380000 380000380003FF8000700000700000700000700000700000E00000E00000E00000E00000E00001 C00001C00001C00001C00001C000038000038000038000030000030000070000C60000E60000CC 00007800001425819C0D>I<00F3018F030F06070E0E0C0E1C0E1C0E381C381C381C381C383830 383038187818F00F700070007000E000E0C0C0E1C0C3007E00101A7D9113>I<0FC00001C00001 C0000380000380000380000380000700000700000700000700000E78000E8C000F0E000E0E001C 0E001C0E001C0E001C0E00381C00381C00381C00383800703880703880707080707100E0320060 1C00111D7D9C15>I<01800380010000000000000000000000000000001C002600470047008E00 8E000E001C001C001C0038003800710071007100720072003C00091C7C9B0D>I<3C3C00264600 4687004707008E07008E07000E07000E07001C0E001C0E001C0E001C1C00381C40381C40383840 383880701900300E0012127C9117>110 D<01E007180C0C180C380C300E700E700EE01CE01CE0 1CE018E038E030E06060C031801E000F127B9115>I<07870004D98008E0C008E0C011C0E011C0 E001C0E001C0E00381C00381C00381C00381800703800703000707000706000E8C000E70000E00 000E00001C00001C00001C00001C00003C0000FF8000131A7F9115>I<3C3C26C2468747078E06 8E000E000E001C001C001C001C0038003800380038007000300010127C9112>114 D<01F006080C080C1C18181C001F001FC00FF007F0007800386030E030C030806060C01F000E12 7D9111>I<00C001C001C001C00380038003800380FFE00700070007000E000E000E000E001C00 1C001C001C00384038403840388019000E000B1A7D990E>I<1E0300270700470700470700870E 00870E000E0E000E0E001C1C001C1C001C1C001C1C003838803838801838801839001C5900078E 0011127C9116>I<1E03270747074707870E870E0E0E0E0E1C1C1C1C1C1C1C1C38383838183818 381C7007F00070007000E0E0C0E1C0818047003C00101A7C9114>121 D E /Fh 3 108 df<040C0000000000705898983030606464683006127E910B>105 D<0020002000000000000000000000038004C008C008C000C00180018001800180030003000300 03004600CC0078000B1780910D>I<3C000C000C00180018001800187031903230340038007F00 618061906190C1A0C0C00C117E9010>I E /Fi 2 51 df<080078009800180018001800180018 001800180018001800180018001800FF8009107E8F0F>49 D<3F006180F0C0F0E06060006000E0 00C00180030006000C00102020207FC0FFC00B107F8F0F>I E /Fj 17 114 df12 D<0006000C001800300070006000C001C0018003800300070006000E000C001C001C0018003800 380038003000700070007000700070007000E000E000E000E000E000E000E000E000E000E000E0 00E000E000E000E000E000E000E000700070007000700070007000300038003800380018001C00 1C000C000E000600070003000380018001C000C00060007000300018000C00060F4A788119>16 DI< 0000300000600000C0000180000300000700000E00000C0000180000380000300000700000E000 00C00001C0000180000380000380000300000700000600000E00000E00000C00001C00001C0000 1C0000180000380000380000380000380000700000700000700000700000700000700000700000 E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000 E00000E00000E00000E00000E00000E00000E00000E00000700000700000700000700000700000 7000007000003800003800003800003800001800001C00001C00001C00000C00000E00000E0000 06000007000003000003800003800001800001C00000C00000E000007000003000003800001800 000C00000E000007000003000001800000C0000060000030146377811F>II<0000180000300000600000E00000C000 0180000380000700000600000E00000C00001C0000380000380000700000700000E00000E00001 E00001C00001C0000380000380000380000780000700000700000F00000E00000E00001E00001E 00001E00001C00001C00003C00003C00003C00003C000038000078000078000078000078000078 0000780000780000780000700000F00000F00000F00000F00000F00000F00000F00000F00000F0 0000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0 0000F00000F00000F00000F0000070000078000078000078000078000078000078000078000078 00003800003C00003C00003C00003C00001C00001C00001E00001E00001E00000E00000E00000F 000007000007000007800003800003800003800001C00001C00001E00000E00000E00000700000 7000003800003800001C00000C00000E000006000007000003800001800000C00000E000006000 0030000018157C768121>32 DI<00000C0000180000380000300000600000E00000C00001C000038000038000070000070000 0E00000E00001C00001C0000380000380000780000700000F00000F00000E00001E00001E00003 C00003C00003C00003C0000780000780000780000F80000F00000F00000F00001F00001F00001E 00001E00001E00003E00003E00003E00003E00003C00003C00003C00007C00007C00007C00007C 00007C00007C00007C00007C0000780000780000F80000F80000F80000F80000F80000F80000F8 0000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000164B748024>48 DI<00 18007800F001E003C007800F001F001E003E003C007C007C007800F800F800F800F800F800F800 F800F800F800F800F800F800F800F800F800F800F800F800F800F800F800F800F8000D25707E25 >56 D58 D<007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C 007C007C007C007C007C007C007C007C00F800F800F800F001F001E003E003C0078007000E001C 003800F000C000F00038001C000E000700078003C003E001E001F000F000F800F800F8007C007C 007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C00 7C007C007C0E4D798025>60 D64 D<00007C00007C00007C00007C00007C00007C00007C00007C00007C 00007C00007C00007C00007C00007C00007C00007C00007C0000780000780000F80000F80000F8 0000F80000F80000F80000F80000F80000F00000F00000F00001F00001F00001F00001F00001E0 0001E00001E00003E00003E00003C00003C00003C00007C0000780000780000780000F00000F00 000F00000F00001E00001E00001C00003C00003C0000380000780000700000700000E00000E000 01C00001C0000380000380000700000700000E00000C00001C0000180000300000700000600000 C00000164B7F8224>I80 D88 D<0000000006000000000600000000 0E000000000C000000000C000000001C0000000018000000001800000000380000000030000000 003000000000700000000060000000006000000000E000000000C000000000C000000001C00000 000180000000018000000003800000000300000000030000000007000000000600000000060000 00000E000000000C000000000C000000001C000000001800000000180000000038000000003000 000000300000000070000000006000000000600008000060001C0000E0003C0000C0007C0000C0 00DC0001C0008E000180000E000180000E00038000070003000007000300000700070000038006 0000038006000003800E000003800C000001C00C000001C01C000001C018000000E018000000E0 38000000E030000000E03000000070700000007060000000706000000038E000000038C0000000 38C00000001DC00000001D800000001D800000001F800000000F000000000F000000000F000000 00060000000006000000274B7C812A>113 D E /Fk 25 122 df<000100000200000200000200 0002000004000004000004000004001C08102608384608184608188610100C10100C10100C1020 1820201820401820800C210006460001F800004000004000008000008000008000008000151D7F 9617>32 D<60F0F070101020204040040A7D830A>59 D<07FE03F800E001C000E0010000E00200 00E0080001C0100001C0200001C0800001C1000003830000038F00000393800003A380000781C0 000701C0000700E0000700E0000E0070000E0070000E0038000E0038001C003C00FF80FF001D17 7F961E>75 D<07FF0000E00000E00000E00000E00001C00001C00001C00001C000038000038000 0380000380000700000700080700080700100E00100E00300E00200E00601C01E0FFFFC015177F 9618>I<07FFF800E00E00E00700E00700E00701C00701C00701C00701C00E03801C03807003FF C00380000700000700000700000700000E00000E00000E00000E00001C0000FF800018177F9616 >80 D<003E1000C1A00100E00200600600600C00400C00400E00000F000007E00007FC0001FE00 003F00000780000380000380200180400300400300600600600400D8180087E00014177E9615> 83 D<03FE1FE0007807000078060000380C0000381800003C1000001C2000001E4000000E8000 000F00000007000000070000000F8000001380000023C0000061C00000C1C0000081E0000100E0 000200F000040070001C007000FF03FE001B177F961D>88 D<03FFFE07801C0600380400700400 E00801C0080380000780000F00000E00001C0000380000700000E00001C0200380200700400F00 400E00C01C0080380180700700FFFF0017177E9618>90 D<071018F0307060706060C060C060C0 6080C080C480C4C1C446C838700E0E7E8D13>97 D<07C00C20107020706000C000C000C0008000 8000C010C02060C03F000C0E7E8D0F>99 D<003E000C000C000C000C0018001800180018073018 F0307060706060C060C060C06080C080C480C4C1C446C838700F177E9612>I<07C01C20301060 106020FFC0C000C000C000C000C010402060C01F000C0E7E8D10>I<00E2031E060E0C0E0C0C18 0C180C180C101810181018183808F00730003000306060E060C1C07F000F14808D11>103 D<1F0006000600060006000C000C000C000C0018F01B181C081808381830183018303060306031 60616062C022C03C10177E9614>I<0300038003000000000000000000000000001C0024004600 46008C000C0018001800180031003100320032001C0009177F960C>I<00180038001000000000 000000000000000001C0022004300430086000600060006000C000C000C000C001800180018001 806300E300C60078000D1D80960E>I<1F0006000600060006000C000C000C000C00181C186618 8E190C32003C003F00318060C060C460C460C8C0C8C0700F177E9612>I<383C1E0044C6630047 028100460301008E0703000C0603000C0603000C060600180C0600180C0620180C0C20180C0C40 30180440301807801B0E7F8D1F>109 D<383C0044C6004702004602008E06000C06000C06000C 0C00180C00180C40181840181880300880300F00120E7F8D15>I<1C3C22462382230346030603 060306030C060C060C0C0C081A3019E018001800300030003000FC001014808D12>112 D<38F04518463846308C000C000C000C001800180018001800300030000D0E7F8D10>114 D<07C00C201870187038001E000FC003E000606060E060C0C0C1803F000C0E7E8D10>I<030003 000600060006000600FFC00C000C000C001800180018001800300030803080310031001E000A14 7F930D>I<0F1F0011A18020C38020C300418000018000018000018000030000030200C30200E7 0400C5080078F000110E7F8D14>120 D<1C02260646064606860C0C0C0C0C0C0C181818181818 18380C7007B000300060706070C021801E000F147F8D11>I E /Fl 5 51 df0 D<0F803FE070706030E038C018C018C018C018E03860307070 3FE00F800D0E7E8E12>14 D21 D<060F0F0E1E1E1C3C383830707060E0C04008117F910A>48 D<00FF8003FF800F00001C000038 0000700000600000600000E00000C00000FFFF80FFFF80C00000E0000060000060000070000038 00001C00000F000003FF8000FF8011167D9218>50 D E /Fm 53 124 df<007E0001C180030180 0703C00E03C00E01800E00000E00000E00000E00000E0000FFFFC0FFFFC00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07F87F87F87F8 151D809C17>12 D<7070F8F8FCFCFCFC7474040404040404080808081010202040400E0D7F9C15 >34 D<004000800100020006000C000C0018001800300030007000600060006000E000E000E000 E000E000E000E000E000E000E000E000E000600060006000700030003000180018000C000C0006 0002000100008000400A2A7D9E10>40 D<800040002000100018000C000C000600060003000300 038001800180018001C001C001C001C001C001C001C001C001C001C001C001C001800180018003 8003000300060006000C000C00180010002000400080000A2A7E9E10>I<70F0F8F87808080810 10202040050D7D840C>44 DI<70F8F8F87005057D840C>I<07E00C3018 18381C700E700E700EF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F700E700E 700E381C18180C3007E0101B7E9A15>48 D<030007003F00FF00C7000700070007000700070007 0007000700070007000700070007000700070007000700070007000700FFF8FFF80D1B7C9A15> I<07E01FF8307C403EF01EF81FF80FF80F700F001F001E001E003C0038007000E000C001800300 06000C011801100120027FFEFFFEFFFE101B7E9A15>I<000C00000C00001C00003C00007C0000 5C00009C00011C00031C00021C00041C00081C00181C00101C00201C00401C00C01C00FFFFC0FF FFC0001C00001C00001C00001C00001C00001C0001FFC001FFC0121B7F9A15>52 D<07E00FF0181C300C6006600660067006780C3E083F901FE007F00FF818FC307E601E400FC007 C003C003C00360027006381C1FF807E0101B7E9A15>56 D<07E00FF01C38381C701C700EF00EF0 0EF00FF00FF00FF00F700F301F381F1C2F07CF000F000E000E301E781C7818703820F03FE00F80 101B7E9A15>I69 DI72 DI75 DII80 D82 D<07E0801FF980380F80700380600180E00180E00080E00080F00000F000 007C00007FC0003FF8001FFE0007FF0000FF80000F800003C00003C00001C08001C08001C08001 C0C00380E00300F80F00CFFE0083F800121C7E9B17>I<7FFFFFC07FFFFFC0700F01C0600F00C0 400F0040C00F0060800F0020800F0020800F0020800F0020000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F 0000000F0000000F000003FFFC0003FFFC001B1C7F9B1E>II87 D<08081010202040404040808080808080B8B8FCFC FCFC7C7C38380E0D7B9C15>92 D<0FE0001838003C1C003C0E00180E00000E00000E0001FE000F 8E003C0E00780E00700E00F00E20F00E20F00E20701E203827400FC38013127F9115>97 DI<03F00E181C3C383C78187000F000F000F000F000F000 F0007000780238021C040E1803E00F127F9112>I<001F80001F80000380000380000380000380 00038000038000038000038000038003F3800E0B801C0780380380780380700380F00380F00380 F00380F00380F00380F003807003807803803803801C07800E1BF003E3F0141D7F9C17>I<03E0 0C301818381C701E700EF00EFFFEF000F000F000F00070007002380218040E1803E00F127F9112 >I<00F8018C071E061E0E0C0E000E000E000E000E000E00FFE0FFE00E000E000E000E000E000E 000E000E000E000E000E000E000E000E007FE07FE00F1D809C0D>I<07E3800C34C0381C80381C 00781E00781E00781E00781E00381C00381C001C300037E0002000003000003000003FF8001FFF 001FFF803003806001C0C000C0C000C0C000C06001803003001C0E0007F800121B7F9115>II<38007C007C007C003800000000000000000000000000FC00 FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C00FF80FF80091D7F9C0C >I107 DIII<03F0000E1C00180600380700700380700380F003C0F003C0F003C0F003C0 F003C0F003C07003807003803807001C0E000E1C0003F00012127F9115>II<03 E0800E19801C0580380780780380780380F00380F00380F00380F00380F00380F0038070038078 03803807801C07800E1B8003E380000380000380000380000380000380000380001FF0001FF014 1A7F9116>II<1F9030704030C010C010E010F8007F803FE00FF000F880388018C018C0 18E010D0608FC00D127F9110>I<04000400040004000C000C000C001C003FE0FFE01C001C001C 001C001C001C001C001C001C101C101C101C101C100C100E2003C00C1A7F9910>III< FF3FCFE0FF3FCFE01C0703801C0701001C0B01000E0B82000E0B82000E1182000711C4000711C4 000720C40003A0E80003A0E80003C0680001C0700001C0700001803000008020001B127F911E> I<7F8FF07F8FF00F070007020003840001C80001D80000F00000700000780000F800009C00010E 00020E000607000E0380FF0FF8FF0FF81512809116>II<7FFC70386038407040 F040E041C003C0038007000F040E041C043C0C380870087038FFF80E127F9112>II E /Fn 11 58 df<006000006000006000006000006000006000006000006000006000 006000FFFFF0FFFFF0006000006000006000006000006000006000006000006000006000006000 14167E9119>43 D<0FC01860303060186018E01CE01CE01CE01CE01CE01CE01CE01CE01C601860 18303018600FC00E137F9211>48 D<06001E00EE000E000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E00FFE00B137D9211>I<1F0021C040E0C0F0E070E07000F000E000E0 01C00180030006000C10181010303FE07FE0FFE00C137E9211>I<1FC020707078707820780078 007000E00FC0007000780038003C403CE03CE038407860701FC00E137F9211>I<006000E000E0 01E002E006E00CE008E010E020E060E0C0E0FFFC00E000E000E000E000E007FC0E137F9211>I< 60607FC07F807F004000400040004F0070C040E0006000700070E070E070C06040E021C01F000C 137E9211>I<03E00E101838303870006000E000E7C0E870F038E018E01CE01CE01C601C701830 38186007C00E137F9211>I<40007FFC7FF87FF0C0108020804000800100010003000200060006 000E000E000E000E000E0004000E147E9311>I<0FC0107020186018601870183C303F600F800F E031F06078C01CC00CC00CC00C601830300FC00E137F9211>I<0FC0186030306038E018E01CE0 1CE01C601C703C385C0F9C001C001800387030706020C01F000E137F9211>I E /Fo 13 58 df<0102040C1818303070606060E0E0E0E0E0E0E0E0E0E060606070303018180C 04020108227D980E>40 D<8040203018180C0C0E060606070707070707070707070606060E0C0C 18183020408008227E980E>I<0030000030000030000030000030000030000030000030000030 00003000003000FFFFFCFFFFFC0030000030000030000030000030000030000030000030000030 0000300000300016187E931B>43 D<07C018303018701C600C600CE00EE00EE00EE00EE00EE00E E00EE00EE00E600C600C701C30181C7007C00F157F9412>48 D<03000700FF0007000700070007 0007000700070007000700070007000700070007000700070007007FF00C157E9412>I<1F8020 E04070E070F038F038603800780070007000E000C00180030006000C08180810183FF07FF0FFF0 0D157E9412>I<0FE030707038783C781C303C00380030006007C000700038001C001E001E601E F01EF01C603830700FC00F157F9412>I<00300030007000F001F0017002700470087018701070 20704070C070FFFE0070007000700070007003FE0F157F9412>I<20303FE03FC03F8020002000 200020002F8030E020700030003800386038F038F038E030406020C01F000D157E9412>I<01F0 0608081C183C303C70186000E000E3E0EC30F018F00CE00EE00EE00E600E600E300C3018183007 C00F157F9412>I<40007FFE7FFC7FF8C008801080200040008000800180030003000700070007 000F000F000F000F000F0006000F167E9512>I<07E018302018600C600C700C78183E101F600F C00FF018F8607C601EC00EC006C006C004600C38300FE00F157F9412>I<07C0183030186018E0 0CE00CE00EE00EE00E601E301E186E0F8E000E000C301C78187818703020C01F800F157F9412> I E /Fp 20 113 df0 D<70F8F8F87005057C8E0E>I<00C000 00C00000C00000C00000C000C0C0C0F0C3C038C7000EDC0003F00000C00003F0000EDC0038C700 F0C3C0C0C0C000C00000C00000C00000C00000C00012157D9619>3 D<00018000000180000001 800000018000000180000001800000018000000180000001800000018000000180000001800000 018000000180000001800000018000FFFFFFFFFFFFFFFF00018000000180000001800000018000 000180000001800000018000000180000001800000018000000180000001800000018000000180 00FFFFFFFFFFFFFFFF20227DA027>6 D<03F0000FFC001C0E00380700700380600180E001C0C0 00C0C000C0C000C0C000C0C000C0C000C0E001C06001807003803807001C0E000FFC0003F00012 147D9519>14 D<03F0000FFC001FFE003FFF007FFF807FFF80FFFFC0FFFFC0FFFFC0FFFFC0FFFF C0FFFFC0FFFFC0FFFFC07FFF807FFF803FFF001FFE000FFC0003F00012147D9519>I17 D<0000000C0000003C000000F0000003C000000F0000003C0000 00F0000007C000001F00000078000001E00000078000001E00000078000000E000000078000000 1E0000000780000001E0000000780000001F00000007C0000000F00000003C0000000F00000003 C0000000F00000003C0000000C0000000000000000000000000000000000000000000000000000 000000000000FFFFFFFCFFFFFFFC1E277C9F27>20 DI<07E000010FF800011FFC 0001381E0003700780036003C006C001E00EC000781C80003FF880001FF0800007E0200B7D9127 >24 D<07E000011FF800013FFE0001781F000360078003C001E006C000F81E80007FFC80001FF8 800007E0000000000000000007E000011FF800013FFE0001781F000360078003C001E006C000F8 1E80007FFC80001FF8800007E020167D9727>I<001FFFFC00FFFFFC01E00000078000000E0000 001C0000003800000030000000700000006000000060000000E0000000C0000000C0000000C000 0000C0000000C0000000C0000000E000000060000000600000007000000030000000380000001C 0000000E0000000780000001E0000000FFFFFC001FFFFC1E1E7C9A27>I<000000600000000000 6000000000003000000000001800000000001800000000000C0000000000060000000000030000 FFFFFFFF8000FFFFFFFFC000000000007000000000001C00000000000F800000000003E0000000 000780000000001E00000000003800000000006000FFFFFFFFC000FFFFFFFF8000000000070000 0000000600000000000C0000000000180000000000300000000000300000000000600000000000 6000002B1C7D9932>41 D<001FFF00FFFF01E0000780000E00001C000038000030000070000060 0000600000E00000C00000C00000FFFFFFFFFFFFC00000C00000E0000060000060000070000030 00003800001C00000E000007800001E00000FFFF001FFF181E7C9A21>50 D<00000300000300000700000600000E00000C00001C0000180000380000300000700000600000 E00000C00001C0000180000380000300000700000600000E00000C00001C000018000018000038 0000300000700000600000E00000C00001C0000180000380000300000700000600000E00000C00 001C0000180000380000300000700000600000E00000C00000C00000183079A300>54 D<00001FC00000FFF80001FFFC000703FC000C007C0018003C0030003C0070003800F0002000F0 000000F8000000F8000000FC0000007E0000007F8000003FE000001FF8000007FE000001FF0000 007F8000001F8000000FC0060007C00C0007C0380003C0700003C070000380F0000380F0000700 F8000600FC000C00FE0018007FC0F0003FFFC0001FFF000003F800001E247FA21E>83 D<000F0038007000E001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C0 01C001C0038007001E00F0001E000700038001C001C001C001C001C001C001C001C001C001C001 C001C001C001C001C001C001C000E000700038000F10317CA419>102 DI106 D<0000000003000000000300000000070000000006000000000E000000000C000000001C000000 0018000000003800000000300000000070000000006000000000E000000000C000000001C00000 00018000000003800000000300000000070000000006000000000E000000000C000000001C0000 00001800000000380006000030001E000070002F000060004F0000E000878000C000078001C000 03C001800003C003800003C003000001E007000001E006000000F00E000000F00C000000781C00 000078180000003C380000003C300000001E700000001E600000000FE00000000FC000000007C0 000000078000000003800000000300000028327D812A>112 D E /Fq 52 122 df<000FF000007FFC0001FC1E0003F03E0007E07F000FC07F000FC07F000FC07F000FC03E 000FC008000FC000000FC000000FC00000FFFFFF00FFFFFF00FFFFFF000FC03F000FC03F000FC0 3F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000F C03F000FC03F000FC03F000FC03F007FF0FFE07FF0FFE07FF0FFE01B237FA21F>12 D<3C01E07E03F0FF07F8FF07F8FF87FCFF87FC7F83FC3D81EC01800C01800C0300180300180700 380600300C00601C00E03801C020010016127EA21D>34 D<3C007E00FF00FF00FF80FF807F803D 800180018003000300070006000C001C003800200009127CA210>39 D<00180030006000E001C0 0380078007000F001F001E003E003E003C007C007C007C007C00FC00F800F800F800F800F800F8 00F800F800F800F800F800FC007C007C007C007C003C003E003E001E001F000F00070007800380 01C000E00060003000180D317BA416>II45 D<3C7EFFFFFFFF7E3C08087C8710>I<00FE 0007FFC00F83E01F01F03E00F83E00F87C007C7C007C7C007CFC007CFC007EFC007EFC007EFC00 7EFC007EFC007EFC007EFC007EFC007EFC007EFC007EFC007EFC007E7C007C7C007C7C007C3E00 F83E00F81F01F00F83E007FFC000FE0017207E9F1C>48 D<00180000780003F800FFF800FFF800 FDF80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F8007FFFE07FFFE0 7FFFE013207C9F1C>I<03FC000FFF003FFFC0781FE07C07F0FE03F0FE03F8FE03F8FE01F87C01 F83803F80003F80003F00003F00007E0000FC0000F80001F00003E0000780000F00000E03801C0 380380380600380C00781FFFF03FFFF07FFFF0FFFFF0FFFFF0FFFFF015207D9F1C>I<01FE0007 FF800FFFE01F07F03F03F03F01F83F81F83F01F81F01F80C03F80003F00003E00007C0001F8001 FF0001FF000007E00001F00001F80000FC0000FE0000FE7C00FE7C00FEFE00FEFE00FCFE01FC7C 01F87C03F83FFFE00FFFC003FE0017207E9F1C>I<0000E00001E00003E00007E0000FE0000FE0 001FE0003FE00077E000E7E000E7E001C7E00387E00707E00E07E00E07E01C07E03807E07007E0 E007E0FFFFFEFFFFFEFFFFFE0007E00007E00007E00007E00007E00007E000FFFE00FFFE00FFFE 17207E9F1C>I<3000603C01E03FFFC03FFF803FFF003FFE003FF8003BC0003800003800003800 0038000039FC003FFF003E0FC03807E03803F00003F00003F00003F80003F83803F87C03F8FC03 F8FC03F8FC03F0F803F07007E03C0FC01FFF800FFF0003F80015207D9F1C>I<001F8000FFE003 FFF007E0F00F81F81F01F83E01F83E01F87E00F07C00007C0000FC0800FC7FC0FDFFE0FF80F0FF 00F8FE007CFE007CFC007EFC007EFC007EFC007E7C007E7C007E7C007E3E007C3E007C1E00F80F 81F007FFE003FFC000FF0017207E9F1C>I<7000007C00007FFFFE7FFFFE7FFFFE7FFFFC7FFFF8 7FFFF0F00070E000E0E001C0E00380E00700000F00000E00001C00003C00003800007800007800 00F80000F00001F00001F00001F00001F00003F00003F00003F00003F00003F00003F00003F000 01E00017227DA11C>I<00FE0003FFC007FFE00F83F01E01F01E00F83E00F83E00F83F00F83F80 F83FE1F01FF9E01FFFC00FFF8007FFC003FFE00FFFF01F7FF83E1FFC7C07FC7C01FEF800FEF800 7EF8003EF8003EF8003C7C003C7E00783F01F81FFFF00FFFC001FF0017207E9F1C>I<00FE0007 FF800FFFE01F03F03E00F07C00F87C0078FC007CFC007CFC007CFC007EFC007EFC007EFC007E7C 00FE7C00FE3E01FE1E03FE0FFF7E07FC7E00207E00007C00007C1E00FC3F00F83F00F83F01F03F 03E01E0FC01FFF800FFE0003F80017207E9F1C>I<3C7EFFFFFFFF7E3C0000000000003C7EFFFF FFFF7E3C08167C9510>I<07FC001FFF003C0F807007C0F807E0FC07E0FC07E0FC07E07807C000 0FC0001F80003E00003C0000780000700000F00000E00000E00000E00000E00000E00000E00000 000000000000000000000000000001E00003F00007F80007F80007F80007F80003F00001E00013 237DA21A>63 D<00007000000000F800000000F800000000F800000001FC00000001FC00000003 FE00000003FE00000003FE000000077F000000077F0000000F7F8000000E3F8000000E3F800000 1E3FC000001C1FC000001C1FC00000380FE00000380FE00000780FF000007007F000007007F000 00FFFFF80000FFFFF80001FFFFFC0001C001FC0001C001FC0003C001FE00038000FE00038000FE 000700007F00FFF00FFFF8FFF00FFFF8FFF00FFFF825227EA12A>65 D<0003FE0180003FFF8380 00FFFFE78001FF01FF8003F8007F800FE0001F800FC0000F801F80000F803F800007803F000007 807F000003807F000003807E00000380FE00000000FE00000000FE00000000FE00000000FE0000 0000FE00000000FE00000000FE000000007E000000007F000003807F000003803F000003803F80 0007801F800007000FC0000F000FE0001E0003F8003C0001FF00F80000FFFFF000003FFFC00000 03FE000021227DA128>67 D70 D76 DI<0007FC0000003FFF800000FC07E00003F001F80007E000FC000FC0007E001F80003F 001F80003F003F00001F803F00001F807F00001FC07E00000FC07E00000FC0FE00000FE0FE0000 0FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE07E00 000FC07F00001FC07F00001FC03F00001F803F80003F801F80003F000FC0007E0007E000FC0003 F001F80000FC07E000003FFF80000007FC000023227DA12A>79 DI82 D<7FFFFFFF807FFFFFFF807FFFFFFF807E03F81F807C03F807807803F807807003F80380F003F8 03C0F003F803C0E003F801C0E003F801C0E003F801C0E003F801C00003F800000003F800000003 F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8000000 03F800000003F800000003F800000003F800000003F800000003F800000003F800000003F80000 03FFFFF80003FFFFF80003FFFFF80022227EA127>84 D<0200100E00701C00E01800C030018070 0380600300600300C00600C00600DE06F0FF07F8FF87FCFF87FC7F83FC7F83FC3F01F81E00F016 127CA21D>92 D<07FC001FFF803F0FC03F07E03F03E03F03F01E03F00003F00003F000FFF007FF F01FC3F03F03F07E03F0FC03F0FC03F0FC03F0FC03F07E07F07E1DFF1FF8FF07E07F18167E951B >97 DI<00FF8007FFE0 0F83F01F03F03E03F07E03F07C01E07C0000FC0000FC0000FC0000FC0000FC0000FC00007C0000 7E00007E00003E00701F00E00FC1E007FFC000FE0014167E9519>I<0003FE000003FE000003FE 0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000000 7E0001FE7E0007FFFE000F81FE001F00FE003E007E007E007E007C007E00FC007E00FC007E00FC 007E00FC007E00FC007E00FC007E00FC007E00FC007E007C007E007C007E003E007E001E00FE00 0F83FFC007FF7FC001FC7FC01A237EA21F>I<00FE0007FF800F87C01E01E03E01F07C00F07C00 F8FC00F8FC00F8FFFFF8FFFFF8FC0000FC0000FC00007C00007C00007E00003E00381F00700FC0 F003FFC000FF0015167E951A>I<003F8000FFC001F3E003E7E007C7E00FC7E00FC3C00FC0000F C0000FC0000FC0000FC0000FC000FFFC00FFFC00FFFC000FC0000FC0000FC0000FC0000FC0000F C0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0007FFC007FFC007F FC0013237FA211>I<01FE1F0007FFFF800F87E7801F03E7801E01E7003E01F0003E01F0003E01 F0003E01F0003E01F0001E01E0001F03E0000F87C0000FFF800019FE0000180000001C0000001C 0000001FFFE0001FFFF8000FFFFE000FFFFF003FFFFF007C003F80F8001F80F8000F80F8000F80 F8000F807C001F007E003F001F80FC000FFFF80001FFC00019217F951C>II<1E003F007F807F807F807F803F001E0000 0000000000000000000000FF80FF80FF801F801F801F801F801F801F801F801F801F801F801F80 1F801F801F801F801F80FFF0FFF0FFF00C247FA30F>I107 DIII<00FE0007FFC00F83E01E00F03E00F87C007C7C007C7C007C FC007EFC007EFC007EFC007EFC007EFC007EFC007E7C007C7C007C3E00F81F01F00F83E007FFC0 00FE0017167E951C>II<00FE070007FF8F000FC1DF 001F00FF003F007F007E003F007E003F007C003F00FC003F00FC003F00FC003F00FC003F00FC00 3F00FC003F00FC003F007E003F007E003F003E007F001F00FF000FC1FF0007FFBF0000FC3F0000 003F0000003F0000003F0000003F0000003F0000003F0000003F000001FFE00001FFE00001FFE0 1B207E951E>II<07F3001FFF00781F00700F00F00700F00700F80000FF0000FFF0007FFC003FFE001FFF0007 FF00003F80E00F80E00780F00780F00780F80700FC1E00EFFC00C7F00011167E9516>I<01C000 01C00001C00001C00003C00003C00003C00007C00007C0000FC0003FFF00FFFF00FFFF000FC000 0FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC3800FC3800FC3800FC380 0FC3800FC30007E70003FE0000FC0011207F9F16>II< FFF03FE0FFF03FE0FFF03FE00FC00E000FE01E0007E01C0007E01C0003F0380003F0380003F878 0001F8700001FCF00000FCE00000FCE000007FC000007FC000007FC000003F8000003F8000001F 0000001F0000000E00001B167F951E>II121 D E /Fr 45 122 df<003F000000E180000380C020070060400E0070401C0070403C0070803C00 3880780039007800390078003A00F0003A00F0003C00F0003800F0003800700038007000780030 00B800380338401C1C188007E00F001B157E941F>11 D<00007C00000183000002018000040180 000801C0001001C0002001C0002001C0004001C00040038000800380008003000080070001000E 000107FC0001083800010FDC0002000E0002000E0002000F0002000F0004000F0004000F000400 0F0004000F0008001E0008001E0008001C0008003C0014003800140070001400E0001201C00021 838000207C00002000000020000000400000004000000040000000400000008000000080000000 80000000800000001A2D7EA21C>I<007E038007000E001C00380078007000FFF8F000F000E000 E000E000E000E0007000700038061C1807E00F157D9414>15 D<07FFFF1FFFFF3FFFFF30410040 410080410080C3000082000082000182000182000106000306000307000707000607000E07000E 07001C03801C038018030018157E941C>25 D<0000080000000800000010000000100000001000 0000100000002000000020000000200000002000000040000000400000004000000040001E0080 C0230081E0438081F0438080F0838100708381003087010030070100200E0200200E0200200E02 00201C0200401C0400401C0400801C0401001C0402001C0804000E080800060810000388E00000 7F0000001000000010000000100000002000000020000000200000002000000040000000400000 004000001C2D7EA220>32 D<70F8F8F87005057C840E>58 D<70F8FCFC74040404040808101020 40060F7C840E>I<0000001800000078000001E00000078000001E00000078000003E000000F80 00003C000000F0000003C000000F0000003C000000F0000000F00000003C0000000F00000003C0 000000F00000003C0000000F80000003E0000000780000001E0000000780000001E00000007800 0000181D1C7C9926>I<000180000180000380000300000300000700000600000600000E00000C 00000C00001C0000180000180000180000380000300000300000700000600000600000E00000C0 0000C00001C0000180000180000380000300000300000700000600000600000E00000C00000C00 000C00001C0000180000180000380000300000300000700000600000600000E00000C00000C000 0011317DA418>II<00000080000000018000000001C000000003C000000003C000000007C0 0000000BC00000000BC000000013C000000033C000000023C000000043C000000043E000000081 E000000181E000000101E000000201E000000201E000000401E000000C01E000000801E0000010 01E000001FFFF000002000F000006000F000004000F000008000F000008000F000010000F00003 0000F000020000F000040000F8000C0000F8001E0000F800FF800FFF8021237EA225>65 D<007FFFF8000007800F00000780078000078003C0000F0001C0000F0001C0000F0001E0000F00 01E0001E0001C0001E0003C0001E0003C0001E000780003C000F00003C001E00003C003C00003C 01F000007FFFE00000780078000078003C000078001E0000F0001E0000F0000E0000F0000F0000 F0000F0001E0001E0001E0001E0001E0001E0001E0003C0003C0003C0003C000780003C000F000 03C001C00007C00F8000FFFFFC000023227EA125>I<00007F00800003808100000E0063000038 0027000070001F0000E0000E0001C0000E000380000E000700000E000F000004000E000004001E 000004003C000004003C00000800780000000078000000007800000000F000000000F000000000 F000000000F000000000F000000000E000000000E000002000E000002000E000004000E0000040 00F00000800070000080007000010000380002000018000400001C0008000006003000000381C0 000000FE00000021247DA223>I<007FFFF8000007801E0000078007000007800380000F0001C0 000F0001C0000F0000E0000F0000E0001E0000E0001E0000F0001E0000F0001E0000F0003C0000 F0003C0000F0003C0000F0003C0000F000780001E000780001E000780001E000780001E000F000 03C000F00003C000F000038000F000078001E000070001E0000E0001E0001E0001E0001C0003C0 00380003C000700003C000E00003C003800007C00E0000FFFFF8000024227EA128>I<007FFC01 FF0007800078000780006000078000C0000F000180000F000200000F000400000F000800001E00 1000001E004000001E008000001E010000003C020000003C040000003C1E0000003C3E00000078 5F000000788F0000007A0F0000007C07800000F807800000F007C00000F003C00000F003C00001 E001E00001E001E00001E001E00001E000F00003C000F00003C000F80003C000780003C0007800 07C000FC00FFFC07FF8028227EA129>75 D<007FFE000007C0000007800000078000000F000000 0F0000000F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000 003C00000078000000780000007800000078000000F0000000F0000000F0001000F0001001E000 2001E0002001E0004001E0004003C000C003C0008003C0018003C0078007C01F00FFFFFF001C22 7EA121>I<007FC00001FF0007C00003E00007C00005E00007C00005E00009E0000BC00009E000 0BC00009E00013C00009E00023C00011E00027800011E00047800011E00047800011E000878000 21E0010F000020F0010F000020F0020F000020F0040F000040F0041E000040F0081E000040F008 1E000040F0101E000080F0203C00008078203C00008078403C00008078803C0001007880780001 007900780001007900780001007A00780002007C00F00002007C00F00002003800F00006003800 F0000F003001F000FFE0203FFF0030227EA12F>I<007FC003FF0007C000780007C000600005E0 00200009E000400009E000400008F000400008F000400010F80080001078008000107800800010 3C008000203C010000203E010000201E010000201E010000400F020000400F020000400F020000 400782000080078400008007C400008003C400008003C400010001E800010001E800010001F800 010000F800020000F0000200007000020000700006000070000F00002000FFE000200028227EA1 27>I<007FFFE0000007803C000007800E000007800700000F000780000F000380000F0003C000 0F0003C0001E000780001E000780001E000780001E000F00003C001E00003C003C00003C007000 003C01C000007FFE00000078078000007801C000007801E00000F000F00000F000F00000F000F0 0000F000F00001E001E00001E001E00001E001E00001E001E00003C003C00003C003C04003C003 C04003C001C08007C001C080FFFC00E3000000003C0022237EA125>82 D<0003F010000E0C2000 180260002001E0004000E000C000C0008000C0018000C0018000C0038000800380008003800000 0380000003C0000001F0000001FE000000FFE000007FF000001FF8000001FC0000003C0000001C 0000000E0000000E0000000E0020000C0020000C0020000C002000080060001800600010007000 200070004000C8008000C603000081FC00001C247DA21E>I<1FFFFFFE1E01E00E1801E0063001 E0062003C0062003C0064003C0044003C00440078004800780048007800400078000000F000000 0F0000000F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000 003C00000078000000780000007800000078000000F0000000F0000000F0000000F0000001F000 00FFFFC0001F227EA11D>I86 DI<007FFC03FF0007E000F80007C000E000 03C000800003E001000001E002000001F006000001F00C000000F018000000F810000000782000 00007C400000007C800000003D000000003E000000001E000000001F000000001F000000002F00 0000006F80000000C78000000187C000000103C000000203C000000403E000000801E000001001 F000002000F000004000F800008000F80001800078000300007C000F8000FC00FFE007FFC02822 7FA128>II<007FFFFE007E001E0070003C00 E0007800C000F0008001E0018003E0010003C00100078002000F0002001E0000003C0000007C00 000078000000F0000001E0000003C00000078000000F8000000F0000001E0000003C0020007800 2000F0004001F0004001E0004003C00080078000800F0001801E0003001E0007003C000F007800 7E00FFFFFE001F227DA121>I<00786001C4E00302E00601C00E01C01C01C03C01C03803807803 80780380780380F00700F00700F00700F00708F00E10700E10701E1030262018C6200F01C01515 7E941A>97 D<03C0003F80000380000380000380000700000700000700000700000E00000E0000 0E00000E00001C00001C78001D8E001E07003C0700380380380380380780700780700780700780 700780E00F00E00F00E00F00E01E00E01C00601C0060380030700030C0000F000011237DA215> I<003F0000E0800380C00701C00E03C01C03C03C00003C0000780000780000780000F00000F000 00F00000F000007000407000403001803802001C1C0007E00012157E9415>I<00001E0001FC00 001C00001C00001C0000380000380000380000380000700000700000700000700000E00078E001 C4E00302E00601C00E01C01C01C03C01C0380380780380780380780380F00700F00700F00700F0 0708F00E10700E10701E1030262018C6200F01C017237EA219>I<007C000382000701000E0100 1C0100380100780200700400FFF800F00000F00000E00000E00000E00000E00000E00080E00080 7003003004001838000FC00011157D9417>I<00001E00000063800000C7800001C7800001C300 00018000000380000003800000038000000380000007000000070000000700000007000000FFF8 00000E0000000E0000000E0000000E0000000E0000000E0000001C0000001C0000001C0000001C 0000001C0000003800000038000000380000003800000038000000700000007000000070000000 7000000060000000E0000000E0000000E0000000C0000070C00000F1800000F100000062000000 3C000000192D7EA218>I<00F0000FE00000E00000E00000E00001C00001C00001C00001C00003 8000038000038000038000070000071F0007218007C0C00F00E00F00E00E00E00E00E01C01C01C 01C01C01C01C01C0380380380380380700380704700708700E08700E08700610E006206003C016 237DA21C>104 D<00E000E001E000C00000000000000000000000000000000000001E00230043 80438083808380870007000E000E000E001C001C0038003820384070407040308031001E000B22 7EA111>I<0000E00001E00001E00000C000000000000000000000000000000000000000000000 0000000000001E0000230000438000838001038001038001038000070000070000070000070000 0E00000E00000E00000E00001C00001C00001C00001C0000380000380000380000380000700000 700000700070E000F0C000F180006300003E0000132C81A114>I<00F0000FE00000E00000E000 00E00001C00001C00001C00001C0000380000380000380000380000700000700F0070308070438 0E08780E10780E20300E40001C80001F00001FC0001C7000383800383800381C00381C10703820 703820703820701840E00C8060070015237DA219>I<3C07E01F00461830618047201880C08740 1D00E087801E00E087801C00E087001C00E00E003801C00E003801C00E003801C00E003801C01C 007003801C007003801C007007001C007007043800E007083800E00E083800E00E083800E00610 7001C006203000C003C026157E942B>109 D<3C07C04618604720308740388780388700388700 380E00700E00700E00700E00701C00E01C00E01C01C01C01C13801C23803823803823801847001 883000F018157E941D>I<03C0F004631C04740E08780E08700708700708700F00E00F00E00F00 E00F00E00F01C01E01C01E01C01E01C03C03803803803803C07003C0E0072180071E0007000007 00000E00000E00000E00000E00001C00001C00001C0000FFC000181F819418>112 D<00782001C4600302E00601C00E01C01C01C03C01C0380380780380780380780380F00700F007 00F00700F00700F00E00700E00701E00302E0018DC000F1C00001C00001C000038000038000038 0000380000700000700000700007FF00131F7E9416>I<3C0F004630C04741C08783C08783C087 01808700000E00000E00000E00000E00001C00001C00001C00001C000038000038000038000038 000070000030000012157E9416>I<007E00008100030080020180060380060300060000070000 07F80003FE0001FF00003F00000780000380700380F00300F00300E002004004003018000FE000 11157E9417>I<006000E000E000E000E001C001C001C001C00380FFFC03800380070007000700 07000E000E000E000E001C001C001C001C08381038103820182018C007000E1F7F9E12>I<01E0 F006310C081A1C101A3C201C3C201C18201C000038000038000038000038000070000070000070 0000700860E010F0E010F0E020E170404230803C1F0016157E941C>120 D<1E00302300704380704380E08380E08380E08700E00701C00E01C00E01C00E01C01C03801C03 801C03801C03801C07001C07001C07001C0F000C3E0003CE00000E00000E00001C00601C00F038 00F03000E0600080C0004180003E0000141F7E9418>I E /Fs 55 123 df<0038007800F001E0 03C007800F000E001C001C0038003800700070007000E000E000E000E000E000E000E000E000E0 00E000700070007000380038001C001C000E000F00078003C001E000F8007800380D2878A21A> 40 D<6000F00078003C001E000F000780038001C001C000E000E0007000700070003800380038 003800380038003800380038003800700070007000E000E001C001C0038007800F001E003C0078 00F00060000D287CA21A>I<183E7E7F3F1F070E0E1CFCF8E0080D77851A>44 D<003800007C00007C00006C0000EE0000EE0000EE0000C60000C60001C70001C70001C70001C7 000383800383800383800383800701C00701C007FFC007FFC00FFFE00E00E00E00E00E00E00E00 E01C00707F01FCFF83FE7F01FC171E7F9D1A>65 D I<007C3801FF3807FFF80F83F81E00F81C0078380078380038700038700038700000E00000E000 00E00000E00000E00000E00000E00000E000007000007000387000383800383800381C00701E00 F00F83E007FFC001FF80007C00151E7E9D1A>I<7FFE00FFFF007FFF801C07C01C01E01C00F01C 00701C00781C00381C00381C003C1C001C1C001C1C001C1C001C1C001C1C001C1C001C1C001C1C 003C1C00381C00381C00781C00701C00F01C01E01C07C07FFFC0FFFF007FFE00161E7F9D1A>I< FFFFF8FFFFF8FFFFF81C00381C00381C00381C00381C00001C00001C00001C0E001C0E001C0E00 1FFE001FFE001FFE001C0E001C0E001C0E001C00001C00001C00001C001C1C001C1C001C1C001C 1C001CFFFFFCFFFFFCFFFFFC161E7E9D1A>I<7FFFFCFFFFFC7FFFFC0E001C0E001C0E001C0E00 1C0E00000E00000E00000E03800E03800E03800FFF800FFF800FFF800E03800E03800E03800E00 000E00000E00000E00000E00000E00000E00000E00007FE000FFE0007FE000161E7F9D1A>I<00 F8E003FEE007FFE00F07E01E03E03C01E03800E07000E07000E07000E0E00000E00000E00000E0 0000E00000E00000E00FF8E00FF8E00FF8E000E07000E07000E07001E03801E03C03E01E03E00F 07E007FFE003FEE000F8E0151E7E9D1A>III<01FFC003FFC001FFC0000E00000E00000E00000E0000 0E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E0000 0E00000E00000E00600E00F00E00F01E00F03C007FF8003FF0000FC000121E7C9D1A>I<7F03F8 FF87FC7F03F81C01E01C03C01C03801C07001C0F001C1E001C1C001C38001C78001CF0001CF800 1DF8001FDC001F9C001F0E001E0F001E07001C07801C03801C01C01C01C01C00E01C00E01C0070 7F00FCFF81FE7F00FC171E7F9D1A>I<7FE000FFF0007FE0000E00000E00000E00000E00000E00 000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00 000E00000E001C0E001C0E001C0E001C0E001C7FFFFCFFFFFC7FFFFC161E7F9D1A>I<7E003F00 FF007F807F007F001D80DC001D80DC001D80DC001DC1DC001DC1DC001CC19C001CC19C001CE39C 001CE39C001C631C001C771C001C771C001C361C001C361C001C3E1C001C1C1C001C1C1C001C00 1C001C001C001C001C001C001C001C001C001C001C001C001C007F007F00FF80FF807F007F0019 1E809D1A>II<0FFE003FFF807FFFC07C07C07001 C0F001E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000 E0E000E0E000E0E000E0E000E0E000E0F001E0F001E07001C07C07C07FFFC03FFF800FFE00131E 7D9D1A>II<0FFE003FFF807FFFC07C07C07001C0 F001E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0 E000E0E000E0E000E0E000E0E070E0E0F0E0F079E07079C07C3FC07FFFC03FFF800FFE00000F00 0007000007800003800003C00001C00001C013257D9D1A>II<03F1C00FFDC03FFFC07C0FC07003C0E003C0E001C0E001C0E001C0E0000070000078 00003F00001FF00007FE0000FF00000F800003C00001C00000E00000E06000E0E000E0E000E0E0 01C0F001C0FC0780FFFF80EFFE00E3F800131E7D9D1A>I<7FFFFEFFFFFEFFFFFEE0380EE0380E E0380EE0380E003800003800003800003800003800003800003800003800003800003800003800 00380000380000380000380000380000380000380000380000380003FF8003FF8003FF80171E7F 9D1A>IIII<7F87F87F87F87F87F80F01C00703800783 8003870003C70001CE0001EE0000FC0000FC00007800007800007800007C00007C0000FE0000EE 0001CF0001C7000387800383800703C00701C00E00E00E00E07F01FCFF83FE7F01FC171E7F9D1A >II<3FFFF87FFFF87FFFF87000707000E07001E0 7001C0000380000780000700000E00001E00001C0000380000780000F00000E00001C00003C000 0380000700000F00000E00381C00383C0038380038700038FFFFF8FFFFF8FFFFF8151E7E9D1A> I<1FF0003FFC007FFE00780F00300700000380000380007F8007FF801FFF803F83807803807003 80E00380E00380E00380700780780F803FFFFC1FFDFC07F0FC16157D941A>97 DI<00FF8003FFC00FFFE01F01E03C00C078000070 0000700000E00000E00000E00000E00000E000007000007000007800703C00701F01F00FFFE003 FFC000FE0014157D941A>I<001FC0001FC0001FC00001C00001C00001C00001C00001C00001C0 01F1C007FDC00FFFC01E0FC03C07C07803C07001C0E001C0E001C0E001C0E001C0E001C0E001C0 E001C07003C07003C03807C03E0FC01FFFFC07FDFC01F1FC161E7E9D1A>I<01F80007FF000FFF 801E07C03C01C07800E07000E0E00070E00070FFFFF0FFFFF0FFFFF0E000007000007000007800 703C00701F01F00FFFE003FFC000FE0014157D941A>I<0007E0001FF0003FF800787800F03000 E00000E00000E00000E0007FFFF0FFFFF0FFFFF000E00000E00000E00000E00000E00000E00000 E00000E00000E00000E00000E00000E00000E00000E00000E0003FFF807FFFC03FFF80151E7F9D 1A>I<01F87C07FFFE0FFFFE1E078C1C03803801C03801C03801C03801C03801C01C03801E0780 1FFF001FFE0039F8003800003800001C00001FFF801FFFE03FFFF878007C70001CE0000EE0000E E0000EE0000E70001C78003C3E00F81FFFF007FFC001FF0017217F941A>II<00C00001E00001E00000C00000000000000000000000000000000000 00007FE0007FE0007FE00000E00000E00000E00000E00000E00000E00000E00000E00000E00000 E00000E00000E00000E00000E00000E0007FFF80FFFFC07FFF80121F7C9E1A>I<000C001E001E 000C0000000000000000000000000FFE0FFE0FFE000E000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E000E000E000E000E000E001C601CF038FFF87FF01FC0 0F2A7E9E1A>III<7CE0E000FFFBF8007FFFF8001F1F1C001E1E1C001E1E1C001C1C1C001C1C1C001C 1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C00 7F1F1F00FF9F9F807F1F1F00191580941A>II<01F00007FC001FFF003E0F803C07807803C07001C0E000E0E000E0E0 00E0E000E0E000E0E000E0F001E07001C07803C03C07803E0F801FFF0007FC0001F00013157D94 1A>II<01F8E007FEE00FFFE01E07 E03C03E07801E07001E0E000E0E000E0E000E0E000E0E000E0E000E0E001E07001E07803E03C03 E01E0FE00FFFE007FCE001F0E00000E00000E00000E00000E00000E00000E00000E00000E0000F FE000FFE000FFE17207E941A>I<7F83F0FF8FF87FBFFC03FC3C03F01803E00003C00003C00003 80000380000380000380000380000380000380000380000380000380007FFF00FFFF007FFF0016 157E941A>I<07FB801FFF807FFF80780780E00380E00380E003807800007FC0003FFC0007FE00 003F800007806001C0E001C0E001C0F003C0FC0780FFFF00EFFE00E3F80012157C941A>I<00C0 0001C00001C00001C00001C00001C00001C0007FFFE0FFFFE0FFFFE001C00001C00001C00001C0 0001C00001C00001C00001C00001C00001C00001C07001C07001C07001C07000E0E000FFE0007F C0001F00141C7F9B1A>II<7F83FCFFC7FE7F83FC0E00E00E00E00E00E00701C00701C00701C0038380038380038380 01C70001C70001C70000EE0000EE0000EE00007C00007C0000380017157F941A>II<7FC7F87FCFFC7FC7F80703C003 838003C70001EF0000FE00007C00007800003800007C0000EE0001EE0001C7000383800783C00F 01C07FC7FCFFC7FE7FC7FC17157F941A>I<7FC3FCFFC7FE7FC3FC0E00E00E00E00700E00701C0 0781C00381C003838003C38001C38001C70000E70000E70000E600006600006E00003C00003C00 003C0000380000380000380000700000700030700078E00071E0007FC0003F80001E000017207F 941A>I<7FFFF0FFFFF0FFFFF0E001E0E003C0E00780000F00001E00003C0000780000F00001E0 0003C0000780000F00381E00383C0038780038FFFFF8FFFFF8FFFFF815157E941A>I E /Ft 60 122 df<0000FF8000000FFFE000003FFFF00000FF80F80001FE01FC0003F803FC0007 F803FC0007F003FC0007F003FC0007F001F80007F000F00007F000000007F000000007F0000000 07F0000000FFFFFFFC00FFFFFFFC00FFFFFFFC0007F001FC0007F001FC0007F001FC0007F001FC 0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001 FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F0 01FC0007F001FC007FFF1FFFC07FFF1FFFC07FFF1FFFC0222A7FA926>12 D<0000FF801FF000000FFFF1FFFC00003FFFFFFFFE0000FF807FF01F0001FE01FFC03F8003FC01 FF007F8007F801FF007F8007F001FE007F8007F001FE007F8007F001FE003F0007F000FE001E00 07F000FE00000007F000FE00000007F000FE00000007F000FE000000FFFFFFFFFFFF80FFFFFFFF FFFF80FFFFFFFFFFFF8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007 F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE00 3F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F0 00FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F8007F000FE003F 807FFF0FFFE3FFF87FFF0FFFE3FFF87FFF0FFFE3FFF8352A7FA939>14 D<18007E007E00FF00FF 807F807FC01FE00FE003F000F000600C0C79AA22>18 D<1E007F80FFC0FFC0FFE0FFE0FFE0FFE0 7FE01EE000E001E001C001C003C0038007800F001F003E003C0030000B167CA913>39 D<000380000780001F00003E00007C0000F80000F80001F00003E00007E00007C0000FC0000F80 001F80001F00003F00003F00003F00003E00007E00007E00007E00007E0000FC0000FC0000FC00 00FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC00007E00007E00 007E00007E00003E00003F00003F00003F00001F00001F80000F80000FC00007C00007E00003E0 0001F00000F80000F800007C00003E00001F00000780000380113C7BAC1B>II45 D<1E007F807F80FFC0FFC0FFC0FFC07F807F801E000A0A7C8913>I<00 0700000F00007F0007FF00FFFF00FFFF00F8FF0000FF0000FF0000FF0000FF0000FF0000FF0000 FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000 FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF007FFFFE7FFFFE7FFFFE17 277BA622>49 D<00FF800007FFF0001FFFFC003F03FE007C01FF807F00FF80FF807FC0FF807FC0 FF803FE0FF803FE0FF803FE07F003FE01C003FE000003FE000003FE000007FC000007FC00000FF 800000FF000001FE000003FC000003F8000007E000000FC000001F8000003F00E0007C00E000F8 00E001F001C003E001C003C001C007FFFFC00FFFFFC01FFFFFC03FFFFFC07FFFFF80FFFFFF80FF FFFF80FFFFFF801B277DA622>I<007F800001FFF00007FFFC000F81FE001F81FF003FC0FF803F E0FF803FE0FF803FE0FF803FE0FF803FE0FF801FC0FF000701FF000001FE000003FC000007F800 00FFF00000FF800000FFF0000003FC000001FF000000FF800000FFC000007FC000007FE01E007F E07F807FE07F807FE0FFC07FE0FFC07FE0FFC07FE0FFC07FC0FFC0FFC07F80FF807E01FF803F83 FE000FFFFC0007FFF00000FF80001B277DA622>I<00000F0000001F0000003F0000007F000000 7F000000FF000001FF000003FF000003FF000007FF00000F7F00001E7F00003C7F00003C7F0000 787F0000F07F0001E07F0001C07F0003C07F0007807F000F007F001E007F001E007F003C007F00 78007F00F0007F00FFFFFFF8FFFFFFF8FFFFFFF80000FF000000FF000000FF000000FF000000FF 000000FF000000FF00007FFFF8007FFFF8007FFFF81D277EA622>I<180003001F803F001FFFFF 001FFFFE001FFFFC001FFFFC001FFFF0001FFFE0001FFF80001FFC00001E0000001E0000001E00 00001E0000001E0000001E3FC0001FFFF0001FFFFC001F80FF001F007F801E007F8000003FC000 003FC000003FE000003FE01C003FE07F003FE0FF003FE0FF803FE0FF803FE0FF803FE0FF003FC0 FF007FC07C007F803C00FF003F01FE000FFFFC0003FFF00000FF80001B277DA622>I<0007F000 003FFC0000FFFE0001FC0F0007F81F000FF03F800FE07F801FC07F803FC07F803FC07F807FC03F 007F801E007F8000007F800000FF820000FF9FF000FFBFFC00FFFFFE00FFE07F00FFE03F80FFC0 3FC0FFC03FC0FFC03FE0FF803FE0FF803FE0FF803FE0FF803FE07F803FE07F803FE07F803FE07F 803FE03F803FC03F803FC01FC03F800FE07F8007F0FF0003FFFC0000FFF000003FC0001B277DA6 22>I<380000003E0000003FFFFFF03FFFFFF03FFFFFF03FFFFFE07FFFFFC07FFFFFC07FFFFF80 7FFFFF0070003E0070007C0070007800E000F800E001F000E003E0000007C0000007C000000F80 00000F8000001F0000003F0000003F0000003F0000007F0000007E0000007E000000FE000000FE 000000FE000000FE000001FE000001FE000001FE000001FE000001FE000001FE000001FE000001 FE000000FC0000007800001C297CA822>I<003FC00001FFF00003FFFC000FC07E000F003F001E 001F001E001F803E000F803E000F803F000F803F800F803FE01F803FF81F003FFE3F001FFF7E00 1FFFFC000FFFF00007FFFC0003FFFE0003FFFF000FFFFF801F9FFFC03F07FFC07E03FFE07C00FF E0FC003FE0F8001FE0F80007E0F80007E0F80003E0F80003E0FC0003C07C0007C07E0007803F00 0F801FC03F000FFFFC0003FFF000007FC0001B277DA622>I<007F800001FFF00007FFF8000FE0 FE001FC07E003F807F007F803F807F803F80FF803FC0FF803FC0FF803FC0FF803FC0FF803FE0FF 803FE0FF803FE0FF803FE0FF807FE07F807FE07F807FE03F80FFE01FC0FFE00FFFFFE007FFBFE0 01FF3FE000083FE000003FC000003FC00F003FC01F803FC03FC07F803FC07F803FC07F003FC0FF 003F80FE001F01FC001F07F8000FFFE00007FF800001FE00001B277DA622>I<1E007F807F80FF C0FFC0FFC0FFC07F807F801E0000000000000000000000000000001E007F807F80FFC0FFC0FFC0 FFC07F807F801E000A1B7C9A13>I<000007C00000000007C0000000000FE0000000000FE00000 00000FE0000000001FF0000000001FF0000000003FF8000000003FF8000000003FF8000000007F FC000000007FFC00000000FFFE00000000F3FE00000000F3FE00000001F3FF00000001E1FF0000 0003E1FF80000003C0FF80000003C0FF80000007C0FFC0000007807FC000000F807FE000000F00 3FE000000F003FE000001F003FF000001E001FF000003FFFFFF800003FFFFFF800003FFFFFF800 007C000FFC0000780007FC0000F80007FE0000F00003FE0000F00003FE0001F00003FF0001E000 01FF0003E00001FF80FFFF003FFFFEFFFF003FFFFEFFFF003FFFFE2F297EA834>65 DI<00003FF003800003FFFE0780000FFFFF8F8000 3FF00FFF8000FF8001FF8001FF0000FF8007FC00007F800FFC00003F800FF800001F801FF00000 1F803FF000000F803FE000000F807FE0000007807FE0000007807FC000000780FFC000000000FF C000000000FFC000000000FFC000000000FFC000000000FFC000000000FFC000000000FFC00000 0000FFC000000000FFC000000000FFC0000000007FC0000000007FE0000003807FE0000003803F E0000003803FF0000003801FF0000007800FF8000007000FFC00000F0007FE00001E0001FF0000 3C0000FF8000F800003FF007F000000FFFFFC0000003FFFF000000003FF0000029297CA832>I< FFFFFFF80000FFFFFFFF8000FFFFFFFFE00003FE003FF80003FE0007FC0003FE0001FE0003FE00 00FF0003FE00007F8003FE00007FC003FE00003FC003FE00003FE003FE00001FE003FE00001FF0 03FE00001FF003FE00001FF003FE00001FF003FE00001FF803FE00001FF803FE00001FF803FE00 001FF803FE00001FF803FE00001FF803FE00001FF803FE00001FF803FE00001FF803FE00001FF8 03FE00001FF003FE00001FF003FE00001FF003FE00001FE003FE00003FE003FE00003FC003FE00 007FC003FE00007F8003FE0000FF0003FE0001FE0003FE0007FC0003FE003FF800FFFFFFFFE000 FFFFFFFF8000FFFFFFFC00002D297DA835>II<00007F E007000003FFFC0F00001FFFFF1F00007FF00FFF0000FF8003FF0003FE0001FF0007FC0000FF00 0FF800007F000FF800003F001FF000003F003FF000001F003FE000001F007FE000000F007FE000 000F007FC000000F00FFC000000000FFC000000000FFC000000000FFC000000000FFC000000000 FFC000000000FFC000000000FFC000000000FFC000000000FFC003FFFFF8FFC003FFFFF87FC003 FFFFF87FE00001FF007FE00001FF003FE00001FF003FF00001FF001FF00001FF000FF80001FF00 0FF80001FF0007FC0001FF0003FF0003FF0000FF8003FF00007FF00FFF00001FFFFFBF000003FF FE0F0000007FF003002D297CA836>71 DI75 D 77 DI<0000FFE000000007FFFC0000003FFFFF80 00007FC07FC00001FF001FF00003FC0007F80007F80003FC000FF80003FE001FF00001FF001FF0 0001FF003FE00000FF803FE00000FF807FE00000FFC07FC000007FC07FC000007FC07FC000007F C0FFC000007FE0FFC000007FE0FFC000007FE0FFC000007FE0FFC000007FE0FFC000007FE0FFC0 00007FE0FFC000007FE0FFC000007FE0FFC000007FE07FC000007FC07FE00000FFC07FE00000FF C03FE00000FF803FE00000FF801FF00001FF001FF00001FF000FF80003FE0007FC0007FC0003FE 000FF80001FF001FF00000FFC07FE000003FFFFF8000000FFFFE00000000FFE000002B297CA834 >II<0000FFE000000007FFFC0000003FFFFF8000007F C07FC00001FF001FF00003FE000FF80007FC0007FC000FF80003FE001FF00001FF001FF00001FF 003FE00000FF803FE00000FF807FE00000FFC07FC000007FC07FC000007FC07FC000007FC0FFC0 00007FE0FFC000007FE0FFC000007FE0FFC000007FE0FFC000007FE0FFC000007FE0FFC000007F E0FFC000007FE0FFC000007FE0FFC000007FE07FC000007FC07FC000007FC07FE00000FFC03FE0 0000FF803FE00000FF801FF01F01FF001FF07FC1FF000FF8FFE3FE0007FDE0F7FC0003FFC07FF8 0001FFC07FF00000FFE07FE000003FFFFF8000000FFFFE00000000FFFF00600000003F00600000 003FC0E00000001FFFE00000001FFFE00000001FFFE00000000FFFC00000000FFFC00000000FFF C000000007FF8000000003FF0000000001FE000000000078002B357CA834>II<007F80E003FFF1E00FFFFFE01F807FE03F001FE03E0007E07E0003 E07C0003E0FC0001E0FC0001E0FC0000E0FE0000E0FF0000E0FF800000FFF80000FFFF80007FFF F8007FFFFE003FFFFF001FFFFFC00FFFFFC007FFFFE001FFFFF0003FFFF00001FFF800001FF800 0007F8000007F8E00003F8E00001F8E00001F8E00001F8F00001F8F00001F0F80003F0FC0003E0 FF0007E0FFE01FC0FFFFFF00F0FFFE00E01FF0001D297CA826>I<7FFFFFFFFFC07FFFFFFFFFC0 7FFFFFFFFFC07F807FC03FC07C007FC007C078007FC003C078007FC003C070007FC001C0F0007F C001E0F0007FC001E0E0007FC000E0E0007FC000E0E0007FC000E0E0007FC000E0E0007FC000E0 00007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007F C0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC00000 00007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007F C0000000007FC0000000007FC0000000FFFFFFE00000FFFFFFE00000FFFFFFE0002B287EA730> I86 DI<01FF80000FFFF0001FFFFC003FC1FE003FC0FF003FC07F003FC03F803FC0 3F800F003F8000003F8000003F80003FFF8001FFFF800FFC3F801FE03F803F803F807F003F80FF 003F80FE003F80FE003F80FE003F80FF007F807F00FF807F81FFC03FFFDFFC0FFF0FFC01FC03FC 1E1B7E9A21>97 DI<001FF00000FFFE0003 FFFF000FF07F801FE07F803FC07F803F807F807F807F807F001E00FF000000FF000000FF000000 FF000000FF000000FF000000FF000000FF000000FF0000007F8000007F8000003FC001C03FC003 C01FE003800FF80F8003FFFF0000FFFC00001FE0001A1B7E9A1F>I<00003FF80000003FF80000 003FF800000003F800000003F800000003F800000003F800000003F800000003F800000003F800 000003F800000003F800000003F800000003F800000003F800003FC3F80001FFF3F80003FFFFF8 000FF03FF8001FE00FF8003FC007F8003F8003F8007F8003F8007F0003F800FF0003F800FF0003 F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F8007F00 03F8007F8003F8003F8007F8003FC007F8001FC01FF8000FF03FF80007FFFBFF8001FFE3FF8000 3F83FF80212A7EA926>I<003FE00001FFF80003FFFE000FF07F001FC03F803FC01FC03F800FC0 7F800FC07F0007E0FF0007E0FF0007E0FFFFFFE0FFFFFFE0FFFFFFE0FF000000FF000000FF0000 00FF0000007F8000007F8000003F8000E03FC001E01FE001C00FF807C003FFFF0000FFFE00001F F0001B1B7E9A20>I<0003F800001FFE00007FFF0001FE7F8003FC7F8003F87F8007F87F8007F0 7F8007F03F0007F0000007F0000007F0000007F0000007F0000007F00000FFFFC000FFFFC000FF FFC00007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F00000 07F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000 0007F0000007F000007FFF80007FFF80007FFF8000192A7EA915>I<00FF81F003FFE7FC0FFFFF FC1FC1FCFC3F80FE7C3F007E387F007F007F007F007F007F007F007F007F007F007F007F003F00 7E003F80FE001FC1FC000FFFF8001FFFE00038FF8000380000003C0000003C0000003E0000003F FFF8003FFFFF001FFFFFC00FFFFFE00FFFFFF03FFFFFF07E000FF8FE0003F8FC0001F8FC0001F8 FC0001F8FE0003F87E0003F07F0007F03FC01FE00FFFFF8003FFFE00007FF0001E287E9A22>I< FFE0000000FFE0000000FFE00000000FE00000000FE00000000FE00000000FE00000000FE00000 000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE07F 00000FE1FFC0000FE7FFE0000FEF07F0000FFC07F8000FF803F8000FF803F8000FF003F8000FF0 03F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000F E003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F800 FFFE3FFF80FFFE3FFF80FFFE3FFF80212A7DA926>I<07801FE01FE03FF03FF03FF03FF01FE01F E00780000000000000000000000000FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE0 0FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0FFFEFFFEFFFE0F2B7DAA14>I107 DIII<003FE00001FFFC0003FFFE000FF07F801FC01FC0 3F800FE03F800FE07F0007F07F0007F07F0007F0FF0007F8FF0007F8FF0007F8FF0007F8FF0007 F8FF0007F8FF0007F8FF0007F87F0007F07F0007F03F800FE03F800FE01FC01FC00FF07F8007FF FF0001FFFC00003FE0001D1B7E9A22>II<003FC0380000FFF0780003FFF8F800 0FF83CF8001FE01FF8003FC00FF8003FC007F8007F8003F8007F8003F800FF8003F800FF0003F8 00FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F8007F8003 F8007F8003F8003FC007F8003FC00FF8001FE01FF8000FF03FF80007FFFBF80001FFE3F800003F 83F800000003F800000003F800000003F800000003F800000003F800000003F800000003F80000 0003F800000003F80000003FFF8000003FFF8000003FFF8021277E9A24>II<03FE700FFFF03FFFF07E01F07C00F0F80070F80070FC0070FE0000FFE000FFFE007FFF803F FFE01FFFF007FFF800FFFC0007FC0001FCE000FCE0007CF0007CF8007CF800F8FE01F8FFFFF0FF FFC0E1FF00161B7E9A1B>I<00700000700000700000700000F00000F00001F00001F00003F000 07F0001FF000FFFFF0FFFFF0FFFFF007F00007F00007F00007F00007F00007F00007F00007F000 07F00007F00007F00007F00007F00007F03807F03807F03807F03807F03807F03807F87803F8F0 01FFF000FFC0003F8015267FA51B>III III E /Fu 53 122 df<00000FE0000030180000E01C0001C03C0001803C0003803800038000000380 000007000000070000000700000007000000070000000E000000FFFFE0000E00E0000E00E0000E 01C0001C01C0001C01C0001C01C0001C0380001C03800038038000380380003807000038070000 3807000070070800700E1000700E1000700E1000700E2000E0062000E003C000E0000000E00000 00C0000001C0000001C0000071800000F1800000F3000000620000003C0000001E2D82A21B>12 D<00000FF01FE000003838601800006079C01C0000C07B803C0001C033003C0001C00700380003 800700000003800700000003800E00000003800E00000007000E00000007000E00000007000E00 000007001C000000FFFFFFFFE0000E001C00E0000E001C00E0000E001C01C0000E003801C0000E 003801C0001C003801C0001C00380380001C00380380001C00700380001C00700380001C007007 00003800700700003800700700003800E00708003800E00E10003800E00E10007000E00E100070 00E00E20007001C00620007001C003C0006001C0000000E00180000000E00380000000C0038000 0000C00300000071C703000000F18F06000000F10F0C0000006206180000003C03E00000002E2D 82A22B>14 D<0C06001E0F003F1F803F1F801D0E80020100020100020100040200040200080400 100800201000402000804000110F78A219>34 D<0007800000001C600380003010078000601007 8000E010038000C010010001C07001000380F002000380F0020003806004000700000800070000 10000700006000073C00A00007E20310000781041000070108080007011008000F022008001F84 2008001C782C08003C003E080038003E080078001C0800780000080078000008007000001000F0 00001000700000200070000020007800004000380000800038000100001C000200000E000C0000 0380700000007F80000021257BA325>38 D<000080000100000200000400000800001000003000 00600000C00000C0000180000300000300000600000600000E00000C00001C0000180000180000 380000300000300000700000700000600000600000E00000E00000E00000C00000C00000C00000 C00000C00000C00000C00000C00000C00000C00000C00000C00000C00000400000600000600000 200000300000100000080000113278A414>40 D<00080000040000060000020000030000030000 010000018000018000018000018000018000018000018000018000018000018000018000018000 0180000380000380000380000300000300000700000700000600000600000E00000C00000C0000 1C0000180000380000300000300000600000600000C00001800001800003000006000004000008 0000100000200000400000800000113280A414>I<0E1E1E1E1E02020404080810204080070F7D 840F>44 DI<70F8F8F0E005057A840F>I<0001000300030006001E 002E03CE001C001C001C001C0038003800380038007000700070007000E000E000E000E001C001 C001C001C003800380038003800780FFFC10217AA019>49 D<000FC00010600060380080180080 1C01001C02201E02101E04101E04101E04101E08203C08203C0840380840780880F00700E00001 C000030000060000180000200000C0000100000200000400100800301000202000605F80C063FF C040FF80807F00801E0017227CA019>I<07000F800F800F000E00000000000000000000000000 000000000000000000007000F800F800F000E00009157A940F>58 D<0000030000000300000007 000000070000000F0000000F0000001F0000002F0000002F0000004F0000004F80000087800000 878000010780000207800002078000040780000407800008078000080780001007800030078000 200780007FFF80004007C0008007C0008003C0010003C0030003C0020003C0040003C0040003C0 0C0003C03C0007C0FF003FFC1E237DA224>65 D<00FFFFE0000F0038000F001C000F001E001E00 0E001E000F001E000F001E000F003C000E003C001E003C001E003C003C00780078007800F00078 01E00078078000FFFF8000F001E000F000F000F0007801E0007801E0003801E0003C01E0003C03 C0007803C0007803C0007803C000F0078000F0078001E0078003C0078007000F801E00FFFFF000 20227DA122>I<00007F00800003808100000E00630000380027000070001F0000E0000E0001C0 000E000380000E000700000E000F000004000E000004001E000004003C000004003C0000080078 0000000078000000007800000000F000000000F000000000F000000000F000000000F000000000 E000000000E000002000E000002000E000004000E000004000F000008000700000800070000100 00380002000018000400001C0008000006003000000381C0000000FE000000212479A223>I<00 FFFFF000000F003C00000F000E00000F000700001E000380001E000380001E0001C0001E0001C0 003C0001C0003C0001E0003C0001E0003C0001E000780001E000780001E000780001E000780001 E000F00003C000F00003C000F00003C000F00003C001E000078001E000078001E000070001E000 0F0003C0000E0003C0001C0003C0003C0003C00038000780007000078000E000078001C0000780 0700000F801C0000FFFFF0000023227DA125>I<00FFFFFF000F000F000F0003000F0003001E00 03001E0003001E0002001E0002003C0002003C0002003C0102003C010000780200007802000078 060000780E0000FFFC0000F00C0000F00C0000F00C0001E0080001E0080001E0080001E0000003 C0000003C0000003C0000003C00000078000000780000007800000078000000F800000FFFC0000 20227DA120>70 D<00FFF8000F00000F00000F00001E00001E00001E00001E00003C00003C0000 3C00003C0000780000780000780000780000F00000F00000F00000F00001E00001E00001E00001 E00003C00003C00003C00003C0000780000780000780000780000F8000FFF80015227DA113>73 D<0007FFC000003C0000003C0000003C00000078000000780000007800000078000000F0000000 F0000000F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0000003C00000 03C00000078000000780000007800000078000000F0000000F0000380F0000780F0000F81E0000 F81E0000F03C0000403800004070000021E000001F8000001A237CA11A>I<00FFFC00000F8000 000F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C00 000078000000780000007800000078000000F0000000F0000000F0000000F0000001E0000001E0 000001E0002001E0002003C0004003C0004003C0008003C0008007800180078001000780030007 800F000F803E00FFFFFE001B227DA11F>76 D<00FF800007FC000F80000F80000F80001780000F 80001780001780002F000013C0002F000013C0004F000013C0008F000023C0009E000023C0011E 000023C0011E000023C0021E000043C0043C000043C0043C000043C0083C000041E0083C000081 E01078000081E02078000081E02078000081E04078000101E040F0000101E080F0000101E100F0 000101E100F0000200F201E0000200F201E0000200F401E0000200F801E0000400F803C0000400 F003C0000400F003C0000C00E003C0001E00C007C000FFC0C07FFC002E227DA12C>I<00FF000F FC000F8001E0000F800180000FC000800013C001000013C001000011E001000011E001000021E0 02000020F002000020F002000020F0020000407804000040780400004078040000403C04000080 3C080000803E080000801E080000801E080001001F100001000F100001000F1000010007900002 0007A000020007A000020003E000020003E000040003C000040001C000040001C0000C0001C000 1E00008000FFC000800026227DA124>I<00FFFFE0000F0038000F001E000F000E001E0007001E 0007001E0007001E0007003C000F003C000F003C000F003C001E0078001E0078003C0078007800 7800E000F003C000FFFE0000F0000000F0000001E0000001E0000001E0000001E0000003C00000 03C0000003C0000003C00000078000000780000007800000078000000F800000FFF8000020227D A121>80 D<0000FE0000078380000C00E0003800700070003800E0003801C0003C0380001C0700 001C0F00001E1E00001E1E00001E3C00001E3C00001E7800001E7800001E7800001EF000003CF0 00003CF000003CF0000038F0000078E0000078E00000F0E00000F0E00001E0E00001C0E00003C0 F01E03807061070070810E0038811C001C8138000E81E0000783804001FD004000010040000180 800001818000018100000387000001FE000001FE000001FC000000F0001F2D79A225>I<00FFFF C0000F0070000F003C000F001C001E000E001E000E001E000F001E000F003C001E003C001E003C 001E003C003C0078003800780070007801E00078078000FFFC0000F00E0000F0070000F0038001 E003C001E003C001E003C001E003C003C0078003C0078003C0078003C0078007800F0007800F01 07800F01078007020F800702FFF8038C000000F020237DA124>I<0001F020000E0C40001802C0 003001C0006001C000E0018000C0018001C0018001C0018003C0010003C0010003C0000003C000 0003E0000001F8000001FF000000FFE000007FF000001FF8000003FC0000007C0000003C000000 1E0000001E0000001E0020001C0020001C0020001C002000180060003800600030007000600070 00C000C8018000C607000081FC00001B247DA21B>I<1FFFFFF81E03C0381803C0183003C01820 078018200780184007801040078010400F0010800F0010800F0010000F0000001E0000001E0000 001E0000001E0000003C0000003C0000003C0000003C0000007800000078000000780000007800 0000F0000000F0000000F0000000F0000001E0000001E0000001E0000001E0000003E00000FFFF 00001D2277A123>I87 D<010080020100040200080400100800201000201000402000402000804000B85C00FC7E00FC7E 00F87C00703800110F73A219>92 D<00F8C00185C00705C00E03800E03801C03803C0380380700 780700780700780700F00E00F00E00F00E00F00E10F01C20701C20703C20305C40308C400F0780 14157B9419>97 D<03C03F8003800380038007000700070007000E000E000E000E001C001CF81D 0C1E0E3C0638073807380F700F700F700F700FE01EE01EE01EE03CE038E038607060E031C01F00 10237BA216>I<007E0001C1000301800703800E07801C07803C00003800007800007800007800 00F00000F00000F00000F00000F00100700100700200300C001830000FC00011157B9416>I<00 003C0003F80000380000380000380000700000700000700000700000E00000E00000E00000E000 01C000F9C00185C00705C00E03800E03801C03803C0380380700780700780700780700F00E00F0 0E00F00E00F00E10F01C20701C20703C20305C40308C400F078016237BA219>I<00F803840E02 1C023C0238027804F018FFE0F000F000E000E000E000E000E002E0026004701830600F800F157A 9416>I<00003E0000470000CF00018F0001860003800003800003800007000007000007000007 00000700000E0000FFF0000E00000E00000E00001C00001C00001C00001C00001C000038000038 0000380000380000380000700000700000700000700000700000E00000E00000E00000E00000C0 0001C00001C000718000F18000F300006200003C0000182D82A20F>I<001F180030B800E0B801 C07001C0700380700780700700E00F00E00F00E00F00E01E01C01E01C01E01C01E01C01E03800E 03800E0780060B8006170001E700000700000700000E00000E00000E00701C00F01800F0300060 E0003F8000151F7E9416>I<00F0000FE00000E00000E00000E00001C00001C00001C00001C000 038000038000038000038000070000071F0007218007C0C00F00E00F00E00E00E00E00E01C01C0 1C01C01C01C01C01C0380380380380380380380704700708700E08700E10700610E006206003C0 16237DA219>I<00C001E001C001C0000000000000000000000000000000001C00230043004300 8700870087000E000E001C001C001C00380038003840708070807080710032001C000B217BA00F >I<00F0000FE00000E00000E00000E00001C00001C00001C00001C00003800003800003800003 80000700000701E0070210070C700E10F00E10F00E20600E40001D80001E00001FC0001C700038 3800383800381C00381C20703840703840703840701880E01880600F0014237DA216>107 D<01E01FC001C001C001C0038003800380038007000700070007000E000E000E000E001C001C00 1C001C0038003800380038007000700070007100E200E200E200E200640038000B237CA20C>I< 1C0F80F8002610C10C00476066060087807807008780780700870070070087007007000E00E00E 000E00E00E000E00E00E000E00E00E001C01C01C001C01C01C001C01C01C001C01C03820380380 384038038070403803807080380380308070070031003003001E0023157B9428>I<1C0F002631 C04740C08780E08780E08700E08700E00E01C00E01C00E01C00E01C01C03801C03801C03801C07 04380708380E08380E103806107006203003C016157B941B>I<007E0001C3000381800701C00E 01C01C01E03C01E03801E07801E07801E07801E0F003C0F003C0F00380F00780700700700E0070 0C0030180018700007C00013157B9419>I<01C1F002621804741C08780C08700E08700E08701E 00E01E00E01E00E01E00E01E01C03C01C03C01C03C01C07803807003807003C0E003C1C0072380 071E000700000700000E00000E00000E00000E00001C00001C00001C0000FFC000171F7F9419> I<00F8400184C00705C00E03800E03801C03803C0380380700780700780700780700F00E00F00E 00F00E00F00E00F01C00701C00703C00305C0030B8000F38000038000038000070000070000070 0000700000E00000E00000E0000FFE00121F7B9416>I<1C1F002620804741C08783C08703C087 01808700000E00000E00000E00000E00001C00001C00001C00001C000038000038000038000038 000070000030000012157B9415>I<00FC000183000200800401800C03800C03000C00000F0000 0FF00007FC0003FE00003E00000F00000700700700F00600F00600E004004008002030001FC000 11157D9414>I<00C001C001C001C001C003800380038003800700FFF8070007000E000E000E00 0E001C001C001C001C003800380038003810702070207040708031001E000D1F7C9E10>I<1E00 602300E04380E04381C08381C08701C08701C00703800E03800E03800E03801C07001C07001C07 001C07081C0E10180E101C0E101C1E200C262007C3C015157B941A>I<1E03802307C04387C043 83C08381C08700C08700C00700800E00800E00800E00801C01001C01001C01001C02001C02001C 04001C08001C08000C300003C00012157B9416>I<1E0060E02300E1F04380E1F04381C0F08381 C0708701C0308701C030070380200E0380200E0380200E0380201C0700401C0700401C0700401C 0700801C0700801C0701001C0F01000C0F020006138C0003E0F0001C157B9420>I<03C1E00462 10083470103CF02038F020386020380000700000700000700000700000E00000E00000E00000E0 2061C040F1C040F1C080E2C100446200383C0014157D9416>I<1E00302300704380704380E083 80E08700E08700E00701C00E01C00E01C00E01C01C03801C03801C03801C03801C07001C07001C 07001C0F000C3E0003CE00000E00000E00001C00601C00F03800F03000E0600080C0004380003E 0000141F7B9418>I E /Fv 87 125 df<001FC3F000782F1800E07C3C01C0FC7C03C0F87C0780 F8380780780007807800078078000780780007807800078078000780780007807800FFFFFFC0FF FFFFC0078078000780780007807800078078000780780007807800078078000780780007807800 07807800078078000780780007807800078078000780780007807800078078007FE1FFC07FE1FF C01E2380A21C>11 D<001FC0000078200000E0100001C0780003C0F8000780F8000780F8000780 7000078000000780000007800000078000000780000007800000FFFFF800FFFFF8000780F80007 807800078078000780780007807800078078000780780007807800078078000780780007807800 0780780007807800078078000780780007807800078078007FE1FF807FE1FF80192380A21B>I< 001FD8000078780000E0F80001C0F80003C0F80007807800078078000780780007807800078078 0007807800078078000780780007807800FFFFF800FFFFF8000780780007807800078078000780 780007807800078078000780780007807800078078000780780007807800078078000780780007 8078000780780007807800078078007FF3FF807FF3FF80192380A21B>I<000FC07E00007833C1 8000E00F004001C03E01E003C07E03E007807C03E007807C03E007803C01C007803C000007803C 000007803C000007803C000007803C000007803C0000FFFFFFFFE0FFFFFFFFE007803C03E00780 3C01E007803C01E007803C01E007803C01E007803C01E007803C01E007803C01E007803C01E007 803C01E007803C01E007803C01E007803C01E007803C01E007803C01E007803C01E007803C01E0 7FF1FF8FFE7FF1FF8FFE272380A229>I18 D<70F8F8F8F8F8F8F87070707070707070707070202020202020000000000070F8F8F87005237C A20E>33 D<7038F87CFC7EFC7E743A04020402040204020804080410081008201040200F0F7EA2 18>I<003C000000006200000000C100000001C100000001C100000003C100000003C100000003 C100000003C200000003C200000003C400000003C400000003C800000001F000000001E003FF80 01E003FF8001F0007C0001F000300001F000200002780040000478004000083C008000183E0080 00301E010000701F020000700F820000F007840000F003C80000F003F00000F801F001007800F8 01007C01FC02003E073E0E000FFE0FFC0003F003F00021237EA226>38 D<70F8FCFC7404040404 080810102040060F7CA20E>I<00200040008001800300060006000C000C001C00180038003800 30007000700070007000F000E000E000E000E000E000E000E000E000E000E000E000E000F00070 0070007000700030003800380018001C000C000C0006000600030001800080004000200B327CA4 13>I<800040002000300018000C000C00060006000700030003800380018001C001C001C001C0 01E000E000E000E000E000E000E000E000E000E000E000E000E001E001C001C001C001C0018003 80038003000700060006000C000C00180030002000400080000B327DA413>I<00018000000180 000001800000018000000180000001800000018000000180000001800000018000000180000001 800000018000000180000001800000018000FFFFFFFEFFFFFFFE00018000000180000001800000 018000000180000001800000018000000180000001800000018000000180000001800000018000 0001800000018000000180001F227D9C26>43 D<70F8FCFC7404040404080810102040060F7C84 0E>II<70F8F8F87005057C840E>I<01F000060C000C0600180300 3803803803807001C07001C07001C0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0 F001E0F001E0F001E0F001E0F001E0F001E07001C07001C07001C03803803803801803000C0600 071C0001F00013207E9F18>48 D<00C001C007C0FFC0FBC003C003C003C003C003C003C003C003 C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0FFFFFFFF 10207C9F18>I<03F0000FFE00181F00200F804007C04003C0F003E0F801E0F801E0F801E02003 E00003C00003C00003C0000780000F00000E00001C0000380000300000600000C0000180000300 200600200C00200800601000403FFFC07FFFC0FFFFC0FFFFC013207E9F18>I<03F8000FFE0038 0F003807807C07807C07C07C03C03807C00007C0000780000780000F00000E0000380003F80000 1E00000F000007800007C00003C00003E00003E02003E07003E0F803E0F803C0F003C040078060 0780381F000FFC0003F00013207E9F18>I<000300000300000700000F00000F00001F00002F00 006F00004F00008F00018F00010F00020F00060F00040F00080F00100F00300F00200F00400F00 C00F00FFFFF8FFFFF8000F00000F00000F00000F00000F00000F00000F0001FFF801FFF815207F 9F18>I<1000801E07001FFF001FFE001FF80013E0001000001000001000001000001000001000 0011F800160E001807001003800003C00001C00001C00001E00001E07001E0F801E0F801E0F801 E0F001C04003C04003803007001C1E000FFC0003F00013207E9F18>I<007E0001FF0003C18007 01C00E03C01C07C03C07C0380380780000780000700000F00000F0F800F30E00F40700F80380F8 03C0F801C0F001E0F001E0F001E0F001E07001E07001E07001E07801C03801C03803801C07000E 0F0007FC0001F80013207E9F18>I<4000006000007FFFE07FFFE07FFFC07FFFC0400080C00100 80010080020080040000080000080000100000300000200000600000600000E00000E00001C000 01C00001C00003C00003C00003C00007C00007C00007C00007C00007C00007C00007C000038000 13227DA118>I<01F80007FE001E0F003803803003807001C07001C07001C07001C07801803E03 803F07001FCE000FF80003F80003FC00067F001C3F80380F807007C07001E0E001E0E000E0E000 E0E000E0E000E07000C07001C03803801E0F000FFE0003F80013207E9F18>I<01F00007FC000E 0E001C07003803807003807003C0F001C0F001C0F001C0F001E0F001E0F001E0F001E07003E078 03E03803E01C05E00E19E003E1E00001E00001C00001C00003C03803807C03807C0700780E0030 0C003038001FF00007C00013207E9F18>I<70F8F8F870000000000000000000000070F8F8F870 05157C940E>I<70F8F8F870000000000000000000000070F8F8F8780808080810101020404005 1F7C940E>I61 D<038007C007C007C00380000000000000 00000000010001000100010001000100010003000200060006000C001C00380078007000F00EF0 1FF01FF01FF00F7002700438180FE010237D9817>I<07E01838201C400EF00FF80FF80FF80F70 0F000E001C00380030006000C000C0008000800180010001000100010001000100000000000000 00000000038007C007C007C0038010237DA217>I<0001800000018000000180000003C0000003 C0000007E0000005E0000005E0000009F0000008F0000008F00000107800001078000010780000 203C0000203C0000603E0000401E0000401E0000801F0000800F0000FFFF0001FFFF8001000780 01000780020003C0020003C0060003E0040001E0040001E00C0001F01E0001F0FF800FFFFF800F FF20227EA125>65 DI<000FE010 003FF83000FC0E7001E0037007C001F00F8000F00F0000701E0000303E0000303C0000307C0000 107C00001078000010F8000000F8000000F8000000F8000000F8000000F8000000F8000000F800 0000780000007C0000107C0000103C0000103E0000101E0000200F0000200F80004007C0008001 E0010000FC0E00003FFC00000FF0001C227DA123>IIII<0007F008003FFC1800FC073801F001B803 C000F8078000780F0000381E0000183E0000183C0000187C0000087C00000878000008F8000000 F8000000F8000000F8000000F8000000F8000000F8000000F8001FFF78001FFF7C0000787C0000 783C0000783E0000781E0000780F0000780780007803C0007801F000B800FC0338003FFE180007 F80820227DA126>III<03FFF003FFF000 0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000 0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00700F00F80F00F8 0F00F80E00701E00401C003070000FC00014227EA119>IIII I<000FE00000783C0001E00F0003800380078003C00F0001E01E0000F01E0000F03C0000783C00 00787C00007C7800003C7800003CF800003EF800003EF800003EF800003EF800003EF800003EF8 00003EF800003E7800003C7C00007C7C00007C3C0000783C0000781E0000F01E0000F00F0001E0 078003C003C0078001E00F0000783C00000FE0001F227DA126>II<000FE00000783C0001E00F0003C00780078003C00F0001E01E 0000F01E0000F03C0000783C0000787C00007C7800003C7800003CF800003EF800003EF800003E F800003EF800003EF800003EF800003EF800003E7800003C7800003C7C00007C3C0000783C0000 781E0000F01E0380F00F0421E0078833C003C8378001E83F00007C3C00000FF80200001C020000 1C0200001C0200001E0600000F0E00000FFC000007FC000007F8000003F8000001E01F2C7DA126 >II<03F0200FFC601C0FE03801E07000E060 0060E00060E00020E00020E00020F00000F000007800007F00003FF0001FFE000FFF0003FF8000 3FC00003E00001E00000F00000F0000070800070800070800070C00070C000E0E000E0F001C0FE 0380C7FF0081FC0014227DA11B>I<7FFFFFF87FFFFFF878078078600780184007800840078008 C007800CC007800C80078004800780048007800480078004000780000007800000078000000780 000007800000078000000780000007800000078000000780000007800000078000000780000007 800000078000000780000007800000078000000780000007800003FFFF0003FFFF001E227EA123 >IIII<7FF807FF007FF807FF0007E001 F00003E000C00001E000800000F001000000F80300000078020000007C040000003E0C0000001E 080000001F100000000FB000000007A000000007C000000003E000000001E000000001F0000000 03F80000000278000000047C0000000C3E000000081E000000101F000000300F80000020078000 004007C00000C003E000008001E000010001F000030000F0000F8000F800FFE007FFC0FFE007FF C022227FA125>II<7FFFFE7FFFFE7E003C78 003C7000786000F0C000F0C001E0C001E08003C0800780800780000F00000F00001E00003C0000 3C0000780000780000F00001E00101E00103C00103C0010780010F00030F00031E00021E00063C 000E78001E78007EFFFFFEFFFFFE18227DA11E>II<08 04100820102010402040208040804080408040B85CFC7EFC7E7C3E381C0F0F7AA218>II<1FE0003838007C1C007C0E007C0F00380F00000F00000F0000 FF00078F001E0F003C0F00780F00700F00F00F08F00F08F00F08F01F08781F083C27F00FC3E015 157E9418>97 D<0F0000FF0000FF00001F00000F00000F00000F00000F00000F00000F00000F00 000F00000F00000F00000F1F000F61C00F80600F00300F00380F003C0F001C0F001E0F001E0F00 1E0F001E0F001E0F001E0F001E0F001C0F003C0F00380F00700E80600C61C0081F0017237FA21B >I<01FE000707000C0F801C0F80380F80780700700000F00000F00000F00000F00000F00000F0 0000F000007000007800403800401C00800C010007060001F80012157E9416>I<0001E0001FE0 001FE00003E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E001F9E0 0705E00C03E01C01E03801E07801E07001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0 7001E07801E03801E01801E00C03F0070DFE01F1FE17237EA21B>I<01FC000707000C03801C01 C03801C07801E07000E0F000E0FFFFE0F00000F00000F00000F00000F000007000007800203800 201C00400E008007030000FC0013157F9416>I<003E0000E30001C78003CF80038F8007870007 8000078000078000078000078000078000078000078000FFF800FFF80007800007800007800007 800007800007800007800007800007800007800007800007800007800007800007800007800007 80007FFC007FFC00112380A20F>I<01F070071DB80E0E381C07001C07003C07803C07803C0780 3C07801C07001C07000E0E000F1C0019F0001000001000001800001800001FFE000FFFC00FFFE0 3801F0700070600038E00038E00038E000386000307000703800E00E038003FE0015207F9418> I<0F0000FF0000FF00001F00000F00000F00000F00000F00000F00000F00000F00000F00000F00 000F00000F0F800F31C00F40E00F80F00F80F00F00F00F00F00F00F00F00F00F00F00F00F00F00 F00F00F00F00F00F00F00F00F00F00F00F00F00F00F0FFF3FFFFF3FF18237FA21B>I<0E001F00 1F001F000E00000000000000000000000000000000000F00FF00FF001F000F000F000F000F000F 000F000F000F000F000F000F000F000F000F000F00FFE0FFE00B2280A10D>I<007000F800F800 F8007000000000000000000000000000000000007807F807F800F8007800780078007800780078 0078007800780078007800780078007800780078007800780078007800787078F870F870F8E071 C01F000D2C83A10F>I<0F0000FF0000FF00001F00000F00000F00000F00000F00000F00000F00 000F00000F00000F00000F00000F03FC0F03FC0F01E00F01800F03000F04000F08000F18000F38 000F7C000FBE000F1E000F1F000F0F800F07800F07C00F03C00F03E00F03F0FFE7FEFFE7FE1723 7FA21A>I<0F00FF00FF001F000F000F000F000F000F000F000F000F000F000F000F000F000F00 0F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00FFF0FFF00C2380 A20D>I<0F0FC07E00FF30E18700FF407203801F807C03C00F807C03C00F007803C00F007803C0 0F007803C00F007803C00F007803C00F007803C00F007803C00F007803C00F007803C00F007803 C00F007803C00F007803C00F007803C00F007803C0FFF3FF9FFCFFF3FF9FFC26157F9429>I<0F 0F80FF31C0FF40E01F80F00F80F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F 00F00F00F00F00F00F00F00F00F00F00F0FFF3FFFFF3FF18157F941B>I<01FC000707000C0180 1800C03800E0700070700070F00078F00078F00078F00078F00078F00078F000787000707800F0 3800E01C01C00E038007070001FC0015157F9418>I<0F1F00FF61C0FF80600F00700F00380F00 3C0F001C0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F003C0F003C0F00380F00700F80 E00F61C00F1F000F00000F00000F00000F00000F00000F00000F00000F0000FFF000FFF000171F 7F941B>I<01F020070C600E02E01C03E03801E07801E07801E0F001E0F001E0F001E0F001E0F0 01E0F001E0F001E07001E07801E03801E01C03E00C03E0070DE001F1E00001E00001E00001E000 01E00001E00001E00001E00001E0001FFE001FFE171F7E941A>I<0F3CFF46FF8F1F8F0F860F00 0F000F000F000F000F000F000F000F000F000F000F000F000F00FFF8FFF810157F9413>I<0FC8 303860186008E008E008F000FC007FC03FE01FF007F8007C803C801C801CC01CC018E038D0708F C00E157E9413>I<0100010001000100030003000300070007000F003FF8FFF80F000F000F000F 000F000F000F000F000F000F000F040F040F040F040F040F040788038800F00E1F7F9E13>I<0F 00F0FF0FF0FF0FF01F01F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F00F 00F00F00F00F00F00F01F00F01F00702F80386FF00F8FF18157F941B>IIIII<3FFFC0380780300F80200F00601E00403E00403C0040780000F80000F0 0001E00003C00007C0400780400F00401F00C01E00803C00807C0180780780FFFF8012157F9416 >III E /Fw 42 122 df<0000700000F00003E00007C0000F80001F00003F00007E00007C0000FC0001F80001F80003 F00007F00007E0000FE0000FE0000FC0001FC0001FC0003FC0003F80003F80003F80007F80007F 80007F00007F00007F0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF 0000FF0000FF0000FF0000FF0000FF00007F00007F00007F00007F80007F80003F80003F80003F 80003FC0001FC0001FC0000FC0000FE0000FE00007E00007F00003F00001F80001F80000FC0000 7C00007E00003F00001F00000F800007C00003E00000F000007014497AB520>40 DI45 D<0000F0000001F0000007F000003F F0001FFFF000FFFFF000FFFFF000FFFFF000E03FF000003FF000003FF000003FF000003FF00000 3FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000 003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF0 00003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF000003FF0007FFF FFF07FFFFFF07FFFFFF07FFFFFF01C2E7AAD29>49 D<003FF00001FFFE0007FFFF801FFFFFE03F 80FFF07E003FF87F001FFCFF800FFEFFC00FFEFFC007FFFFC007FFFFC007FFFFC003FF7F8003FF 3F0007FF000007FF000007FF000007FE00000FFE00000FFC00001FF800001FF000003FE000003F C000007F800000FF000001FE000003F8000007F000000FE00F001F800F003F000F003E000F007C 001E00F0001E01E0003E03FFFFFE07FFFFFE0FFFFFFE1FFFFFFE3FFFFFFE7FFFFFFEFFFFFFFCFF FFFFFCFFFFFFFCFFFFFFFC202E7CAD29>I<000FF80000007FFF800001FFFFE00003F01FF00007 C00FF8000FE00FFC001FF007FC001FF807FE001FF807FE001FF807FE001FF807FE001FF807FE00 0FF007FE0007E00FFC0001800FFC0000000FF80000001FF80000001FF00000003FE00000007F80 00001FFE0000001FFC0000001FFFC00000001FF000000007FC00000007FE00000003FF00000003 FF80000001FF80000001FFC00E0001FFC03F8001FFC07FC001FFC0FFE001FFC0FFE001FFC0FFE0 01FFC0FFE001FF80FFE003FF80FFE003FF807FC007FF007F0007FE003FC01FFC001FFFFFF80007 FFFFE00001FFFF8000001FFC0000222E7DAD29>I<000000F800000001F800000001F800000003 F800000007F80000000FF80000001FF80000003FF80000003FF80000007FF8000000FFF8000001 FFF8000003EFF8000003CFF80000078FF800000F0FF800001E0FF800003E0FF800007C0FF80000 780FF80000F00FF80001E00FF80003E00FF80007C00FF80007800FF8000F000FF8001E000FF800 3C000FF8007C000FF800F8000FF800FFFFFFFFF0FFFFFFFFF0FFFFFFFFF0FFFFFFFFF000001FF8 0000001FF80000001FF80000001FF80000001FF80000001FF80000001FF80000001FF800001FFF FFF0001FFFFFF0001FFFFFF0001FFFFFF0242E7EAD29>I<0C0000380FC003F80FFFFFF80FFFFF F00FFFFFE00FFFFFC00FFFFF800FFFFF000FFFFC000FFFF0000FFF00000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F1FF8000FFFFF000FFFFFC00FF03FE00F801FF00F 000FF80E0007FC000007FE000007FE000007FE000007FF000007FF1E0007FF7F8007FFFF8007FF FFC007FFFFC007FFFFC007FFFF8007FEFF800FFE7F000FFC7C000FFC3F001FF81FC07FF00FFFFF C007FFFF8001FFFC00003FE000202E7CAD29>I<00007F80000007FFF000001FFFF800007FC07C 0000FF003E0001FC007E0003F800FF0007F801FF000FF001FF001FF001FF001FE001FF003FE000 FE003FE0007C007FE00000007FC00000007FC00000007FC0000000FFC3FF8000FFC7FFE000FFCF BFF000FFDC03FC00FFF801FE00FFF001FF00FFF000FF00FFE000FF80FFE000FF80FFE000FFC0FF C000FFC0FFC000FFC0FFC000FFC0FFC000FFC07FC000FFC07FC000FFC07FC000FFC07FC000FFC0 3FC000FFC03FE000FF801FE000FF801FE001FF000FF001FF000FF803FE0007FC07FC0001FFFFF8 0000FFFFE000003FFF80000007FC0000222E7DAD29>I<3C000000003F000000003FFFFFFFC03F FFFFFFC03FFFFFFFC03FFFFFFFC07FFFFFFF807FFFFFFF007FFFFFFE007FFFFFFC007FFFFFF800 7FFFFFF0007C0001F000780003E000780007C000F8000F8000F0001F0000F0003E0000F0003C00 0000007C00000000F800000001F800000001F000000003F000000003F000000007E000000007E0 0000000FE00000000FE00000001FE00000001FE00000001FC00000003FC00000003FC00000003F C00000003FC00000003FC00000007FC00000007FC00000007FC00000007FC00000007FC0000000 7FC00000007FC00000007FC00000007FC00000003F800000001F00000022307BAF29>I<0007FC 0000003FFF800000FFFFE00001F80FF00003E003F80007C001FC000F8000FC000F8000FE001F80 007E001F80007E001FC0007E001FE0007E001FF8007E001FFC00FE001FFF00FC001FFFC1FC000F FFF3F8000FFFFFF0000FFFFFC00007FFFF800003FFFFE00001FFFFF80000FFFFFC0001FFFFFE00 07FFFFFF000FE3FFFF001FC1FFFF803F807FFF807F801FFFC07F0007FFC0FF0001FFC0FE0000FF C0FE00007FC0FE00003FC0FE00001FC0FE00001FC0FF00001F80FF00001F807F80003F807F8000 3F003FE000FE001FF803FC000FFFFFF80003FFFFE00000FFFF8000001FFC0000222E7DAD29>I< 0000007C0000000000007C000000000000FE000000000000FE000000000000FE000000000001FF 000000000001FF000000000003FF800000000003FF800000000007FFC00000000007FFC0000000 0007FFC0000000000FFFE0000000000FFFE0000000001FFFF0000000001EFFF0000000001E7FF0 000000003E7FF8000000003C3FF8000000007C3FFC00000000781FFC00000000781FFC00000000 F81FFE00000000F00FFE00000001F00FFF00000001E007FF00000001E007FF00000003E007FF80 000003C003FF80000007C003FFC00000078001FFC00000078001FFC000000FFFFFFFE000000FFF FFFFE000001FFFFFFFF000001FFFFFFFF000001E00007FF000003C00007FF800003C00003FF800 007C00003FFC00007800001FFC00007800001FFC0000F000001FFE0000F000000FFE0001F00000 0FFF00FFFFC003FFFFFEFFFFC003FFFFFEFFFFC003FFFFFEFFFFC003FFFFFE37317DB03E>65 D<000003FF80038000003FFFF007800001FFFFFC0F800007FFFFFF1F80001FFF803FFF80007FF8 0007FF8000FFE00001FF8001FFC00000FF8003FF0000007F8007FE0000003F800FFE0000003F80 1FFC0000001F801FF80000000F803FF80000000F803FF00000000F803FF000000007807FF00000 0007807FF000000007807FE00000000000FFE00000000000FFE00000000000FFE00000000000FF E00000000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE0000000 0000FFE00000000000FFE000000000007FE000000000007FF000000000007FF000000007803FF0 00000007803FF000000007803FF800000007801FF80000000F801FFC0000000F000FFE0000001F 0007FE0000001E0003FF0000003E0001FFC000007C0000FFE00000F800007FF80003F000001FFF 801FE0000007FFFFFF80000001FFFFFE000000003FFFF80000000003FF80000031317BB03C>67 D69 D73 D75 D78 D80 D<001FF0038000FFFF078003FFFFCF8007FFFFFF 801FF00FFF801FC001FF803F80007F807F80003F807F00001F807F00001F80FF00000F80FF0000 0F80FF00000780FF80000780FFC0000780FFE0000000FFF0000000FFFF8000007FFFF800007FFF FF80007FFFFFE0003FFFFFF8001FFFFFFC000FFFFFFE0007FFFFFF0003FFFFFF8000FFFFFF8000 3FFFFFC00003FFFFC000003FFFC0000001FFE0000000FFE00000007FE00000003FE0F000003FE0 F000001FE0F000001FE0F000001FE0F800001FC0F800001FC0FC00003FC0FE00003F80FF00007F 80FFC000FF00FFFC01FE00FFFFFFFC00F9FFFFF800F03FFFE000E007FF000023317BB02E>83 D<3FFFFFFFFFFF003FFFFFFFFFFF003FFFFFFFFFFF003FFFFFFFFFFF003FE00FFE01FF007F800F FE007F807F000FFE001F807E000FFE001F807C000FFE000F807C000FFE000F8078000FFE000780 78000FFE00078078000FFE00078078000FFE000780F0000FFE0003C0F0000FFE0003C0F0000FFE 0003C0F0000FFE0003C000000FFE00000000000FFE00000000000FFE00000000000FFE00000000 000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE00 000000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE0000000000 0FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE0000 0000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE000000007FFF FFFFC000007FFFFFFFC000007FFFFFFFC000007FFFFFFFC00032307DAF39>I<007FF8000003FF FF00000FFFFFC0001FE03FF0001FF00FF8001FF007FC001FF007FC001FF003FE000FE003FE0007 C003FE00010003FE00000003FE00000003FE000001FFFE00003FFFFE0001FFF3FE0007FE03FE00 1FF803FE003FF003FE007FE003FE007FC003FE00FFC003FE00FF8003FE00FF8003FE00FF8003FE 00FF8007FE00FFC00FFE007FE01FFF003FF03DFFF81FFFF8FFF807FFE07FF800FF803FF825207E 9F28>97 D<01FC000000FFFC000000FFFC000000FFFC000000FFFC0000000FFC00000007FC0000 0007FC00000007FC00000007FC00000007FC00000007FC00000007FC00000007FC00000007FC00 000007FC00000007FC00000007FC00000007FC0FF00007FCFFFE0007FFFFFF8007FFE03FE007FF 801FF007FF000FF807FC0007F807FC0007FC07FC0007FE07FC0003FE07FC0003FE07FC0003FF07 FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF 07FC0003FF07FC0003FE07FC0003FE07FC0007FC07FC0007FC07FE000FF807FF000FF007FF801F E007F7E07FC007E3FFFF8007C0FFFE0007801FE00028327EB12E>I<0007FF00007FFFE001FFFF F803FE03FC07F807FC0FF007FC1FF007FC3FE007FC3FE003F87FE001F07FC00040FFC00000FFC0 0000FFC00000FFC00000FFC00000FFC00000FFC00000FFC00000FFC00000FFC000007FE000007F E000003FE0001E3FF0001E1FF0003E0FF8007C07FC00F803FF03F001FFFFE0007FFF800007FC00 1F207D9F25>I<0000000FE0000007FFE0000007FFE0000007FFE0000007FFE00000007FE00000 003FE00000003FE00000003FE00000003FE00000003FE00000003FE00000003FE00000003FE000 00003FE00000003FE00000003FE00000003FE0000FF83FE0007FFF3FE001FFFFFFE003FE07FFE0 0FF800FFE00FF0007FE01FF0003FE03FE0003FE03FE0003FE07FC0003FE07FC0003FE0FFC0003F E0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC000 3FE0FFC0003FE07FC0003FE07FC0003FE07FE0003FE03FE0003FE01FE0007FE01FF000FFE00FF8 01FFF007FC07FFFF01FFFFBFFF007FFE3FFF000FF03FFF28327DB12E>I<000FFE0000007FFFC0 0001FFFFE00003FE0FF00007F803F8000FF001FC001FF000FE003FE000FF003FE000FF007FC000 7F007FC0007F807FC0007F80FFC0007F80FFC0007F80FFFFFFFF80FFFFFFFF80FFFFFFFF80FFC0 000000FFC0000000FFC00000007FC00000007FC00000007FE00000003FE00007803FE00007801F F0000F800FF8001F0007FC003E0003FF01FC0000FFFFF800003FFFE0000007FF000021207E9F26 >I<0000FF000007FFC0001FFFF0007FC7F000FF8FF801FF0FF801FF0FF803FE0FF803FE0FF803 FE07F003FE01C003FE000003FE000003FE000003FE000003FE000003FE000003FE0000FFFFF800 FFFFF800FFFFF800FFFFF80003FE000003FE000003FE000003FE000003FE000003FE000003FE00 0003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE 000003FE000003FE000003FE000003FE000003FE000003FE000003FE00007FFFF8007FFFF8007F FFF8007FFFF8001D327EB119>I<001FF807E000FFFF1FF003FFFFFFF807F81FFBF80FF00FF3F8 1FF00FF9F81FE007F8F03FE007FC003FE007FC003FE007FC003FE007FC003FE007FC003FE007FC 003FE007FC001FE007F8001FF00FF8000FF00FF00007F81FE00007FFFFC00007FFFF00000E1FF8 00000E000000000F000000001F000000001F800000000FFFFFC0000FFFFFF8000FFFFFFE000FFF FFFF8007FFFFFFC003FFFFFFC007FFFFFFE01FFFFFFFE03F80007FF07F00001FF0FE00000FF0FE 000007F0FE000007F0FE000007F0FF00000FF07F00000FE07F80001FE03FC0003FC00FF801FF00 07FFFFFE0000FFFFF000001FFF8000252F7E9F29>I<01FC00000000FFFC00000000FFFC000000 00FFFC00000000FFFC000000000FFC0000000007FC0000000007FC0000000007FC0000000007FC 0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC000000 0007FC0000000007FC0000000007FC03FC000007FC1FFF000007FC7FFFC00007FCF87FC00007FD E03FE00007FFC01FE00007FF801FF00007FF001FF00007FE001FF00007FE001FF00007FC001FF0 0007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC 001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF0 0007FC001FF00007FC001FF00007FC001FF00007FC001FF000FFFFE3FFFF80FFFFE3FFFF80FFFF E3FFFF80FFFFE3FFFF8029327DB12E>I<03F00007F8000FFC001FFE001FFE001FFE001FFE001F FE001FFE000FFC0007F80003F00000000000000000000000000000000000000000000001FC00FF FC00FFFC00FFFC00FFFC000FFC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007 FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007 FC00FFFFC0FFFFC0FFFFC0FFFFC012337EB216>I<01FC000000FFFC000000FFFC000000FFFC00 0000FFFC0000000FFC00000007FC00000007FC00000007FC00000007FC00000007FC00000007FC 00000007FC00000007FC00000007FC00000007FC00000007FC00000007FC00000007FC01FFFC07 FC01FFFC07FC01FFFC07FC01FFFC07FC003F0007FC007E0007FC01FC0007FC03F00007FC07E000 07FC0FC00007FC3F800007FC7E000007FCFE000007FDFF000007FFFF800007FFFFC00007FFFFC0 0007FF7FE00007FE3FF00007F81FF80007F81FFC0007F80FFC0007F807FE0007F803FF0007F801 FF8007F801FF8007F800FFC007F8007FE0FFFFC1FFFFFFFFC1FFFFFFFFC1FFFFFFFFC1FFFF2832 7EB12C>107 D<01FC00FFFC00FFFC00FFFC00FFFC000FFC0007FC0007FC0007FC0007FC0007FC 0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC 0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC 0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC00FFFFE0FFFFE0FFFFE0FFFF E013327EB116>I<01F803FC0007F80000FFF81FFF803FFF0000FFF83FFFC07FFF8000FFF8F83F E1F07FC000FFF9E01FF3C03FE0000FFBC01FF7803FE00007FB800FFF001FF00007FF000FFE001F F00007FE000FFC001FF00007FE000FFC001FF00007FC000FF8001FF00007FC000FF8001FF00007 FC000FF8001FF00007FC000FF8001FF00007FC000FF8001FF00007FC000FF8001FF00007FC000F F8001FF00007FC000FF8001FF00007FC000FF8001FF00007FC000FF8001FF00007FC000FF8001F F00007FC000FF8001FF00007FC000FF8001FF00007FC000FF8001FF00007FC000FF8001FF00007 FC000FF8001FF00007FC000FF8001FF00007FC000FF8001FF000FFFFE1FFFFC3FFFF80FFFFE1FF FFC3FFFF80FFFFE1FFFFC3FFFF80FFFFE1FFFFC3FFFF8041207D9F46>I<01F803FC0000FFF81F FF0000FFF87FFFC000FFF8F87FC000FFF9E03FE0000FFBC01FE00007FB801FF00007FF001FF000 07FE001FF00007FE001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC00 1FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF000 07FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC00 1FF000FFFFE3FFFF80FFFFE3FFFF80FFFFE3FFFF80FFFFE3FFFF8029207D9F2E>I<0007FE0000 003FFFC00000FFFFF00003FE07FC0007F801FE000FF000FF001FE0007F803FE0007FC03FC0003F C07FC0003FE07FC0003FE07FC0003FE0FFC0003FF0FFC0003FF0FFC0003FF0FFC0003FF0FFC000 3FF0FFC0003FF0FFC0003FF0FFC0003FF07FC0003FE07FC0003FE07FC0003FE03FE0007FC03FE0 007FC01FE0007F800FF000FF0007F801FE0003FE07FC0001FFFFF800003FFFC0000007FE000024 207E9F29>I<01FC0FF000FFFCFFFE00FFFFFFFF80FFFFE07FE0FFFF803FF007FF001FF807FC00 0FF807FC000FFC07FC0007FE07FC0007FE07FC0007FE07FC0003FF07FC0003FF07FC0003FF07FC 0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0003FF07FC0007FE07 FC0007FE07FC0007FC07FC000FFC07FE000FF807FF001FF007FF803FE007FFE07FC007FFFFFF80 07FCFFFE0007FC1FE00007FC00000007FC00000007FC00000007FC00000007FC00000007FC0000 0007FC00000007FC00000007FC00000007FC000000FFFFE00000FFFFE00000FFFFE00000FFFFE0 0000282E7E9F2E>I<0007F801E0003FFE03E001FFFF87E003FE07CFE007FC01EFE00FF800FFE0 1FF000FFE03FF0007FE03FE0003FE07FE0003FE07FE0003FE0FFC0003FE0FFC0003FE0FFC0003F E0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE0FFC0003FE07FE000 3FE07FE0003FE07FE0003FE03FF0007FE01FF0007FE01FF800FFE00FFC03FFE007FE0FFFE001FF FFBFE0007FFE3FE0000FF03FE00000003FE00000003FE00000003FE00000003FE00000003FE000 00003FE00000003FE00000003FE00000003FE00000003FE0000007FFFF000007FFFF000007FFFF 000007FFFF282E7D9F2C>I<01F83F00FFF8FFC0FFF9FFF0FFF9C7F0FFFB8FF80FFB8FF807FF0F F807FE0FF807FE07F007FE03E007FE008007FC000007FC000007FC000007FC000007FC000007FC 000007FC000007FC000007FC000007FC000007FC000007FC000007FC000007FC000007FC000007 FC000007FC0000FFFFF000FFFFF000FFFFF000FFFFF0001D207E9F22>I<00FF870007FFFF001F FFFF003F807F007E003F007C001F00FC000F00FC000F00FE000F00FF000000FFC00000FFFF0000 FFFFE0007FFFF8003FFFFE001FFFFF000FFFFF0003FFFF8000FFFFC00007FFC000007FC0F0001F C0F0001FC0F8000FC0F8000FC0FC000F80FE001F80FF001F00FF807F00FFFFFC00F3FFF800E07F C0001A207D9F21>I<003C00003C00003C00003C00003C00007C00007C00007C0000FC0000FC00 01FC0001FC0003FC0007FC001FFFFEFFFFFEFFFFFEFFFFFE07FC0007FC0007FC0007FC0007FC00 07FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0007FC0F07FC0F07FC0F 07FC0F07FC0F07FC0F07FC0F07FC1F03FE1E03FF3E01FFFC007FF8000FE0182E7EAD20>I<01FC 0007F000FFFC03FFF000FFFC03FFF000FFFC03FFF000FFFC03FFF0000FFC003FF00007FC001FF0 0007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC 001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF00007FC001FF0 0007FC001FF00007FC001FF00007FC001FF00007FC003FF00007FC003FF00007FC007FF00007FC 007FF00003FC00FFF80003FE03DFFF8001FFFF9FFF80007FFF1FFF80000FF81FFF8029207D9F2E >I119 D121 D E /Fx 1 14 df<000003FE00000000001FFFC000000000FFFFF800000003FC01FE 00000007E0003F0000001F000007C000003E000003E0000078000000F00000F0000000780001E0 0000003C0003C00000001E0003800000000E00070000000007000F0000000007800E0000000003 801C0000000001C01C0000000001C0380000000000E0380000000000E070000000000070700000 000000707000000000007070000000000070E0000000000038E0000000000038E0000000000038 E0000000000038E0000000000038E0000000000038E0000000000038E0000000000038E0000000 000038E00000000000387000000000007070000000000070700000000000707000000000007038 0000000000E0380000000000E01C0000000001C01C0000000001C00E0000000003800F00000000 07800700000000070003800000000E0003C00000001E0001E00000003C0000F000000078000078 000000F000003E000003E000001F000007C0000007E0003F00000003FC01FE00000000FFFFF800 0000001FFFC00000000003FE00000035387DAA3C>13 D E /Fy 30 122 df<387CFEFEFE7C3807077B8611>46 D<00180000380000F80007F800FFF800F8F80000F80000 F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000 F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000 F80000F80000F80000F80001FC007FFFF07FFFF014287CA71E>49 D<007F000001FFC00007C1E0 000F0070001E0078001E003C003E003C007C003E007C001E00FC001F00FC001F00FC001F00FC00 1F00FC001F80FC001F80FC001F80FC001F807C001F807C003F807C003F803E003F801E007F801F 005F800F81DF8003FF9F8001FE1F8000101F0000001F0000001F0000001E0000003E001E003E00 3F003C003F007C003F0078003F00F0003E00E0001803C0000E07800007FE000001F8000019297E A71E>57 D<0001FF0000000FFFE000003E00F8000078003C0000E0000E00018000030003000001 8006000000C00C00FC00601803FF00301807838030300F00C018301E006018603E007E0C603C00 3E0C607C003E0CC07C003E06C0F8003E06C0F8003E06C0F8003E06C0F8003E06C0F8003E06C0F8 003E06C0F8003E06C0F8003E06C07C003E06607C003E06603C003E04603E007E0C301E007E0C30 0F00FE081807839F181803FF0FF00C00FC03E006000000000300000000018000000000E000003E 00780001F8003E003FE0000FFFFE000001FFC000272A7DA92E>64 D<000018000000003C000000 003C000000003C000000007E000000007E000000007E00000000FF00000000FF00000000FF0000 0001BF800000019F800000019F800000030FC00000030FC00000030FC000000607E000000607E0 00000607E000000C03F000000C03F000000C03F000001801F800001801F800001801F800003000 FC00003000FC00003FFFFC00007FFFFE000060007E000060007E0000C0003F0000C0003F0001C0 003F800180001F800180001F800380001FC00300000FC00780000FC01FC0001FE0FFF801FFFFFF F801FFFF282A7EA92D>II<0000FF00100007FFE03000 1FC07070003E001CF000FC0006F001F00003F003E00003F007E00001F00FC00000F00F800000F0 1F800000703F000000703F000000703F000000307F000000307E000000307E00000030FE000000 00FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0000 00007E000000007E000000307F000000303F000000303F000000303F000000601F800000600F80 0000600FC00000C007E00000C003E000018001F000030000FC000600003E000C00001FC0780000 07FFE0000000FF8000242B7DA92B>II73 D85 D<07FC00001FFF80003E07C0003F01E0003F01F0003F00F8001E00F8000000F8000000F8000000 F800001FF80001FFF80007F8F8001F80F8003F00F8007C00F8007C00F800F800F860F800F860F8 00F860F800F860F801F8607C03F8603F067FC01FFC7F8003F01F001B1A7E991E>97 D<07C00000FFC00000FFC000000FC0000007C0000007C0000007C0000007C0000007C0000007C0 000007C0000007C0000007C0000007C0000007C0000007C0000007C3F80007CFFE0007DC1F0007 F0078007E003C007C001E007C001E007C001F007C000F007C000F807C000F807C000F807C000F8 07C000F807C000F807C000F807C000F807C000F007C001F007C001E007C001E007E003C007B007 8007981F00070FFC000603F0001D2A7FA921>I<007FE001FFF807C07C0F00FC1E00FC3E00FC3C 00787C0000780000F80000F80000F80000F80000F80000F80000F80000F800007C00007C00003C 000C3E000C1F00180F803007E06001FFC0007F00161A7E991B>I<00001F000003FF000003FF00 00003F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F 0000001F0000001F0000001F00007E1F0001FF9F0007C0FF000F007F001E003F003C001F003C00 1F007C001F0078001F00F8001F00F8001F00F8001F00F8001F00F8001F00F8001F00F8001F00F8 001F0078001F007C001F003C001F003C001F001E003F000F007F0007C1DF8003FF9FF800FE1FF8 1D2A7EA921>I<007E0003FF800783E00F00F01E00F03C00783C00787C003C78003CF8003CFFFF FCFFFFFCF80000F80000F80000F80000F800007800007C00003C000C3E000C1E00180F803007E0 6001FFC0007F00161A7E991B>I<000F80003FE000F9E001F3F001E3F003E3F007C1E007C0C007 C00007C00007C00007C00007C00007C00007C00007C000FFFE00FFFE0007C00007C00007C00007 C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007 C00007C00007C00007C00007C00007E000FFFF00FFFF00142A7FA912>I<07C00000FFC00000FF C000000FC0000007C0000007C0000007C0000007C0000007C0000007C0000007C0000007C00000 07C0000007C0000007C0000007C0000007C1F80007C7FE0007DC1F0007F81F0007F00F8007E00F 8007E00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C0 0F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F80FFFE7FFCFF FE7FFC1E2A7FA921>104 D<07000F801FC01FC01FC00F80070000000000000000000000000000 00000007C07FC07FC00FC007C007C007C007C007C007C007C007C007C007C007C007C007C007C0 07C007C007C007C007C007C0FFFCFFFC0E2980A810>I<07C0FFC0FFC00FC007C007C007C007C0 07C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007 C007C007C007C007C007C007C007C007C007C007C007C007C0FFFEFFFE0F2A80A910>108 D<07C1FC01FC00FFC7FE07FE00FFCE1F0E1F000FD80F980F8007F007F007C007E007E007C007E0 07E007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007 C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C007C0 07C007C007C007C007C007C007C007C007C007C007C007C007C007C0FFFE7FFE7FFEFFFE7FFE7F FE2F1A7F9932>I<07C1F800FFC7FE00FFDC1F000FF81F0007F00F8007E00F8007E00F8007C00F 8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C0 0F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F80FFFE7FFCFFFE7FFC1E1A7F9921 >I<007F000001FFC00007C1F0000F0078001E003C003C001E003C001E0078000F0078000F00F8 000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F8078000F007C001F00 3C001E003C001E001E003C000F00780007C1F00001FFC000007F0000191A7E991E>I<07C3F800 FFCFFE00FFDC1F0007F0078007E007C007C003E007C001E007C001F007C001F007C000F807C000 F807C000F807C000F807C000F807C000F807C000F807C000F807C001F007C001F007C001E007C0 03E007E007C007F00F8007D83F0007CFFC0007C3F00007C0000007C0000007C0000007C0000007 C0000007C0000007C0000007C0000007C0000007C00000FFFE0000FFFE00001D267F9921>I<07 CF80FFDFE0FFF1E00FE3F007E3F007E3F007C1E007C00007C00007C00007C00007C00007C00007 C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007E000FFFF00FFFF0014 1A7F9917>114 D<07F8C01FFFC03C07C07803C07001C0F000C0F000C0F800C0FC0000FF80007F F8003FFE001FFF000FFF8001FFC0000FE0C003E0C003E0E001E0E001E0E001E0F001C0F803C0FE 0780C7FE0083F800131A7E9918>I<00C00000C00000C00000C00001C00001C00001C00003C000 07C0000FC0001FC000FFFF80FFFF8007C00007C00007C00007C00007C00007C00007C00007C000 07C00007C00007C00007C00007C00007C0C007C0C007C0C007C0C007C0C007C0C007C0C003E180 01E18000FF00007C0012257FA417>I<07C00F80FFC1FF80FFC1FF800FC01F8007C00F8007C00F 8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C00F8007C0 0F8007C00F8007C00F8007C00F8007C00F8007C01F8007C01F8003C03F8001E0EFC000FFCFFC00 7F0FFC1E1A7F9921>II<7FFC3FFC7FFC3FFC07F01FC003F00F0001F00E0000F81C0000FC1800007C3000003E70 00001FE000001FC000000F80000007C0000007E0000007E000000DF000001DF8000038FC000030 7C0000603E0000E03F0001C01F0003C00F800FE01FC0FFF07FFEFFF07FFE1F1A809920>120 DI E /Fz 13 122 df<000000FFC0006000000FFFF800E000003FFFFE01E00000FFC03F01 E00003FC0007C3E00007F00001E7E0001FE00000FFE0003FC000007FE0007F8000003FE000FF00 00001FE001FE0000001FE003FC0000000FE003F800000007E007F800000007E00FF000000003E0 0FF000000003E01FE000000003E01FE000000001E03FE000000001E03FC000000001E07FC00000 0000E07FC000000000E07FC000000000E07FC000000000E0FF800000000000FF800000000000FF 800000000000FF800000000000FF800000000000FF800000000000FF800000000000FF80000000 0000FF800000000000FF800000000000FF800000000000FF800000000000FF8000000000007FC0 00000000007FC000000000E07FC000000000E07FC000000000E03FC000000000E03FE000000000 E01FE000000001E01FE000000001C00FF000000001C00FF000000003C007F8000000038003F800 0000078003FC000000070001FE0000000F0000FF0000001E00007F8000001E00003FC000003C00 001FE00000F8000007F80001F0000003FE0007C0000000FFC03F800000003FFFFE000000000FFF F80000000000FFC00000333D7BBB3E>67 D78 D<007FF0000003FFFE00 000FC01F80000FC00FC0001FE007E0001FE003F0001FE001F8001FE001F8000FC000FC00078000 FC00000000FC00000000FC00000000FC00000000FC0000000FFC000003FFFC00003FF8FC0000FF 80FC0003FC00FC000FF800FC001FE000FC003FE000FC003FC000FC007F8000FC007F8000FC00FF 0000FC0EFF0000FC0EFF0000FC0EFF0001FC0EFF0001FC0EFF8003FC0E7F80037C0E7FC0077E1E 3FC00E3E1C0FF03C3FF803FFF01FF0007FC007C027257DA42B>97 D<0003FC0000001FFF800000 7E07E00001F803F00003F001F80007E000FC000FE0007E001FC0007E001F80007F003F80003F00 3F80003F007F80003F807F00003F807F00003F80FF00003F80FFFFFFFF80FFFFFFFF80FF000000 00FF00000000FF00000000FF00000000FF00000000FF000000007F000000007F000000007F8000 00003F800003803F800003801FC00007800FC00007000FE0000F0007F0001E0001F8003C0000FC 007800003F03E000000FFFC0000001FE000021257EA426>101 D<00000001F00007F007FC003F FE1E3E00FC1FB83E01F80FF07E03F007E03E07E003F03C0FE003F8000FC001F8001FC001FC001F C001FC001FC001FC001FC001FC001FC001FC001FC001FC001FC001FC001FC001FC000FC001F800 0FE003F80007E003F00003F007E00001F80FC00003FC1F8000073FFE00000707F0000006000000 000E000000000E000000000F000000000F00000000078000000007C000000007FFFFC00003FFFF FC0001FFFFFF0000FFFFFFC003FFFFFFE00FC0003FF01F000007F83E000001F87C000001F87C00 0000FCF80000007CF80000007CF80000007CF80000007CF80000007CFC000000FC7C000000F83E 000001F01F000003E00F800007C007E0001F8001FC00FE00003FFFF0000007FF800027387EA52B >103 D<01F800000000FFF800000000FFF800000000FFF80000000007F80000000001F8000000 0001F80000000001F80000000001F80000000001F80000000001F80000000001F80000000001F8 0000000001F80000000001F80000000001F80000000001F80000000001F80000000001F8000000 0001F80000000001F80000000001F80000000001F80000000001F807F8000001F81FFE000001F8 781F800001F8E00FC00001F9C007E00001FB8007E00001FF0003F00001FE0003F00001FC0003F0 0001FC0003F00001FC0003F00001F80003F00001F80003F00001F80003F00001F80003F00001F8 0003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F0 0001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F8 0003F00001F80003F00001F80003F00001F80003F00001F80003F00003FC0007F800FFFFF1FFFF E0FFFFF1FFFFE0FFFFF1FFFFE02B3C7EBB30>I<01F807F80000FFF81FFE0000FFF8781F8000FF F8E00FC00007F9C007E00001FB8007E00001FF0003F00001FE0003F00001FC0003F00001FC0003 F00001FC0003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001 F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003 F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001F80003F00001 F80003F00001F80003F00001F80003F00001F80003F00003FC0007F800FFFFF1FFFFE0FFFFF1FF FFE0FFFFF1FFFFE02B257EA430>110 D<0001FE0000000FFFC000003F03F00000F8007C0001F0 003E0003E0001F0007C0000F800FC0000FC01F800007E03F800007F03F800007F07F000003F87F 000003F87F000003F8FF000003FCFF000003FCFF000003FCFF000003FCFF000003FCFF000003FC FF000003FCFF000003FCFF000003FC7F000003F87F000003F87F000003F83F800007F03F800007 F01F800007E00FC0000FC00FC0000FC007E0001F8001F0003E0000FC00FC00007F03F800001FFF E0000001FE000026257EA42B>I<01F80FF00000FFF87FFE0000FFF9F01F8000FFFBC00FC00003 FF0007F00001FE0003F80001FE0001FC0001FC0001FE0001F80000FE0001F80000FF0001F80000 7F0001F800007F8001F800007F8001F800007F8001F800003FC001F800003FC001F800003FC001 F800003FC001F800003FC001F800003FC001F800003FC001F800003FC001F800003FC001F80000 7F8001F800007F8001F800007F8001F800007F0001F80000FF0001F80000FE0001FC0001FC0001 FE0003FC0001FE0003F80001FF0007E00001FBC00FC00001F9F03F000001F87FFC000001F81FE0 000001F80000000001F80000000001F80000000001F80000000001F80000000001F80000000001 F80000000001F80000000001F80000000001F80000000001F80000000001F80000000001F80000 000003FC00000000FFFFF0000000FFFFF0000000FFFFF00000002A367EA430>I<03F01F80FFF0 7FE0FFF0E3F0FFF1C7F807F387F801F707F801F607F801FE07F801FC03F001FC00C001FC000001 FC000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F80000 01F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F800 0001F8000001F8000003FC0000FFFFF800FFFFF800FFFFF8001D257EA422>114 D<007F818003FFF7800F807F801C001F8038000F8078000F8070000780F0000780F0000380F000 0380F8000380FC000380FE0000007FE000007FFF00003FFFE0001FFFF8000FFFFE0003FFFF0000 FFFF800007FFC000007FC000000FE0E00007E0E00003E0E00003E0F00001E0F00001E0F80001E0 F80001E0FC0003C0FC0003C0FE000780FF000F00F3C03E00E1FFF800C03FC0001B257DA422>I< 003800000038000000380000003800000038000000380000007800000078000000780000007800 0000F8000000F8000001F8000001F8000003F8000007F800001FFFFF00FFFFFF00FFFFFF0001F8 000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001 F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8000001F8038001F80380 01F8038001F8038001F8038001F8038001F8038001F8038001F8038001F8078000FC070000FC07 00007E0E00003F1E00000FFC000003F00019357EB421>I121 D E end %%EndProlog %%BeginSetup %%Feature: *Resolution 300 TeXDict begin @a4 %%EndSetup %%Page: 1 1 bop 531 509 a Fz(Notes)29 b(on)f(Cryptograph)n(y)801 656 y Fy(Charles)20 b(Blair)571 731 y(Business)f(Administration)k(Dept.)708 806 y(Univ)n(ersit)n(y)e(of)f(Illinois)650 881 y(ceblair@ux1.cso.uiuc.edu)711 995 y(c)694 997 y Fx(\015)p Fy(1991)g(b)n(y)g(the)g(author)164 1218 y Fw(Con)n(ten)n(ts)164 1433 y(1)83 b(Encryption)27 b(Systems)164 1543 y Fv(An)13 b(encryption)g(system)g(is)h(a)f(pro)q(cedure)g(whic)o(h)h (tak)o(es)f(the)f(original)k(message)e(\()p Fu(plain-)164 1603 y(text)5 b Fv(\))20 b(and)f(a)g(small)h(piece)f(of)g(information)h(arranged)g (in)f(adv)m(ance)g(b)q(et)o(w)o(een)f(sender)164 1663 y(and)i(receiv)o(er)e (\(the)i Fu(key)t Fv(\))g(and)h(creates)e(an)h(enco)q(ded)g(v)o(ersion)g(of)g (the)f(message)h(\(the)164 1724 y Fu(ciphertext)5 b Fv(\).)237 1809 y(When)15 b(w)o(e)f(are)h(considering)h(the)e(qualit)o(y)i(of)e(an)i (encryption)e(system,)g(w)o(e)h(assume)164 1869 y(the)i(p)q(erson)h(trying)g (to)g(deco)q(de)f(the)h(message)f(kno)o(ws)h(what)g(the)f(general)h (procedure)164 1929 y(is)25 b(and)f(is)h(lo)q(oking)h(at)e(the)g(ciphertext|) f(the)g(only)i(thing)g(he)e(do)q(es)i(not)f(ha)o(v)o(e)f(is)164 1989 y(the)18 b(k)o(ey)l(.)26 b(W)l(e)18 b(also)h(assume)g(the)f(p)q(erson)h (sending)g(messages)g(do)q(es)g(not)f(sp)q(end)h(time)164 2049 y(trying)14 b(to)f(con)o(triv)o(e)g(a)g(di\016cult-to-read)i(message)e(b)o(y) f(using)j(un)o(usual)f(w)o(ords)g(or)f(letter)164 2110 y(frequencies|)i(the)g (sender)g(is)i(coun)o(ting)f(on)g(the)f(system)h(to)f(pro)o(vide)h(all)h(the) f(needed)164 2170 y(securit)o(y)l(.)237 2255 y(Usually)h(one)f(assumes)g(the) f(p)q(erson)i(trying)f(to)g(break)g(the)f(co)q(de)h(is)g(only)h(w)o(orking) 164 2315 y(with)j(the)e(ciphertext.)29 b(Ho)o(w)o(ev)o(er,)18 b(there)g(are)h(situations)i(in)f(whic)o(h)f(b)q(oth)h(plain)o(text)164 2375 y(and)15 b(ciphertext)e(of)h(a)g(previously)i(enco)q(ded)e(message)g (are)g(a)o(v)m(ailable.)22 b(F)l(or)15 b(example,)e(I)164 2435 y(often)e(k)o(eep)f(encrypted)g(v)o(ersions)i(of)f(examinations)i(on)e(a)h (mainframe)f(computer,)g(only)961 2599 y(1)p eop %%Page: 2 2 bop 164 307 a Fv(deco)q(ding)20 b(them)f(just)g(b)q(efore)g(ha)o(ving)h(them) f(prin)o(ted,)h(and)f(deleting)h(the)f(plain)o(text)164 367 y(\014le)14 b(immediately)g(afterw)o(ard.)21 b(If)13 b(a)h(studen)o(t)g(w)o (as)g(able)g(to)g(lo)q(ok)h(at)g(m)o(y)d(\014les,)j(he)e(could)164 428 y(k)o(eep)i(a)i(cop)o(y)f(of)h(the)f(enco)q(ded)h(test)f(and)h(compare)g (this)g(with)g(the)g(test)f(he)g(to)q(ok.)23 b(As)164 488 y(w)o(e)16 b(will)i(see,)d(this)i(ma)o(y)f(b)q(e)g(v)o(ery)g(useful)g(in)h(deco)q(ding)h (future)e(tests.)237 573 y([One)22 b(coun)o(termeasure)h(against)i(this)e(t)o (yp)q(e)g(of)g Fu(known-plaintex)q(t)j(attack)k Fv(is)24 b(to)164 633 y(con)o(tin)o(ually)16 b(c)o(hange)e(k)o(eys,)f(assuming)j(an)f (encryption)f(using)i(one)e(k)o(ey)f(is)i(not)g(helpful)164 693 y(on)i(a)f(di\013eren)o(t)h(k)o(ey)l(.)j(It)c(can)g(b)q(ecome)g (di\016cult)h(to)g(k)o(eep)e(trac)o(k)h(of)g(the)g(di\013eren)o(t)h(k)o(eys) 164 753 y(in)g(use,)f(esp)q(ecially)h(if)g(they)f(are)g(long.])237 839 y(A)e(more)g(demanding)h(standard)h(is)f(that)f(a)h(co)q(de)f(ma)o(y)g(b) q(e)g(safe)h(against)h(a)e Fu(chosen-)164 899 y(plaintext)j(attack)p Fv(.)k(W)l(e)14 b(are)g(imagining)i(that)f(the)e(encryption)h(is)h(done)f(b)o (y)f(a)i(mac)o(hine,)164 959 y(and)21 b(that)g(unauthorized)h(p)q(ersons)g (ma)o(y)e(ha)o(v)o(e)g(access)h(to)g(the)f(mac)o(hine)h(\(although)164 1019 y(w)o(e)d(assume)g(they)g(are)h(only)g(using)g(it)g(in)g(the)f(normal)i (w)o(a)o(y)l(,)e(not)g(allo)o(w)o(ed)i(to)f(tak)o(e)e(it)164 1079 y(apart\).)164 1224 y Ft(Example)22 b(1:)31 b(Simple)20 b(substitution)164 1316 y Fv(This)g(is)h(the)e(simple)h(letter-for-letter)f (metho)q(d)h(found)g(in)g(P)o(o)q(e's)f(\\The)h(Gold)g(Bug")164 1376 y(and)d(man)o(y)f(other)g(stories.)22 b(The)16 b(k)o(ey)g(is)h(a)f (rearrangemen)o(t)g(of)h(the)f(26)h(letters:)640 1474 y Fs(ABCDEFGHIJK)o(LM)o (NOP)o(QRS)o(TU)o(VWX)o(YZ)640 1534 y(actqgwrzdev)o(fb)o(hin)o(sym)o(uj)o (xpl)o(ok)164 1632 y Fv(Using)g(this)g(k)o(ey)l(,)e(the)h(plain)o(text:)281 1730 y Fs(THE)25 b(SECURITY)e(OF)h(THE)h(RSA)g(ENCODING)d(SCHEME)i(RELIES)f (ON)i(THE)281 1790 y(FACT)g(THAT)f(NOBODY)f(HAS)i(BEEN)f(ABLE)g(TO)h (DISCOVER)e(HOW)h(TO)h(TAKE)281 1850 y(CUBE)g(ROOTS)e(MOD)i(N)g(WITHOUT)e (KNOWING)g(NS)i(FACTORS)164 1948 y Fv(b)q(ecomes)16 b(the)g(ciphertext:)281 2046 y Fs(UZG)25 b(MGTJYDUO)e(IW)h(UZG)h(YMA)g(GHTIQDHR)d(MTZGBG)i(YGFDGM)f (IH)i(UZG)281 2106 y(WATU)g(UZAU)f(HICIQO)f(ZAM)i(CGGH)f(ACFG)g(UI)h (QDMTIXGY)e(ZIP)h(UI)h(UAVG)281 2166 y(TJCG)g(YIIUM)e(BIQ)i(H)g(PDUZIJU)e (VHIPDHR)g(HM)i(WATUIYM)164 2267 y Fv(The)18 b(messages)h(can)g(b)q(e)f(made) h(harder)f(to)h(deco)q(de)g(\(but)f(also)i(harder)f(to)g(read!\))27 b(b)o(y)164 2328 y(lea)o(ving)17 b(out)g(the)f(spaces)h(b)q(et)o(w)o(een)e(w) o(ords.)237 2413 y(Most)20 b(messages)f(can)g(b)q(e)h(deco)q(ded)f(b)o(y)f (lo)q(oking)k(for)d(frequen)o(tly)f(o)q(ccuring)j(pairs)164 2473 y(of)16 b(letters)g(\()p Fs(TH)g Fv(and)g Fs(HE)g Fv(are)g(b)o(y)f(far)h (the)g(most)g(common\),)g(using)h(these)f(to)g(iden)o(tify)h(a)961 2599 y(2)p eop %%Page: 3 3 bop 164 307 a Fv(few)16 b(letters)g(to)h(b)q(egin,)g(and)g(\014lling)i(in)e (the)f(remaining)h(letters)g(one)f(at)h(a)f(time)h(\(\\The)164 367 y(Gold)h(Bug")e(giv)o(es)h(a)f(go)q(o)q(d)j(description,)e(as)g(do)f(man) o(y)g(b)q(o)q(oks\).)237 452 y(In)f(a)h(kno)o(wn-plain)o(text)h(situation,)g (the)e(whole)i(co)q(de)e(is)i(obtained)f(almost)h(imme-)164 513 y(diately)l(.)k(Ho)o(w)o(ev)o(er,)13 b(in)h(our)h(example,)f(the)g (letters)g Fs(J)p Fv(,)f Fs(P)p Fv(,)h(and)g(others)h(do)f(not)h(o)q(ccur)f (in)164 573 y(the)h(plain)o(text,)h(so)h(w)o(e)e(could)i(not)f(tell)g(ho)o(w) g(they)f(are)h(enco)q(ded.)21 b(If)16 b(w)o(e)f(w)o(ere)g(allo)o(w)o(ed)164 633 y(a)i(c)o(hosen)f(plain)o(text,)g(w)o(e)g(w)o(ould)h(use)g(all)g(the)f (letters)h(to)f(get)g(the)g(en)o(tire)g(k)o(ey)l(.)164 777 y Ft(Example)22 b(2:)31 b(The)22 b(Vigen)o(\022)-33 b(ere)22 b(cipher)f(and)j(one-time)d(pads)164 870 y Fv(This)16 b(cipher)f(w)o(orks)g (b)o(y)f(replacing)i(eac)o(h)f(letter)f(b)o(y)h(another)g(letter)g(a)g(sp)q (eci\014ed)g(n)o(um-)164 930 y(b)q(er)g(of)g(p)q(ositions)j(further)d(in)h (the)e(alphab)q(et.)23 b(F)l(or)15 b(example)g Fs(J)f Fv(is)i(5)f(p)q (ositions)j(further)164 990 y(than)d Fs(E)p Fv(.)f Fs(D)g Fv(is)i(5)f(p)q (ositions)j(after)c Fs(Y)p Fv(.)g(\()p Fs(Y,Z,A,B,C,)o(D)p Fv(\))e(The)i(k)o(ey)g(is)h(a)h(sequence)d(of)i(shift)164 1050 y(amoun)o(ts.)34 b(If)19 b(the)h(sequence)g(is)h(of)f(length)h(10,)h(the)e (1st,)h(11th,)h(21st,)g Fr(:)8 b(:)g(:)f Fv(letters)21 b(of)164 1111 y(the)e(plain)o(text)h(are)g(pro)q(cessed)g(using)h(the)e(\014rst)h(mem) o(b)q(er)e(of)i(the)f(k)o(ey)l(.)30 b(The)20 b(second)164 1171 y(mem)o(b)q(er)d(of)i(the)f(k)o(ey)f(pro)q(cesses)i(plain)o(text)g(letters)g (2,)g(12,)g(22,)h Fr(:)8 b(:)g(:)f Fv(and)19 b(so)g(forth.)28 b(If)164 1231 y(w)o(e)16 b(omit)h(spaces)f(from)g(the)g(plain)o(text)h(on)g (page)g Fq(??)g Fv(and)g(use)f(the)g(k)o(ey-sequence:)705 1341 y(3)h(1)f(7)h(23)g(10)g(5)g(19)g(14)g(19)g(24)164 1451 y(w)o(e)f(obtain)422 1539 y Fs(WILPOHNFBR)22 b(BPMQRJKGTC)g(QDVASSZGVF)422 1599 y(HNLOOQBSLM)g(QUOBPFVHMF)g(DUULLTWMAY)g(VCLBXFUZXR)422 1659 y(REPPMTOSKF)g(RXALDFDSVS)g(EFYLYYLAHB)g(QXPQRTNHDL)422 1719 y(RXPKQSLTTA)g(WPYP)164 1820 y Fv(\(W)l(e)d(ha)o(v)o(e)f(divided)i(the)f (ciphertext)g(in)o(to)g(groups)i(of)e(ten)g(letters)g(for)h(con)o(v)o (enience.)164 1881 y(The)c(division)j(in)o(to)e(lines)g(is)g(arbitrary)l(.\)) 237 1966 y(This)f(t)o(yp)q(e)f(of)g(cipher)g(w)o(as)h(considered)f(v)o(ery)f (secure)g(at)i(one)f(time)g(\()p Fp(\030)e Fv(1600\),)k(but)164 2026 y(is)e(not)g(really)g(di\016cult.)21 b(Supp)q(ose)16 b(w)o(e)e(guess)h (that)f(the)h(\014rst)f(letter)g(is)i Fs(T)p Fv(.)d(This)j(implies)164 2086 y(the)h(elev)o(en)o(th)g(letter)g(is)i Fs(Y)p Fv(,)e(the)g(21st)i (letter)e(is)h Fs(N)p Fv(,)f(etc.)25 b(No)o(w)17 b(lo)q(ok)j(at)e(the)f(t)o (w)o(o-letter)164 2146 y(com)o(binations)h(that)f(o)q(ccur)f(from)g (di\013eren)o(t)h(p)q(ossiblili)q(ties)i(for)e(the)f(second)g(letter:)961 2599 y(3)p eop %%Page: 4 4 bop 222 308 a Fs(TI)25 b(YP)g(ND)g(EN)g(NU)g(AU)f(SC)h(OE)g(OX)g(BF)g(NX)g (OX)g(TP)48 b Fv(\(no)17 b(shift)g(of)f(2nd)h(letter\))222 368 y Fs(TJ)25 b(YQ)g(NE)g(EO)g(NV)g(AV)f(SD)h(OF)g(OY)g(BG)g(NY)g(OY)g(TQ) 222 428 y(TK)g(YR)g(NF)g(EP)g(NW)g(AW)f(SE)h(OG)g(OZ)g(BH)g(NZ)g(OZ)g(TR)222 488 y(TL)g(YS)g(NG)g(EQ)g(NX)g(AX)f(SF)h(OH)g(OA)g(BI)g(NA)g(OA)g(TS)271 549 y Fv(\(skipping)18 b(o)o(v)o(er)d(some)h(in)h(the)f(middle\))222 609 y Fs(TF)25 b(YM)g(NA)g(EK)g(NR)g(AR)f(SZ)h(OB)g(OU)g(BE)g(NU)g(OU)g(TM) 222 669 y(TG)g(YN)g(NB)g(EL)g(NS)g(AS)f(SA)h(OC)g(OV)g(BD)g(NV)g(OV)g(TN)222 729 y(TH)g(YO)g(NC)g(EM)g(NT)g(AT)f(SB)h(OD)g(OW)g(BE)g(NW)g(OW)g(TO)164 821 y Fv(The)20 b(last)h(line)g(is)g(the)f(\\righ)o(t)h(answ)o(er.")33 b(Although)21 b(it)f(sho)o(ws)h(sev)o(eral)f(bad)h(com)o(bi-)164 881 y(nations)f(\()p Fs(NC)25 b(NT)g(SB)g(NW)p Fv(\),)18 b(mostly)h(caused)g (b)o(y)f(the)g(last)i(letter)f(of)g(one)g(w)o(ord)g(b)q(eing)164 941 y(adjacen)o(t)g(to)g(the)g(\014rst)g(letter)g(of)g(the)g(next)f(w)o(ord,) i(it)f(lo)q(oks)i(b)q(etter)e(than)g(the)g(other)164 1002 y(p)q(ossible)d(ro) o(ws.)21 b(Once)14 b(the)g(second)g(letter)g(has)h(b)q(een)f(iden)o (ti\014ed,)h(the)f(same)g(approac)o(h)164 1062 y(can)i(b)q(e)g(used)g(to)g (get)g(the)g(third)h(letter.)k(This)c(approac)o(h)f(is)h(easily)g(automated)g (using)164 1122 y(a)g(table)g(of)f(digrams.)237 1205 y(It)e(is)h(necessary)e (to)i(kno)o(w)f(the)g(\014rst)g(letter)g(and)h(the)e(length)i(of)g(the)e(k)o (ey-sequence.)164 1265 y(If)j(w)o(e)f(assume)i(the)f(length)h(is)f(not)h(to)q (o)g(large,)g(a)f(program)h(can)g(just)f(try)g(all)i(p)q(ossibil-)164 1325 y(ities,)f(ev)o(en)o(tually)f(c)o(ho)q(osing)i(the)e(plain)o(text)h (whic)o(h)f(lo)q(oks)i(b)q(est.)1368 1307 y Fo(1)164 1454 y Fq(One-time)g(pads)164 1569 y Fv(A)d(long)h(k)o(ey-sequence)e(mak)o(es)g (this)i(approac)o(h)g(more)f(di\016cult,)h(since)g(w)o(e)e(ha)o(v)o(e)h(few)o (er)164 1629 y(ro)o(ws.)27 b(The)19 b(extreme)d(case)i(is)h(that)g(in)g(whic) o(h)f(the)g(k)o(ey-sequence)e(is)j(as)g(long)g(as)g(the)164 1690 y(plain)o(text)j(itself.)37 b(This)22 b(leads)g(to)g(a)g(theoretically)g Fu(unbr)n(e)n(akable)k Fv(cipher.)37 b(F)l(or)21 b(an)o(y)164 1750 y(p)q(ossible)f(plain)o(text,)d(there)g(is)h(a)g(k)o(ey)e(for)i(whic)o (h)g(the)f(giv)o(en)g(ciphertext)g(comes)g(from)164 1810 y(that)g(plain)o (text.)237 1893 y(This)24 b(t)o(yp)q(e)f(of)g(cipher)g(has)h(rep)q(ortedly)f (b)q(een)g(used)g(b)o(y)g(spies,)i(who)e(w)o(ere)g(fur-)164 1953 y(nished)h(with)g(noteb)q(o)q(oks)h(con)o(taining)h(page)e(after)f(page) h(of)g(randomly)g(generated)164 2013 y(k)o(ey-sequence.)19 b(Notice)14 b(that)h(it)h(is)f(essen)o(tial)h(that)f(eac)o(h)g(k)o (ey-sequence)d(b)q(e)j(used)g(only)164 2073 y(once)i(\(hence)g(the)g(name)g (of)h(the)f(system\).)24 b(Otherwise)18 b(the)f(approac)o(h)i(for)e(Vigen)o (\022)-23 b(ere)164 2134 y(systems)21 b(describ)q(ed)h(ab)q(o)o(v)o(e)f (could)h(b)q(e)g(tried,)g(since)g(w)o(e)e(w)o(ould)j(ha)o(v)o(e)d(at)i(least) g(t)o(w)o(o)164 2194 y(ro)o(ws)17 b(to)f(w)o(ork)h(with.)237 2277 y(One-time)f(pads)h(seem)e(practical)i(in)g(situations)h(where)e(one)g (agen)o(t)g(is)h(comm)o(uni-)164 2337 y(cating)d(with)g(a)f(cen)o(tral)g (command.)20 b(They)13 b(b)q(ecome)g(less)g(attractiv)o(e)g(if)h(sev)o(eral)e (agen)o(ts)p 164 2379 648 2 v 220 2409 a Fn(1)239 2424 y Fm(Mik)o(e)g (Mendelson,)i(a)f(studen)o(t)h(in)e(this)h(course)i(in)d(1989,)g(wrote)i(a)e (program)g(to)h(implem)o(en)o(t)e(this)164 2474 y(algorithm.)961 2599 y Fv(4)p eop %%Page: 5 5 bop 164 307 a Fv(ma)o(y)19 b(need)f(to)i(comm)o(unicate)f(with)h(eac)o(h)e (other.)31 b(The)19 b(one-time)g(feature)g(is)h(lost)g(if)164 367 y(X)h(and)i(Y)e(inadv)o(erten)o(tly)h(use)g(the)f(same)h(page)h(to)f (talk)g(as)h(W)f(and)g(Z)g(are)g(using.)164 428 y(Also)c(capture)f(of)h(X's)f (equipmen)o(t)g(mak)o(es)f(it)i(p)q(ossible)i(to)e(o)o(v)o(erhear)f(a)g(con)o (v)o(ersation)164 488 y(b)q(et)o(w)o(een)e(Y)h(and)h(Z.)164 630 y Ft(Example)22 b(3:)31 b(A)23 b(T)-6 b(ransp)r(osition)23 b(System)164 723 y Fv(In)13 b(this)h(system,)f(w)o(e)g(will)i(assume)e(ev)o (ery)f(line)i(of)g(the)f(message)g(is)h(63)g(c)o(haracters)f(long.)164 783 y(The)k(k)o(ey)f(is)h(a)h(p)q(erm)o(utation)g(of)f(the)g(n)o(um)o(b)q (ers)f(from)h(1)g(to)h(63,)f(and)h(eac)o(h)e(line)i(of)f(the)164 843 y(plain)o(text)g(is)h(rearranged)f(using)h(the)e(p)q(erm)o(utation)i(to)f (pro)q(duce)g(the)f(corresp)q(onding)164 903 y(ciphertext.)21 b(F)l(or)16 b(example)g(if)h(the)f(k)o(ey)f(is)721 1002 y(1)h(11)h(21)8 b Fr(:)g(:)g(:)h Fv(61)17 b(8)g(18)8 b Fr(:)g(:)g(:)g Fv(54)164 1100 y(\(w)o(e)18 b(w)o(ould)h(really)g(w)o(an)o(t)f(to)g(use)g(a)h(more)f (complicated)h(p)q(erm)o(utation\))g(and)f(w)o(e)g(use)164 1160 y(the)e(same)g(plain)o(text)h(as)g(in)g(the)f(previous)h(t)o(w)o(o)f (examples,)g(w)o(e)g(obtain:)189 1298 y Fs(TTRNRT)23 b(UHOMO)h(SFECE)g (HYSGEH)f(REDEN)h(E)h(NHS)g(E)g(A)g(LE)g(I)h(I)76 b(CTCE)g(O)25 b(SI)189 1358 y(FN)50 b(ET)25 b(AHBCT)50 b(DNDO)24 b(AOBTRA)f(TALOO)h(TY)h (IW)g(CBEO)f(K)51 b(SEV)f(H)25 b(AS)51 b(TOE)24 b(HE)189 1418 y(C)h(HNO)50 b(OWOA)127 b(S)51 b(UMOGR)e(TIWC)h(RNK)76 b(BOU)24 b(S)51 b(STIT)f(O)25 b(NF)51 b(EDTN)164 1507 y Fv(W)l(e)17 b(are)g(using)i(the)e(v)o(ersion)g(of)h(the)f(plain)o(text)h(including)h (blanks.)25 b(The)18 b(second)f(line)164 1567 y(of)g(the)f(plain)o(text)g (has)h(55)g(c)o(haracters,)f(so)h(w)o(e)f(add)h(8)f(blanks)i(on)e(the)g(end.) 237 1648 y(One)21 b(metho)q(d)g(of)g(deco)q(ding)h(lo)q(oks)g(at)g(a)f (column)g(of)g(the)g(ciphertext)f(and)h(asks)164 1709 y(what)e(other)f (column)h(could)g(immediately)f(follo)o(w)i(it.)28 b(F)l(or)18 b(example,)g(it)h(is)g(p)q(ossible)164 1769 y(that)13 b(the)g(column)g(follo) o(wing)i Fs(OBO)d Fv(\(the)h(ten)o(th)f(ciphertext)g(column\))h(is)h Fs(UAO)d Fv(\(the)i(8th\),)164 1829 y(but)j(the)g(column)h Fs(TFC)e Fv(w)o(ould)j(yield)e(the)g(improbable)i(t)o(w)o(o-letter)e(com)o (bination)i Fs(BF)p Fv(.)237 1911 y(As)f(alw)o(a)o(ys,)h(a)g(longer)g (message)f(is)h(easier)g(to)f(deco)q(de.)24 b(Unlik)o(e)17 b(simple)h(substitu-)164 1971 y(tion,)f(it)g(seems)e(that)i(blanks)g(mak)o(e) f(the)g(deco)q(ding)h(pro)q(cess)g(more)f(di\016cult.)237 2053 y(What)i(ab)q(out)h(a)f(kno)o(wn-plain)o(text)g(attac)o(k?)25 b(Since)17 b(there)g(is)h(only)h(one)e(Y)g(in)h(the)164 2113 y(\014rst)24 b(line)g(of)g(the)f(plain)o(text,)i(w)o(e)e(can)h(tell)g(that)g (column)g(12)g(of)g(the)f(plain)o(text)h(is)164 2173 y(column)16 b(21)h(of)f(the)f(ciphertext,)g(but)h(there)f(are)g(other)h(things)h(w)o(e)f (can't)f(tell.)22 b(In)15 b(this)164 2233 y(example,)22 b(there)e(are)i(8)f (columns)h(of)g(three)e(blanks)j(at)e(the)g(end)g(of)h(the)f(plain)o(text,) 164 2293 y(and)g(w)o(e)e(can't)h(b)q(e)g(sure)g(whic)o(h)g(of)h(these)e (corresp)q(onds)j(to)e(whic)o(h)g(of)h(the)e(all-blank)164 2354 y(ciphertext)13 b(columns.)21 b(\(it)15 b(do)q(esn't)f(matter)g(for)g (this)h(message,)f(but)g(w)o(e)g(w)o(ould)g(lik)o(e)h(to)164 2414 y(kno)o(w)h(the)g(en)o(tire)g(k)o(ey)f(to)h(deal)h(with)g(longer)g (plain)o(texts)g(in)g(the)f(future\))g(A)f(carefully)164 2474 y(c)o(hosen)h(plain)o(text)h(can)f(giv)o(e)h(us)f(the)g(en)o(tire)g(k)o(ey)f (at)i(once.)961 2599 y(5)p eop %%Page: 6 6 bop 164 315 a Fw(2)83 b(In)n(tro)r(duction)28 b(to)g(Num)n(b)r(er)d(Theory) 164 440 y Ft(2.1)70 b(Congruences)164 532 y Fv(The)16 b(congruence)f Fr(a)f Fp(\021)f Fr(b)j Fv(mo)q(d)h Fr(n)f Fv(\(\\)p Fr(a)f Fv(is)i(congruen)o(t)e(to)h Fr(b)g Fv(mo)q(d)g Fr(n)p Fv("\))g(sa)o(ys)g (that,)g(when)164 592 y(divided)h(b)o(y)f Fr(n)p Fv(,)g Fr(a)g Fv(and)g Fr(b)g Fv(ha)o(v)o(e)g(the)g(same)g(remainder.)568 692 y(100)f Fp(\021)e Fv(34)k(mo)q(d)g(11)109 b Fp(\000)11 b Fv(6)j Fp(\021)g Fv(10)j(mo)q(d)g(8)164 792 y(In)i(the)h(second)g (congruence,)g(w)o(e)f(are)h(using)h Fp(\000)p Fv(6)f(=)g(8\()p Fp(\000)p Fv(1\))14 b(+)f(2.)33 b(W)l(e)19 b(alw)o(a)o(ys)i(ha)o(v)o(e)164 852 y Fr(a)13 b Fp(\021)h Fr(b)i Fv(mo)q(d)h Fr(n)d Fv(for)h(some)f(0)g Fp(\024)g Fr(b)f Fp(\024)h Fr(n)7 b Fp(\000)g Fv(1,)15 b(and)f(w)o(e)g(are)h (usually)h(concerned)d(with)i(that)164 912 y Fr(b)p Fv(.)21 b(If)16 b Fr(a)d Fp(\021)h Fr(b)i Fv(mo)q(d)g Fr(n)h Fv(and)g Fr(c)c Fp(\021)h Fr(d)p Fv(,)i(w)o(e)g(can)g(add)h(or)g(m)o(ultiply)550 1012 y Fr(a)11 b Fv(+)g Fr(c)j Fp(\021)f Fr(b)e Fv(+)g Fr(d)17 b Fv(mo)q(d)g Fr(n)97 b(ac)14 b Fp(\021)f Fr(bd)k Fv(mo)q(d)f Fr(n)164 1112 y Fv(Division)j(do)q(es)e(not)f(alw)o(a)o(ys)h(w)o(ork:)22 b(6)14 b Fp(\021)f Fv(18)k(mo)q(d)g(12)g(but)g(3)d Fp(6\021)f Fv(9.)164 1255 y Ft(2.2)70 b(The)22 b(Greatest)g(Common)g(Divisor)164 1347 y Fv(F)l(or)c Fr(a)g Fv(and)h Fr(b)p Fv(,)f(the)g(n)o(um)o(b)q(er)g(\()p Fr(a;)8 b(b)p Fv(\))17 b(is)i(the)f(largest)i(n)o(um)o(b)q(er)d(whic)o(h)i (divides)g Fr(a)f Fv(and)h Fr(b)164 1408 y Fv(ev)o(enly)l(.)641 1468 y(\(56)p Fr(;)8 b Fv(98\))15 b(=)f(14)98 b(\(76)p Fr(;)8 b Fv(190\))16 b(=)d(38)164 1561 y Fq(Theorem)18 b(1)24 b Fu(F)l(or)17 b(any)g Fr(a;)8 b(b)17 b Fu(ther)n(e)g(ar)n(e)g(inte)n(gers)h Fr(x;)8 b(y)19 b Fu(with)f Fr(ax)10 b Fv(+)h Fr(by)k Fv(=)f(\()p Fr(a;)8 b(b)p Fv(\))164 1654 y(Pro)q(of:)38 b(The)24 b(equation)h(can)f(b)q (e)g(solv)o(ed)h(b)o(y)e(making)i(a)f(sequence)f(of)i(simplifying)164 1714 y(substitutions:)620 1814 y(30)p Fr(x)11 b Fv(+)g(69)p Fr(y)44 b Fv(=)d(3)632 1887 y(30)p Fr(x)708 1866 y Fl(0)732 1887 y Fv(+)11 b(9)p Fr(y)43 b Fv(=)e(3)50 b([)p Fr(x)1067 1866 y Fl(0)1091 1887 y Fv(=)14 b Fr(x)d Fv(+)g(2)p Fr(y)r Fv(])645 1959 y(3)p Fr(x)697 1939 y Fl(0)720 1959 y Fv(+)g(9)p Fr(y)819 1939 y Fl(0)872 1959 y Fv(=)41 b(3)50 b([)p Fr(y)1065 1939 y Fl(0)1089 1959 y Fv(=)14 b Fr(y)f Fv(+)e(3)p Fr(x)1279 1939 y Fl(0)1290 1959 y Fv(])635 2032 y(3)p Fr(x)687 2011 y Fl(00)720 2032 y Fv(+)g(0)p Fr(y)819 2011 y Fl(0)872 2032 y Fv(=)41 b(3)50 b([)p Fr(x)1067 2011 y Fl(00)1101 2032 y Fv(=)14 b Fr(x)1181 2011 y Fl(0)1203 2032 y Fv(+)d(3)p Fr(y)1302 2011 y Fl(0)1314 2032 y Fv(])164 2132 y(It)j(is)i(easy)f(to)g(see)g(that)g Fr(x)637 2114 y Fl(00)672 2132 y Fv(=)e(1,)i Fr(y)802 2114 y Fl(0)827 2132 y Fv(=)f(0)h(is)h(a)f(solution)i(to)f(the)e(\014nal)i (equation)g(and)f(w)o(e)164 2192 y(get)h(a)h(solution)h(to)f(the)f(original)j (equation)e(b)o(y)f(w)o(orking)h(bac)o(kw)o(ards:)384 2292 y Fr(x)412 2271 y Fl(0)437 2292 y Fv(=)d Fr(x)517 2271 y Fl(00)549 2292 y Fp(\000)d Fv(3)p Fr(y)649 2271 y Fl(0)674 2292 y Fv(=)j(1)49 b Fr(y)15 b Fv(=)f Fr(y)916 2271 y Fl(0)938 2292 y Fp(\000)d Fv(3)p Fr(x)1040 2271 y Fl(0)1066 2292 y Fv(=)j Fp(\000)p Fv(3)49 b Fr(x)13 b Fv(=)h Fr(x)1351 2271 y Fl(0)1373 2292 y Fp(\000)d Fv(2)p Fr(y)16 b Fv(=)e(7)237 2414 y(W)l(e)j(could)i(also)g(solv)o(e)e(an)h (equation)h(lik)o(e)e(30)p Fr(x)c Fv(+)f(69)p Fr(y)18 b Fv(=)e(15)i(b)o(y)f (m)o(ultiplying)i(our)164 2474 y(solution:)k Fr(y)16 b Fv(=)d Fp(\000)p Fv(15,)j Fr(x)e Fv(=)g(35.)21 b(It)16 b(should)h(b)q(e)f(clear)g (that)g(the)f(equation)i(will)h(ha)o(v)o(e)c(no)961 2599 y(6)p eop %%Page: 7 7 bop 164 307 a Fv(solution)21 b(in)e(in)o(tegers)g(if)g(15)g(is)h(replaced)e (b)o(y)g(something)i(that)f(is)g(not)g(a)g(m)o(ultiple)h(of)164 367 y(\(30)p Fr(;)8 b Fv(69\))15 b(=)f(3.)237 447 y(All)f(other)g(in)o(teger) g(solutions)i(of)d(30)p Fr(x)s Fv(+)s(69)p Fr(y)18 b Fv(=)c(15)f(ma)o(y)f(b)q (e)h(obtained)h(b)o(y)e(c)o(hanging)164 507 y(the)k(\014rst)h(solution:)501 607 y Fr(y)e Fv(=)f Fp(\000)p Fv(15)e(+)745 574 y(30)p 745 596 49 2 v 757 642 a(3)798 607 y Fr(t)49 b(x)13 b Fv(=)h(35)e Fp(\000)1073 574 y Fv(69)p 1073 596 V 1085 642 a(3)1126 607 y Fr(t)49 b Fv(for)16 b Fr(t)g Fv(in)o(teger)237 730 y(If)21 b(w)o(e)g(do)h(the)f(pro)q(cess)h(illustrated)h(on)f(the)f(previous)h(page)g (for)g(an)o(y)f(equation)164 790 y Fr(ax)t Fv(+)t Fr(by)14 b Fv(=)g(\()p Fr(a;)8 b(b)p Fv(\),)k(w)o(e)g(ev)o(en)o(tually)g(get)h(one)g (of)g(the)f(co)q(e\016cien)o(ts)g(as)i(zero)e(and)h(the)g(other)164 850 y(as)i(\()p Fr(a;)8 b(b)p Fv(\).)20 b([In)14 b(fact,)h(this)h(pro)q(cess) f(is)h(usually)g(presen)o(ted)e(as)i(\\Euclid's)g(algorithm)h(for)164 911 y(\014nding)h(the)e(greatest)g(common)g(divisor."])237 990 y(It)f(is)i(imp)q(ortan)o(t)g(that)f(this)h(pro)q(cess)f(is)h(feasible)f ([on)g(a)g(computer])f(ev)o(en)g(if)h Fr(a)f Fv(and)164 1050 y Fr(b)k Fv(are)g(sev)o(eral)g(h)o(undred)g(digits)i(long.)32 b(It)19 b(is)h(easy)f(to)h(sho)o(w)g(that)f(the)g(larger)i(of)e(the)164 1111 y(t)o(w)o(o)d(co)q(e\016cien)o(ts)g(decreases)g(b)o(y)g(at)h(least)h(1)p Fr(=)p Fv(2)f(ev)o(ery)e(t)o(w)o(o)h(equations,)i(hence)d(that)i(in)164 1171 y(t)o(w)o(en)o(t)o(y)h(equations)k(the)e(larger)h(co)q(e\016cien)o(t)e (has)i(decreased)f(b)o(y)f(2)1420 1153 y Fl(\000)p Fo(10)1506 1171 y Fr(<)h Fv(10)1612 1153 y Fl(\000)p Fo(3)1660 1171 y Fv(,)h(so)g(a)164 1231 y(600-digit)c(n)o(um)o(b)q(er)d(w)o(ould)h(not)g (require)f(more)g(than)h(4000)h(equations.)22 b([this)15 b(analysis)164 1291 y(can)h(b)q(e)h(impro)o(v)o(ed])237 1371 y(W)l(e)d(p)q(oin)o(ted)i(out)f (earlier)g(that)g(division)i(do)q(es)f(not)f(w)o(ork)f(with)i(congruences.)k (An)164 1431 y(imp)q(ortan)o(t)14 b(application)h(of)f(Theorem)e Fq(??)21 b Fv(is)14 b(that)f(it)h(do)q(es)f(w)o(ork)g(for)g(prime)g(n)o(um)o (b)q(ers.)164 1516 y Fq(Corollary)20 b(2)k Fu(If)17 b(p)f(is)h(a)g(prime)f (numb)n(er,)h Fr(ar)e Fp(\021)f Fr(as)j Fu(mo)n(d)f Fr(p)h Fu(and)g Fr(a)d Fp(6\021)f Fv(0)p Fu(,)18 b(then)f Fr(r)e Fp(\021)f Fr(s)p Fu(.)164 1601 y Fv(Pro)q(of:)26 b(Since)18 b Fr(p)g Fv(is)h(a)f(prime,)g(\()p Fr(a;)8 b(p)p Fv(\))16 b(=)h(1,)h(so)h(Theorem)e Fq(??)28 b Fv(sa)o(ys)18 b(there)f(are)h(in)o(teger)164 1661 y Fr(x;)8 b(y)17 b Fv(with)g Fr(ax)11 b Fv(+)g Fr(py)16 b Fv(=)e(1.)21 b(Hence)316 1752 y Fr(ax)13 b Fp(\021)h Fv(1)i(mo)q(d)h Fr(p)49 b Fv(and)h Fr(r)15 b Fp(\021)e Fv(\(1\))p Fr(r)j Fp(\021)e Fr(axr)g Fp(\021)g Fr(xar)g Fp(\021)g Fr(xas)f Fp(\021)g Fr(s)k Fv(mo)q(d)f Fr(p)164 1842 y Fq(Corollary)k(3)k Fu(If)17 b(p)f(is)h(a)f(prime) g(numb)n(er)h(and)g Fr(a)d Fp(6\021)f Fv(0)k Fu(mo)n(d)f Fr(p)p Fu(,)h(then)h(for)e(any)g Fr(b)p Fu(,)h(ther)n(e)164 1902 y(is)g Fr(y)i Fu(with)f Fr(ay)d Fp(\021)f Fr(b)j Fu(mo)n(d)g Fr(p)p Fu(.)164 1987 y Fv(Pro)q(of:)22 b(W)l(e)14 b(sho)o(w)o(ed)h(in)h(the)e (preceding)h(pro)q(of)h(that)g(there)e(is)h Fr(x)g Fv(with)h Fr(ax)d Fp(\021)g Fv(1)k(mo)q(d)g Fr(p)p Fv(.)164 2048 y(Let)f Fr(y)g Fv(=)e Fr(bx)p Fv(.)164 2133 y Fq(Corollary)20 b(4)f(\(The)f (\\Chinese)h(Remainder)f(Theorem"\))23 b Fu(If)15 b Fv(\()p Fr(p;)8 b(q)r Fv(\))13 b(=)h(1)p Fu(,)i(then)164 2193 y(for)h(any)g Fr(a;)8 b(b)p Fu(,)17 b(ther)n(e)g(is)g(an)h Fr(n)g Fu(with)620 2283 y Fr(n)c Fp(\021)g Fr(a)j Fu(mo)n(d)g Fr(p)50 b Fu(and)g Fr(n)14 b Fp(\021)f Fr(b)18 b Fu(mo)n(d)e Fr(q)164 2374 y Fv(Pro)q(of:)22 b(Theorem)16 b Fq(??)23 b Fv(implies)17 b(there)f(are)g(in)o(tegers)h Fr(x;)8 b(y)17 b Fv(suc)o(h)f(that)601 2464 y Fr(px)11 b Fv(+)g Fr(a)j Fv(=)f Fr(q)r(y)f Fv(+)f Fr(b)49 b Fv(so)17 b(let)f Fr(n)e Fv(=)g Fr(px)d Fv(+)g Fr(a)961 2599 y Fv(7)p eop %%Page: 8 8 bop 164 307 a Ft(2.3)70 b(P)n(o)n(w)n(ers)23 b(mo)r(dulo)f(a)h(prime)164 400 y Fv(The)16 b(sequence)738 460 y Fr(a)48 b(a)838 439 y Fo(2)907 460 y Fr(a)933 439 y Fo(3)960 460 y Fr(:)8 b(:)g(:)57 b Fv(mo)q(d)16 b Fr(p)164 545 y Fv(has)j(man)o(y)e(applications)k(in)e (cryptograph)o(y)l(.)26 b(Before)17 b(lo)q(oking)k(at)d(theoretical)h(prop-) 164 605 y(erties,)14 b(the)g(example)g(b)q(elo)o(w)h(\(done)f(using)h(a)g(p)q (o)q(c)o(k)o(et)e(calculator\))j(should)g(mak)o(e)d(clear)164 665 y(that)21 b(it)g(is)g(practical)h(to)f(compute)f(these)h(n)o(um)o(b)q (ers,)f(ev)o(en)g(when)g(man)o(y)g(digits)j(are)164 725 y(in)o(v)o(olv)o(ed.) 237 809 y(Supp)q(ose)17 b(w)o(e)f(w)o(an)o(t)g(to)g(compute)g(432)948 791 y Fo(678)1020 809 y Fv(mo)q(d)h(987.)22 b(The)16 b(basic)h(tric)o(k)f(is) h(to)f(start)164 869 y(with)h(a)g(n)o(um)o(b)q(er)e(and)i(k)o(eep)e (squaring:)164 974 y(432)236 953 y Fo(2)271 974 y Fv(=)f(186624)i Fp(\021)e Fv(81)49 b(432)705 953 y Fo(4)740 974 y Fp(\021)13 b Fv(81)840 953 y Fo(2)875 974 y Fp(\021)g Fv(639)50 b(432)1121 953 y Fo(8)1156 974 y Fp(\021)14 b Fv(639)1281 953 y Fo(2)1315 974 y Fp(\021)g Fv(690)8 b Fr(:)g(:)g(:)h Fv(432)1587 953 y Fo(512)1657 974 y Fp(\021)k Fv(858)164 1078 y(Since)j(678)f(=)f(512)e(+)f (128)i(+)e(32)g(+)g(4)h(+)f(2,)473 1183 y(432)545 1162 y Fo(678)615 1183 y Fp(\021)i Fv(\(81\)\(639\))8 b Fr(:)g(:)g(:)i Fv(\(858\))15 b Fp(\021)e Fv(204)99 b(\(I)16 b(hop)q(e!\))164 1288 y(Calculations)26 b(with)e(exp)q(onen)o(ts)g(in)o(v)o(olv)o(e)f(not-to)q(o-man)o(y)h(m)o (ultiplications.)45 b(If)23 b(the)164 1348 y(n)o(um)o(b)q(ers)11 b(ha)o(v)o(e)f(sev)o(eral)h(h)o(undred)g(digits,)j(ho)o(w)o(ev)o(er,)c(it)i (is)g(necessary)f(to)g(design)h(sp)q(ecial)164 1408 y(subroutines)18 b(to)e(do)h(the)f(m)o(ultiplications)j(\(see)d(Kn)o(uth,)g(v)o(olume)g(2\).) 237 1492 y(Let)h(us)f(lo)q(ok)i(at)e(the)g(sequence)g(of)g(p)q(o)o(w)o(ers)h (of)f(2)h(mo)q(d)g(11:)766 1596 y(2)g(4)f(8)h(5)g(10)g(9)f(7)h(3)g(6)f(1)164 1701 y(Eac)o(h)g(n)o(um)o(b)q(er)g(from)g(1)h(to)f(10)h(app)q(ears)h(in)f (the)f(sequence.)164 1798 y Fq(Theorem)i(5)24 b Fu(L)n(et)c Fr(p)g Fu(b)n(e)h(a)f(prime.)30 b(Ther)n(e)19 b(is)h(an)h Fr(a)e Fu(such)i(that)f(for)g(every)g Fv(1)f Fp(\024)g Fr(b)f Fp(\024)164 1858 y Fr(p)12 b Fp(\000)e Fv(1)p Fu(,)18 b(ther)n(e)g(is)f Fv(1)d Fp(\024)g Fr(x)f Fp(\024)h Fr(p)d Fp(\000)g Fv(1)18 b Fu(such)g(that)f Fr(a)1028 1840 y Fk(x)1064 1858 y Fp(\021)c Fr(b)18 b Fu(mo)n(d)e Fr(p)p Fu(.)164 1955 y Fv(It)f(is)i(not)f(alw)o(a)o(ys) h(the)f(case)f(that)i Fr(a)c Fv(=)h(2.)21 b(The)16 b(p)q(o)o(w)o(ers)g(of)g (2)h(mo)q(d)f(7)g(are)g(2,)g(4,)g(1)g(after)164 2016 y(whic)o(h)h(the)f (sequence)f(rep)q(eats)h(and)h(w)o(e)f(nev)o(er)f(get)h(3,)g(5,)h(or)f(6.)237 2099 y(The)i(pro)q(of)g(of)g(Theorem)f Fq(??)26 b Fv(requires)18 b(sev)o(eral)f(steps,)h(so)g(w)o(e)f(will)i(giv)o(e)f(it)g(later.)164 2159 y(F)l(or)e(no)o(w,)h(w)o(e)e(w)o(an)o(t)i(to)f(lo)q(ok)i(at)e(some)h(of) f(its)h(consequences.)164 2257 y Fq(Corollary)j(6)k Fu(L)n(et)17 b Fr(a)g Fu(b)n(e)h(as)f(in)h(The)n(or)n(em)f Fq(??)p Fu(.)23 b(Then)18 b Fr(a)1220 2238 y Fk(p)p Fl(\000)p Fo(1)1298 2257 y Fp(\021)c Fv(1)k Fu(mo)n(d)e Fr(p)p Fu(.)164 2354 y Fv(Pro)q(of:)31 b(W)l(e)20 b(kno)o(w)h(that)g Fr(a)681 2336 y Fk(d)721 2354 y Fp(\021)g Fv(1)g(for)g(some)f(1)i Fp(\024)f Fr(d)g Fp(\024)g Fr(p)14 b Fp(\000)g Fv(1.)34 b(If)20 b Fr(d)i(<)f(p)14 b Fp(\000)g Fv(1,)21 b(the)164 2414 y(sequence)14 b(of)h(p)q(o)o(w)o(ers)g(of)g Fr(a)f Fv(w)o(ould)i(start)f(rep)q(eating)h(b)q(efore)e(w)o(e)h(got)g(all)h (the)f(n)o(um)o(b)q(ers:)164 2474 y Fr(a)190 2456 y Fk(d)p Fo(+1)269 2474 y Fp(\021)e Fr(a)p Fv(,)j Fr(a)403 2456 y Fk(d)p Fo(+2)481 2474 y Fp(\021)e Fr(a)560 2456 y Fo(2)579 2474 y Fv(,)i(etc.)961 2599 y(8)p eop %%Page: 9 9 bop 164 307 a Fq(Corollary)20 b(7)k Fu(F)l(or)17 b(any)h Fr(b)13 b Fp(6\021)h Fv(0)p Fu(,)k Fr(b)815 289 y Fk(p)p Fl(\000)p Fo(1)893 307 y Fp(\021)c Fv(1)j Fu(mo)n(d)g Fr(p)p Fu(.)164 408 y Fv(Pro)q(of:)22 b(Let)17 b Fr(a)f Fv(b)q(e)g(as)h(in)g(Theorem)f Fq(??)p Fv(.)22 b(Using)17 b(Corollary)h Fq(??)669 523 y Fr(b)690 502 y Fk(p)p Fl(\000)p Fo(1)768 523 y Fp(\021)c Fr(a)847 502 y Fk(x)p Fo(\()p Fk(p)p Fl(\000)p Fo(1\))973 523 y Fp(\021)1025 474 y Fj(\020)1050 523 y Fr(a)1076 502 y Fk(p)p Fl(\000)p Fo(1)1140 474 y Fj(\021)1165 486 y Fk(x)1201 523 y Fp(\021)g Fv(1)164 638 y Fq(Corollary)20 b(8)k Fu(If)17 b Fr(x)d Fp(\021)g Fr(y)19 b Fu(mo)n(d)d Fv(\()p Fr(p)c Fp(\000)f Fv(1\))p Fu(,)17 b(then)i Fr(b)1068 620 y Fk(x)1103 638 y Fp(\021)14 b Fr(b)1177 620 y Fk(y)1215 638 y Fu(mo)n(d)i Fr(p)164 740 y Fv(Pro)q(of:)22 b(F)l(or)17 b(some)f(in)o(teger)g Fr(r)q Fv(,)g Fr(y)g Fv(=)e Fr(r)q Fv(\()p Fr(p)d Fp(\000)g Fv(1\))h(+)f Fr(x)16 b Fv(and)g(b)o(y)g (Corollary)j Fq(??)687 856 y Fr(b)708 836 y Fk(y)742 856 y Fp(\021)795 808 y Fj(\020)820 856 y Fr(b)841 836 y Fk(p)p Fl(\000)p Fo(1)905 808 y Fj(\021)930 820 y Fk(r)958 856 y Fr(b)979 836 y Fk(x)1014 856 y Fp(\021)14 b Fr(b)1088 836 y Fk(x)1126 856 y Fv(mo)q(d)i Fr(p)164 976 y Fq(Lemma)i(9)24 b Fu(L)n(et)16 b Fr(b)d Fp(6\021)h Fv(0)p Fu(,)j Fr(d)g Fu(the)f(smal)r(lest)i(p)n(ositive)f (numb)n(er)f(such)h(that)g Fr(b)1526 958 y Fk(d)1559 976 y Fp(\021)d Fv(1)p Fu(.)22 b(Then)164 1036 y(for)17 b(any)g Fr(e)d(>)g Fv(0)k Fu(with)g Fr(b)593 1018 y Fk(e)625 1036 y Fp(\021)c Fv(1)k Fr(d)f Fu(divides)h Fr(e)g Fu(evenly.)24 b(In)18 b(p)n(articular,)f (by)g(Cor)n(ol)r(lary)g Fq(??)p Fu(,)164 1096 y Fr(d)h Fu(divides)g Fr(p)11 b Fp(\000)g Fv(1)18 b Fu(evenly.)164 1198 y Fv(Pro)q(of:)k(If)16 b Fr(d)h Fv(do)q(es)g(not)f(divide)h Fr(e)p Fv(,)f(then)g Fr(e)d Fv(=)h Fr(dr)f Fv(+)e Fr(s)16 b Fv(for)h(some)f(0)e Fr(<)g(s)g(<)f(d)p Fv(,)k(but)783 1318 y Fr(b)804 1297 y Fk(s)836 1318 y Fp(\021)d Fr(b)910 1297 y Fk(e)936 1269 y Fj(\020)961 1318 y Fr(b)982 1297 y Fk(d)1002 1269 y Fj(\021)1027 1281 y Fl(\000)p Fk(r)1087 1318 y Fp(\021)f Fv(1)164 1427 y(w)o(ould)k(con)o(tradict)g(the)f (de\014nition)i(of)e Fr(d)p Fv(.)164 1571 y Ft(2.4)70 b(Primiti)o(v)n(e)20 b(ro)r(ots)164 1664 y Fv(Theorem)14 b Fq(??)22 b Fv(sho)o(w)o(ed)14 b(that)h(if)g Fr(p)g Fv(is)g(a)g(prime,)f(there)g(is)h(an)g Fr(a)f Fv(suc)o(h)g(that)h(the)f(equation)831 1773 y Fr(a)857 1753 y Fk(x)892 1773 y Fp(\021)g Fr(b)i Fv(mo)q(d)h Fr(p)164 1883 y Fv(has)g(a)f(solution)i(for)e(an)o(y)g Fr(b)e Fp(6\021)f Fv(0.)22 b(Suc)o(h)15 b(an)i Fr(a)e Fv(is)i(called)g(a)f Fu(primitive)h(r)n (o)n(ot)i Fv(of)e Fr(p)p Fv(,)f(and)g Fr(x)164 1943 y Fv(is)h(called)g(the)f Fu(discr)n(ete)i(lo)n(garithm)i Fv(of)c Fr(b)p Fv(.)237 2028 y(W)l(e)e(sho)o(w)o(ed)g(in)g(the)g(b)q(eginning)i(of)e(section)h Fq(??)21 b Fv(that)15 b(it)f(is)h(easy)f(to)g(obtain)h Fr(b)f Fv(giv)o(en)164 2088 y Fr(a)i Fv(and)h Fr(x)p Fv(.)k(Finding)d Fr(x)e Fv(giv)o(en)g Fr(a)g Fv(and)h Fr(b)f Fv(is)h(m)o(uc)o(h)e(harder.)21 b(Man)o(y)16 b(mo)q(dern)h(encryption)164 2148 y(systems)k(are)g(based)h(on)g (the)f(fact)g(that)h(no)g(e\016cien)o(t)e(w)o(a)o(y)h(of)h(computing)g (discrete)164 2209 y(logarithms)c(is)f(kno)o(wn.)237 2293 y(No)c(e\016cien)o (t)f(metho)q(d)h(for)g(alw)o(a)o(ys)h(\014nding)g(primitiv)o(e)g(ro)q(ots)g (is)g(kno)o(wn.)20 b(Ho)o(w)o(ev)o(er,)164 2354 y(it)e(is)h(often)f(p)q (ossible)i(to)f(\014nd)f(one)g(in)h(sp)q(ecial)g(cases.)27 b(W)l(e)18 b(will)h(use)f Fr(p)g Fv(=)e(1223)k(as)e(an)164 2414 y(example.)j Fr(p)10 b Fp(\000)g Fv(1)k(=)g(2)c Fp(\001)g Fv(13)g Fp(\001)g Fv(47.)22 b(By)15 b(Lemma)g Fq(??)p Fv(,)i(if)f Fr(a)f Fv(is)h(not)h(a)f(primitiv)o(e)g(ro)q(ot,)g(then)164 2474 y(w)o(e)k(will)i(either)f(ha)o(v)o(e)f Fr(a)622 2456 y Fo(26)659 2474 y Fv(,)h Fr(a)720 2456 y Fo(94)757 2474 y Fv(,)g(or)g Fr(a)882 2456 y Fo(611)958 2474 y Fp(\021)f Fv(1)d(mo)q(d)g(1223.)35 b Fr(a)21 b Fv(=)g(2)g(and)g(3)g(fail,)i(but)961 2599 y(9)p eop %%Page: 10 10 bop 164 307 a Fr(a)18 b Fv(=)g(5)h(satis\014es)i(all)f(three)e(conditions,)k (so)d(it)h(is)f(a)h(primitiv)o(e)f(ro)q(ot.)30 b(\(w)o(e)18 b(could)i(tell)164 367 y(that)d Fr(a)c Fv(=)h(4)j(w)o(ould)g(not)f(b)q(e)h(a) g(primitiv)o(e)f(ro)q(ot)h(without)h(testing.)k(Wh)o(y?\))237 451 y(It)13 b(is)h(easy)f(to)g(sho)o(w)h(that,)g(if)f Fr(a)g Fv(is)h(a)f(primitiv)o(e)h(ro)q(ot,)g Fr(a)1238 433 y Fk(x)1273 451 y Fv(is)g(a)f(primitiv)o(e)h(ro)q(ot)g(if)f(and)164 511 y(only)19 b(if)f(\()p Fr(x;)8 b(p)k Fp(\000)g Fv(1\))17 b(=)g(1.)27 b(In)17 b(this)i(example,)f(this)g(means)g(the)g(n)o(um)o(b)q(er)f(of)i (primitiv)o(e)164 572 y(ro)q(ots)f(is)675 642 y(1222)779 581 y Fj(\022)817 608 y Fv(1)p 817 630 25 2 v 817 676 a(2)846 581 y Fj(\023)8 b(\022)920 608 y Fv(12)p 920 630 49 2 v 920 676 a(13)974 581 y Fj(\023)g(\022)1049 608 y Fv(46)p 1049 630 V 1049 676 a(47)1102 581 y Fj(\023)1147 642 y Fv(=)13 b(552)164 743 y(Th)o(us,)j(if)h(w)o(e)f(had)h(just)g(c)o(hosen)f Fr(a)g Fv(at)h(random,)g(the)f(probabilit)o(y)j(that)d(it)h(w)o(ould)h(b)q(e)f(a)164 803 y(primitiv)o(e)g(ro)q(ot)h(is)g Fp(\031)c Fr(:)p Fv(45.)24 b(Cho)q(osing)19 b Fr(a)e Fv(at)g(random)h(and)f(testing)h(un)o(til)g(w)o(e)e (found)i(a)164 863 y(primitiv)o(e)f(ro)q(ot)g(w)o(ould)g(not)g(b)q(e)f(exp)q (ected)g(to)g(tak)o(e)g(to)q(o)h(long.)237 947 y(This)e(is)g(an)f(example)g (of)g(a)g Fu(pr)n(ob)n(abilistic)h(algorithm)p Fv(.)21 b(It)13 b(is)i(p)q(ossible)h(for)e(it)g(to)g(tak)o(e)164 1007 y(a)j(long)i(time,)d (but)h(the)g(amoun)o(t)g(of)g(time)g(needed)f(on)h(a)o(v)o(erage)g(is)h (reasonably)g(small.)164 1068 y(W)l(e)e(will)i(see)e(man)o(y)g(other)g (probabilisti)q(c)i(algorithms)h(later.)164 1197 y Fq(Pro)r(of)g(of)f (Theorem)g(??)164 1289 y Fv(Let)g Fr(a)e Fp(6\021)h Fv(0,)h Fr(d)h Fv(b)q(e)f(the)f(smallest)j(p)q(ositiv)o(e)f(n)o(um)o(b)q(er)e(for)h (whic)o(h)h Fr(a)1399 1271 y Fk(d)1435 1289 y Fp(\021)e Fv(1)h(\(there)f(m)o (ust)164 1349 y(b)q(e)g(suc)o(h)g(a)g Fr(d)h Fv(since)f Fr(a)572 1331 y Fk(K)621 1349 y Fp(\021)e Fr(a)701 1331 y Fk(L)744 1349 y Fv(implies)j Fr(a)936 1331 y Fk(K)r Fl(\000)p Fk(L)1037 1349 y Fp(\021)d Fv(1\).)24 b(If)16 b Fr(d)g Fv(=)f Fr(p)d Fp(\000)f Fv(1,)18 b Fr(a)e Fv(is)i(a)g(primitiv)o(e)164 1410 y(ro)q(ot.)23 b(If)16 b Fr(d)e(<)g(p)e Fp(\000)f Fv(1,)16 b(w)o(e)g(will)i(\014nd)f Fr(a)856 1391 y Fl(0)867 1410 y Fr(;)8 b(d)914 1391 y Fl(0)942 1410 y Fv(with)18 b Fr(d)1079 1391 y Fl(0)1105 1410 y Fr(>)c(d)p Fv(.)22 b(If)16 b Fr(d)1292 1391 y Fl(0)1318 1410 y Fr(<)e(p)d Fp(\000)g Fv(1)17 b(the)f(pro)q(cess)h(is)164 1470 y(rep)q(eated)f(un)o(til)h (w)o(e)f(ev)o(en)o(tually)g(obtain)i(a)f(primitiv)o(e)f(ro)q(ot.)164 1568 y Fq(Lemma)i(10)24 b Fu(Ther)n(e)16 b(ar)n(e)g(at)h(most)g Fr(d)g Fu(solutions)g(to)g(a)f(c)n(ongruenc)n(e)j(involving)f(a)f(p)n(oly-) 164 1628 y(nomial)h(of)f(de)n(gr)n(e)n(e)g Fr(d)p Fu(:)640 1734 y Fr(x)668 1713 y Fk(d)699 1734 y Fv(+)11 b Fr(\013)779 1741 y Fo(1)799 1734 y Fr(x)827 1713 y Fk(d)p Fl(\000)p Fo(1)903 1734 y Fv(+)g Fr(:)d(:)g(:)g(\013)1049 1741 y Fk(d)1083 1734 y Fp(\021)14 b Fv(0)j Fu(mo)n(d)g Fr(p)164 1840 y Fu(In)h(p)n(articular,)e (ther)n(e)i(ar)n(e)f(at)g(most)h Fr(d)f(x)g Fu(with)h Fr(x)1068 1822 y Fk(d)1102 1840 y Fp(\021)c Fv(1)p Fu(.)164 1938 y Fq(Pro)r(of:)25 b Fv(This)20 b(can)e(b)q(e)h(pro)o(v)o(ed)f(in)h(the)f(same)g(w)o(a)o(y)g(as) h(the)f(corresp)q(onding)i(theorem)164 1998 y(in)d(ordinary)g(algebra:)22 b(if)17 b Fr(x)d Fv(=)f Fr(\014)19 b Fv(is)d(a)h(solution,)h(the)e(p)q (olynomial)i(can)f(b)q(e)f(written)g(as)164 2058 y(\()p Fr(x)11 b Fp(\000)g Fr(\014)s Fv(\))k(times)i(a)f(p)q(olynomial)j(of)e(degree)f Fr(d)11 b Fp(\000)g Fv(1,)16 b(whic)o(h)h(b)o(y)f(induction)i(has)f Fp(\024)c Fr(d)f Fp(\000)f Fv(1)164 2118 y(solutions.)237 2202 y(W)l(e)16 b(return)g(to)h(the)f(pro)q(of)h(of)g(Theorem)f Fq(??)p Fv(.)22 b(The)16 b(sequence)686 2308 y Fr(a)48 b(a)786 2287 y Fo(2)855 2308 y Fr(a)881 2287 y Fo(3)908 2308 y Fr(:)8 b(:)g(:)g(a)1000 2287 y Fk(d)1033 2308 y Fp(\021)14 b Fv(1)j(mo)q(d)f Fr(p)164 2414 y Fv(consists)21 b(of)f Fr(d)g Fv(di\013eren)o(t)f(solutions)j (of)e Fr(x)940 2396 y Fk(d)979 2414 y Fp(\021)g Fv(1.)31 b(If)19 b Fr(d)h(<)f(p)14 b Fp(\000)f Fv(1,)20 b(let)g Fr(b)f Fv(b)q(e)h(an)o(y)f (non-)164 2474 y(mem)o(b)q(er)f(of)h(the)g(sequence,)g(with)h Fr(e)e Fv(the)h(smallest)i(p)q(ositiv)o(e)f(n)o(um)o(b)q(er)e(with)i Fr(b)1650 2456 y Fk(e)1687 2474 y Fp(\021)f Fv(1.)949 2599 y(10)p eop %%Page: 11 11 bop 164 307 a Fv(If)20 b Fr(e)g(>)g(d)p Fv(,)h(w)o(e)f(ma)o(y)f(tak)o(e)h Fr(a)699 289 y Fl(0)730 307 y Fv(=)h Fr(b)p Fv(,)f(so)h(w)o(e)f(will)i (assume)e Fr(e)g Fp(\024)g Fr(d)h Fv(from)f(no)o(w)g(on.)34 b(By)164 367 y(Lemma)16 b Fq(??)p Fv(,)h Fr(b)442 349 y Fk(d)476 367 y Fp(6\021)c Fv(1,)j(whic)o(h)h(implies)g Fr(e)f Fv(do)q(es)h(not)g (divide)g Fr(d)g Fv(and)f Fr(e=)p Fv(\()p Fr(d;)8 b(e)p Fv(\))14 b Fr(>)g Fv(1.)651 492 y(Let)49 b Fr(a)797 471 y Fl(0)822 492 y Fv(=)14 b Fr(a)900 471 y Fo(\()p Fk(d;e)p Fo(\))973 492 y Fr(b)98 b(c)13 b Fv(=)1224 458 y Fr(d)p 1183 480 108 2 v 1183 526 a Fv(\()p Fr(d;)8 b(e)p Fv(\))164 619 y(T)l(o)20 b(complete)f(the)g(pro)q (of,)i(w)o(e)e(will)i(sho)o(w)f(that)g(if)g Fr(a)1157 601 y Fl(0)p Fk(x)1207 619 y Fp(\021)f Fv(1,)h(then)g Fr(x)f Fv(is)h(divisible)h(b) o(y)164 679 y Fr(ce)13 b Fv(=)h Fr(de=)p Fv(\()p Fr(d;)8 b(e)p Fv(\))14 b Fr(>)g(d)p Fv(.)237 761 y(Since)k(\()p Fr(c;)8 b(e)p Fv(\))16 b(=)h(1,)h(Theorem)g Fq(??)28 b Fv(implies)19 b(there)e(are)h Fr(K)q(;)8 b(L)19 b Fv(with)f Fr(cK)f Fv(+)12 b Fr(eL)k Fv(=)h(1.)164 822 y(If)f Fr(a)239 804 y Fl(0)p Fk(x)285 822 y Fp(\021)e Fv(1,)i(then)h Fr(a)530 804 y Fl(0)p Fk(cx)591 822 y Fp(\021)d Fr(b)665 804 y Fk(cx)716 822 y Fp(\021)g Fv(1.)23 b(By)16 b(Lemma)g Fq(??)p Fv(,)h Fr(cx)e Fv(=)f Fr(eM)22 b Fv(for)16 b(some)h(in)o(teger)g Fr(M)164 882 y Fv(and)631 942 y Fr(x)c Fv(=)h(\()p Fr(cK)h Fv(+)c Fr(eL)p Fv(\))p Fr(x)i Fv(=)h Fr(e)p Fv(\()p Fr(K)t(M)i Fv(+)11 b Fr(Lx)p Fv(\))164 1025 y(so)19 b Fr(x)e Fv(=)h Fr(ex)378 1007 y Fl(0)407 1025 y Fv(for)g(some)h(in)o(teger)f Fr(x)799 1007 y Fl(0)811 1025 y Fv(.)27 b(T)l(ogether)19 b(with)g Fr(a)1198 1007 y Fl(0)p Fk(x)1247 1025 y Fp(\021)e Fv(1)i(and)f(Lemma)h Fq(??)p Fv(,)g(this)164 1085 y(implies)f(for)e(some)g(in)o(teger)g Fr(N)344 1185 y Fv(\()p Fr(d;)8 b(e)p Fv(\))p Fr(ex)503 1164 y Fl(0)528 1185 y Fv(=)14 b Fr(dN)19 b Fp(\))14 b Fr(ex)778 1164 y Fl(0)802 1185 y Fv(=)g Fr(cN)19 b Fp(\))14 b Fv(\()p Fr(cK)h Fv(+)c Fr(eL)p Fv(\))p Fr(x)1245 1164 y Fl(0)1270 1185 y Fv(=)j Fr(c)p Fv(\()p Fr(K)t(x)1435 1164 y Fl(0)1457 1185 y Fv(+)d Fr(LN)5 b Fv(\))164 1285 y(so)17 b Fr(x)252 1267 y Fl(0)279 1285 y Fv(is)h(divisible)g(b)o(y)e Fr(c)p Fv(.)164 1450 y Fw(3)83 b(Encryption)44 b(tec)n(hniques)f(based)g(on)h(p)r(o)n(w)n (ers)288 1541 y(and)27 b(congruences)164 1665 y Ft(3.1)70 b(The)22 b(Di\016e-Hell)o(m)o(an)f(k)n(ey)i(exc)n(hange)g(pro)r(cedure)164 1758 y Fv(A)d(and)i(B)e(are)h(comm)o(unicating.)35 b(C)21 b(hears)h(ev)o (erything)e(A)g(and)i(B)e(sa)o(y)l(.)35 b(A)20 b(and)h(B)164 1818 y(w)o(an)o(t)16 b(to)g(agree)g(on)g(a)g(n)o(um)o(b)q(er,)f(without)i(C)f (kno)o(wing)h(what)g(the)e(n)o(um)o(b)q(er)g(is.)22 b(It)15 b(ma)o(y)164 1878 y(b)q(e,)h(for)h(example,)f(that)i(A)e(and)h(B)f(plan)i(to) f(use)g(the)f(n)o(um)o(b)q(er)g(as)h(the)g(k)o(ey)e(for)i(future)164 1938 y(enco)q(ded)f(messages.)22 b(The)16 b(pro)q(cedure)h(\(also)g(often)g (called)g(a)f Fu(pr)n(oto)n(c)n(ol)5 b Fv(\):)237 2020 y(A)12 b(and)h(B)f(agree)g(on)h(a)g(\(large\))g(prime)g Fr(p)g Fv(and)g(a)f (primitiv)o(e)h(ro)q(ot)h Fr(a)p Fv(.)19 b(These)12 b(n)o(um)o(b)q(ers)164 2081 y(are)22 b(also)i(kno)o(wn)e(to)h(C.)f(A)g(secretly)f(c)o(ho)q(oses)i(a) g(\(large\))g(n)o(um)o(b)q(er)e Fr(X)1507 2088 y Fo(1)1527 2081 y Fv(,)j(B)d(secretly)164 2141 y(c)o(ho)q(oses)15 b Fr(X)376 2148 y Fo(2)396 2141 y Fv(.)21 b Fr(a)457 2123 y Fk(X)486 2128 y Fi(1)519 2141 y Fv(and)15 b Fr(a)638 2123 y Fk(X)667 2128 y Fi(2)701 2141 y Fv(mo)q(d)f Fr(p)h Fv(are)g(publicly)g(announced)g(\(hence) f(kno)o(wn)g(to)h(C\).)164 2201 y(The)h(secret)g(n)o(um)o(b)q(er)f(will)j(b)q (e)f Fr(S)f Fv(=)e Fr(a)863 2183 y Fk(X)892 2188 y Fi(1)909 2183 y Fk(X)938 2188 y Fi(2)974 2201 y Fv(mo)q(d)j Fr(p)p Fv(.)386 2314 y(A)f(calulates)h Fr(S)g Fp(\021)739 2266 y Fj(\020)764 2314 y Fr(a)790 2293 y Fk(X)819 2298 y Fi(2)837 2266 y Fj(\021)862 2277 y Fk(X)891 2282 y Fi(1)1017 2314 y Fv(B)e(calculates)j Fr(S)f Fp(\021)1389 2266 y Fj(\020)1414 2314 y Fr(a)1440 2293 y Fk(X)1469 2298 y Fi(1)1488 2266 y Fj(\021)1513 2277 y Fk(X)1542 2282 y Fi(2)164 2414 y Fv(A)f(p)q(ossible)i(dra)o(wbac)o(k)e(to)h(this)g (system)f(is)h(that)f(neither)h(A)e(nor)i(B)f(con)o(trols)h(what)g Fr(S)164 2474 y Fv(is.)22 b(If)16 b Fr(S)j Fv(is)e(not)g(a)f(satisfactory)i (n)o(um)o(b)q(er,)d(they)h(ma)o(y)f(ha)o(v)o(e)h(to)g(rep)q(eat)h(the)f (proto)q(col.)949 2599 y(11)p eop %%Page: 12 12 bop 237 307 a Fv(Di\016e)16 b(and)h(Hellman)f(suggest)h(the)f(pro)q(cedure)g (can)g(also)i(b)q(e)e(used)g(in)g(a)h(situation)164 367 y(in)d(whic)o(h)g Fr(n)f Fv(p)q(eople)i(m)o(ust)e(\014nd,)h(for)g(eac)o(h)e(pair)j(of)f(p)q (eople,)g(an)g(agreed-up)q(on)h(n)o(um)o(b)q(er.)164 428 y(F)l(or)h(1)f Fp(\024)e Fr(i;)8 b(j)16 b Fp(\024)e Fr(n)i Fv(the)g(n)o(um)o(b)q(er)g(is)h Fr(a)852 409 y Fk(X)881 414 y Fh(i)894 409 y Fk(X)923 414 y Fh(j)941 428 y Fv(.)164 571 y Ft(3.2)70 b(The)22 b(Riv)n(est-Shamir-Adle)o (man)e(public)h(k)n(ey)j(system)164 663 y Fv(A)19 b(sets)g(up)g(a)g(system)g (so)h(that)f(an)o(y)o(one)g(can)g(send)g(him)h(an)f(enco)q(ded)g(message,)h (but)164 723 y(only)g(A)f(will)j(b)q(e)d(able)h(to)g(deco)q(de)g(it.)31 b(The)19 b(message)h(is)g(represen)o(ted)f(as)h(a)g(n)o(um)o(b)q(er)164 784 y Fr(M)5 b Fv(.)30 b(The)18 b(enco)q(ding)j(is)e(done)g(b)o(y)g(a)g (publicly)h(kno)o(wn)f(function)h Fr(f)5 b Fv(\()p Fr(M)g Fv(\),)20 b(with)g(A)e(the)164 844 y(only)f(p)q(erson)g(who)g(kno)o(ws)g(ho)o(w)g(to)g (compute)f Fr(f)1066 826 y Fl(\000)p Fo(1)1113 844 y Fv(.)22 b(A)16 b(c)o(ho)q(oses)h(t)o(w)o(o)f(large)h(primes)g Fr(p)p Fv(,)164 904 y Fr(q)i Fv(whic)o(h)e(he)g(k)o(eeps)f(secret.)23 b(He)17 b(announces)h Fr(n)d Fv(=)h Fr(pq)j Fv(and)f(another)f(n)o(um)o(b)q (er)g Fr(d)p Fv(,)g(with)164 964 y(\()p Fr(d;)8 b(p)k Fp(\000)g Fv(1\))k(=)g(\()p Fr(d;)8 b(q)13 b Fp(\000)e Fv(1\))16 b(=)g(1)i(\(one)f(w)o (a)o(y)g(to)h(do)g(this)g(is)g(to)g(c)o(ho)q(ose)f Fr(d)h Fv(a)g(prime)f (larger)164 1024 y(than)g Fr(p=)p Fv(2)g(and)g Fr(q)r(=)p Fv(2.\))22 b(The)16 b(enco)q(ding)h(is)768 1126 y Fr(f)5 b Fv(\()p Fr(M)g Fv(\))14 b Fp(\021)g Fr(M)1006 1106 y Fk(d)1043 1126 y Fv(mo)q(d)i(n)164 1228 y(where)g Fr(M)23 b Fv(and)17 b Fr(f)5 b Fv(\()p Fr(M)g Fv(\))18 b(are)e(b)q(oth)i Fp(\024)d Fr(n)c Fp(\000)g Fv(1.)24 b(W)l(e)16 b(ha)o(v)o(e)g(seen)h Fr(f)22 b Fv(can)17 b(b)q(e)g(computed)f(in) 164 1288 y(a)h(realistic)g(amoun)o(t)g(of)f(time)h(ev)o(en)e(if)h Fr(M)5 b Fv(,)17 b Fr(d)p Fv(,)f Fr(n)g Fv(are)g(man)o(y)g(digits)i(long.)237 1371 y(A)e(computes)g Fr(M)22 b Fv(from)16 b Fr(M)743 1353 y Fk(d)780 1371 y Fv(using)h(his)g(kno)o(wledge)g(of)g Fr(p)p Fv(,)f Fr(q)r Fv(.)21 b(By)15 b(Corollary)k(8,)484 1478 y(If)d Fr(de)e Fp(\021)f Fv(1)k(mo)q(d)g(\()p Fr(p)11 b Fp(\000)g Fv(1\))16 b(then)1081 1430 y Fj(\020)1106 1478 y Fr(M)1158 1457 y Fk(d)1178 1430 y Fj(\021)1203 1441 y Fk(e)1235 1478 y Fp(\021)e Fv(1)j(mo)q(d)f Fr(p)164 1599 y Fv(Similarly)376 1551 y Fj(\020)400 1599 y Fr(M)452 1581 y Fk(d)473 1551 y Fj(\021)498 1563 y Fk(e)538 1599 y Fp(\021)21 b Fr(M)g Fv(mo)q(d)c Fr(q)22 b Fv(if)f Fr(de)h Fp(\021)f Fv(1)16 b(mo)q(d)h(\()p Fr(q)f Fp(\000)d Fv(1\).)35 b Fr(e)21 b Fv(satis\014es)h(these)e(t)o(w)o(o)164 1666 y(conditions)g(if)e Fr(ed)f Fp(\021)g Fv(1)f(mo)q(d)h(\()p Fr(p)c Fp(\000)f Fv(1\)\()p Fr(q)i Fp(\000)e Fv(1\).)26 b(Theorem)18 b(1)g(sa)o(ys)h(w)o(e)e(can)h(let)h Fr(e)d Fv(=)h Fr(x)p Fv(,)164 1726 y(where)f Fr(x)g Fv(is)h(a)g(solution)h(of)712 1828 y Fr(dx)11 b Fv(+)g(\()p Fr(p)h Fp(\000)e Fv(1\)\()p Fr(q)j Fp(\000)e Fv(1\))p Fr(y)16 b Fv(=)e(1)164 1937 y(Since)294 1889 y Fj(\020)319 1937 y Fr(M)371 1919 y Fk(d)391 1889 y Fj(\021)416 1901 y Fk(e)447 1937 y Fp(\000)f Fr(M)24 b Fv(is)c(divisible)h(b)o(y)d Fr(p)i Fv(and)f(b)o(y)g Fr(q)r Fv(,)f(it)i(is)f(divisble)i(b)o(y)d Fr(pq)r Fv(,)h(hence)f(w)o(e)164 2008 y(can)e(reco)o(v)o(er)f Fr(M)22 b Fv(from)16 b Fr(M)656 1989 y Fk(d)693 2008 y Fv(b)o(y)f(taking)j (to)e(the)g Fr(e)p Fv(-th)h(p)q(o)o(w)o(er)f(mo)q(d)h Fr(pq)r Fv(.)237 2090 y(It)h(is)h(crucial)g(to)f(the)g(securit)o(y)g(of)g(this)h (system)f(that)g(kno)o(wledge)h(of)f Fr(n)h Fv(do)q(es)f(not)164 2151 y(allo)o(w)d(an)e(ea)o(v)o(esdropp)q(er)g(to)g(calculate)h Fr(p)f Fv(and)h Fr(q)r Fv(.)19 b(The)13 b(crude)g(approac)o(h)h(of)f (dividing)i Fr(n)164 2211 y Fv(b)o(y)e(all)j(n)o(um)o(b)q(ers)d(up)h(to)614 2175 y Fp(p)p 656 2175 30 2 v 36 x Fr(n)g Fv(w)o(ould)h(tak)o(e)e Fp(\030)g Fv(10)1042 2193 y Fo(50)1094 2211 y Fv(steps)h(for)h(a)f(100-digit) j Fr(n)p Fv(.)j(Ho)o(w)o(ev)o(er,)164 2271 y(man)o(y)13 b(famous)i (mathematicians)g(ha)o(v)o(e)d(b)q(een)i(unable)h(to)f(devise)f(signi\014can) o(tly)j(b)q(etter)164 2331 y(factoring)d(algorithms,)h(and)f(this)f(problem)h (has)f(b)q(een)g(studied)g(for)g(at)g(least)h(100)g(y)o(ears.)237 2414 y(One)h(practical)h(di\016cult)o(y)f(in)h(using)g(this)g(system)f(is)h (the)f(need)f(to)i(do)f(calculations)164 2474 y(with)23 b(man)o(y-digit)h(n)o (um)o(b)q(ers,)f(esp)q(ecially)h(to)f(\014nd)g(primes.)40 b(Another)23 b(di\016cult)o(y)f(is)949 2599 y(12)p eop %%Page: 13 13 bop 164 307 a Fv(that)20 b(the)g(in)o(v)o(en)o(tors)f(of)h(this)h(system)e (ha)o(v)o(e)g(paten)o(ted)g(it.)32 b(Amateur)20 b(programmers)164 367 y(who)14 b(ha)o(v)o(e)e(p)q(osted)i(implemen)o(tations)g(on)g(electronic) f(bulletin)i(b)q(oards)g(ha)o(v)o(e)d(receiv)o(ed)164 428 y(letters)k(from)g (\\RSA)h(Securit)o(y)l(,)e(Inc")h(w)o(arning)h(of)g(p)q(ossible)h(paten)o(t)f (infringemen)o(t.)164 570 y Ft(3.3)70 b(A)22 b(public)g(k)n(ey)h(system)f(as) h(hard)h(as)g(factoring)164 663 y Fv(It)e(is)i(p)q(ossible)h(in)e(theory)g (that)g(there)f(is)i(some)f(w)o(a)o(y)f(of)h(computing)h Fr(f)1564 645 y Fl(\000)p Fo(1)1634 663 y Fv(for)f(the)164 723 y(system)14 b(in)i(the)f(previous)g(section)h(that)f(do)q(es)h(not)f(in)o(v)o(olv)o(e)g (determining)g Fr(p)h Fv(and)f Fr(q)r Fv(.)20 b(In)164 783 y(the)c(original)j(RSA)d(pap)q(er,)g(the)g(authors)i(sa)o(y)359 876 y(It)13 b(ma)o(y)g(b)q(e)h(p)q(ossible)h(to)f(pro)o(v)o(e)f(that)h(an)o (y)f(general)h(metho)q(d)g(of)g(break-)286 936 y(ing)g(our)f(sc)o(heme)f (yields)h(an)h(e\016cien)o(t)e(factoring)i(algorithm.)22 b(This)14 b(w)o(ould)286 996 y(establish)20 b(that)f(an)o(y)f(w)o(a)o(y)h(of)f (breaking)i(our)f(sc)o(heme)e(m)o(ust)h(b)q(e)g(as)h(di\016-)286 1056 y(cult)14 b(as)g(factoring.)22 b(W)l(e)14 b(ha)o(v)o(e)f(not)h(b)q(een)g (able)g(to)h(pro)o(v)o(e)e(this)h(conjecture,)286 1116 y(ho)o(w)o(ev)o(er.) 164 1209 y(T)l(o)j(see)f(the)g(di\016culties)i(in)o(v)o(olv)o(ed)e(in)h (trying)g(to)g(pro)o(v)o(e)f(suc)o(h)g(a)h(thing,)g(supp)q(ose)g(that)164 1269 y(one)23 b(could)h(sho)o(w)f(that)g(kno)o(wledge)h(of)f(a)g(ciphertext)g Fr(f)5 b Fv(\()p Fr(M)g Fv(\))23 b(and)h(a)f(plain)o(text)h Fr(M)164 1329 y Fv(enabled)17 b(one)f(to)h(\014nd)f Fr(p)h Fv(and)g Fr(q)r Fv(.)k(Then)16 b(one)g(could)h(factor)g Fr(n)f Fv(as)h(follo)o(ws:)224 1422 y(1.)24 b(Cho)q(ose)18 b(an)o(y)e Fr(M)5 b Fv(.)224 1521 y(2.)24 b(Compute)18 b Fr(f)5 b Fv(\()p Fr(M)g Fv(\).)26 b([Remem)o(b)q(er,)15 b(w)o(e)j(are)f(assuming)j Fr(f)j Fv(is)18 b(publicly)h(a)o(v)m(ailable.)286 1581 y(F)l(urthermore,)f Fr(f)5 b Fv(\()p Fr(M)g Fv(\))19 b(can't)f(b)q(e)g(to)q(o)i(hard)f(to)f (compute,)g(or)h(the)f(co)q(de)h(w)o(ould)286 1641 y(b)q(e)d(impractical.]) 224 1740 y(3.)24 b(Use)16 b(the)g(assumed)g(metho)q(d)h(to)f(obtain)i Fr(p)p Fv(,)e Fr(q)r Fv(.)164 1832 y(In)g(w)o(ords,)g(w)o(e)f(are)h(unable)h (to)f(distinguish)j(b)q(et)o(w)o(een)c(the)g(situation)j(in)f(whic)o(h)f Fr(f)5 b Fv(\()p Fr(M)g Fv(\))164 1892 y(is)17 b(obtained)g(from)f Fr(M)22 b Fv(\(easy\))16 b(and)h(the)f(\(presumably)h(di\016cult\))f (situation)j(in)e(whic)o(h)164 1953 y Fr(M)22 b Fv(is)17 b(obtained)g(from)f Fr(f)5 b Fv(\()p Fr(M)g Fv(\).)237 2035 y(Rabin)15 b(has)f(suggested)h(an)f (alternativ)o(e)g(to)g(the)g(RSA)f(system)g(in)i(whic)o(h)f(there)f(is)i(a) 164 2095 y(direct)d(connection)g(to)g(factoring.)21 b(As)11 b(in)i(RSA,)e Fr(n)j Fv(=)f Fr(pq)h Fv(is)e(announced)h(publicly)l(,)g(with) 164 2155 y(primes)20 b Fr(p)p Fv(,)h Fr(q)h Fv(k)o(ept)d(secret.)32 b(F)l(or)20 b(tec)o(hnical)g(reasons,)i(w)o(e)d(assume)i Fr(p;)8 b(q)22 b Fp(\021)e Fv(3)c(mo)q(d)h(4.)164 2215 y(The)f(enco)q(ding)i (function)f(is)767 2315 y Fr(f)5 b Fv(\()p Fr(M)g Fv(\))14 b Fp(\021)g Fr(M)1005 2294 y Fo(2)1041 2315 y Fv(mo)q(d)j Fr(n)164 2414 y Fv(The)f(w)o(a)o(y)g(w)o(e)g(a)o(v)o(oid)h(the)e(di\016cult)o(y)i (describ)q(ed)f(ab)q(o)o(v)o(e)g(is)i(that)e(there)g(are)g Fu(four)21 b Fv(n)o(um-)164 2474 y(b)q(ers)c Fr(M)316 2481 y Fo(1)335 2474 y Fr(;)8 b(M)404 2481 y Fo(2)424 2474 y Fr(;)g(M)493 2481 y Fo(3)513 2474 y Fr(;)g(M)582 2481 y Fo(4)618 2474 y Fv(with)17 b Fr(f)5 b Fv(\()p Fr(M)824 2481 y Fk(i)839 2474 y Fv(\))13 b Fp(\021)h Fr(f)5 b Fv(\()p Fr(M)g Fv(\).)22 b(The)16 b(k)o(ey)f(facts)i(are:)949 2599 y(13)p eop %%Page: 14 14 bop 224 307 a Fv(1.)24 b(If)16 b Fr(p;)8 b(q)18 b Fv(are)e(kno)o(wn,)g(it)h (is)g(easy)f(to)h(compute)f(all)h(the)f Fr(M)1331 314 y Fk(i)1362 307 y Fv(giv)o(en)g Fr(f)5 b Fv(\()p Fr(M)g Fv(\).)224 405 y(2.)24 b(If)16 b(w)o(e)f(are)i(giv)o(en)f Fr(n)p Fv(,)g Fr(f)5 b Fv(\()p Fr(M)g Fv(\),)17 b(and)f(all)i(the)e Fr(M)1117 412 y Fk(i)1131 405 y Fv(,)g(w)o(e)g(can)g(calculate)i Fr(p)p Fv(,)e Fr(q)r Fv(.)164 497 y(W)l(e)d(are)g Fu(not)19 b Fv(able)14 b(to)g(obtain)g Fr(p)p Fv(,)g Fr(q)h Fv(from)e(just)h(one)f(of)h(the)f Fr(M)1277 504 y Fk(i)1291 497 y Fv(,)g(so)h(the)f(approac)o(h)h(based)164 557 y(on)j Fr(M)23 b Fv(and)17 b Fr(f)5 b Fv(\()p Fr(M)g Fv(\))18 b(describ)q(ed)f(ab)q(o)o(v)o(e)g(w)o(on't)f(w)o(ork.)23 b(One)17 b(dra)o(wbac)o(k)g(of)g(this)g(system)164 617 y(is)f(that,)f(ev)o(en)f(with)i (kno)o(wledge)g(of)f Fr(p)h Fv(and)f Fr(q)r Fv(,)g(one)g(can)g(only)h(sa)o(y) f(the)g(n)o(um)o(b)q(er)f(sen)o(t)h(is)164 677 y(one)e(of)h(the)e(four)i Fr(M)529 684 y Fk(i)543 677 y Fv(,)f(without)i(b)q(eing)f(able)g(to)f(iden)o (tify)g(whic)o(h)h(one.)20 b(In)13 b(practice,)g(this)164 737 y(is)19 b(not)f(serious,)i(since)e(it)h(is)f(v)o(ery)f(unlik)o(ely)i(that)g (more)e(than)i(one)f(of)h(the)f Fr(M)1625 744 y Fk(i)1657 737 y Fv(w)o(ould)164 798 y(corresp)q(ond)f(to)g(a)f(feasible)i(message.)237 879 y Fq(pro)r(of)g(of)h(1:)i Fv(Since)16 b Fr(p)e Fp(\021)g Fv(3)i(mo)q(d)h(4,)f(there)g(is)g(an)h(in)o(teger)f Fr(k)i Fv(with)e(4)p Fr(k)h Fv(=)d Fr(p)c Fv(+)h(1.)21 b(If)164 939 y Fr(x)14 b Fp(\021)f Fv(\()p Fr(f)5 b Fv(\()p Fr(M)g Fv(\)\))416 915 y Fk(k)462 939 y Fv(mo)q(d)16 b Fr(p)p Fv(,)h(then)f(using)h(Corollary)i (8:)581 1064 y Fr(x)609 1044 y Fo(2)642 1064 y Fp(\021)695 1004 y Fj(\022)726 1016 y(\020)750 1064 y Fr(M)802 1044 y Fo(2)822 1016 y Fj(\021)847 1028 y Fk(k)869 1004 y Fj(\023)899 1015 y Fo(2)933 1064 y Fp(\021)13 b Fr(M)1037 1044 y Fo(4)p Fk(k)1091 1064 y Fp(\021)g Fr(M)1195 1044 y Fo(2)1231 1064 y Fv(mo)q(d)k Fr(p)164 1190 y Fv(Similarly)g(if)f Fr(y)f Fp(\021)f Fv(\()p Fr(f)5 b Fv(\()p Fr(M)g Fv(\)\))663 1166 y Fk(L)714 1190 y Fv(mo)q(d)17 b Fr(q)f Fv([4)p Fr(L)e Fv(=)g Fr(q)c Fv(+)f(1],)15 b(then)f Fr(y)1280 1172 y Fo(2)1314 1190 y Fp(\021)f Fr(M)1418 1172 y Fo(2)1455 1190 y Fv(mo)q(d)j Fr(q)r Fv(.)21 b(The)15 b Fr(M)1769 1197 y Fk(i)164 1251 y Fv(are)h(giv)o(en)h(from)f(Corollary)i(4)f (b)o(y)232 1344 y Fr(M)279 1351 y Fo(1)312 1344 y Fp(\021)d Fr(x)i Fv(mo)q(d)h Fr(p)42 b(M)632 1351 y Fo(2)665 1344 y Fp(\021)14 b Fr(x)i Fv(mo)q(d)h Fr(p)77 b(M)1020 1351 y Fo(3)1054 1344 y Fp(\021)14 b(\000)p Fr(x)h Fv(mo)q(d)i Fr(p)42 b(M)1412 1351 y Fo(4)1446 1344 y Fp(\021)13 b(\000)p Fr(x)j Fv(mo)q(d)h Fr(p)232 1404 y(M)279 1411 y Fo(1)312 1404 y Fp(\021)d Fr(y)k Fv(mo)q(d)f Fr(q)46 b(M)632 1411 y Fo(2)665 1404 y Fp(\021)14 b(\000)p Fr(y)k Fv(mo)q(d)e Fr(q)43 b(M)1020 1411 y Fo(3)1054 1404 y Fp(\021)14 b Fr(y)j Fv(mo)q(d)g Fr(q)85 b(M)1412 1411 y Fo(4)1446 1404 y Fp(\021)13 b(\000)p Fr(y)18 b Fv(mo)q(d)f Fr(q)237 1520 y Fq(pro)r(of)h(of)h(2:)i Fv(If)16 b(w)o(e)g(kno)o(w)g(the)g Fr(M)892 1527 y Fk(i)906 1520 y Fv(,)g(there)f(will)j(b)q(e)f(t)o(w)o(o)f (lik)o(e)g Fr(M)1447 1527 y Fo(1)1483 1520 y Fv(and)h Fr(M)1625 1527 y Fo(3)1661 1520 y Fv(ab)q(o)o(v)o(e)164 1580 y(with)h Fr(M)323 1587 y Fo(1)355 1580 y Fv(+)11 b Fr(M)451 1587 y Fo(3)487 1580 y Fp(\021)k Fv(0)i(mo)q(d)g Fr(p)g Fv(and)h Fr(M)876 1587 y Fo(1)908 1580 y Fv(+)11 b Fr(M)1004 1587 y Fo(3)1040 1580 y Fp(6\021)k Fv(0)j(mo)q(d)g Fr(q)r Fv(.)23 b(Th)o(us)18 b(w)o(e)f(can)g (calculate)164 1641 y(\()p Fr(M)230 1648 y Fo(1)261 1641 y Fv(+)11 b Fr(M)357 1648 y Fo(3)377 1641 y Fr(;)d(n)p Fv(\))16 b(to)h(obtain)g Fr(p)p Fv(.)237 1722 y(Unfortunately)l(,)i(this)h (cryptosystem)d(is)j(vulnerable)f(to)g(a)g(c)o(hosen-plain)o(text)g(at-)164 1782 y(tac)o(k,)f(ev)o(en)f(if)i(w)o(e)f(assume)h(that)g(the)f(p)q(erson)h (trying)g(to)g(break)g(the)f(co)q(de)g(gets)h(only)164 1843 y(one)i(of)h(the)f Fr(M)455 1850 y Fk(i)469 1843 y Fv(,)h(c)o(hosen)g (randomly)l(.)37 b(The)21 b(attac)o(k)o(er)g(k)o(eeps)f(generating)i(pairs)h Fr(M)5 b Fv(,)164 1903 y Fr(f)g Fv(\()p Fr(M)g Fv(\))17 b(un)o(til)g(he)f (gets)h(an)f Fr(M)695 1910 y Fk(i)726 1903 y Fv(with)h(\()p Fr(M)f Fv(+)11 b Fr(M)1015 1910 y Fk(i)1030 1903 y Fr(;)d(n)p Fv(\))13 b(=)h Fr(p)j Fv(or)g Fr(q)r Fv(.)164 2067 y Fw(4)83 b(Subset-Sum)16 b(\(Knapsac)n(k\))g(problems)h(and)i(their)288 2159 y(uses)164 2283 y Ft(4.1)70 b(Subset-sum)22 b(problems)g(are)h(hard)164 2375 y Fv(A)16 b(subset)g(of)h(the)f(n)o(um)o(b)q(ers)348 2473 y(267)42 b(493)h(869)g(961)f(1000)h(1153)g(1246)h(1598)f(1766)g(1922)949 2599 y(14)p eop %%Page: 15 15 bop 164 307 a Fv(adds)15 b(up)g(to)f(5842.)22 b(Sp)q(end)15 b(a)g(few)f(min)o(utes)g(trying)h(to)g(\014nd)g(suc)o(h)f(a)g(subset.)21 b(Whether)164 367 y(y)o(ou)16 b(succeed)g(or)g(not,)g(I)g(hop)q(e)h(y)o(ou)f (are)h(con)o(vinced)e(the)h(task)h(is)g(not)g(trivial.)237 452 y(This)22 b(is)g(an)f(example)f(of)i(a)f Fu(subset-sum)26 b Fv(problem.)35 b(In)20 b(general,)j(w)o(e)d(are)h(giv)o(en)164 512 y Fr(n)d Fv(natural)i(n)o(um)o(b)q(ers)e Fr(a)609 519 y Fk(i)641 512 y Fv(and)h(a)g(target)f(n)o(um)o(b)q(er)g Fr(T)25 b Fv(and)19 b(ask)o(ed)f(whether)g(there)f(is)j(a)164 572 y Fr(S)d Fp(\032)c(f)p Fv(1)p Fr(;)8 b(:)g(:)g(:)g(;)g(n)p Fp(g)16 b Fv(with)789 591 y Fj(X)789 683 y Fk(i)p Fl(2)p Fk(S)857 632 y Fr(a)883 639 y Fk(i)911 632 y Fv(=)d Fr(T)104 b Fv(\()p Fp(\003)p Fv(\))164 754 y(A)12 b(seemingly)i(simpler)f(problem)g(is)h(the)e Fu(subset-sum)k(de)n(cision)g Fv(problem.)21 b(F)l(or)13 b(a)g(giv)o(en)164 814 y Fr(a)190 821 y Fk(i)223 814 y Fv(and)20 b Fr(T)7 b Fv(,)19 b(decide)g(whether)g(there)g(is)h(an)g Fr(S)i Fv(for)e(whic)o(h)g(\()p Fp(\003)p Fv(\))f(holds,)i(without)g(b)q(eing)164 874 y(required)c(to)g(iden) o(tify)h(suc)o(h)f(an)g Fr(S)s Fv(.)24 b(Ho)o(w)o(ev)o(er,)15 b(it)j(can)f(b)q(e)h(pro)o(v)o(ed)e(that)i(the)f(decision)164 934 y(problem)g(is)g(just)f(as)h(di\016cult)g(as)g(the)f(subset-sum)h (problem)f(in)h(this)g(sense:)164 1034 y Fq(Theorem)h(11)24 b Fu(Supp)n(ose)c(we)h(had)f(a)g(metho)n(d)f(of)h(solving)i(the)e(subset-sum) i(de)n(cision)164 1094 y(pr)n(oblem.)f(Then)13 b(we)g(c)n(ould)g(solve)g(a)g (subset-sum)h(pr)n(oblem)e(using)h(the)g(assume)n(d)f(metho)n(d)164 1154 y Fr(n)18 b Fu(times.)164 1254 y Fv(\(the)e Fr(n)h Fv(is)g(not)g (particularly)h(imp)q(ortan)o(t|)g(the)e(main)h(thing)h(is)f(that)g(the)f(n)o (um)o(b)q(er)g(of)164 1314 y(uses)g(of)h(the)f(metho)q(d)h(is)g(not)f(to)q(o) i(large.\))237 1399 y(Pro)q(of:)32 b(Begin)21 b(b)o(y)f(using)i(the)f(metho)q (d)g(to)g(decide)g(if)g Fr(T)27 b Fv(is)22 b(a)f(sum)g(of)g(the)f Fr(a)1720 1406 y Fk(i)1734 1399 y Fv(|)164 1459 y(if)g(not,)g(w)o(e)f(can)g (stop)h(immediately)l(.)31 b(Then)19 b(use)g(the)h(metho)q(d)f(to)h (determine)e(if)i(\()p Fp(\003)p Fv(\))164 1519 y(holds)i(for)f(some)g Fr(S)k Fp(\032)d(f)p Fv(2)p Fr(;)8 b(:)g(:)g(:)f(;)h(n)p Fp(g)p Fv(.)35 b(If)21 b(the)f(answ)o(er)i(is)f(y)o(es,)g(w)o(e)g(ignore)h Fr(a)1596 1526 y Fo(1)1636 1519 y Fv(for)f(the)164 1579 y(rest)e(of)f(the)h (analysis.)31 b(If)18 b(the)g(answ)o(er)h(is)h(no,)f(w)o(e)f(kno)o(w)h(w)o(e) f(m)o(ust)g(ha)o(v)o(e)g(1)h Fp(2)f Fr(S)s Fv(.)28 b(In)164 1639 y(this)19 b(second)f(case,)g(w)o(e)g(con)o(tin)o(ue)g(b)o(y)f(using)i (the)f(metho)q(d)h(to)f(decide)g(whether)g(there)164 1700 y(is)f Fr(S)g Fp(\032)c(f)p Fv(3)p Fr(;)8 b(:)g(:)g(:)g(;)g(n)p Fp(g)16 b Fv(with)816 1718 y Fj(X)816 1810 y Fk(i)p Fl(2)p Fk(S)884 1760 y Fr(a)910 1767 y Fk(i)938 1760 y Fv(=)d Fr(T)18 b Fp(\000)11 b Fr(a)1112 1767 y Fo(1)164 1884 y Fv(A)16 b(y)o(es)f(answ)o(er)i(means)f(w)o (e)g(can)g(assume)h(2)j Fr(=)-30 b Fp(2)14 b Fr(S)s Fv(,)i(otherwise)h(2)d Fp(2)g Fr(S)s Fv(.)237 1968 y(The)f(idea)g(of)f(this)i(pro)q(of)f(is)g(more)f (imp)q(ortan)o(t)i(than)f(the)f(sp)q(eci\014c)h(result.)20 b(W)l(e)12 b(sho)o(w)164 2028 y(that)f(one)h(problem)f(is)h(as)g(di\016cult)f (as)h(another)f(b)o(y)g(sho)o(wing)i(that)e(a)g(metho)q(d)h(of)f(solving)164 2089 y(the)18 b(supp)q(osedly)j(easier)e(problem)g(can)f(b)q(e)h(used)g(to)g (solv)o(e)g(another)g(problem.)29 b(This)164 2149 y(in)o(v)o(olv)o(es)17 b(constructing)i(one)e(or)h(sev)o(eral)f(easier)h(problems)g(whose)g (solution)h(answ)o(ers)164 2209 y(the)d(hard)h(problem.)k(W)l(e)16 b(sa)o(w)h(another)g(example)f(of)h(this)g(idea)g(in)f(our)h(discussion)i(of) 164 2269 y(the)d(Rabin)h(encryption)g(system)f(\(section)g Fq(??)p Fv(\).)237 2354 y(Using)f(more)f(elab)q(orate)i(v)o(ersions)f(of)f (the)h(tec)o(hniques)e(in)i(Theorem)f Fq(??)p Fv(,)h(it)g(can)g(b)q(e)164 2414 y(sho)o(wn)20 b(that)g(a)g(metho)q(d)g(of)g(solving)h(the)f(subset-sum)g (decision)g(problem)g(could)h(b)q(e)164 2474 y(used)16 b(to)h(solv)o(e)f(man) o(y)g(other)h(problems,)f(including:)949 2599 y(15)p eop %%Page: 16 16 bop 237 307 a Fp(\017)24 b Fv(F)l(actoring)237 409 y Fp(\017)g Fv(The)16 b(T)l(ra)o(v)o(elling)i(Salesman)f(Problem)237 511 y Fp(\017)24 b Fv(An)o(y)15 b(In)o(teger)g(Programming)j(Problem)237 612 y Fp(\017)24 b Fv(The)16 b(Satis\014abili)q(t)o(y)i(Problem)164 714 y(Don't)g(w)o(orry)f(if)h(y)o(ou)f(are)g(not)h(familiar)h(with)f(the)f (details)i(of)f(these)f(problems.)25 b(The)164 774 y(imp)q(ortan)o(t)d(p)q (oin)o(t)h(is)f(that)f(they)g(are)g(all)i(w)o(ell-kno)o(wn)f(problems)g(for)g (whic)o(h)f(man)o(y)164 834 y(p)q(eople)f(ha)o(v)o(e)e(b)q(een)h(unable)h(to) f(\014nd)g(e\016cien)o(t)f(solution)j(metho)q(ds,)f(whic)o(h)f(mak)o(es)f(it) 164 895 y(unlik)o(ely)13 b(that)h(there)e(is)i(a)f(metho)q(d)g(whic)o(h)g (solv)o(es)g(all)i(subset-sum)e(decision)h(problems)164 955 y(e\016cien)o(tly)h(\(w)o(e)h(will)i(go)f(in)o(to)g(more)f(detail)i(on)e (this)i(in)e(section)h Fq(??)p Fv(\).)237 1040 y(The)g(discussion)i(ab)q(o)o (v)o(e)e(mak)o(es)g(it)g(plausible)i(that)f(some)f(subset-sum)g(problems)164 1100 y(are)h(di\016cult.)27 b(F)l(urther,)18 b(there)f(is)i(some)f(evidence)g (that)g(the)g(\\t)o(ypical")h(subset-sum)164 1160 y(problem)13 b(is)h(not)f(easy)l(.)20 b(V.)11 b(Ch)o(v)m(atal)826 1142 y Fo(2)860 1160 y Fv(has)j(sho)o(wn)f(that)g(if)g(the)g Fr(a)1338 1167 y Fk(i)1364 1160 y Fv(and)g Fr(T)19 b Fv(are)13 b(randomly)164 1220 y(c)o(hosen,)i(then)g(with)g(high)i(probablilit)o(y)g(\(i\))f(there)e (will)j(b)q(e)e(no)h Fr(S)i Fv(for)d(whic)o(h)h(\()p Fp(\003)p Fv(\))f(holds)164 1281 y(\(ii\))i(certain)g(simple)g(w)o(a)o(ys)f(of)h(pro)o (ving)g(this)g(will)h(not)f(w)o(ork.)164 1425 y Ft(4.2)70 b(A)28 b(prop)r(osed)i(public-k)n(ey)d(system)g(based)i(on)g(subset-)321 1500 y(sum)164 1592 y Fv(As)19 b(an)h(example)f(of)h(an)g(easy)g(subset)g (sum)f(problem,)h(consider)g(the)g(task)f(of)h(deter-)164 1652 y(mining)e(what)e(subset)h(of)518 1762 y(1)42 b(3)g(6)g(14)g(27)h(60)f(150)h (300)f(650)h(1400)164 1872 y(adds)17 b(up)f(to)g(836.)22 b(The)16 b Fr(a)641 1879 y Fk(i)671 1872 y Fv(in)h(this)g(problem)f(ha)o(v)o(e)f(the)h (sp)q(ecial)h(prop)q(ert)o(y)f(that)g(ev)o(ery)164 1933 y(n)o(um)o(b)q(er)d (is)h(greater)f(than)h(the)g(sum)f(of)h(all)h(preceding)e(n)o(um)o(b)q(ers)g (\(27)i Fr(>)f Fv(1)5 b(+)g(3)g(+)g(6)g(+)g(14,)164 1993 y(etc\).)21 b(1400)d(clearly)f(cannot)f(b)q(e)h(in)g(the)f(set.)21 b(If)16 b(650)i(is)f(not)g(in)g(the)f(set,)g(w)o(e)f(w)o(ould)j(b)q(e)164 2053 y(in)h(trouble,)g(since)f(the)g(sum)h(of)f(the)g(remaining)i(n)o(um)o(b) q(ers)e(is)h Fr(<)e Fv(650,)i(hence)f Fr(<)f Fv(836.)164 2113 y(Th)o(us)h(650)h(m)o(ust)e(b)q(e)g(in)i(the)e(set,)g(and)i(w)o(e)e(no)o(w)h (ha)o(v)o(e)e(the)i(task)g(of)g(\014nding)g(n)o(um)o(b)q(ers)164 2173 y(whic)o(h)e(add)g(up)g(to)h(836)11 b Fp(\000)f Fv(650)15 b(=)f(186.)22 b(300)17 b(is)g(to)q(o)f(big,)h(and)f(the)g(same)g(reasoning)h (as)164 2233 y(b)q(efore)d(sho)o(ws)g(that)g(150)h(m)o(ust)e(b)q(e)g(in)i (the)e(set.)20 b(If)13 b(w)o(e)g(con)o(tin)o(ue,)h(it)g(is)g(easy)g(to)g (iden)o(tify)164 2294 y(the)i(desired)h(set)f(as)h Fp(f)p Fv(650)p Fr(;)8 b Fv(150)p Fr(;)g Fv(27)p Fr(;)g Fv(6)p Fr(;)g Fv(3)p Fp(g)p Fv(.)p 164 2340 648 2 v 220 2371 a Fn(2)239 2386 y Fm(\\Hard)13 b(Knapsac)o(k)i(Problems,")d Fg(Op)n(er)n(ations)j(R)n(ese)n(ar)n(ch)p Fm(,)e(v)o(ol.)g(28,)g(pp)g(1402{1411)949 2599 y Fv(16)p eop %%Page: 17 17 bop 237 307 a Fv(W)l(e)16 b(b)q(egan)h(with)g(the)f(problem)h(of)g(iden)o (tifying)g(a)g(subset)f(of)348 390 y(267)42 b(493)h(869)g(961)f(1000)h(1153)g (1246)h(1598)f(1766)g(1922)164 473 y(whic)o(h)15 b(adds)h(up)f(to)g(5842.)22 b(What)15 b(w)o(e)g(didn't)g(men)o(tion)f(b)q(efore)h(w)o(as)h(that)f(the)f Fr(a)1658 480 y Fk(i)1687 473 y Fv(w)o(ere)164 533 y(carefully)i(c)o(hosen)f (to)h(mak)o(e)e(them)h(directly)g(related)h(the)f Fr(a)1272 540 y Fk(i)1301 533 y Fv(in)h(the)f(easy)g(subset-sum)164 593 y(problem:)170 676 y(267)g Fp(\021)f Fv(300\(1000\))19 b(mo)q(d)e(2039)50 b(493)15 b Fp(\021)f Fv(27\(1000\))k(mo)q(d)f(2039)50 b(869)15 b Fp(\021)f Fv(60\(1000\))8 b Fr(:)g(:)g(:)164 759 y Fv(where)16 b(2039)h(is)g(a)g(prime)f(c)o(hosen)g(in)g(adv)m(ance)h(\(larger)g(than)g(an) o(y)e(of)i(the)f(n)o(um)o(b)q(ers)f(in)164 819 y(the)h(easy)g(subset-sum)h (problem\))g(and)g(1000)g(is)g(an)g(arbitrarily)i(c)o(hosen)d(n)o(um)o(b)q (er.)237 896 y(T)l(o)21 b(\014nd)g(the)f(subset,)h(b)q(egin)h(b)o(y)e (solving)i(1000)p Fr(x)g Fp(\021)f Fv(1)c(mo)q(d)f(2039,)23 b(whic)o(h)e(giv)o(es)164 957 y Fr(x)14 b Fv(=)f(1307.)22 b(If)14 b(w)o(e)g(let)h Fr(a)601 964 y Fk(i)629 957 y Fv(b)q(e)g(the)f(n)o(um)o(b)q (ers)g(in)h(the)f(easy)h(problem,)f(the)g(hard)h(problem)164 1017 y(can)h(b)q(e)h(written)f(as)662 1035 y Fj(X)663 1127 y Fk(i)p Fl(2)p Fk(S)722 1077 y Fv(\(1000)p Fr(a)863 1084 y Fk(i)878 1077 y Fv(\))e Fp(\021)g Fv(5842)j(mo)q(d)g(2039)164 1188 y(When)f(w)o(e)g(m)o(ultiply)h(b)o(y)f(1307,)h(this)g(b)q(ecomes)688 1229 y Fj(X)756 1271 y Fr(a)782 1278 y Fk(i)810 1271 y Fp(\021)c Fv(1307\(5842\))k Fp(\021)d Fv(1478)164 1353 y(It)i(is)i(easy)f(to)g(iden)o (tify)g Fp(f)p Fv(1400)p Fr(;)8 b Fv(60)p Fr(;)g Fv(14)p Fr(;)g Fv(3)p Fr(;)g Fv(1)p Fp(g)19 b Fv(as)f(a)f(subset)g(whic)o(h)g(adds)g(to)g (1478,)h(and)164 1414 y(the)e(desired)h(subset)f(of)h(the)f(original)j (system)d(is)298 1496 y Fp(f)p Fv(1246)g Fp(\021)d Fv(1400\(1000\))20 b(mo)q(d)c(2039)p Fr(;)8 b Fv(869)17 b Fp(\021)c Fv(60\(1000\))p Fr(;)8 b Fv(176)q(6)p Fr(;)g Fv(96)q(1)p Fr(;)g Fv(10)q(00)p Fp(g)237 1579 y Fv(This)19 b(w)o(ould)g(seem)e(to)i(giv)o(e)e(us)i(a)f(go)q (o)q(d)i(public-k)o(ey)e(system:)24 b(a)18 b(problem)h(whic)o(h)164 1639 y(is)k(easy)g(once)g(some)f(sp)q(ecial)j(information)f(\(the)f(2039)h (and)f(the)f(1000\))j(is)e(kno)o(wn,)164 1700 y(di\016cult)18 b(without)g(the)f(information.)25 b(Unfortunately)l(,)17 b(the)g(sp)q(ecial)i (t)o(yp)q(e)d(of)h(subset-)164 1760 y(sum)23 b(problem)h(created)e(in)i(this) g(w)o(a)o(y)f(can)g(b)q(e)h(solv)o(ed)f(ev)o(en)f(without)i(the)f(sp)q(ecial) 164 1820 y(information.)42 b(There)22 b(is)i(a)f(sequence)e(of)i(pap)q(ers)g (sho)o(wing)i(ho)o(w)e(to)g(solv)o(e)f(sp)q(ecial)164 1880 y(subset-sum)17 b(problems)g(and)g(prop)q(osing)i(a)e(re\014nemen)o(t)e(whic) o(h,)h(in)h(turn,)g(w)o(as)g(solv)o(ed)164 1940 y(b)o(y)j(the)f(next)h(pap)q (er)h(in)g(the)e(sequence.)32 b(This)21 b(has)g(not)g(happ)q(ened)g(with)f (the)g(RSA)164 2001 y(system,)15 b(but)i(there)e(is)i(no)g(guaran)o(tee)g (that)f(it)h(w)o(on't!)164 2141 y Ft(4.3)70 b(Other)22 b(uses)h(of)g(the)f (subset-sum)h(problem)164 2233 y Fv(The)c(results)h(men)o(tioned)f(at)h(the)f (end)g(of)h(the)f(last)h(section)g(do)g Fu(not)k Fv(con)o(tradict)c(the)164 2293 y(presumed)g(di\016cult)o(y)h(of)f(subset-sum)i(problems)f(in)g (general.)35 b(It)20 b(is)i(only)f(the)f(sp)q(e-)164 2354 y(cially)e (constructed)f(problems)g(whic)o(h)g(are)g(kno)o(wn)g(to)g(b)q(e)g(easy)l(.) 23 b(There)17 b(are)f(securit)o(y)164 2414 y(problems)24 b(other)f(than)h (public-k)o(ey)f(co)q(des)h(for)f(whic)o(h)g(subset-sum)h(problems)g(are)164 2474 y(useful.)949 2599 y(17)p eop %%Page: 18 18 bop 164 307 a Fq(4.3.1)55 b(Computer)19 b(passw)n(ords)164 400 y Fv(A)13 b(computer)f(needs)h(to)g(v)o(erify)g(a)g(user's)g(iden)o(tit)o (y)g(b)q(efore)g(allo)o(wing)j(him)d(or)g(her)g(access)164 460 y(to)k(an)g(accoun)o(t.)22 b(The)17 b(simplest)h(system)e(w)o(ould)h(ha)o (v)o(e)f(the)h(mac)o(hine)f(k)o(eep)f(a)i(cop)o(y)g(of)164 520 y(the)e(passw)o(ord)h(in)g(an)f(in)o(ternal)h(\014le,)f(and)h(compare)f (it)g(with)h(what)g(the)f(user)g(t)o(yp)q(es.)20 b(A)164 580 y(dra)o(wbac)o(k)f(is)i(that)e(an)o(y)o(one)h(who)g(sees)f(the)g(in)o(ternal) i(\014le)f(could)g(later)g(imp)q(ersonate)164 640 y(the)c(user.)237 725 y(I)j(b)q(eliev)o(e)g(this)h(alternativ)o(e)f(is)h(actually)h(implemen)o (ted)d(on)i(some)f(systems:)26 b(the)164 786 y(computer)18 b(generates)g(a)h(large)g(n)o(um)o(b)q(er)e(\(sa)o(y)i(500\))g(of)g Fr(a)1242 793 y Fk(i)1255 786 y Fv(.)27 b(They)18 b(are)h(stored)f(in)h(the) 164 846 y(in)o(ternal)f(\014le.)25 b(A)17 b(passw)o(ord)i(is)f(a)g(subset)f (of)h Fp(f)p Fv(1)p Fr(;)8 b(:)g(:)g(:)g(;)g Fv(500)p Fp(g)p Fv(.)25 b(\(in)18 b(practice,)g(there)e(is)j(a)164 906 y(program)13 b(to)f(con)o(v)o(ert)e(a)j(normal)g(sequence-of-sym)o(b)q(ols)f(passw)o(ord)h (to)f(suc)o(h)g(a)g(subset.\))164 966 y(Instead)20 b(of)h(ha)o(ving)g(the)f (passw)o(ord)h(for)g(the)f(user,)h(the)f(computer)f(k)o(eeps)h(the)g(total) 164 1026 y(asso)q(ciated)f(with)f(the)g(appropriate)g(subset.)25 b(When)18 b(the)f(user)g(t)o(yp)q(es)g(in)h(the)f(subset,)164 1087 y(the)f(computer)f(tests)h(whether)g(the)g(total)h(is)g(correct.)j(It)c (do)q(es)g(not)h(k)o(eep)e(a)h(record)g(of)164 1147 y(the)e(subset.)21 b(Th)o(us)15 b(imp)q(ersonation)i(is)e(p)q(ossible)h(only)f(if)g(someb)q(o)q (dy)h(can)e(reconstruct)164 1207 y(the)i(subset)h(kno)o(wing)g(the)f Fr(a)700 1214 y Fk(i)730 1207 y Fv(and)h(the)f(total.)164 1337 y Fq(4.3.2)55 b(Message)19 b(v)n(eri\014cation)164 1429 y Fv(A)c(sender)g (\(S\))h(w)o(an)o(ts)f(to)h(send)f(messages)h(to)g(a)g(receiv)o(er)e(\(R\).)h (Keeping)g(the)h(message)164 1489 y(secret)f(is)h(not)g(imp)q(ortan)o(t.)22 b(Ho)o(w)o(ev)o(er,)13 b(R)j(w)o(an)o(ts)g(to)g(b)q(e)f(sure)h(that)g(the)f (message)h(he)f(is)164 1550 y(receiving)g(is)h(not)f(from)g(an)g(imp)q(oster) g(and)h(has)f(not)g(b)q(een)g(tamp)q(ered)g(with.)21 b Fr(S)d Fv(and)d Fr(R)164 1610 y Fv(agree)f(on)h(a)f(set)g(of)h Fr(a)547 1617 y Fk(i)575 1610 y Fv(\(sa)o(y)f(500\))h(and)g(a)f(set)g(of)h(totals)h Fr(T)1204 1617 y Fk(j)1236 1610 y Fv(\(sa)o(y)e(200\).)21 b(These)14 b(n)o(um)o(b)q(ers)164 1670 y(ma)o(y)f(b)q(e)h(publicly)g(kno)o(wn,)g(but)g (only)g Fr(S)j Fv(kno)o(ws)d(whic)o(h)f(subsets)i(of)e(the)h Fr(a)1524 1677 y Fk(i)1551 1670 y Fv(corresp)q(ond)164 1730 y(to)k(whic)o(h)h Fr(T)396 1737 y Fk(j)413 1730 y Fv(.)27 b(The)18 b(message)g(sen)o(t)f(b)o(y)h Fr(S)j Fv(is)d(a)h(subset)f(of)g(size)g(100)h (of)g Fp(f)p Fv(1)p Fr(;)8 b(:)g(:)g(:)f(;)h Fv(200)p Fp(g)p Fv(.)164 1790 y(He)16 b(do)q(es)j(this)f(b)o(y)e(sending)j(100)f(subsets)g (of)g(the)f Fr(a)1121 1797 y Fk(i)1152 1790 y Fv(corresp)q(onding)i(to)f(the) f(message)164 1851 y(he)f(w)o(an)o(ts)g(to)h(send.)164 2017 y Fw(5)83 b(Subset-Sum)16 b(Problems)i(and)g(NP-Completeness)164 2126 y Fv(The)i(phrase)g(\\NP-complete")g(has)h(an)f(in)o(timidating)i (sound.)33 b(In)19 b(this)i(section,)f(w)o(e)164 2187 y(will)e(\014rst)e (de\014ne)f(a)h(new)g(problem)h(in)o(v)o(olving)g(form)o(ulas)f(in)h(logic,)g (called)g(the)e(Satis\014-)164 2247 y(abilit)o(y)h(Problem)f(\(SP\).)f(W)l(e) g(will)i(use)f(the)f(abbreviation)i(\(SSP\))f(for)f(the)g(subset-sum)164 2307 y(problem.)22 b(Our)16 b(main)h(results)g(will)h(b)q(e:)224 2409 y(1.)24 b(If)18 b(there)h(is)g(an)h(algorithm)h(whic)o(h)e(e\016cien)o (tly)f(solv)o(es)h(\(SSP\),)g(it)h(can)f(b)q(e)g(used)286 2469 y(to)e(e\016cien)o(tly)e(solv)o(e)i(\(SP\).)949 2599 y(18)p eop %%Page: 19 19 bop 224 307 a Fv(2.)24 b(If)16 b(there)f(is)i(an)g(algorithm)h(whic)o(h)f (e\016cien)o(tly)e(solv)o(es)i(\(SP\),)f(it)g(can)h(b)q(e)f(used)h(to)286 367 y(solv)o(e)f(\(SSP\).)224 462 y(3.)24 b(An)17 b(algorithm)i(to)f(solv)o (e)g(\(SP\))g(e\016cien)o(tly)e(w)o(ould)j(giv)o(e)e(e\016cien)o(t)g (solutions)j(to)286 522 y(factoring)d(and)g(man)o(y)f(other)g(problems.)164 663 y Ft(5.1)70 b(The)22 b(Satis\014abilit)n(y)f(Problem)164 755 y Fv(W)l(e)15 b(will)i(use)f(capital)h(letters)e Fr(A)766 762 y Fk(i)780 755 y Fv(,)g Fr(B)846 762 y Fk(i)860 755 y Fv(,)g(to)h(stand)g (for)g(logical)i(v)m(ariables.)23 b(These)15 b(stand)164 815 y(for)23 b(statemen)o(ts)f(lik)o(e)h(\\221)h(is)f(a)g(prime)g(n)o(um)o(b)q (er")f(or)h(\\)p Fs(TH)f Fv(is)i(the)e(most)h(common)164 876 y(t)o(w)o(o-letter)e(sequence)f(in)i(English,")j(whic)o(h)c(are)g(either)g (true)g(or)h(false,)h(i.)e(e.,)g(these)164 936 y(v)m(ariables)16 b(ha)o(v)o(e)e(v)m(alues)i(of)f(either)f Fq(T)h Fv(or)g Fq(F)p Fv(.)f Fp(\030)g Fr(A)1074 943 y Fk(i)1102 936 y Fv(\(\\not)h Fr(A)1267 943 y Fk(i)1281 936 y Fv("\))g(is)g(the)g(statemen)o(t)e(that)164 996 y Fr(A)201 1003 y Fk(i)233 996 y Fv(is)19 b(false,)f(so)h(it)g(has)g(v)m (alue)g Fq(T)f Fv(if)g Fr(A)879 1003 y Fk(i)911 996 y Fv(has)h(v)m(alue)g Fq(F)p Fv(,)e(and)i Fp(\030)e Fr(A)1384 1003 y Fk(i)1416 996 y Fv(has)i(v)m(alue)f Fq(F)h Fv(if)f Fr(A)1769 1003 y Fk(i)164 1056 y Fv(has)f(v)m(alue)g Fq(T)p Fv(.)f(W)l(e)g(will)i(also)g(b)q(e)e(in)o (terested)g(in)h(more)f(elab)q(orate)h(form)o(ulas:)615 1141 y Fr(A)652 1148 y Fo(1)687 1141 y Fv(or)31 b Fp(\030)13 b Fr(A)850 1148 y Fo(2)886 1141 y Fv(or)30 b Fp(\030)14 b Fr(A)1049 1148 y Fo(4)1084 1141 y Fv(or)j Fr(A)1181 1148 y Fo(7)1216 1141 y Fv(or)g Fr(A)1313 1148 y Fo(8)164 1226 y Fv(This)e(form)o(ula)g(sa)o(ys)f (that)h(either)f Fr(A)828 1233 y Fo(1)861 1226 y Fv(is)h(true)f(or)g Fr(A)1103 1233 y Fo(2)1137 1226 y Fv(is)h(false,)f(or)h Fr(A)1400 1233 y Fo(4)1433 1226 y Fv(is)g(false,)g(etc.)20 b(The)164 1287 y(v)m(alue)g(of)f(this)h(form)o(ula)f(will)i(b)q(e)e Fq(T)g Fv(unless)g Fr(A)1035 1294 y Fo(1)1073 1287 y Fv(=)f Fq(F)p Fv(,)i Fr(A)1235 1294 y Fo(2)1272 1287 y Fv(=)e Fq(T)p Fv(,)h Fr(A)1437 1294 y Fo(4)1475 1287 y Fv(=)f Fq(T)p Fv(,)h Fr(A)1640 1294 y Fo(7)1678 1287 y Fv(=)f Fq(F)p Fv(,)164 1347 y Fr(A)201 1354 y Fo(8)234 1347 y Fv(=)c Fq(F)p Fv(.)21 b(Th)o(us,)16 b(there)g(is)h(only)g(one)g(w)o(a)o(y)e(in)i(whic)o(h)g(the)f(form)o(ula)h (will)h(b)q(e)e(false.)237 1425 y(Figure)h Fq(??)22 b Fv(illustrates)c(a)f (satis\014abili)q(t)o(y)h(problem.)k(W)l(e)15 b(w)o(an)o(t)h(to)h(assign)h Fq(T)p Fv(,)d Fq(F)i Fv(to)879 1525 y Fr(A)916 1532 y Fo(1)952 1525 y Fv(or)f Fr(A)1048 1532 y Fo(2)853 1585 y Fp(\030)e Fr(A)943 1592 y Fo(1)978 1585 y Fv(or)j Fr(A)1075 1592 y Fo(5)787 1645 y Fp(\030)c Fr(A)876 1652 y Fo(1)912 1645 y Fv(or)k Fr(A)1009 1652 y Fo(3)1044 1645 y Fv(or)g Fr(A)1141 1652 y Fo(4)846 1705 y Fr(A)883 1712 y Fo(3)919 1705 y Fv(or)30 b Fp(\030)14 b Fr(A)1082 1712 y Fo(5)879 1765 y Fr(A)916 1772 y Fo(4)952 1765 y Fv(or)i Fr(A)1048 1772 y Fo(5)820 1825 y Fp(\030)d Fr(A)909 1832 y Fo(3)945 1825 y Fv(or)30 b Fp(\030)14 b Fr(A)1108 1832 y Fo(4)853 1886 y Fp(\030)g Fr(A)943 1893 y Fo(2)978 1886 y Fv(or)j Fr(A)1075 1893 y Fo(3)727 2014 y Fv(Figure)g(1:)22 b(A)16 b(small)h(\(SP\))164 2121 y(all)h(the)e(v)m(ariables)i(so)f(that)g(all)h(of)e(the)g(form)o(ulas)h (ha)o(v)o(e)f(v)m(alue)h Fq(T)p Fv(.)f(Ev)o(en)f(in)i(this)h(small)164 2181 y(example,)e(it)g(ma)o(y)g(tak)o(e)g(y)o(ou)g(a)g(min)o(ute)g(or)h(so)g (to)g(\014nd)f(suc)o(h)g(an)h(assignmen)o(t.)164 2322 y Ft(5.2)70 b(Con)n(v)n(erting)22 b(\(SP\))h(to)g(\(SSP\))164 2414 y Fv(W)l(e)17 b(w)o(an)o(t)g(to)h(construct)g(n)o(um)o(b)q(ers)f Fr(a)870 2421 y Fk(i)901 2414 y Fv(and)h(a)f(target)h(n)o(um)o(b)q(er)f Fr(T)24 b Fv(so)18 b(that)g(there)e(is)j(a)164 2474 y(subset)g(adding)h(up)e (to)h Fr(T)25 b Fv(if)18 b(and)h(only)h(if)e(there)g(is)h(an)g(assignmen)o(t) g(for)g(\(SP\))g(whic)o(h)949 2599 y(19)p eop %%Page: 20 20 bop 164 307 a Fv(mak)o(es)22 b(all)i(the)e(form)o(ulas)h(true.)39 b(Using)23 b(this)h(construction)f(allo)o(ws)i(us)d(to)h(use)f(an)164 367 y(algorithm)17 b(for)d(\(SSP\))h(to)g(solv)o(e)g(\(SP\).)g(It)f(implies)i (that)f(solving)h(\(SSP\))f(is)h(at)f(least)g(as)164 428 y(hard)i(as)g (solving)h(\(SP\).)237 513 y(W)l(e)g(will)j(illustrate)g(the)d(construction)i (using)g(the)e(example)g(in)i(Figure)f Fq(??)p Fv(.)29 b(W)l(e)164 573 y(will)19 b(ha)o(v)o(e)d(n)o(um)o(b)q(ers)h Fr(a)594 580 y Fo(1)613 573 y Fr(;)8 b(:)g(:)g(:)f(;)h(a)748 580 y Fo(5)784 573 y Fv(corresp)q(onding)19 b(to)f(the)f(logic)h(v)m(ariables)h Fr(A)1598 580 y Fo(1)1617 573 y Fr(;)8 b(:)g(:)g(:)g(;)g(A)1764 580 y Fo(5)164 633 y Fv(with)18 b Fr(A)313 640 y Fk(i)342 633 y Fv(=)d Fq(T)i Fv(corresp)q(onding)i(to)e Fr(a)851 640 y Fk(i)882 633 y Fv(b)q(eing)h(included)g(in)g(the)f(subset.)24 b(W)l(e)16 b(will)j(also)164 693 y(need)d(additional)j Fr(a)534 700 y Fk(i)548 693 y Fv(,)d Fr(i)d(>)h Fv(5)i(for)h(tec)o(hnical)g(reasons.)730 797 y Fr(a)756 804 y Fo(1)789 797 y Fv(=)d(1)p 874 804 2 40 v 19 w(01)p 932 804 V 10 w(01)p 991 804 V 11 w(00)p 1050 804 V 19 w(00)p 1117 804 V 11 w(00)p 1176 804 V 11 w(00)730 837 y Fr(a)756 844 y Fo(2)789 837 y Fv(=)g(2)p 874 844 V 19 w(00)p 932 844 V 10 w(00)p 991 844 V 11 w(00)p 1050 844 V 19 w(00)p 1117 844 V 11 w(00)p 1176 844 V 11 w(01)730 876 y Fr(a)756 883 y Fo(3)789 876 y Fv(=)p 874 883 V 932 883 V 140 w(2)p 991 883 V 10 w(01)p 1050 883 V 19 w(00)p 1117 883 V 11 w(01)p 1176 883 V 11 w(02)730 916 y Fr(a)756 923 y Fo(4)789 916 y Fv(=)p 874 923 V 932 923 V 140 w(4)p 991 923 V 10 w(00)p 1050 923 V 19 w(01)p 1117 923 V 11 w(02)p 1176 923 V 11 w(00)730 956 y Fr(a)756 963 y Fo(5)789 956 y Fv(=)p 874 963 V 81 w(2)p 932 963 V 10 w(00)p 991 963 V 11 w(02)p 1050 963 V 19 w(02)p 1117 963 V 11 w(00)p 1176 963 V 11 w(00)730 995 y Fr(a)756 1002 y Fo(6)789 995 y Fv(=)g(1)p 874 1002 V 19 w(00)p 932 1002 V 10 w(00)p 991 1002 V 11 w(00)p 1050 1002 V 19 w(00)p 1117 1002 V 11 w(00)p 1176 1002 V 11 w(00)730 1035 y Fr(a)756 1042 y Fo(7)789 1035 y Fv(=)g(2)p 874 1042 V 19 w(00)p 932 1042 V 10 w(00)p 991 1042 V 11 w(00)p 1050 1042 V 19 w(00)p 1117 1042 V 11 w(00)p 1176 1042 V 11 w(00)730 1074 y Fr(a)756 1081 y Fo(8)789 1074 y Fv(=)p 874 1081 V 81 w(1)p 932 1081 V 10 w(00)p 991 1081 V 11 w(00)p 1050 1081 V 19 w(00)p 1117 1081 V 11 w(00)p 1176 1081 V 11 w(00)730 1114 y Fr(a)756 1121 y Fo(9)789 1114 y Fv(=)p 874 1121 V 81 w(1)p 932 1121 V 10 w(00)p 991 1121 V 11 w(00)p 1050 1121 V 19 w(00)p 1117 1121 V 11 w(00)p 1176 1121 V 11 w(00)712 1153 y Fr(a)738 1160 y Fo(10)789 1153 y Fv(=)p 874 1160 V 81 w(4)p 932 1160 V 10 w(00)p 991 1160 V 11 w(00)p 1050 1160 V 19 w(00)p 1117 1160 V 11 w(00)p 1176 1160 V 11 w(00)712 1193 y Fr(a)738 1200 y Fo(11)789 1193 y Fv(=)p 874 1200 V 932 1200 V 140 w(1)p 991 1200 V 10 w(00)p 1050 1200 V 19 w(00)p 1117 1200 V 11 w(00)p 1176 1200 V 11 w(00)712 1233 y Fr(a)738 1240 y Fo(12)789 1233 y Fv(=)p 874 1240 V 932 1240 V 140 w(2)p 991 1240 V 10 w(00)p 1050 1240 V 19 w(00)p 1117 1240 V 11 w(00)p 1176 1240 V 11 w(00)712 1272 y Fr(a)738 1279 y Fo(13)789 1272 y Fv(=)p 874 1279 V 932 1279 V 140 w(3)p 991 1279 V 10 w(00)p 1050 1279 V 19 w(00)p 1117 1279 V 11 w(00)p 1176 1279 V 11 w(00)712 1312 y Fr(a)738 1319 y Fo(14)789 1312 y Fv(=)p 874 1319 V 932 1319 V 140 w(8)p 991 1319 V 10 w(00)p 1050 1319 V 19 w(00)p 1117 1319 V 11 w(00)p 1176 1319 V 11 w(00)712 1351 y Fr(a)738 1358 y Fo(15)789 1351 y Fv(=)p 874 1358 V 932 1358 V 991 1358 V 198 w(1)p 1050 1358 V 19 w(00)p 1117 1358 V 11 w(00)p 1176 1358 V 11 w(00)712 1391 y Fr(a)738 1398 y Fo(16)789 1391 y Fv(=)p 874 1398 V 932 1398 V 991 1398 V 198 w(3)p 1050 1398 V 19 w(00)p 1117 1398 V 11 w(00)p 1176 1398 V 11 w(00)718 1429 y Fr(:)8 b(:)g(:)13 b Fv(=)p 874 1429 2 18 v 932 1429 V 991 1429 V 1050 1429 V 233 w Fr(:)8 b(:)g(:)p 1117 1429 V 1176 1429 V 740 1475 a(T)20 b Fv(=)14 b(4)p 874 1475 2 35 v 19 w(04)p 932 1475 V 10 w(08)p 991 1475 V 11 w(04)p 1050 1475 V 19 w(04)p 1117 1475 V 11 w(04)p 1176 1475 V 11 w(04)650 1604 y(Figure)i(2:)22 b(Subset-sum)17 b(problem)237 1747 y(The)23 b(subset-sum)h(problem)f(is)h(sho)o(wn)g(in)g(Figure)f Fq(??)p Fv(.)43 b(F)l(or)23 b(clarit)o(y)l(,)i(w)o(e)e(ha)o(v)o(e)164 1807 y(divided)17 b(the)f(n)o(um)o(b)q(ers)g(in)o(to)h(zones.)k Fr(T)h Fv(will)c(b)q(e)f(a)f(sum)h(of)f(a)h(subset)f(of)h(the)f Fr(a)1630 1814 y Fk(i)1660 1807 y Fv(if)g(and)164 1868 y(only)j(if)g(the)f (totals)i(within)g(eac)o(h)e(zone)g(are)h(appropriate.)29 b(Eac)o(h)18 b(zone)h(corresp)q(onds)164 1928 y(to)c(one)g(of)f(the)h(logic)h(form)o (ulas.)21 b(F)l(or)15 b Fr(a)886 1935 y Fo(1)920 1928 y Fv(through)g Fr(a)1128 1935 y Fo(5)1148 1928 y Fv(,)f(the)g(v)m(alue)h(in)h(a)f(zone)f(is) h(0)g(if)g(the)164 1988 y(corresp)q(onding)j Fr(A)514 1995 y Fk(i)545 1988 y Fv(do)q(es)f(not)g(app)q(ear)g(in)g(the)g(logic)h(form)o (ula.)k(If)16 b Fr(A)1443 1995 y Fk(i)1473 1988 y Fv(do)q(es)h(app)q(ear,)h (a)164 2048 y(p)q(o)o(w)o(er)d(of)h(2)g(is)g(used.)21 b(\(the)15 b(reason)h(for)f(using)i(p)q(o)o(w)o(ers)f(of)f(2)h(is)g(that)g(di\013eren)o (t)f(subsets)164 2108 y(of)i Fp(f)p Fr(a)271 2115 y Fo(1)290 2108 y Fr(;)8 b(:)g(:)g(:)f(;)h(a)425 2115 y Fo(5)444 2108 y Fp(g)16 b Fv(will)j(ha)o(v)o(e)c(di\013eren)o(t)h(totals\))237 2193 y(The)h(leftmost)h(zone)f(corresp)q(onds)h(to)g(the)e(\014rst)i(logic)g (form)o(ula)g(in)g(our)g(example:)164 2254 y Fr(A)201 2261 y Fo(1)237 2254 y Fv(or)e Fr(A)333 2261 y Fo(2)352 2254 y Fv(.)26 b(By)16 b(making)j(suitable)g(decisions)g(ab)q(out)g(inclusion)h(of)d Fr(a)1459 2261 y Fo(6)1496 2254 y Fv(or)h Fr(a)1583 2261 y Fo(7)1602 2254 y Fv(,)g(w)o(e)f(will)164 2314 y(b)q(e)g(able)g(to)g(get)g(a)g (total)h(of)f(4)g(in)h(this)f(zone,)f(unless)i(b)q(oth)g Fr(a)1296 2321 y Fo(1)1332 2314 y Fv(and)f Fr(a)1453 2321 y Fo(2)1489 2314 y Fv(are)g(left)f(out)i(of)164 2374 y(the)e(set,)g(whic)o(h)g(is)h (precisely)g(what)g(w)o(ould)g(mak)o(e)e(the)h(logic)i(form)o(ula)f(ha)o(v)o (e)e(v)m(alue)i Fq(F)p Fv(.)237 2459 y(The)e(second)f(zone)h(corresp)q(onds)h (to)f Fp(\030)e Fr(A)1014 2466 y Fo(1)1050 2459 y Fv(or)j Fr(A)1146 2466 y Fo(5)1166 2459 y Fv(,)e(whic)o(h)h(has)g(v)m(alue)h Fq(T)e Fv(unless)i Fr(a)1764 2466 y Fo(1)949 2599 y Fv(20)p eop %%Page: 21 21 bop 164 307 a Fv(is)19 b(in)h(the)e(set)g(and)i Fr(a)563 314 y Fo(5)601 307 y Fv(is)f(not.)29 b Fr(a)791 314 y Fo(8)810 307 y Fv(,)19 b Fr(a)869 314 y Fo(9)888 307 y Fv(,)g(and)g Fr(a)1044 314 y Fo(10)1100 307 y Fv(can)f(b)q(e)h(used)g(to)g(get)f(the)h (total)h(for)164 367 y(the)c(zone)g(equal)h(to)f(4)h(in)g(an)o(y)f(other)g (case.)237 452 y(Similarly)l(,)h(eac)o(h)e(of)h(the)f(other)g(zones)940 434 y Fo(3)975 452 y Fv(has)h Fr(a)1087 459 y Fk(i)1116 452 y Fv(asso)q(ciated)i(with)e(it)g(whic)o(h)f(can)h(b)q(e)164 513 y(used)g(to)h(obtain)h(the)e(correct)f(total)j(except)d(in)i(one)f(case.) 237 598 y(The)c(general)h(problem)f(is)h(that)f(w)o(e)g(w)o(an)o(t)f(n)o(um)o (b)q(ers)h(whic)o(h)g(can)g(b)q(e)g(used)g(to)g(obtain)164 658 y(an)o(y)j(total)i(b)q(et)o(w)o(een)d(1)h(and)h(2)715 640 y Fk(n)739 658 y Fv(,)f(except)f(for)i(one)f(\\forbidden)h(total")h Fr(M)5 b Fv(.)22 b([In)14 b(the)h(t)o(w)o(o)164 718 y(zones)d(discussed)i(ab) q(o)o(v)o(e)e Fr(M)18 b Fv(is)13 b(4)g(in)f(one)h(case)f(and)h(3)g(in)g(the)f (other])g(W)l(e)g(start)h(with)g(the)164 778 y(p)q(o)o(w)o(ers)k(of)h(2)f (from)g(1)h(to)g(2)667 760 y Fk(n)690 778 y Fv(.)24 b(If)17 b(2)802 760 y Fk(j)836 778 y Fp(\024)e Fr(M)21 b(<)15 b Fv(2)1035 760 y Fk(j)r Fo(+1)1099 778 y Fv(,)i(replace)g(2)1320 760 y Fk(j)1356 778 y Fv(b)o(y)f(the)h(t)o(w)o(o)g(n)o(um)o(b)q(ers)164 839 y Fr(M)h Fp(\000)12 b Fv(2)304 820 y Fk(j)342 839 y Fv(and)19 b Fr(M)f Fv(+)12 b(1.)29 b([W)l(e)18 b(did)h(not)g(follo)o(w)h(exactly)e(the) h(pro)q(cedure)f(describ)q(ed)h(in)164 899 y(this)e(paragraph)h(in)f (constructing)g(Figure)g Fq(??)p Fv(.])164 1043 y Ft(5.3)70 b(Con)n(v)n(erting)22 b(\(SSP\))h(to)g(\(SP\))164 1135 y Fv(Supp)q(ose)e(w)o (e)e(ha)o(v)o(e)g(a)i(subset-sum)f(problem)g(with)h(50)g Fr(a)1254 1142 y Fk(i)1267 1135 y Fv(,)g(all)g(b)q(et)o(w)o(een)e(1)h(and)h(2)1732 1117 y Fo(20)1769 1135 y Fv(,)164 1196 y(with)f Fr(T)26 b(<)18 b Fv(50\(2)480 1178 y Fo(20)519 1196 y Fv(\))h Fr(<)g Fv(2)638 1178 y Fo(26)676 1196 y Fv(.)30 b(Solving)21 b(the)e(SSP)h(ma)o(y)f(b)q(e)g (crudely)g(brok)o(en)g(in)o(to)h(t)o(w)o(o)164 1256 y(steps:)224 1358 y(1.)k(Decide)16 b(whic)o(h)h Fr(a)611 1365 y Fk(i)641 1358 y Fv(are)f(in)h(the)f(subset.)224 1459 y(2.)24 b(V)l(erify)16 b(that)g(the)g(sum)g(of)h(the)f(c)o(hosen)g Fr(a)1044 1466 y Fk(i)1074 1459 y Fv(is)h Fr(T)7 b Fv(.)164 1561 y(Our)19 b(\(SP\))h(will)h(also)g(carry)f(out)g(these)f(steps.)31 b(The)19 b(\014rst)h(is)g(simple:)28 b(w)o(e)19 b(will)j(ha)o(v)o(e)164 1621 y(logic)i(v)m(ariables)g Fr(A)529 1628 y Fo(1)548 1621 y Fr(;)8 b(:)g(:)g(:)g(;)g(A)695 1628 y Fo(50)753 1621 y Fv(with)24 b Fr(A)908 1628 y Fk(i)945 1621 y Fv(=)g Fq(T)e Fv(corresp)q(onding)i(to)f Fr(a)1479 1628 y Fk(i)1515 1621 y Fv(b)q(eing)g(in)g(the)164 1681 y(subset.)36 b(T)l(o)22 b(carry)e(out)i(the)f(second)g(step,)h(w)o(e)e (need)h(to)g(construct)h(a)f(set)g(of)g(logic)164 1742 y(form)o(ulas)c(whic)o (h)g(acts)f(as)h(an)g(\\adding)h(mac)o(hine")e(to)h(c)o(hec)o(k)d(the)i (total.)237 1827 y(W)l(e)c(will)i(represen)o(t)d(n)o(um)o(b)q(ers)h(in)g (base)h(2.)20 b(Since)12 b(all)i(relev)m(an)o(t)e(n)o(um)o(b)q(ers)g(are)g Fr(<)i Fv(2)1732 1809 y Fo(26)1769 1827 y Fv(,)164 1887 y(n)o(um)o(b)q(ers)k (ma)o(y)h(b)q(e)g(represen)o(ted)f(b)o(y)g(26)i(logical)i(v)m(ariables.)31 b(F)l(or)19 b(eac)o(h)g(1)g Fp(\024)f Fr(i)g Fp(\024)h Fv(50,)164 1947 y(w)o(e)i(will)i(ha)o(v)o(e)e(v)m(ariables)i Fr(B)700 1954 y Fk(i)p Fo(1)732 1947 y Fr(;)8 b(:)g(:)g(:)g(;)g(B)879 1954 y Fk(i)p Fo(26)928 1947 y Fv(.)37 b(These)21 b(will)j(represen)o(t)c Fr(a)1464 1954 y Fk(i)1499 1947 y Fv(if)i Fr(A)1586 1954 y Fk(i)1623 1947 y Fv(=)g Fq(T)p Fv(,)h(0)164 2007 y(if)e Fr(A)250 2014 y Fk(i)284 2007 y Fv(=)f Fq(F)p Fv(.)34 b(T)l(o)20 b(do)h(this,)h(w)o(e) d(need)h(form)o(ulas)h(whic)o(h)g(sho)o(w)f(ho)o(w)h(the)f(v)m(alue)h(of)f Fr(A)1769 2014 y Fk(i)164 2067 y Fv(determines)c(the)g(v)m(alue)h(of)f(all)i (the)e Fr(B)865 2074 y Fk(ij)895 2067 y Fv(:)457 2177 y Fp(\030)d Fr(A)546 2184 y Fk(i)576 2177 y Fv(or)k Fr(B)673 2184 y Fk(ij)752 2177 y Fr(A)789 2184 y Fk(i)819 2177 y Fv(or)30 b Fp(\030)14 b Fr(B)982 2184 y Fk(ij)1061 2177 y Fv(if)j Fr(j)s Fv(th)f(digit)i(of)e Fr(a)1386 2184 y Fk(i)1414 2177 y Fv(=)e(1)164 2287 y(with)j(the)f(simple)h (form)o(ula)g Fp(\030)d Fr(B)780 2294 y Fk(ij)826 2287 y Fv(if)j(the)f Fr(j)s Fv(th)g(digit)i(of)e Fr(a)1235 2294 y Fk(i)1265 2287 y Fv(is)h(0.)p 164 2335 648 2 v 220 2366 a Fn(3)239 2381 y Fm(W)m(e)c(ha)o(v)o(e)h(omitted)e(the)j Ff(a)654 2387 y Fe(i)681 2381 y Fm(for)f(the)h(last)e(three)i(zones)g(in)f(Figure)g Fd(??)p Fm(.)949 2599 y Fv(21)p eop %%Page: 22 22 bop 237 307 a Fv(Next,)16 b(w)o(e)g(need,)h(for)g(2)f Fp(\024)e Fr(i)h Fp(\024)g Fv(50,)j(v)m(ariables)g Fr(C)1143 314 y Fk(i)p Fo(1)1175 307 y Fr(;)8 b(:)g(:)g(:)g(C)1298 314 y Fk(i)p Fo(26)1364 307 y Fv(whic)o(h)17 b(represen)o(t)f(the)164 367 y(total)22 b(of)e(the)g(\014rst)h Fr(i)f Fv(of)g(the)h(n)o(um)o(b)q(ers)e(giv)o(en)i(b)o (y)f(the)g Fr(B)s Fv(-v)m(ariables.)35 b(F)l(orm)o(ulas)21 b(are)164 428 y(needed)16 b(whic)o(h)g(sho)o(w)h(the)f Fr(B)s Fv(-v)m(ariables)i(determining)f(the)f Fr(C)t Fv(-v)m(ariables.)237 510 y(W)l(e)f(b)q(egin)i(with)f(a)g(set)f(of)h(form)o(ulas)g Fp(S)t Fv(\()p Fr(V)s(;)8 b(W)o(;)g(X)q(;)g(Y)s(;)g(Z)t Fv(\))15 b(whic)o(h)h(ha)o(v)o(e)e Fr(Y)27 b Fv(get)15 b(v)m(alue)164 570 y Fq(T)j Fv(if)g(and)g(only)h(if)f(an)g(o)q(dd)h(n)o(um)o(b)q(er)d(of)i Fr(V)s(;)8 b(W)o(;)g(X)22 b Fv(ha)o(v)o(e)17 b(v)m(alue)h Fq(T)p Fv(.)g Fr(Z)j Fv(gets)d(v)m(alue)h Fq(T)e Fv(if)164 630 y(and)g(only)g(if)g (2)f(or)h(3)f(of)h Fr(V)s(;)8 b(W)o(;)g(X)20 b Fv(ha)o(v)o(e)c(v)m(alue)h Fq(T)p Fv(:)449 726 y Fr(V)27 b Fv(or)17 b Fr(W)23 b Fv(or)17 b Fr(X)j Fv(or)31 b Fp(\030)13 b Fr(Y)186 b Fp(\030)14 b Fr(V)27 b Fv(or)k Fp(\030)13 b Fr(W)23 b Fv(or)17 b Fr(Z)449 786 y Fp(\030)d Fr(V)27 b Fv(or)17 b Fr(W)23 b Fv(or)16 b Fr(X)21 b Fv(or)c Fr(Y)199 b Fp(\030)14 b Fr(V)27 b Fv(or)k Fp(\030)13 b Fr(X)21 b Fv(or)16 b Fr(Z)449 846 y(V)27 b Fv(or)k Fp(\030)14 b Fr(W)23 b Fv(or)16 b Fr(X)21 b Fv(or)16 b Fr(Y)186 b Fp(\030)14 b Fr(W)23 b Fv(or)30 b Fp(\030)14 b Fr(X)20 b Fv(or)d Fr(Z)449 907 y(V)27 b Fv(or)17 b Fr(W)23 b Fv(or)31 b Fp(\030)13 b Fr(X)21 b Fv(or)16 b Fr(Y)186 b(V)28 b Fv(or)16 b Fr(W)23 b Fv(or)31 b Fp(\030)13 b Fr(Z)449 967 y Fp(\030)h Fr(V)27 b Fv(or)k Fp(\030)13 b Fr(W)23 b Fv(or)17 b Fr(X)j Fv(or)31 b Fp(\030)13 b Fr(Y)67 b(V)28 b Fv(or)16 b Fr(X)21 b Fv(or)30 b Fp(\030)14 b Fr(Z)449 1027 y Fp(\030)g Fr(V)27 b Fv(or)17 b Fr(W)23 b Fv(or)30 b Fp(\030)14 b Fr(X)20 b Fv(or)31 b Fp(\030)13 b Fr(Y)67 b(W)23 b Fv(or)17 b Fr(X)j Fv(or)31 b Fp(\030)13 b Fr(Z)449 1087 y(V)27 b Fv(or)k Fp(\030)14 b Fr(W)23 b Fv(or)30 b Fp(\030)14 b Fr(X)20 b Fv(or)31 b Fp(\030)13 b Fr(Y)449 1147 y Fp(\030)h Fr(V)27 b Fv(or)k Fp(\030)13 b Fr(W)23 b Fv(or)31 b Fp(\030)13 b Fr(X)21 b Fv(or)16 b Fr(Y)164 1247 y Fv(If)10 b Fr(V)s(;)e(W)o(;)g(X)15 b Fv(represen)o(t)10 b(three)g(one-digit)j(n)o(um)o(b)q(ers)d(\(0)h(or)h (1\),)f(the)g(form)o(ulas)h Fp(S)t Fv(\()p Fr(V)s(;)c(W)o(;)g(X)q(;)g(Y)s(;)g (Z)t Fv(\))164 1307 y(ha)o(v)o(e)15 b(the)h(e\013ect)f(that)i Fr(Y)27 b Fv(is)17 b(the)f(n)o(um)o(b)q(er)f(in)i(the)e(column)i(with)g(the)e (three)h(n)o(um)o(b)q(ers,)164 1367 y(while)h Fr(Z)k Fv(sho)o(ws)c(whether)f (there)f(is)i(a)g(n)o(um)o(b)q(er)e(carried)i(in)o(to)g(the)f(next)g(column.) 237 1450 y(W)l(e)21 b(will)i(use)e Fr(D)552 1457 y Fk(i)p Fo(1)585 1450 y Fv(,)p Fr(:)8 b(:)g(:)f Fv(,)p Fr(D)718 1457 y Fk(i)p Fo(27)767 1450 y Fv(,)22 b(2)h Fp(\024)f Fr(i)g Fp(\024)g Fv(50,)g(to)g(k)o (eep)e(trac)o(k)h(of)g(n)o(um)o(b)q(ers)g(b)q(eing)164 1510 y(carried.)39 b(Since)22 b(there)f(are)h(no)g(n)o(um)o(b)q(ers)g(carried)g (in)h(the)e(righ)o(tmost)i(column,)g(w)o(e)164 1570 y(ha)o(v)o(e)15 b(the)h(form)o(ulas)i Fp(\030)13 b Fr(D)651 1577 y Fk(i)p Fo(1)683 1570 y Fv(.)22 b(The)16 b(form)o(ulas)510 1670 y Fp(S)t Fv(\()p Fr(B)600 1677 y Fo(1)p Fk(j)635 1670 y Fr(;)8 b(B)694 1677 y Fo(2)p Fk(j)730 1670 y Fr(;)g(D)792 1677 y Fo(2)p Fk(j)828 1670 y Fr(;)g(C)885 1677 y Fo(2)p Fk(j)921 1670 y Fr(;)g(D)983 1678 y Fo(2\()p Fk(j)r Fo(+1\))1092 1670 y Fv(\))97 b(1)15 b Fp(\024)e Fr(j)k Fp(\024)d Fv(26)164 1770 y(ha)o(v)o(e)g(the)g(e\013ect)g (of)g(making)i Fr(C)743 1777 y Fo(2)p Fk(j)793 1770 y Fv(represen)o(t)d(the)i (sum)f(of)h(the)f(n)o(um)o(b)q(ers)g Fr(B)1553 1777 y Fo(1)p Fk(j)1603 1770 y Fv(and)h Fr(B)1733 1777 y Fo(2)p Fk(j)1769 1770 y Fv(.)164 1830 y(T)l(o)i(ha)o(v)o(e)e Fr(C)383 1837 y Fk(ij)430 1830 y Fv(represen)o(t)g(the)h(sum)g(of)h Fr(C)918 1838 y Fo(\()p Fk(i)p Fl(\000)p Fo(1\))p Fk(j)1037 1830 y Fv(and)g Fr(B)1169 1837 y Fk(ij)1199 1830 y Fv(,)f(w)o(e)f(use)353 1931 y Fp(S)t Fv(\()p Fr(B)443 1938 y Fk(ij)473 1931 y Fr(;)8 b(C)530 1938 y Fo(\()p Fk(i)p Fl(\000)p Fo(1\))p Fk(j)632 1931 y Fr(;)g(D)694 1938 y Fk(ij)725 1931 y Fr(;)g(C)782 1938 y Fk(ij)812 1931 y Fr(;)g(D)874 1938 y Fk(i)p Fo(\()p Fk(j)r Fo(+1\))977 1931 y Fv(\))98 b(3)14 b Fp(\024)g Fr(i)f Fp(\024)h Fv(50)49 b(1)14 b Fp(\024)g Fr(j)j Fp(\024)c Fv(26)237 2053 y(These)e(logic)i(form)o(ulas)g (together)e(ha)o(v)o(e)g(the)g(e\013ect)g(that)h(the)f Fr(A)1391 2060 y Fk(i)1416 2053 y Fv(determine)g(the)g Fr(B)1755 2060 y Fk(i)1769 2053 y Fv(,)164 2113 y(whic)o(h)18 b(determine)e Fr(C)568 2120 y Fo(2)p Fk(j)621 2113 y Fv(through)j Fr(C)842 2120 y Fo(50)p Fk(j)912 2113 y Fv(successiv)o(ely)l(.)24 b(This)19 b(last)f(group)g(of)g(v)m(ariables)164 2173 y(corresp)q(onds)c(to)g(the)f (base-2)h(represen)o(tation)f(of)h(the)f(sum)g(of)g(the)g Fr(a)1420 2180 y Fk(i)1447 2173 y Fv(whic)o(h)g(are)g(in)h(the)164 2233 y(set)j(w)o(e)g(ha)o(v)o(e)g(c)o(hosen.)25 b(Finally)l(,)19 b(w)o(e)e(add)h(the)f(form)o(ulas)h Fr(C)1272 2240 y Fo(50)p Fk(j)1343 2233 y Fv(or)g Fp(\030)e Fr(C)1494 2240 y Fo(50)p Fk(j)1565 2233 y Fv(dep)q(ending)164 2293 y(on)24 b(whether)f(the)g Fr(j)s Fv(th)h(digit)h(of)f Fr(T)29 b Fv(is)c(1)f(or)f(0.)44 b(As)23 b(planned,)j(a)d(solution)j(to)e(this)164 2354 y(satis\014abili)q(t)o (y)g(problem)e(giv)o(es)g(a)h(solution)h(to)e(the)g(subset-sum)g(problem)g (\(lo)q(ok)i(at)164 2414 y(whic)o(h)15 b Fr(A)339 2421 y Fk(i)368 2414 y Fv(ha)o(v)o(e)f(v)m(alue)i Fq(T)p Fv(\),)f(whic)o(h)g(implies)i(that)e (a)h(metho)q(d)f(of)g(solving)i(\(SP\))f(can)f(b)q(e)164 2474 y(used)h(to)h(solv)o(e)f(\(SSP\).)949 2599 y(22)p eop %%Page: 23 23 bop 237 307 a Fv(The)21 b(\(SP\))g(w)o(e)f(ha)o(v)o(e)g(constructed)h(is)h (rather)e(large,)j(in)o(v)o(olving)f(appro)o(ximately)164 367 y(15\(26\)\(50\))e(form)o(ulas.)27 b(Ho)o(w)o(ev)o(er,)16 b(the)i(rate)g(of)g (gro)o(wth)g(if)h(w)o(e)e(had)i(more)e Fr(a)1614 374 y Fk(i)1646 367 y Fv(with)i(a)164 428 y(larger)e(upp)q(er)g(limit)g(is)g(not)g(to)q(o)g (bad.)164 572 y Ft(5.4)70 b(Co)r(ok's)23 b(Theorem)164 664 y Fv(It)18 b(is)h(more)e(imp)q(ortan)o(t)j(to)e(understand)h(the)f(general)h (idea)f(of)h(what)g(w)o(e)e(did)i(in)g(sec-)164 725 y(tion)c Fq(??)22 b Fv(than)15 b(to)g(get)g(in)o(v)o(olv)o(ed)f(in)h(the)f(details)i (of)f(the)f(construction)i(of)f(the)f(\\adding)164 785 y(mac)o(hine.")34 b(W)l(e)20 b(used)h(logical)i(v)m(ariables)f(\(the)e Fr(A)1121 792 y Fk(i)1135 785 y Fv(\))g(to)h(represen)o(t)e(our)i(guess)g(as)h(to)164 845 y(what)i(a)f(solution)j(to)d(the)g(\(SSP\))h(w)o(as,)h(then)e (constructed)g(a)g(set)g(of)h(form)o(ulas)g(to)164 905 y(v)o(erify)15 b(the)h(guess)h(w)o(as)g(correct.)237 990 y(Y)l(ou)22 b(should)i(b)q(e)e (able)h(to)f(con)o(vince)g(y)o(ourself)g(that)g(a)h(similar)h(thing)f(could)g (b)q(e)164 1050 y(done)15 b(with)h(a)f(factoring)i(problem.)k(W)l(e)15 b(could)g(ha)o(v)o(e)g(v)m(ariables)i Fr(A)1401 1057 y Fk(i)1429 1050 y Fv(and)f Fr(B)1560 1057 y Fk(i)1589 1050 y Fv(represen)o(t)164 1111 y(our)i(guesses)h(as)f(to)g(t)o(w)o(o)g(factors,)g(then)g(construct)g(a) g(\\m)o(ultiplication)j(mac)o(hine")d(to)164 1171 y(v)o(erify)12 b(that)i(the)f(pro)q(duct)h(is)g(what)g(w)o(e)f(w)o(an)o(t.)20 b(Th)o(us)14 b(an)g(e\016cien)o(t)e(algorithm)j(for)f(\(SP\))164 1231 y(w)o(ould)j(lead)g(to)g(an)g(e\016cien)o(t)e(algorithm)j(for)e (factoring)1200 1213 y Fo(4)1222 1231 y Fv(.)237 1316 y(Man)o(y)h(other)g (problems)g(can)h(b)q(e)f(view)o(ed)f(as)i(making)g(some)f(guesses)g(as)h(to) f(what)164 1376 y(the)22 b(correct)f(answ)o(er)i(is,)g(with)g(the)f(pro)q (cess)h(of)f(v)o(eri\014cation)h(relativ)o(ely)g(easy)l(.)38 b(An)164 1436 y(example)16 b(migh)o(t)h(b)q(e)f(an)h(in)o(teger)f (programming)i(problem:)857 1542 y(max)8 b Fr(cx)857 1602 y(Ax)14 b Fp(\024)f Fr(b)857 1663 y(x)885 1670 y Fk(i)913 1663 y Fv(=)h(0)i(or)h(1) 164 1769 y(W)l(e)f(ask)g(if)g(there)f(is)i(a)f(feasible)h(solution)h(with)f (ob)s(jectiv)o(e)e(function)h(v)m(alue)h Fr(>)d(K)t Fv(.)21 b(F)l(or)164 1829 y(a)16 b(giv)o(en)g Fr(x)p Fv(,)f(it)i(is)g(easy)f(to)g(c)o (hec)o(k)e(that)i(it)h(satis\014es)g(all)g(the)f(problem)g(constrain)o(ts)h (and)164 1890 y(tell)g(if)g(the)f(v)m(alue)h(is)g(big)g(enough.)237 1975 y(The)i(detailed)h(construction)g(in)g(section)f Fq(??)31 b Fv(w)o(as)20 b(in)o(tended)f(primarily)h(to)f(con-)164 2035 y(vince)f(y)o(ou)h(that,)g(if)h(a)f(v)o(eri\014cation)g(can)g(b)q(e)g(done)g (e\016cien)o(tly)l(,)f(it)h(can)g(b)q(e)g(sim)o(ulated)164 2095 y(b)o(y)d(a)g(set)h(of)f(logic)i(form)o(ulas.)k(It)16 b(should)h(mak)o(e)f(y)o(ou)g(willing)j(to)e(b)q(eliev)o(e)164 2197 y Fq(Theorem)h(12)g(\(Co)r(ok\))24 b Fu(A)o(ny)18 b(\\guess)i(and)f (verify")f(pr)n(oblem)h(c)n(an)g(b)n(e)g(c)n(onverte)n(d)g(to)164 2257 y(a)e(satis\014ability)i(pr)n(oblem.)j(Thus,)c(an)g(e\016cient)h (algorithm)f(for)e(\(SP\))i(c)n(an)g(e\016ciently)164 2317 y(solve)h(any)e(\\guess)h(and)g(verify")f(pr)n(oblem.)p 164 2361 648 2 v 220 2392 a Fn(4)239 2407 y Fm(Unlik)o(e)f(\(SSP\),)h(nob)q(o)q (dy)g(has)f(b)q(een)i(able)f(to)g(sho)o(w)f(that)h(an)g(algorithm)d(for)j (factoring)f(w)o(ould)164 2456 y(giv)o(e)d(an)h(algorithm)d(for)j(\(SP\).)949 2599 y Fv(23)p eop %%Page: 24 24 bop 164 307 a Ft(5.5)70 b(T)-6 b(erminology)164 400 y Fv(The)21 b(concept)f(w)o(e)g(ha)o(v)o(e)g(v)m(aguely)h(describ)q(ed)g(as)g(solving)i (e\016cien)o(tly)d(is)h(tec)o(hnically)164 460 y(kno)o(wn)d(as)g(\\p)q (olynomial)i(time.")25 b(The)18 b(t)o(yp)q(es)f(of)h(problem)f(that)h(can)g (b)q(e)f(considered)164 520 y(as)c(\\guess)h(and)f(v)o(erify")f(are)h(called) g(NP)g(\(for)f(Nondeterministic)i([the)d(guessing)k(stage])164 580 y(P)o(olynomial)23 b([the)d(v)o(eri\014cation)i(stage]\).)35 b(Co)q(ok's)22 b(Theorem)e(sa)o(ys)h(that)h(\(SP\))f(is)g(as)164 640 y(hard)k(as)g(an)o(y)f(NP)g(problem|)h(the)f(usual)h(terminology)h(is)f (to)g(sa)o(y)f(\(SP\))h(is)g(NP-)164 700 y(complete.)e(Since)18 b(w)o(e)e(sho)o(w)o(ed)h(in)h(section)g Fq(??)25 b Fv(that)17 b(\(SSP\))h(could)g(b)q(e)f(used)g(to)h(solv)o(e)164 761 y(\(SP\),)e(w)o(e)g (essen)o(tially)h(pro)o(v)o(ed)f(that)h(\(SSP\))f(is)h(also)h(NP-complete.) 237 846 y Fu(Computers)g(and)g(Intr)n(actability)p Fv(,)g(b)o(y)e(Garey)h (and)h(Johnson,)g(is)g(strongly)g(recom-)164 906 y(mended)e(for)g(more)g (information.)164 1072 y Fw(6)83 b(A)28 b(probabilistic)i(test)d(for)h (primalit)n(y)164 1182 y Fv(Supp)q(ose)20 b(w)o(e)f(w)o(an)o(t)g(to)g(test)g (whether)g(247)h(is)g(a)g(prime)f(n)o(um)o(b)q(er.)29 b(Recall)20 b(t)o(w)o(o)f(facts)164 1242 y(ab)q(out)f(prime)e(n)o(um)o(b)q(ers)f Fr(p)p Fv(:)224 1344 y(1.)24 b Fr(a)312 1326 y Fk(p)p Fl(\000)p Fo(1)390 1344 y Fp(\021)14 b Fv(1)i(mo)q(d)h Fr(p)g Fv(if)g Fr(a)c Fp(6\021)h Fv(0.)224 1445 y(2.)24 b(If)16 b Fr(a)361 1427 y Fo(2)394 1445 y Fp(\021)d Fv(1)k(mo)q(d)g Fr(p)p Fv(,)f(then)g Fr(a)e Fp(\021)f Fv(1)k(or)f Fr(a)e Fp(\021)f(\000)p Fv(1.)164 1547 y(Supp)q(ose)18 b(w)o(e)e(randomly)h(c)o(ho)q(ose)g Fr(a)d Fv(=)h(2)h(and)i(test)e(for)h(consistency)g(with)g(these)f(con-)164 1607 y(ditions.)25 b(Since)17 b(2)497 1589 y Fo(246)568 1607 y Fp(\021)e Fv(220)i(mo)q(d)g(247)h(w)o(e)f(can)g(conclude)g(immediately)h (that)f(247)h(is)164 1668 y Fu(not)j Fv(a)c(prime.)237 1753 y(P)o(erhaps)22 b(w)o(e)g(w)o(ere)f(luc)o(ky)g(with)i Fr(a)g Fv(=)g(2.)39 b(If)21 b(w)o(e)g(try)h Fr(a)h Fv(=)g(27,)h(w)o(e)d(get)h Fr(a)1666 1735 y Fo(246)1744 1753 y Fp(\021)164 1813 y Fv(1)17 b(mo)q(d)f(247.)23 b(Ho)o(w)o(ev)o(er,)521 1935 y(27)569 1914 y Fo(246)638 1935 y Fp(\021)691 1886 y Fj(\020)716 1935 y Fv(27)764 1914 y Fo(123)820 1886 y Fj(\021)844 1898 y Fo(2)889 1935 y Fv(and)17 b(27)1032 1914 y Fo(123)1101 1935 y Fp(\021)d Fv(170)j(mo)q(d)g (247)164 2045 y(whic)o(h)g(is)g(inconsisten)o(t)g(with)h(the)e(second)g (condition,)i(again)g(implying)g(247)g(is)f(not)g(a)164 2105 y(prime.)237 2190 y(Not)i(ev)o(ery)f(c)o(hoice)h(of)h Fr(a)e Fv(is)i(inconsisten)o(t)h(with)f(the)f(conditions.)32 b(F)l(or)20 b(example,)164 2250 y(160)236 2232 y Fo(123)306 2250 y Fp(\021)14 b(\000)p Fv(1)g(\(hence)g(160)661 2232 y Fo(246)731 2250 y Fp(\021)f Fv(1\))i(and)g(178)1006 2232 y Fo(123)1076 2250 y Fp(\021)f Fv(1.)21 b(Ho)o(w)o(ev)o(er,)12 b(the)j(fact)f(that)h(some)164 2310 y(c)o(hoices)j(of)h Fr(a)e Fv(giv)o(e)i(a)f(pro)q(of)h(that)g(a)g(n)o (um)o(b)q(er)e(is)i(not)g(prime)f(suggests)h(the)f(follo)o(wing)164 2370 y(test:)949 2599 y(24)p eop %%Page: 25 25 bop 237 307 a Fq(Rabin's)18 b(Primalit)n(y)h(T)-5 b(est.)21 b Fv(Let)15 b Fr(p)9 b Fp(\000)g Fv(1)14 b(=)g(2)1110 289 y Fk(k)1131 307 y Fr(m)p Fv(,)h(where)g(m)g(is)g(an)h(o)q(dd)g(n)o(um)o(b)q (er.)164 367 y(Cho)q(ose)i Fr(a)d Fv(at)i(random.)22 b(Compute)16 b(the)g(sequence)621 477 y Fr(a)647 457 y Fk(m)728 477 y Fr(a)754 457 y Fo(2)p Fk(m)854 477 y Fr(a)880 457 y Fo(4)p Fk(m)938 477 y Fr(:)8 b(:)g(:)g(a)1030 457 y Fk(p)p Fl(\000)p Fo(1)1192 477 y Fv(mo)q(d)17 b Fr(p)164 587 y Fv(This)f(sequence)e(is)i(consisten)o(t)f (with)h Fr(p)g Fv(b)q(eing)g(a)f(prime)g(if)h Fr(a)1274 569 y Fk(m)1320 587 y Fp(\021)e Fv(1)h(or)h(if)f(the)g(sequence)164 648 y(has)20 b Fp(\000)p Fv(1)f(at)h(some)f(p)q(oin)o(t,)h(follo)o(w)o(ed)g (b)o(y)f(1)g(for)h(all)g(subsequen)o(t)f(terms.)29 b(In)19 b(all)i(other)164 708 y(cases,)h Fr(a)e Fv(pro)o(vides)h(a)g(pro)q(of)h(that) f Fr(p)g Fv(is)g(not)g(prime)g(\(this)h(is)f(usually)h(describ)q(ed)f(b)o(y) 164 768 y(sa)o(ying)g(that)f Fr(a)g Fv(is)h(a)f Fu(witness)25 b Fv(that)20 b Fr(p)h Fv(is)g(not)f(prime\).)32 b(Rep)q(eat)20 b(this)h(test)f(for)g(some)164 828 y(n)o(um)o(b)q(er)14 b(of)h(random)h(c)o (hoices)e(of)i Fr(a)p Fv(,)e(and)h(conclude)g(that)h Fr(p)f Fv(is)h(a)f(prime)g(if)g(none)g(of)g(the)164 888 y(c)o(hosen)h Fr(a)g Fv(is)h(a)g(witness.)237 973 y(Tw)o(o)j(features)f(of)h(the)f(test)g (should)i(b)q(e)e(emphasized.)31 b(It)19 b(do)q(es)h(not)g(pro)o(vide)f(an) 164 1034 y(absolute)i(guaran)o(tee)f(that)g Fr(p)g Fv(is)g(a)g(prime,)g(only) g(that)g(it)g(is)g(probably)h(a)f(prime)f(\(w)o(e)164 1094 y(will)i(analyze)e(exactly)f(ho)o(w)i(probable)g(in)f(the)g(next)f (section\).)29 b(Secondly)l(,)19 b(when)g(w)o(e)164 1154 y(kno)o(w)h Fr(p)g Fv(is)h(not)f(a)g(prime,)g(w)o(e)f(do)h(not)h(kno)o(w)e(what)i(its)f (factors)h(are|)e(factoring)i(is)164 1214 y(m)o(uc)o(h)15 b(more)h (di\016cult)h(than)g(testing)g(for)f(primalit)o(y)l(.)237 1299 y([A)c(di\013eren)o(t)h(probabilisti)q(c)i(test)e(is)h(describ)q(ed)f(near)g (the)g(end)g(of)g(the)g(RSA)f(pap)q(er.])164 1444 y Ft(6.1)70 b(Analysis)22 b(of)h(the)f(Rabin)h(test)164 1536 y Fv(W)l(e)d(will)h (calculate)g(ho)o(w)f(man)o(y)g Fr(a)f Fv(are)h(witnesses)h(that)f(247)h(is)f (not)h(a)f(prime.)32 b(Our)164 1596 y(analysis)21 b(will)h(mak)o(e)c(use)h (of)h(the)f(fact)g(that)h(247)g(=)f(13\(19\))h(and)g(that)g(2)g(is)g(a)f (prim-)164 1656 y(itiv)o(e)g(ro)q(ot)i(for)f(b)q(oth)g(13)g(and)g(19.)31 b(Ho)o(w)o(ev)o(er,)18 b(it)i(should)h(b)q(e)f(emphasized)f(that)h(this)164 1717 y(information)h(\(whic)o(h)e(will)i(not)e(b)q(e)g(a)o(v)m(ailable)i(in)f (general\))g(w)o(as)f(not)g(used)g(when)g(w)o(e)164 1777 y(did)e(the)f(test)g (itself.)237 1862 y(Ho)o(w)i(man)o(y)f Fr(a)h Fv(satisfy)h Fr(a)708 1844 y Fo(123)779 1862 y Fp(\021)e Fv(1)g(mo)q(d)f(247?)28 b(W)l(e)18 b(m)o(ust)g(ha)o(v)o(e)f Fr(a)1457 1844 y Fo(123)1528 1862 y Fp(\021)g Fv(1)f(mo)q(d)h(13)164 1922 y(and)d Fr(a)282 1904 y Fo(123)351 1922 y Fp(\021)g Fv(1)i(mo)q(d)h(19.)k(Let)14 b Fr(a)g Fp(\021)f Fv(2)838 1904 y Fk(x)877 1922 y Fv(mo)q(d)k(13.)k(Then)14 b(w)o(e)f(m)o(ust)h(ha)o(v)o(e)f(123)p Fr(x)i Fv(divisible)164 1982 y(b)o(y)f(12.)21 b(This)16 b(giv)o(es)f(the)f(p)q(ossible)j(v)m(alues)e (0)p Fr(;)8 b Fv(4)p Fr(;)g Fv(8)15 b(for)g Fr(x)p Fv(,)f(whic)o(h)h(implies) h Fr(a)d Fp(\021)h Fv(1)p Fr(;)8 b Fv(3,)15 b(or)g(9)164 2043 y(mo)q(d)20 b(13.)32 b(Similarly)l(,)21 b(if)f Fr(a)f Fp(\021)g Fv(2)766 2024 y Fk(x)805 2043 y Fv(mo)q(d)e(19,)j(123)p Fr(x)h Fv(m)o(ust)e(b)q(e)g(divisible)j(b)o(y)d(18,)i(whic)o(h)164 2103 y(leads)g(to)f Fr(a)g Fp(\021)g Fv(1)p Fr(;)8 b Fv(7,)21 b(or)f(11)h(mo)q(d)f(19.)34 b(\(w)o(e)19 b(actually)j(found)e(178)h(ab)q(o)o (v)o(e)f(b)o(y)g(solving)164 2163 y Fr(a)15 b Fp(\021)h Fv(9)g(mo)q(d)h(13)h (and)g Fr(a)e Fp(\021)f Fv(7)i(mo)q(d)g(19\))h(The)f(3)h(c)o(hoices)f(mo)q(d) h(13)g(and)g(mo)q(d)g(19)g(imply)164 2223 y(there)e(are)g(9)h Fr(a)e Fv(with)j Fr(a)590 2205 y Fo(123)658 2223 y Fp(\021)c Fv(1.)237 2308 y(Ho)o(w)i(man)o(y)f Fr(a)g Fv(satisfy)h Fr(a)698 2290 y Fo(123)767 2308 y Fp(\021)d(\000)p Fv(1)k(mo)q(d)g(247?)22 b(If)15 b(2)1198 2290 y Fo(123)p Fk(x)1287 2308 y Fp(\021)f(\000)p Fv(1)i(mo)q(d)h(13,)f(w)o(e)f(m)o(ust)164 2368 y(ha)o(v)o(e)h(123)p Fr(x)f Fp(\021)f Fv(6)j(mo)q(d)f(12,)h(whic)o(h)g(leads)h(to)e Fr(a)e Fp(\021)g Fv(4)p Fr(;)8 b Fv(7,)17 b(or)g(17)g(mo)q(d)g(13.)23 b(Similarly)l(,)18 b(w)o(e)164 2429 y(get)e Fr(a)e Fp(\021)f Fv(8)p Fr(;)8 b Fv(18,)17 b(or)g(12)g(mo)q(d)f(19.)22 b(Th)o(us)17 b(w)o(e)f(get)g(9)h Fr(a)f Fv(satisfying)i(this)f(condition.)949 2599 y(25)p eop %%Page: 26 26 bop 237 307 a Fv(If)19 b(w)o(e)g(c)o(ho)q(ose)i(1)f Fp(\024)f Fr(a)g Fp(\024)g Fv(246)i(at)f(random,)h(the)e(c)o(hances)g(of)h(getting)h (an)f Fr(a)f Fv(that)164 367 y(is)f(not)g(a)f(witness)i(are)e(18)p Fr(=)p Fv(246)h Fp(\031)d Fr(:)p Fv(073.)25 b(If)17 b(w)o(e)g(do)h(the)f (test)g(5)h(times,)f(the)g(c)o(hance)g(of)164 428 y(incorrectly)f(concluding) i(247)g(is)f(a)f(prime)h(is)g Fp(\031)c Fv(2\(10)1160 409 y Fl(\000)p Fo(6)1209 428 y Fv(\).)237 513 y([W)l(e)18 b(actually)i(did)g(more) e(w)o(ork)h(than)g(necessary)l(,)f(iden)o(tifying)i(the)f(exact)f(set)h(of) 164 573 y(n)o(um)o(b)q(ers)d(whic)o(h)i(w)o(ould)g(lead)g(to)f(a)g(wrong)h (conclusion.)26 b(If)16 b(w)o(e)h(only)h(w)o(an)o(t)f(to)g(coun)o(t)164 633 y(ho)o(w)22 b(man)o(y)f(n)o(um)o(b)q(ers)h(there)f(are,)h(w)o(e)g(could)g (mak)o(e)f(use)h(of)g(observ)m(ations)i(suc)o(h)d(as)164 693 y(that,)16 b(for)g(an)o(y)f Fr(k)r Fv(,)h(an)g(equation)g(123)p Fr(x)f Fp(\021)f Fr(k)k Fv(mo)q(d)f(12)f(will)i(either)d(ha)o(v)o(e)g(3)h (solutions)j(or)164 753 y(no)e(solutions.])164 855 y Fq(Theorem)h(13)g (\(Rabin\))25 b Fu(If)20 b Fr(p)h Fu(is)f(not)h(a)f(prime,)g(at)g(le)n(ast)h Fv(3)p Fr(=)p Fv(4)g Fu(of)g Fv(1)e Fp(\024)g Fr(a)f Fp(\024)h Fr(p)14 b Fp(\000)f Fv(1)164 915 y Fu(ar)n(e)k(witnesses.)164 1017 y Fv(This)h(implies)g(that)f(for)g(an)o(y)f(non-prime)i Fr(p)p Fv(,)e(the)h(c)o(hance)f(of)h(b)q(eing)g(incorrectly)g(iden-)164 1077 y(ti\014ed)g(after)f(5)g(tests)h(is)g Fp(\024)c Fv(4)684 1059 y Fl(\000)p Fo(5)746 1077 y Fr(<)h(:)p Fv(001.)164 1244 y Fw(7)83 b(Probabilistic)30 b(Encryption)164 1353 y Fv([References)14 b(to)i(\\the)f(pap)q(er")i(in)f(this)h(section)f(are)g(to)g(\\Probabilisti)q (c)i(Encryption,")164 1413 y(in)c Fu(Journal)i(of)f(Computer)g(&)g(System)h (Scienc)n(es)k Fv(28,)14 b(pp.)g(270{299.)23 b(I)13 b(ha)o(v)o(e)g(also)j (used)164 1474 y Fu(Primality)h(and)h(Crypto)n(gr)n(aphy)p Fv(,)13 b(b)o(y)j(E.)g(Kranakis])237 1559 y(So)c(far,)g(the)f(public)h(k)o (ey)e(systems)h(ha)o(v)o(e)g(b)q(een)g(functions)h Fr(f)17 b Fv(suc)o(h)11 b(that)h(the)f(message)164 1619 y Fr(M)28 b Fv(presumably)23 b(cannot)h(b)q(e)f(computed)f(from)h(the)f(enco)q(ding)i Fr(f)5 b Fv(\()p Fr(M)g Fv(\).)42 b(A)22 b(further)164 1679 y(concern)12 b(arises)i(as)f(to)h(whether,)e(ev)o(en)g(if)h(the)g(adv)o (ersary)f(cannot)i(iden)o(tify)f Fr(M)18 b Fv(exactly)l(,)164 1739 y(he)c(ma)o(y)f(b)q(e)h(able)g(to)g(obtain)i(some)e(partial)h (information)h(ab)q(out)f Fr(M)5 b Fv(,)14 b(for)h(example)e(tell)164 1799 y(whether)j Fr(M)22 b Fv(is)17 b(an)f(ev)o(en)f(n)o(um)o(b)q(er,)h(a)g (square,)g(a)h(p)q(o)o(w)o(er)f(of)h(2,)f(etc.)237 1884 y(An)d(extreme)e (case)i(of)g(this)h(w)o(ould)g(b)q(e)g(a)f(scenario)h(in)g(whic)o(h)f(the)g (adv)o(ersary)g(kno)o(ws)164 1945 y(the)19 b(message)h(is)g(one)g(of)g(t)o(w) o(o)g(p)q(ossibiliti)q(es,)j Fr(M)1069 1952 y Fo(1)1108 1945 y Fv(or)d Fr(M)1218 1952 y Fo(2)1238 1945 y Fv(.)31 b(Since)20 b(w)o(e)f(ha)o(v)o(e)g(b)q(een)g(as-)164 2005 y(suming)c(that)g(the)f (function)i Fr(f)j Fv(is)d(easy)e(to)h(calculate,)g(all)h(the)e(adv)o(ersary) g(needs)h(to)f(do)164 2065 y(is)j(compare)f Fr(f)5 b Fv(\()p Fr(M)503 2072 y Fo(1)523 2065 y Fv(\))17 b(and)f Fr(f)5 b Fv(\()p Fr(M)748 2072 y Fo(2)769 2065 y Fv(\))16 b(with)h(the)f(ciphertext.)237 2150 y(Probabilisti)q(c)24 b(encryption)e(is)g(a)g(system)g(designed)g(to)g (a)o(v)o(oid)g(these)g(problems.)164 2210 y(Instead)15 b(of)g Fr(f)5 b Fv(\()p Fr(M)g Fv(\))16 b(b)q(eing)g(a)f(single)h(n)o(um)o(b)q(er,)e (the)h(calculation)i(of)e Fr(f)5 b Fv(\()p Fr(M)g Fv(\))15 b(in)o(v)o(olv)o(es)g(the)164 2271 y(sender)20 b(doing)i(some)e(things)h (randomly)g(during)g(the)f(calculation,)j(so)e(that)g Fr(M)k Fv(has)164 2331 y(man)o(y)17 b(di\013eren)o(t)h(encryptions.)27 b(Indeed,)17 b(the)g(probabilit)o(y)j(should)g(b)q(e)e(v)o(ery)e(close)j(to) 164 2391 y(1)d(that)f(if)h(the)f(same)g(message)h(is)g(sen)o(t)f(t)o(wice,)f (the)h(encryptions)h(should)h(b)q(e)e(di\013eren)o(t.)949 2599 y(26)p eop %%Page: 27 27 bop 164 307 a Ft(7.1)70 b(The)22 b(Goldw)n(asser-Micali)e(encryption)j (system)164 400 y Fv(As)i(in)h(man)o(y)e(previously)i(discussed)h(systems,)f (the)f(p)q(erson)h(receiving)f(messages)164 460 y(c)o(ho)q(oses)15 b(t)o(w)o(o)g(primes)f(\()p Fp(\030)g Fv(100)h(digits\))i Fr(p;)8 b(q)16 b Fv(and)f(announces)g Fr(n)f Fv(=)g Fr(pq)r Fv(.)20 b(This)c(system)e(is)164 520 y(concerned)f(with)h(whether,)f(for)h(a)g(giv)o (en)f(n)o(um)o(b)q(er)g Fr(a)p Fv(,)g(there)g(is)h Fr(x)f Fv(with)i Fr(x)1503 502 y Fo(2)1536 520 y Fp(\021)f Fr(a)h Fv(mo)q(d)i Fr(n)p Fv(.)164 580 y(Suc)o(h)f Fr(a)h Fv(are)g(called)g Fu(squar)n(es)k Fv(or)c(\(in)h(most)f(b)q(o)q(oks)h(and)f(pap)q(ers\))h Fu(quadr)n(atic)g(r)n (esidues)p Fv(.)164 640 y(F)l(or)j(tec)o(hnical)h(reasons,)g(when)g(w)o(e)e (refer)h(to)g(squares)h(mo)q(d)f Fr(n)p Fv(,)h(w)o(e)f(will)i(exclude)d Fr(a)164 700 y Fv(whic)o(h)d(are)f(divisible)j(b)o(y)c Fr(p)i Fv(or)g Fr(q)r Fv(.)k(The)16 b(follo)o(wing)k(facts)c(are)h(easy)f(to)h(pro)o (v)o(e,)e(in)i(some)164 761 y(cases)f(using)i(primitiv)o(e)f(ro)q(ots.)164 861 y Fq(Lemma)h(14)24 b Fu(If)16 b Fr(a;)8 b(b)16 b Fu(ar)n(e)g(squar)n(es,) h(then)g Fr(ab)f Fu(is)h(a)f(squar)n(e.)22 b(If)17 b Fr(a)f Fu(is)h(a)f(squar)n(e)h(and)g Fr(b)f Fu(is)164 922 y(not)i(a)f(squar)n(e,)g (then)i Fr(ab)e Fu(is)g(not)h(a)f(squar)n(e.)164 1035 y Fq(Lemma)h(15)24 b Fr(a)c Fu(is)f(a)h(squar)n(e)g(mo)n(d)g Fr(n)g Fu(if)g(and)g(only)g(if)g (it)g(is)g(a)g(squar)n(e)g(mo)n(d)f Fr(p)i Fu(and)f(a)164 1095 y(squar)n(e)d(mo)n(d)g Fr(q)r Fu(.)164 1208 y Fq(Lemma)h(16)24 b Fu(L)n(et)18 b Fr(h)c Fv(=)628 1186 y Fk(p)p Fl(\000)p Fo(1)p 628 1196 63 2 v 651 1225 a(2)696 1208 y Fu(.)24 b(If)18 b Fr(a)f Fu(is)h(a)g(squar)n(e)g(mo)n(d)f Fr(p)p Fu(,)h Fr(a)1266 1190 y Fk(h)1303 1208 y Fp(\021)d Fv(1)i Fu(mo)n(d)g Fr(p)p Fu(.)24 b(If)18 b Fr(a)g Fu(is)f(not)164 1268 y(a)g(squar)n(e,)h Fr(a)399 1250 y Fk(h)434 1268 y Fp(\021)c(\000)p Fv(1)p Fu(.)164 1381 y Fv(This)19 b(implies)h(that,)f(if)g Fr(p)g Fv(and)g Fr(q)h Fv(are)e(kno)o(wn,)h(it)g(is)g(easy)f(to)h(decide)f(whether)g Fr(a)g Fv(is)i(a)164 1441 y(square.)26 b(The)18 b(encryption)g(system)f(dep)q (ends)i(on)f(the)g(assumption)h(\(called)g(QRA)e(in)164 1501 y(the)f(pap)q(er)h([p.)e(294]\))i(that)g(this)g(problem)g(is)g(v)o(ery)e (di\016cult)i(if)f Fr(p;)8 b(q)18 b Fv(are)f(unkno)o(wn.)164 1602 y Fq(Lemma)h(17)24 b Fv(1)p Fr(=)p Fv(2)e Fu(of)f(the)g(numb)n(ers)g(fr) n(om)f(1)g(to)h Fr(p)14 b Fp(\000)g Fv(1)21 b Fu(ar)n(e)f(squar)n(es)h(mo)n (d)f Fr(p)p Fu(.)33 b(T)l(ake)164 1662 y(the)20 b(numb)n(ers)g(fr)n(om)f(1)g (to)h Fr(n)g Fu(and)g(le)n(ave)h(out)f(those)g(divisible)h(by)f Fr(p)g Fu(or)f(by)h Fr(q)r Fu(.)28 b(Divide)164 1722 y(the)19 b(r)n(emaining)f Fv(\()p Fr(p)12 b Fp(\000)f Fv(1\)\()p Fr(q)i Fp(\000)f Fv(1\))18 b Fu(numb)n(ers)g(into)h(four)e(gr)n(oups)h(ac)n(c)n(or)n (ding)f(to)h(whether)164 1782 y(they)i(ar)n(e)f(squar)n(es)g(or)g(not)h(mo)n (d)f Fr(p)h Fu(and)g(also)g(mo)n(d)f Fr(q)r Fu(.)28 b(Ther)n(e)19 b(ar)n(e)g Fv(\()p Fr(p)13 b Fp(\000)g Fv(1\)\()p Fr(q)h Fp(\000)f Fv(1\))p Fr(=)p Fv(4)164 1843 y Fu(numb)n(ers)18 b(in)f(e)n(ach)h(gr)n(oup.) 237 1968 y Fv(The)h(n)o(um)o(b)q(ers)f(whic)o(h)h(are)g(not)g(squares)h(mo)q (d)f Fr(p)g Fv(and)g(also)i(not)e(squares)g(mo)q(d)g Fr(q)164 2028 y Fv(are)h(called)h Fu(pseudo-squar)n(es)p Fv(.)33 b(Example:)c(If)20 b Fr(p)g Fv(=)h(5,)g Fr(q)g Fv(=)f(7,)h(the)f(squares)h(mo)q(d)f(35)164 2088 y(are)f(1,)g(4,)g(9,)g(16,)h(29,)g(11)f(\(29)g Fp(\021)f Fv(8)817 2070 y Fo(2)837 2088 y Fv(,)h(11)f Fp(\021)g Fv(9)1017 2070 y Fo(2)1037 2088 y Fv(;)i(note)e(w)o(e)h(don't)f(include)i(25)f(and)h (14,)164 2149 y(b)q(ecause)c(they're)f(divisible)j(b)o(y)e Fr(p;)8 b(q)r Fv(\).)21 b(The)16 b(pseudo-squares)h(m)o(ust)f(b)q(e)g (congruen)o(t)h(to)164 2209 y(2)h(or)g(3)g(mo)q(d)g(5)g(and)h(to)f(3,)g(5,)g (or)g(6)g(mo)q(d)g(7.)26 b(Th)o(us)18 b(the)g(pseudo-squares)g(are)g(17,)h (12,)164 2269 y(27,)e(3,)f(33,)g(13.)237 2354 y(The)i(encryption)h(system)f (is)h(primarily)g(concerned)f(with)h(the)f(union)h(of)g(the)f(set)164 2414 y(of)i(squares)g(and)g(pseudo-squares|)h(this)f(set)g(is)h (unfortunately)f(denoted)g(b)q(oth)g(b)o(y)164 2474 y Fr(Z)201 2456 y Fo(1)197 2486 y Fk(n)238 2474 y Fv(\(p.)d(291\))i(and)f(b)o(y)f Fr(Z)627 2456 y Fo(+1)623 2486 y Fk(n)674 2474 y Fv(.)24 b(Since)18 b(exactly)f(half)h(the)f(mem)o(b)q(ers)g(of)g Fr(Z)1493 2456 y Fo(1)1489 2486 y Fk(n)1531 2474 y Fv(are)g(squares,)949 2599 y(27)p eop %%Page: 28 28 bop 164 307 a Fv(the)15 b(crude)f(idea)i(of)g(sa)o(ying)g(\\this)g(is)g(a)f (square")h(all)g(the)f(time)g(will)i(only)f(b)q(e)f(righ)o(t)h(half)164 367 y(the)e(time.)20 b(\(QRA\))14 b(sa)o(ys)g(that)h(no)f(algorithm)i(that)f (runs)f(in)h(a)g(reasonable)g(amoun)o(t)g(of)164 428 y(time)j(can)h(do)g(m)o (uc)o(h)e(b)q(etter)h(than)h(this.)28 b([the)18 b(precise)g(de\014nitions)i (of)f(\\reasonable")164 488 y(and)i(\\m)o(uc)o(h)f(b)q(etter")g(are)h(what)g (require)f(the)g(concepts)h(of)f(circuits)h(of)g(size)g Fr(k)h Fv(and)164 548 y(\\)p Fr(\017)p Fv(-appro)o(ximating"])237 633 y(In)f(addition)i(to)e(announcing)i Fr(n)p Fv(,)e(the)g(p)q(erson)h (receiving)f(messages)g(announces)164 693 y(one)c(pseudo-square)g Fr(y)r Fv(.)22 b(T)l(o)17 b(send)g(a)g(sequence)e(of)i(0's)g(and)g(1's,)f (the)h(sender)f(con)o(v)o(erts)164 753 y(them)11 b(in)o(to)i(n)o(um)o(b)q (ers)e(as)h(follo)o(ws:)21 b(for)12 b(eac)o(h)g(n)o(um)o(b)q(er)f(in)h(the)g (sequence,)f(an)h Fr(x)f Fv(is)i(c)o(hosen)164 814 y Fu(at)18 b(r)n(andom)p Fv(.)i(0)d(is)g(con)o(v)o(erted)e(in)o(to)i Fr(x)856 796 y Fo(2)892 814 y Fv(mo)q(d)g(n,)f(1)h(is)g(con)o(v)o(erted)e(in)o(to)i Fr(y)r(x)1523 796 y Fo(2)1542 814 y Fv(.)k(Eac)o(h)c(0)g(or)164 874 y(1)h(in)g(the)f(sequence)g(can)g(b)q(e)h(con)o(v)o(erted)e(\(dep)q (ending)j(on)f(the)f(c)o(hoice)g(of)h Fr(x)p Fv(\))g(in)o(to)g(one)164 934 y(of)e(\()p Fr(p)10 b Fp(\000)g Fv(1\)\()p Fr(q)i Fp(\000)e Fv(1\))p Fr(=)p Fv(4)17 b(di\013eren)o(t)e(n)o(um)o(b)q(ers.)21 b(If)15 b(the)h(message)g(is)g(of)g(length)h(500)g(\(ab)q(out)164 994 y(one)e(line)i(of)e(ordinary)i(text\),)d(and)i Fr(p;)8 b(q)15 b Fp(\031)f Fv(10)1005 976 y Fo(100)1061 994 y Fv(,)h(the)g(message)g (can)h(b)q(e)f(enco)q(ded)g(in)o(to)164 1054 y(\(1)p Fr(=)p Fv(4\)10)322 1036 y Fo(100000)448 1054 y Fv(di\013eren)o(t)h(p)q(ossible)j (ciphertexts.)237 1139 y(By)c(Lemma)h Fq(??)p Fv(,)g(0's)g(are)f(con)o(v)o (erted)g(to)h(squares,)f(1's)h(are)g(con)o(v)o(erted)e(to)i(pseudo-)164 1200 y(squares.)37 b(Since)22 b(the)f(receiv)o(er)f(kno)o(ws)i Fr(p;)8 b(q)r Fv(,)22 b(Lemmas)f Fq(??)38 b Fv(and)22 b Fq(??)38 b Fv(sho)o(w)23 b(he)e(can)164 1260 y(e\016cien)o(tly)15 b(deco)q(de)i(the)f (message.)237 1345 y(In)g(the)f(subsequen)o(t)g(sections,)i(w)o(e)e(will)i (giv)o(e)f(the)g(essen)o(tial)g(ideas)h(of)f(Goldw)o(asser)164 1405 y(&)d(Micali's)h(pro)q(of)g(that)f(\(assuming)h(QRA\))e(this)i(system)e (will)j(prev)o(en)o(t)c(the)i(adv)o(ersary)164 1465 y(from)j(obtaining)j(an)o (y)d(partial)i(information)g(ab)q(out)g(the)e(plain)o(text.)164 1610 y Ft(7.2)70 b(W)-6 b(eak)23 b(la)n(ws)f(of)i(large)e(n)n(um)n(b)r(ers) 164 1702 y Fv(Both)16 b(the)g(encryption)h(algorithm)h(and)f(the)g(h)o(yp)q (othetical)g(algorithms)i(used)d(b)o(y)g(the)164 1762 y(adv)o(ersary)h(in)o (v)o(olv)o(e)g(random)g(ev)o(en)o(ts.)22 b(W)l(e)17 b(will)i(need)e(a)g (theorem)g(that)g(sa)o(ys)g(that,)g(if)164 1823 y(an)h(ev)o(en)o(t)f(with)h (probabilit)o(y)i Fr(p)f Fv(is)f(tried)h Fr(r)g Fv(times,)f(the)f(c)o(hance)h (that)g(the)f(n)o(um)o(b)q(er)h(of)164 1883 y(successes)e(is)h(not)g(close)g (to)f Fr(pr)i Fv(is)f(small.)23 b(The)16 b(pap)q(er)h(uses)1267 1865 y Fo(5)1303 1883 y Fv(\(p.)f(293\))164 1984 y Fq(Lemma)i(18)24 b Fu(L)n(et)17 b Fr(S)557 1991 y Fk(r)593 1984 y Fu(b)n(e)h(the)g(numb)n(er)g (of)f(suc)n(c)n(esses)h(in)g Fr(r)h Fu(tries.)j(F)l(or)17 b(any)g Fr( )689 2116 y Fv(Pr)749 2055 y Fj(\022)780 2054 y(\014)780 2078 y(\014)780 2103 y(\014)780 2128 y(\014)799 2082 y Fr(S)829 2089 y Fk(r)p 799 2104 49 2 v 812 2150 a Fr(r)864 2116 y Fp(\000)11 b Fr(p)938 2054 y Fj(\014)938 2078 y(\014)938 2103 y(\014)938 2128 y(\014)966 2116 y Fr(>)i( )1051 2055 y Fj(\023)1095 2116 y Fr(<)1190 2082 y Fv(1)p 1152 2104 101 2 v 1152 2150 a(4)p Fr(r)q( )1233 2136 y Fo(2)p 164 2260 648 2 v 220 2290 a Fn(5)239 2305 y Fm(The)g(usual)f(cen)o(tral)h(limit)c(theorem)j(cannot)h(b)q(e)g(used) g(b)q(ecause)i(it)d(do)q(es)h(not)f(tell)g(y)o(ou)g(ho)o(w)g(large)164 2355 y Ff(r)j Fm(m)o(ust)e(b)q(e)h(for)g(the)g(normal)e(distribution)h(to)h (giv)o(e)f(a)h(go)q(o)q(d)f(estimate.)949 2599 y Fv(28)p eop %%Page: 29 29 bop 237 307 a Fq(Pro)r(of:)22 b Fr(S)441 314 y Fk(r)477 307 y Fv(is)c(a)f(random)h(v)m(ariable,)g(whic)o(h)f(is)g(the)g(sum)g(of)g Fr(r)h Fv(indep)q(enden)o(t)f(ran-)164 367 y(dom)g(v)m(ariables,)i(eac)o(h)d (ha)o(ving)i(v)m(alue)g(0)f(or)g(1.)24 b(Let)17 b Fr(V)28 b Fv(b)q(e)17 b(the)g(v)m(ariance)g(of)h Fr(S)1622 374 y Fk(r)1641 367 y Fv(.)23 b(Eac)o(h)164 428 y(of)17 b(the)f(0{1)h(v)m(ariables)h(has)f(v) m(ariance)g Fp(\024)d Fv(1)p Fr(=)p Fv(4,)j(so)619 538 y Fr(r)642 517 y Fo(2)662 538 y Fr( )696 517 y Fo(2)724 538 y Fv(Pr\()p Fp(j)p Fr(S)839 545 y Fk(r)869 538 y Fp(\000)11 b Fr(r)q(p)p Fp(j)j Fr(>)g(r)q( )r Fv(\))g Fr(<)f(V)26 b Fp(\024)1299 504 y Fr(r)p 1298 526 25 2 v 1298 572 a Fv(4)237 671 y(Lemma)21 b Fq(??)36 b Fv(pro)o(vides)22 b(a)f(v)o(ery)e(rough)j(estimate)f(of)g(the)g (probabilit)o(y)l(.)37 b(An)20 b(im-)164 731 y(pro)o(v)o(emen)o(t)14 b(requiring)k(m)o(uc)o(h)d(more)h(w)o(ork)g(is:)164 823 y Fq(Lemma)i(19)24 b Fu(With)17 b(the)h(same)g(notation)g(as)f(L)n(emma)g Fq(??)p Fu(,)247 944 y Fv(Pr)307 883 y Fj(\022)343 910 y Fr(S)373 917 y Fk(r)p 343 932 49 2 v 356 978 a Fr(r)411 944 y Fp(\025)c Fr(p)f Fv(+)f Fr( )582 883 y Fj(\023)247 1072 y Fp(\024)551 1039 y Fv(1)p 305 1061 517 2 v 305 1069 a Fj(q)p 346 1069 476 2 v 346 1119 a Fv(2)p Fr(\031)r(r)q Fv(\()p Fr(p)h Fv(+)f Fr( )r Fv(\)\(1)g Fp(\000)f Fr(p)i Fp(\000)f Fr( )r Fv(\))835 999 y Fj( )872 1039 y Fv(\(1)h Fp(\000)f Fr(p)p Fv(\)\()p Fr(p)h Fv(+)f Fr( )r Fv(\))p 872 1061 304 2 v 1008 1106 a Fr( )1181 999 y Fj(!)1222 1072 y Fv(exp)1305 999 y Fj( )1338 1072 y Fp(\000)1429 1039 y Fr(r)q( )1486 1020 y Fo(2)1506 1039 y Fv(\(1)g(+)g Fr( )r Fv(\))p 1382 1061 329 2 v 1382 1106 a(2\(1)g Fp(\000)g Fr(p)p Fv(\)\()p Fr(p)h Fv(+)f Fr( )r Fv(\))1715 999 y Fj(!)1855 1072 y Fv(\()p Fp(\003)p Fv(\))237 1219 y(F)l(or)16 b(comparison,)h(if)g Fr(p)d Fv(=)g Fr(:)p Fv(5,)h Fr(r)h Fv(=)d(1000,)k(the)f(probabilit)o(y)i (that)f(there)e(are)h Fp(\025)e Fv(520)164 1280 y(successes)e(is)h(.1087.)21 b(Lemma)12 b Fq(??)21 b Fv(giv)o(es)903 1261 y Fo(6)936 1280 y Fv(an)12 b(upp)q(er)h(limit)g(of)g(.3125,)h(while)f(Lemma)f Fq(??)164 1340 y Fv(giv)o(es)k(.1498.)23 b(\(these)16 b(\014gures)g(courtesy) g(of)h(Mathematica\))237 1422 y(One)j(reason)g(the)g(pap)q(er)g(do)q(es)g (not)h(use)e(Lemma)h Fq(??)33 b Fv(is)21 b(that)f(it)g(do)q(es)h(not)f(giv)o (e)164 1482 y(a)j(simple)f(form)o(ula)h(for)g(ho)o(w)f(large)h Fr(r)h Fv(w)o(ould)f(ha)o(v)o(e)e(to)i(b)q(e)f(in)h(terms)e(of)i(the)f(other) 164 1542 y(quan)o(tities.)f(W)l(e)12 b(will)i(not)f(use)g(this)g(result)g (later,)h(and)f(y)o(ou)f(should)i(skip)f(to)g(section)g Fq(??)164 1602 y Fv(unless)k(y)o(ou)f(lik)o(e)h(to)f(manipulate)i(form)o(ulas.)237 1684 y Fq(Pro)r(of:)j Fv(W)l(e)16 b(will)h(assume)g Fr(pr)12 b Fv(+)e Fr(r)q( )18 b Fv(is)e(in)o(teger.)21 b(>F)l(rom)16 b(the)g(binomial)i(theorem:)183 1811 y(Pr\()p Fr(S)284 1818 y Fk(r)317 1811 y Fp(\025)13 b Fr(r)q(p)f Fv(+)f Fr(r)q( )r Fv(\))42 b(=)716 1770 y Fj(X)675 1862 y Fk(i)p Fl(\025)p Fk(pr)q Fo(+)p Fk(r)q( )826 1738 y Fj( )879 1781 y Fr(r)883 1841 y(i)923 1738 y Fj(!)964 1811 y Fr(p)988 1791 y Fk(i)1003 1811 y Fv(\(1)11 b Fp(\000)g Fr(p)p Fv(\))1150 1791 y Fk(r)q Fl(\000)p Fk(i)594 1964 y Fp(\024)675 1891 y Fj( )799 1933 y Fr(r)728 1994 y(pr)i Fv(+)e Fr(r)q( )914 1891 y Fj(!)955 1964 y Fr(p)979 1943 y Fk(pr)q Fo(+)p Fk(r)q( )1085 1964 y Fv(\(1)g Fp(\000)g Fr(p)p Fv(\))1232 1943 y Fk(r)q Fl(\000)p Fk(pr)q Fl(\000)p Fk(r)q( )1382 1964 y Fv(\(1)g(+)g Fr(\013)h Fv(+)f Fr(\013)1608 1943 y Fo(2)1639 1964 y Fv(+)g Fr(:)d(:)g(:)o Fv(\))675 2101 y(where)15 b Fr(\013)g Fv(=)979 2068 y Fr(p)p Fv(\()p Fr(r)e Fp(\000)d Fr(pr)j Fp(\000)e Fr(r)q( )r Fv(\))p 917 2090 435 2 v 917 2136 a(\(1)h Fp(\000)f Fr(p)p Fv(\)\()p Fr(pr)i Fv(+)e Fr(r)q( )i Fv(+)e(1\))164 2230 y Fr(p)h Fv(+)f Fr( )k Fp(\024)e Fv(1)k(implies)h Fr(p)11 b Fp(\000)g Fr(p )i Fp(\000)e Fr(p)783 2212 y Fo(2)817 2230 y Fr(>)j Fv(0)i(and)375 2312 y Fj(X)444 2354 y Fr(\013)475 2333 y Fk(i)503 2354 y Fv(=)606 2320 y(1)p 560 2342 117 2 v 560 2388 a(1)11 b Fp(\000)g Fr(\013)695 2354 y Fv(=)752 2320 y(\(1)g Fp(\000)g Fr(p)p Fv(\)\()p Fr(pr)i Fv(+)e Fr(r)q( )i Fv(+)e(1\))p 752 2342 435 2 v 856 2388 a Fr(r)q( )i Fv(+)e(1)g Fp(\000)g Fr(p)1205 2354 y Fp(\024)1263 2320 y Fv(\(1)g Fp(\000)g Fr(p)p Fv(\)\()p Fr(p)h Fv(+)f Fr( )r Fv(\))p 1263 2342 304 2 v 1398 2388 a Fr( )p 164 2428 648 2 v 220 2459 a Fn(6)239 2474 y Fm(W)m(e)i(divide)h (b)o(y)f(2)h(to)g(eliminate)d(the)k(probabilit)o(y)d(of)h Fc(\024)f Fm(480.)949 2599 y Fv(29)p eop %%Page: 30 30 bop 164 307 a Fv(whic)o(h)11 b(giv)o(es)h(the)e(second)i(factor)f(of)g(\()p Fp(\003)p Fv(\).)20 b(W)l(e)11 b(use)g(Stirling's)i(form)o(ula)e(on)h(the)f (binomial)164 367 y(co)q(e\016cien)o(t)16 b(and)g(group)i(it)e(with)h(the)f (p)q(o)o(w)o(ers)h(of)g Fr(p)f Fv(and)h(1)12 b Fp(\000)e Fr(p)17 b Fv(to)g(obtain:)229 422 y Fj(0)229 496 y(@)516 473 y Fv(1)p 270 495 517 2 v 270 504 a Fj(q)p 312 504 476 2 v 50 x Fv(2)p Fr(\031)r(r)q Fv(\()p Fr(p)11 b Fv(+)g Fr( )r Fv(\)\(1)g Fp(\000)g Fr(p)h Fp(\000)e Fr( )r Fv(\))792 422 y Fj(1)792 496 y(A)836 434 y( )921 473 y Fr(p)p 874 495 119 2 v 874 541 a(p)i Fv(+)f Fr( )997 434 y Fj(!)1030 446 y Fk(pr)q Fo(+)p Fk(r)q( )1144 434 y Fj( )1229 473 y Fv(1)g Fp(\000)g Fr(p)p 1182 495 205 2 v 1182 541 a Fv(1)g Fp(\000)g Fr(p)g Fp(\000)g Fr( )1391 434 y Fj(!)1424 446 y Fk(r)q Fl(\000)p Fk(pr)q Fl(\000)p Fk( )q(r)1630 507 y Fv(\()p Fp(\003\003)p Fv(\))164 657 y(The)16 b(\014rst)g(factor)g(of)h (\()p Fp(\003\003)p Fv(\))e(is)i(the)f(\014rst)g(factor)g(of)h(\()p Fp(\003)p Fv(\).)k(W)l(e)15 b(obtain)j(upp)q(er)e(b)q(ounds)h(on)164 717 y(the)f(rest)g(of)h(\()p Fp(\003\003)p Fv(\),)e(using)540 846 y Fp(\000)p Fr(A)c Fp(\000)746 812 y Fr(A)783 794 y Fo(2)p 682 834 185 2 v 682 880 a Fv(2\(1)g Fp(\000)g Fr(A)p Fv(\))885 846 y Fp(\024)i Fv(ln)q(\(1)e Fp(\000)g Fr(A)p Fv(\))i Fp(\024)h(\000)p Fr(A)c Fp(\000)1345 812 y Fr(A)1382 794 y Fo(2)p 1345 834 57 2 v 1361 880 a Fv(2)164 973 y(\(the)16 b(lo)o(w)o(er)g(b)q(ound)i(on)e(ln)q (\(1)11 b Fp(\000)g Fr(A)p Fv(\))16 b(in)o(v)o(olv)o(es)g(a)h(geometric)f (series\))240 1103 y(\()p Fr(pr)d Fv(+)e Fr(r)q( )r Fv(\))d(ln)500 1029 y Fj( )533 1103 y Fv(1)j Fp(\000)665 1069 y Fr( )p 623 1091 119 2 v 623 1137 a(p)g Fv(+)g Fr( )746 1029 y Fj(!)820 1103 y Fp(\024)42 b(\000)p Fr(r)q( )12 b Fp(\000)1114 1069 y Fr(r)q( )1171 1051 y Fo(2)p 1062 1091 181 2 v 1062 1137 a Fv(2\()p Fr(p)g Fv(+)f Fr( )r Fv(\))164 1244 y(\()p Fr(pr)i Fv(+)e Fr( )r(r)h Fp(\000)f Fr(r)q Fv(\))d(ln)508 1171 y Fj( )541 1244 y Fv(1)j Fp(\000)669 1210 y Fr( )p 631 1232 110 2 v 631 1278 a Fv(1)h Fp(\000)e Fr(p)746 1171 y Fj(!)820 1244 y Fp(\024)906 1210 y Fv(\()p Fr(r)i Fp(\000)f Fr(pr)i Fp(\000)d Fr(r)q( )r Fv(\))p Fr( )p 906 1232 322 2 v 1011 1278 a Fv(1)i Fp(\000)f Fr(p)1243 1244 y Fv(+)1297 1210 y(\()p Fr(r)h Fp(\000)f Fr(pr)i Fp(\000)e Fr(r)q( )r Fv(\))p Fr( )1619 1192 y Fo(2)1638 1210 y Fv(\(1)g Fp(\000)g Fr(p)p Fv(\))p 1297 1232 489 2 v 1324 1278 a(2\(1)h Fp(\000)f Fr(p)p Fv(\))1496 1263 y Fo(2)1516 1278 y Fv(\(1)g Fp(\000)g Fr(p)h Fp(\000)f Fr( )r Fv(\))821 1383 y(=)42 b Fr(r)q( )12 b Fp(\000)1040 1350 y Fr( )1074 1331 y Fo(2)1093 1350 y Fr(r)p 1023 1372 110 2 v 1023 1417 a Fv(1)g Fp(\000)f Fr(p)1146 1323 y Fj(\022)1177 1383 y Fp(\000)p Fv(1)g(+)1305 1350 y(1)p 1305 1372 25 2 v 1305 1417 a(2)1334 1323 y Fj(\023)164 1507 y Fv(Adding)17 b(these)f(and)h(using)g(exp)f(giv)o(es)h(the)f(remaining) h(factor)g(of)f(\()p Fp(\003)p Fv(\).)164 1650 y Ft(7.3)70 b(The)22 b(magic)g(of)h(sampling)164 1742 y Fv(W)l(e)c(ha)o(v)o(e)g(10)415 1724 y Fo(6)455 1742 y Fv(en)o(v)o(elop)q(es.)31 b(Inside)20 b(eac)o(h)f(en)o(v)o(elop)q(e)g(is)h(a)g(piece)f(of)h(pap)q(er)g(with)h(0)f (or)164 1803 y(1)e(written)g(on)g(it.)25 b(If)17 b(w)o(e)g(w)o(an)o(t)h(to)g (kno)o(w)f(exactly)h(ho)o(w)f(man)o(y)g(en)o(v)o(elop)q(es)h(ha)o(v)o(e)e (eac)o(h)164 1863 y(n)o(um)o(b)q(er,)d(w)o(e)g(ha)o(v)o(e)g(to)h(op)q(en)h (them)e(all.)22 b(Supp)q(ose)14 b(w)o(e)g(w)o(an)o(t)g(to)g(estimate)f(the)h (fraction)164 1923 y(of)i(the)g(en)o(v)o(elop)q(es)g(of)g(eac)o(h)g(kind,)g (and)g(w)o(e)g(w)o(an)o(t)g(the)g(prop)q(ortion)i(to)f(b)q(e)f(accurate)g(to) 164 1983 y(within)i(.05.)j(No)o(w)16 b(w)o(e)g(need)g(only)h(op)q(en)g(9\(10) 1026 1965 y Fo(5)1047 1983 y Fv(\))f(en)o(v)o(elop)q(es.)237 2065 y(The)h(situation)j(c)o(hanges)d(dramatically)i(if)f(w)o(e)e(only)i(w)o (an)o(t)g(to)f(estimate)g(the)g(pro-)164 2125 y(p)q(ortion)g(with)f(high)g (probabilit)o(y)l(.)23 b(If)14 b(w)o(e)h(are)g(willing)j(to)d(accept)g(a)g (.01)h(probabilit)o(y)h(of)164 2186 y(an)g(error)g Fr(>)d(:)p Fv(05,)i(Lemma)h Fq(??)23 b Fv(implies)18 b(w)o(e)e(only)i(need)e(to)h(op)q (en)g(a)g(randomly)g(c)o(hosen)164 2246 y(sample)g(of)f(10)430 2228 y Fo(4)467 2246 y Fv(en)o(v)o(elop)q(es)668 2228 y Fo(7)688 2246 y Fv(.)237 2328 y(The)i(sp)q(ecial)h(feature)f(of)g(problems)g(in)o(v)o (olving)i(squares)e(and)g(pseudo-squares)h(is)164 2388 y(that)14 b(sampling)i(is)f(p)q(ossible.)22 b(W)l(e)14 b(sa)o(w)g(in)h(our)f (discussion)i(of)f(the)e(Rabin)i(system)e(that)p 164 2428 648 2 v 220 2459 a Fn(7)239 2474 y Fm(Lemma)e Fd(??)17 b Fm(and)d(Mathmatica)e (suggest)j(400)e(en)o(v)o(elop)q(es)i(are)f(enough.)949 2599 y Fv(30)p eop %%Page: 31 31 bop 164 307 a Fv(ev)o(ery)19 b(n)o(um)o(b)q(er)g(mo)q(d)i Fr(n)g Fv(has)g(four)f(square)h(ro)q(ots.)35 b(Th)o(us)20 b(if)h(w)o(e)f(c)o(ho)q (ose)h(one)g(of)f(the)164 367 y(\()p Fr(p)6 b Fp(\000)g Fv(1\)\()p Fr(q)i Fp(\000)e Fv(1\))14 b(n)o(um)o(b)q(ers)f Fr(x)h Fv(not)g(divisible)945 349 y Fo(8)980 367 y Fv(b)o(y)g Fr(p)g Fv(or)g Fr(q)h Fv(and)g(compute)e Fr(x)1494 349 y Fo(2)1527 367 y Fv(mo)q(d)h(n,)g(eac)o(h)164 428 y(square)19 b(has)h(a)f(\()p Fr(p)14 b Fp(\000)f Fv(1\)\()p Fr(q)h Fp(\000)f Fv(1\))p Fr(=)p Fv(4)20 b(c)o(hance)f(of)g(b)q(eing)h(c)o (hosen.)30 b(It)18 b(is)i(also)h(imp)q(ortan)o(t)164 488 y(that)15 b(it)g(is)h(p)q(ossible)h(to)e(sample)h(from)e Fr(Z)915 470 y Fo(1)911 500 y Fk(n)950 488 y Fv(\(the)g(set)h(of)g(squares)g(and)h (pseudo-squares\))164 548 y(ev)o(en)f(if)i Fr(p;)8 b(q)18 b Fv(are)e(not)h(kno)o(wn.)164 650 y Fq(Lemma)h(20)24 b Fu(Ther)n(e)17 b(is)g(an)h(e\016cient)h(algorithm)f(for)f(de)n(ciding)h(if)f Fr(a)d Fp(2)g Fr(Z)1548 632 y Fo(1)1544 662 y Fk(n)1568 650 y Fu(.)164 751 y Fv(The)d(pro)q(of)h(of)f(this)h(is)f(di\016cult,)h(in)o(v)o (olving)h(\\quadratic)f(recipro)q(cit)o(y")f(and)h(the)e(\\Jacobi)164 812 y(sym)o(b)q(ol.")32 b(The)19 b(algorithm)j(itself)e(is)h(not)f(that)f (complicated,)i(and)f(is)g(giv)o(en)g(in)g(the)164 872 y(RSA)c(pap)q(er.)237 957 y(Giv)o(en)21 b(this)g(lemma,)g(w)o(e)g(can)f(sample)i(in)f Fr(Z)1094 939 y Fo(1)1090 969 y Fk(n)1134 957 y Fv(b)o(y)f(c)o(ho)q(osing)j Fr(x)d Fv(at)h(random)g(and)164 1017 y(testing)e(if)g(it)g(is)g(in)g(the)g (set.)27 b(If)18 b(not,)h(another)g Fr(x)f Fv(is)h(c)o(hosen.)28 b(Since)19 b(roughly)g(half)h(of)164 1077 y(1)14 b Fp(\024)g Fr(x)f Fp(\024)h Fr(n)i Fv(is)h(in)g Fr(Z)537 1059 y Fo(1)533 1090 y Fk(n)557 1077 y Fv(,)f(this)h(w)o(on't)f(tak)o(e)g(to)q(o)h(long.)237 1162 y(The)h(di\013eren)o(t)f(sampling)j(p)q(ossibiliti)q(es)g(w)o(e)d(ha)o (v)o(e)g(discussed)h(so)h(far)e(ha)o(v)o(e)g(all)i(as-)164 1222 y(sumed)i(that)h(only)h Fr(n)f Fv(w)o(as)g(kno)o(wn.)37 b(If)21 b(w)o(e)h(are)f(giv)o(en)h(a)g(single)h(pseudo-square)g Fr(y)r Fv(,)164 1283 y(w)o(e)17 b(can)g(sample)h(among)g(all)h (pseudo-squares)f(b)o(y)f(calculating)i Fr(y)r(x)1424 1265 y Fo(2)1461 1283 y Fv(for)e Fr(x)g Fv(randomly)164 1343 y(c)o(hosen.)237 1428 y(The)f(p)q(ossibilit)o(y)i(of)e(doing)h(these)e(v)m(arious)i(kinds)f (of)g(sampling)h(is)f(closely)h(related)164 1488 y(to)g(prop)q(erties)g (2\(a\))g(and)g(\(c\))f(in)g(the)g(pap)q(er)h(\(p.)f(277\).)164 1633 y Ft(7.4)70 b(Determini)o(ng)18 b(algorithm)h(p)r(erformance)g(b)n(y)i (sampling)164 1725 y Fv(W)l(e)15 b(are)h(in)o(terested)f(in)h(algorithms)i (for)e(deciding)g(whether)g(a)f(giv)o(en)h(n)o(um)o(b)q(er)f(is)h(or)g(is)164 1785 y(not)g(a)g(square.)21 b(As)15 b(with)h(the)g(algorithm)h(in)f(Section)g Fq(??)p Fv(,)g(there)f(is)h(some)g(probabilit)o(y)164 1845 y(that,)g(for)h(a)f(giv)o(en)h(input)g Fr(a)p Fv(,)e(the)h(algorithm)i(ma)o (y)e(giv)o(e)g(the)g(wrong)i(answ)o(er.)237 1930 y(Let)e Fr(p)348 1937 y Fk(a)384 1930 y Fv(b)q(e)g(the)f(probabilit)o(y)j(that)d(a)h(giv)o(en) g(algorithm)h(giv)o(es)f(the)f(correct)g(answ)o(er)164 1991 y(for)i(input)h Fr(a)p Fv(.)k(W)l(e)17 b(are)f(also)j(in)o(terested)d(in)i Fr(p)1003 1998 y Fk(S)1028 1991 y Fv(,)f(whic)o(h)g(is)h(the)e(a)o(v)o(erage) g(of)h Fr(p)1588 1998 y Fk(a)1627 1991 y Fv(o)o(v)o(er)e(all)164 2051 y(squares)h Fr(a)p Fv(,)e(and)i Fr(p)508 2058 y Fk(P)5 b(S)561 2051 y Fv(,)15 b(the)g(a)o(v)o(erage)g(o)o(v)o(er)g(all)h (pseudo-squares,)h(and)e Fr(p)1483 2058 y Fk(Z)1512 2051 y Fv(,)g(the)g(a)o(v)o(erage)164 2111 y(of)i Fr(p)244 2118 y Fk(a)281 2111 y Fv(o)o(v)o(er)e(all)j Fr(a)c Fp(2)g Fr(Z)577 2093 y Fo(1)573 2123 y Fk(n)596 2111 y Fv(.)237 2196 y(If)19 b(w)o(e)g(are)g(giv)o(en)h(an)g(algorithm,)i(w)o(e)d(can)g(easily)i (determine)d Fr(p)1449 2203 y Fk(S)1495 2196 y Fv(b)o(y)h(running)h(it)164 2256 y(with)12 b(input)h Fr(a)g Fv(=)h Fr(x)515 2238 y Fo(2)546 2256 y Fv(on)e(a)g(sample)g(of)g(randomly)g(c)o(hosen)g Fr(x)f Fv(and)h(coun)o(ting)g(the)g(n)o(um)o(b)q(er)164 2316 y(of)17 b(times)f(the)g(algorithm)i(answ)o(ers)f(\\this)g(is)g(a)g(square.")p 164 2360 648 2 v 220 2391 a Fn(8)239 2406 y Fm(Ev)o(en)d(though)g Ff(p;)7 b(q)14 b Fm(are)g(unkno)o(wn,)f(the)i(gcd)f(of)f Ff(x;)7 b(n)13 b Fm(can)h(b)q(e)h(computed.)949 2599 y Fv(31)p eop %%Page: 32 32 bop 237 307 a Fv(The)20 b(pro)q(cedure)g(for)g(determining)g Fr(p)947 314 y Fk(Z)996 307 y Fv(is)h(more)e(elab)q(orate.)33 b(Supp)q(ose)21 b(w)o(e)f(ha)o(v)o(e)164 367 y(an)d(algorithm)h(for)f(whic)o (h)g Fr(p)693 374 y Fk(S)733 367 y Fv(=)e Fr(:)p Fv(6.)22 b(Using)17 b(Lemma)f Fq(??)p Fv(,)h(generate)g(a)g(sample)g(of)g(100)164 428 y(mem)o(b)q(ers)e(of)g Fr(Z)461 409 y Fo(1)457 440 y Fk(n)481 428 y Fv(,)h(and)g(run)f(the)h(algorithm)h(on)f(eac)o(h)f(of)h(them.)21 b(Supp)q(ose)16 b(w)o(e)g(get)f(the)164 488 y(answ)o(er)k(\\this)h(is)g(a)f (square")g(65)h(times.)29 b(There)18 b(are)h Fp(\030)f Fv(50)i(squares)f(in)g (the)g(sample,)164 548 y(on)d(whic)o(h)f(there)g(ha)o(v)o(e)f(b)q(een)h (.6\(50\))h(correct)e(resp)q(onses)i(and)g(20)g(incorrect.)21 b(Pseudo-)164 608 y(squares)d(ha)o(v)o(e)g(b)q(een)g(iden)o(ti\014ed)h(as)f (squares)h(65)13 b Fp(\000)f Fv(30)18 b(=)f(35)i(times,)f(whic)o(h)h (suggests)164 668 y Fr(p)188 675 y Fk(P)5 b(S)255 668 y Fp(\031)14 b Fv(15)p Fr(=)p Fv(50.)23 b(Finally)18 b Fr(p)655 675 y Fk(Z)697 668 y Fv(=)c(\()p Fr(p)792 675 y Fk(S)829 668 y Fv(+)d Fr(p)902 675 y Fk(P)5 b(S)955 668 y Fv(\))p Fr(=)p Fv(2)15 b Fp(\031)e Fr(:)p Fv(45.)237 753 y(Lemma)20 b Fq(??)34 b Fv(or)20 b Fq(??)34 b Fv(can)21 b(b)q(e)f(used)g(to)g(determine)g(the)g(probabilit)o(y)i(that)e (these)164 814 y(estimates)d(come)e(within)j(a)f(sp)q(eci\014ed)f(amoun)o(t.) 164 958 y Ft(7.5)70 b(Tw)n(o)22 b(v)n(ersions)h(of)h(QRA)224 1050 y Fv(1.)g(There)16 b(is)h(no)f(e\016cien)o(t)g(algorithm)i(for)e (distinguishi)q(ng)j(squares)e(from)f(pseudo-)286 1111 y(squares)h(with)g Fr(p)594 1118 y Fk(a)629 1111 y Fr(>)d Fv(1)d Fp(\000)g Fr(\017)16 b Fv(for)g(all)i Fr(a)13 b Fp(2)h Fr(Z)1067 1093 y Fo(1)1063 1123 y Fk(n)1087 1111 y Fv(.)224 1212 y(2.)24 b(There)16 b(is)h(no)g (e\016cien)o(t)e(algorithm)j(with)f Fr(p)1081 1219 y Fk(Z)1124 1212 y Fr(>)d(:)p Fv(5)d(+)g Fr(\017)237 1326 y Fv(It)17 b(w)o(ould)h(seem)f (that)h(\(1\))g(is)g(not)g(as)f(strong)i(as)f(\(2\).)25 b(Note)17 b(that)h(\(2\))f(w)o(ould)i(rule)164 1387 y(out)e(an)g(algorithm)i(with)e Fr(p)677 1394 y Fk(S)718 1387 y Fv(=)d Fr(:)p Fv(9)j(and)g Fr(p)944 1394 y Fk(P)5 b(S)1012 1387 y Fv(=)14 b Fr(:)p Fv(2.)23 b(This)17 b(w)o(ould)h(b)q(e)f(something)g(that)164 1447 y(sa)o(ys)g(\\this)h (is)f(a)g(square")g(most)g(of)g(the)g(time,)f(o)q(ccasionally)j(correctly)e (iden)o(tifying)h(a)164 1507 y(pseudo-square.)k(Ho)o(w)o(ev)o(er,)14 b(the)i(pap)q(er)h(\(p.)f(293\))h(sho)o(ws)g(that)g(\(1\))g(implies)g(\(2\).) 237 1592 y(Supp)q(ose)k(w)o(e)e(are)h(giv)o(en)g(an)g(algorithm.)34 b(W)l(e)20 b(estimate)g Fr(p)1357 1599 y Fk(S)1383 1592 y Fr(;)8 b(p)1429 1599 y Fk(P)d(S)1482 1592 y Fr(;)j(p)1528 1599 y Fk(Z)1576 1592 y Fv(with)21 b(high)164 1652 y(probabilit)o(y)f(using)g(the)e(tec)o (hniques)g(in)h(Section)g Fq(??)p Fv(.)28 b(T)l(o)19 b(tak)o(e)f(a)h(sp)q (eci\014c)g(example,)164 1713 y(w)o(e)g(will)j(assume)e(w)o(e)f(\014nd)h Fr(p)707 1720 y Fk(S)752 1713 y Fv(=)f Fr(:)p Fv(6,)h Fr(p)905 1720 y Fk(P)5 b(S)978 1713 y Fv(=)20 b Fr(:)p Fv(45.)31 b(W)l(e)20 b(w)o(an)o(t)f(to)h(test)g(whether)f Fr(a)g Fv(is)164 1773 y(a)i(square.)36 b(Run)22 b(the)e(algorithm)k(on)d Fr(ax)950 1755 y Fo(2)990 1773 y Fv(for)h(1000)g(randomly)g(c)o(hosen)f Fr(x)p Fv(.)36 b(If)20 b Fr(a)h Fv(is)164 1833 y(a)g(square,)h(the)e (algorithm)j(will)g(sa)o(y)e(\\this)h(is)f(a)h(square")f Fp(\031)g Fv(600)h(times.)35 b(If)20 b Fr(a)h Fv(is)h(a)164 1893 y(pseudo-square,)17 b(the)f(answ)o(er)g(will)i(b)q(e)f(\\this)g(is)g(a)g(square")g Fp(\031)c Fv(550)18 b(times.)164 2037 y Ft(7.6)70 b(Kno)n(wing)22 b(a)i(pseudo-square)g(do)r(es)f(not)g(help)f(m)n(uc)n(h)164 2130 y Fv(QRA)c(talks)i(ab)q(out)h(the)e(abilit)o(y)h(to)g(iden)o(tify)f (squares)g(when)g(only)h Fr(n)f Fv(is)h(kno)o(wn.)30 b(In)164 2190 y(the)17 b(prop)q(osed)i(encryption)f(system,)f(a)h(pseudo-square)h Fr(y)g Fv(is)g(also)g(announced.)26 b(The)164 2250 y(pap)q(er)17 b(sho)o(ws)g(\(p.)f(295\))h(that)g(this)g(do)q(es)g(not)g(mak)o(e)e(the)h (problem)h(easier.)237 2335 y(Supp)q(ose)c(w)o(e)e(ha)o(v)o(e)g(an)h (algorithm)i(whic)o(h)e(tak)o(es)f(as)h(input)h Fr(a;)8 b(y)13 b Fv(and)f(tries)g(to)g(decide)164 2396 y(if)20 b Fr(a)f Fv(is)h(a)f(square.) 31 b(Assume)18 b Fr(p)741 2403 y Fk(Z)789 2396 y Fv(=)h Fr(:)p Fv(55)h(whenev)o(er)e Fr(y)j Fv(is)f(a)f(pseudo-square.)32 b(Cho)q(ose)164 2456 y Fr(y)16 b Fp(2)f Fr(Z)289 2438 y Fo(1)285 2468 y Fk(n)325 2456 y Fv(at)i(random,)g(then)g(use)g(the)f(tec)o(hniques)g (from)h(Section)g Fq(??)24 b Fv(to)17 b(estimate)g Fr(p)1741 2463 y Fk(Z)1769 2456 y Fv(.)949 2599 y(32)p eop %%Page: 33 33 bop 164 307 a Fv(Since)19 b(half)h(the)f(n)o(um)o(b)q(ers)g(in)h Fr(Z)777 289 y Fo(1)773 319 y Fk(n)816 307 y Fv(are)f(pseudo-squares,)h(y)o (ou)f(will)i(quic)o(kly)e(\014nd)h(a)f Fr(y)164 367 y Fv(for)d(whic)o(h)h Fr(p)402 374 y Fk(Z)445 367 y Fv(=)c Fr(:)p Fv(55.)164 512 y Ft(7.7)70 b(The)22 b(inabilit)n(y)e(to)j(distinguish)e(t)n(w)n(o)i(plain)n (texts)164 604 y Fv(Theorem)14 b(5.1)i(of)f(the)f(pap)q(er)h(addresses)h(the) e(issue)i(w)o(e)e(men)o(tioned)h(at)g(the)g(b)q(eginning)164 664 y(of)23 b(section)h Fq(??)p Fv(.)43 b(It)23 b(sho)o(ws)h(that)g(if)g(w)o (e)e(ha)o(v)o(e)h(an)h(algorithm)h(whic)o(h)e(can)h(iden)o(tify)164 725 y(messages)15 b Fr(m)412 732 y Fo(1)445 725 y Fv(and)g Fr(m)581 732 y Fo(2)615 725 y Fv(and)f(e\016cien)o(tly)g(tell)h(the)f (di\013erence)g(b)q(et)o(w)o(een)f(an)i(encryption)164 785 y(of)h Fr(m)262 792 y Fo(1)297 785 y Fv(and)g(an)g(encryption)g(of)g Fr(m)798 792 y Fo(2)817 785 y Fv(,)f(then)h(w)o(e)f(could)h(construct)g(an)g (algorithm)i(whic)o(h)164 845 y(e\016cien)o(tly)h(distinguishes)k(squares)d (from)f(pseudo-squares.)33 b(Th)o(us)20 b(\(QRA\))g(implies)164 905 y(w)o(e)c(cannot)h(tell)g(the)f(di\013erence)g(b)q(et)o(w)o(een)f Fr(m)1013 912 y Fo(1)1049 905 y Fv(and)i Fr(m)1187 912 y Fo(2)1206 905 y Fv(.)237 990 y Fq(Pro)r(of:)389 972 y Fo(9)429 990 y Fv(Supp)q(ose)g(w)o(e)d(are)h(trying)h(to)g(decide)e(whether)h Fr(a)f Fp(2)g Fr(Z)1430 972 y Fo(1)1426 1003 y Fk(n)1465 990 y Fv(is)i(a)f(square)g(and)164 1050 y(that)i(the)f(t)o(w)o(o)g (distinguishabl)q(e)j(messages)d(are)784 1160 y Fr(m)827 1167 y Fo(1)888 1160 y Fv(=)42 b(01001011)784 1233 y Fr(m)827 1240 y Fo(2)888 1233 y Fv(=)g(11101101)164 1343 y(Cho)q(ose)18 b(8)e Fr(x)402 1350 y Fk(i)432 1343 y Fv(randomly)h(and)g(consider)g(the)f (sequences)573 1446 y Fr(x)601 1428 y Fo(2)601 1458 y(1)670 1446 y Fr(ax)724 1428 y Fo(2)724 1458 y(2)817 1446 y Fr(x)845 1428 y Fo(2)845 1458 y(3)913 1446 y Fr(x)941 1428 y Fo(2)941 1458 y(4)1009 1446 y Fr(ax)1063 1428 y Fo(2)1063 1458 y(5)1157 1446 y Fr(x)1185 1428 y Fo(2)1185 1458 y(6)1253 1446 y Fr(ax)1307 1428 y Fo(2)1307 1458 y(7)1375 1446 y Fr(ax)1429 1428 y Fo(2)1429 1458 y(8)548 1506 y Fr(ax)602 1488 y Fo(2)602 1519 y(1)670 1506 y Fr(ax)724 1488 y Fo(2)724 1519 y(2)791 1506 y Fr(ax)845 1488 y Fo(2)845 1519 y(3)913 1506 y Fr(x)941 1488 y Fo(2)941 1519 y(4)1009 1506 y Fr(ax)1063 1488 y Fo(2)1063 1519 y(5)1131 1506 y Fr(ax)1185 1488 y Fo(2)1185 1519 y(6)1279 1506 y Fr(x)1307 1488 y Fo(2)1307 1519 y(7)1375 1506 y Fr(ax)1429 1488 y Fo(2)1429 1519 y(8)164 1616 y Fv(If)h Fr(a)g Fv(is)h(a)g(pseudo-square,)g(these)f(will) i(b)q(e)f(randomly)g(c)o(hosen)f(enco)q(dings)i(of)f Fr(m)1668 1623 y Fo(1)1704 1616 y Fv(and)164 1677 y Fr(m)207 1684 y Fo(2)226 1677 y Fv(.)42 b(In)23 b(this)h(case,)g(the)f(p)q(erformance)g(of)g(our)h (assumed)g(algorithm)h(on)e(the)g(t)o(w)o(o)164 1737 y(sequences)d(\(a)o(v)o (eraged)h(o)o(v)o(er)f(rep)q(eated)h(random)h(c)o(hoices)f(of)h Fr(x)1371 1744 y Fk(i)1385 1737 y Fv(\))f(will)i(b)q(e)e(di\013eren)o(t.)164 1797 y(If)f Fr(a)g Fv(is)h(a)g(square,)g(b)q(oth)g(sequences)f(will)i(b)q(e)f (randomly)g(c)o(hosen)f(enco)q(dings)i(of)f(the)164 1857 y(message)e (consisting)i(of)e(all)h(0's,)f(so)g(the)g(algorithm's)h(resp)q(onse)g(on)f (a)o(v)o(erage)f(to)h(the)164 1917 y(t)o(w)o(o)d(sequences)f(will)k(b)q(e)d (iden)o(tical.)164 2062 y Ft(7.8)70 b(Seman)n(tic)21 b(Securit)n(y)164 2154 y Fv(Theorem)e(5.2)h(of)g(the)f(pap)q(er)h(sho)o(ws)h(that)e(there)g(is) i(no)f(prop)q(ert)o(y)f(of)h(the)f(plain)o(text)164 2214 y(message)12 b(whic)o(h)h(can)f(b)q(e)h(e\016cien)o(tly)e(estimated)i(b)o(y)e(lo)q(oking)k (at)e(the)f(ciphertext.)19 b(T)o(yp-)164 2274 y(ical)d(prop)q(erties)f(migh)o (t)g(b)q(e)f(\\the)h(last)h(bit)f(of)g(the)f(plain)o(text)h(is)g(0")g(or)g (\\the)g(n)o(um)o(b)q(er)f(of)p 164 2318 648 2 v 220 2349 a Fn(9)239 2364 y Fm(The)e(argumen)o(t)f(w)o(e)h(giv)o(e)f(is)g(a)h (simpli\014cation)d(of)i(the)i(one)f(in)f(the)h(pap)q(er,)h(in)e(that)h(w)o (e)g(do)f(not)h(use)164 2414 y(the)k(\\sampling)c(w)o(alk.")21 b(The)15 b(more)f(complicated)g(argumen)o(t)g(seems)h(to)g(b)q(e)h(necessary) h(to)e(analyze)164 2464 y(encryption)f(systems)h(in)e(general,)h(as)g(opp)q (osed)g(to)g(those)g(based)h(on)f(squares)h(and)e(pseudo-squares.)949 2599 y Fv(33)p eop %%Page: 34 34 bop 164 307 a Fv(1's)17 b(is)g(t)o(wice)f(as)h(m)o(uc)o(h)e(as)j(the)e(n)o (um)o(b)q(er)f(of)i(0's.")23 b(In)16 b(general,)h(a)g(prop)q(ert)o(y)f(is)h (de\014ned)164 367 y(in)f(the)g(pap)q(er)g(as)g(the)g(v)m(alue)g(of)g(a)g (function)h Fr(f)5 b Fv(\()p Fr(m)p Fv(\))15 b(whic)o(h)h(tak)o(es)g(a)g (message)g(as)g(input)164 428 y(and)j(giv)o(es)h(a)f(n)o(um)o(b)q(er)f(as)h (output.)30 b(If)19 b Fr(f)5 b Fv(\()p Fr(m)p Fv(\))18 b(is)i(constan)o(t)f (for)h(all)g Fr(m)p Fv(,)f(prediction)h(of)164 488 y Fr(f)5 b Fv(\()p Fr(m)p Fv(\))17 b(is)g(trivial.)25 b(Similarly)l(,)18 b(if)g Fr(f)5 b Fv(\()p Fr(m)p Fv(\))16 b(is)i(almost)g(constan)o(t)f(for)g (almost)h(all)g Fr(m)p Fv(,)f(there)164 548 y(is)g(a)g(simple)g(algorithm)h (whic)o(h)e(will)j(b)q(e)d(close)h(to)f(righ)o(t)h(with)g(high)h(prob)237 633 y(W)l(e)d(wish)h(to)f(sho)o(w)h(that,)f(except)f(in)h(the)g(sp)q(ecial)i (cases)e(w)o(e'v)o(e)e(men)o(tioned,)i(there)164 693 y(is)j(no)g(e\016cien)o (t)f(algorithm)i(whic)o(h)f(will)h(predict)f Fr(f)5 b Fv(\()p Fr(m)p Fv(\))17 b(from)h(the)f(ciphertext)g(for)h Fr(m)p Fv(.)164 753 y(If)13 b(there)h(w)o(ere,)f(w)o(e)h(could)g(run)h(our)f(algorithm)i(to)e (estimate)g Fr(f)5 b Fv(\()p Fr(m)p Fv(\))14 b(on)h(the)e(ciphertext)164 814 y(from)k(randomly)h(generated)g Fr(m)f Fv(un)o(til)h(w)o(e)f(found)g Fr(m)1152 821 y Fo(1)1172 814 y Fv(,)g Fr(m)1246 821 y Fo(2)1283 814 y Fv(on)g(whic)o(h)h(the)f(algorithm)164 874 y(b)q(eha)o(v)o(ed)22 b(di\013eren)o(tly)l(.)42 b(But)22 b(this)i(w)o(ould)g(con)o(tradict)f(the)g (result)g(of)g(the)g(previous)164 934 y(section.)237 1019 y([The)15 b(pap)q(er)h(p)q(oin)o(ts)h(out)f(that)g(it)g(is)h(not)f(assumed)f(that)h Fr(f)5 b Fv(\()p Fr(m)p Fv(\))16 b(is)g(an)g(easily)h(com-)164 1079 y(putable)g(function.)22 b(I)15 b(think)i(this)f(is)h(a)f(minor)h (issue.)22 b(The)16 b(theorem)f(really)i(discusses)164 1139 y(the)f(capabilities)j(of)e(a)f(an)h(easily)g(computable)g(program)g(for)g (estimating)g Fr(f)5 b Fv(.])164 1284 y Ft(7.9)70 b(Ho)n(w)22 b(to)h(pla)n(y)g(p)r(ok)n(er)h(o)n(v)n(er)g(the)e(telephone)164 1376 y Fv(W)l(e)14 b(will)j(not)e(analyze)h(an)f(en)o(tire)f(game)h(of)g(p)q (ok)o(er,)f(but)h(just)g(the)g(task)g(of)g(eac)o(h)f(pla)o(y)o(er)164 1436 y([w)o(e)i(will)j(assume)e(only)h(t)o(w)o(o)f(pla)o(y)o(ers])f(getting)i (dealt)g(cards)f(so)h(that)f(\(i\))h(eac)o(h)e(pla)o(y)o(er)164 1497 y(gets)23 b(his)h(cards)g(at)f(random,)i(with)f(all)h(cards)e(equally)h (lik)o(ely)g(\(ii\))g(neither)f(pla)o(y)o(er)164 1557 y(kno)o(ws)e(what)h (his)g(opp)q(onen)o(t)g(has)g(\(iii\))g(the)f(pla)o(y)o(ers)g(cannot)h(get)f (the)g(same)g(cards.)164 1617 y(Y)l(ou)c(will)h(probably)h(appreciate)e(the)g (pro)q(cedure)f(more)h(if)g(y)o(ou)g(\014rst)g(try)g(to)g(devise)g(a)164 1677 y(w)o(a)o(y)f(of)g(doing)i(this)f(y)o(ourself.)237 1762 y(Sev)o(eral)h(previous)i(attempts)e(to)h(use)f(cryptographic)i(devices)e (for)h(this)g(purp)q(ose)164 1823 y(w)o(ere)11 b(\015a)o(w)o(ed)405 1804 y Fo(10)442 1823 y Fv(.)19 b(The)12 b(elab)q(orate)g(pro)q(cedure)g(w)o (e)f(describ)q(e)g(is)h(based)g(on)g(some)f(n)o(um)o(b)q(er-)164 1883 y(theory)16 b(to)q(ols)i(dev)o(elop)q(ed)e(in)h(section)g Fq(??)23 b Fv(and)17 b(earlier)g(in)g(this)g(section:)224 1984 y(1.)24 b(If)14 b Fr(n)g Fv(=)g Fr(pq)i Fv(and)g Fr(a)e Fv(is)h(a)g(square)g (mo)q(d)g Fr(n)p Fv(,)g(it)g(has)h(four)f(square)f(ro)q(ots.)22 b(If)15 b(w)o(e)f(kno)o(w)286 2045 y(ro)q(ots)j Fr(r)431 2052 y Fo(1)451 2045 y Fr(;)8 b(r)495 2052 y Fo(2)531 2045 y Fv(with)17 b Fr(r)664 2052 y Fo(1)698 2045 y Fp(6\021)c(\006)p Fr(r)811 2052 y Fo(2)831 2045 y Fv(,)i(w)o(e)h(can)h(\014nd)f Fr(p)p Fv(,)h Fr(q)r Fv(.)224 2146 y(2.)24 b(If)17 b Fr(p)g Fp(\021)g Fv(3)f(mo)q(d)h(4,)h Fr(a)g Fv(is)g(a)h(square)f(mo)q(d)g Fr(p)g Fv(if)h(and)f(only)h(if)f Fp(\000)p Fr(a)g Fv(is)g(not)h(a)f(square)286 2206 y(\(Lemma)f Fq(??)p Fv(\).)26 b(If)17 b(w)o(e)g(also)i(ha)o(v)o(e)e Fr(q)g Fp(\021)f Fv(3)g(mo)q(d)h(4,)h(then)f Fr(a)f Fp(2)g Fr(Z)1467 2188 y Fo(1)1463 2219 y Fk(n)1504 2206 y Fv(if)i(and)g(only)g(if) 286 2267 y Fp(\000)p Fr(a)13 b Fp(2)h Fr(Z)448 2249 y Fo(1)444 2279 y Fk(n)468 2267 y Fv(.)p 164 2313 648 2 v 204 2344 a Fn(10)239 2359 y Fm(R.)j(Lipton,)h(\\Ho)o(w)g(to)g(c)o(heat)h(at)f(men)o(tal)f(p)q(ok)o (er,")i Fg(Pr)n(o)n(c)n(e)n(e)n(dings)g(of)f(AMS)i(Short)f(Course)f(on)164 2409 y(Crypto)n(gr)n(aphy)949 2599 y Fv(34)p eop %%Page: 35 35 bop 224 307 a Fv(3.)24 b(W)l(e)16 b(can)g(test)g(whether)g(or)h(not)g Fr(a)c Fp(2)h Fr(Z)1011 289 y Fo(1)1007 319 y Fk(n)1047 307 y Fv(without)k(kno)o(wing)f Fr(p;)8 b(q)r Fv(.)237 421 y(Tw)o(o)21 b(tec)o(hniques)e(are)h(used)g(rep)q(eatedly)l(.)32 b(They)20 b(are)g(also)h(of)g(in)o(terest)e(in)i(other)164 481 y(applications.)164 573 y Fq(Theorem)d(21)g(\(random)h(n)n(um)n(b)r(ers\))24 b Fu(B)i(c)n(an)g(gener)n(ate)h(a)f(r)n(andom)f(numb)n(er)h(so)164 633 y(that)18 b(A)f(do)n(es)g(not)h(know)h(its)e(value)i(now,)f(but)g(c)n(an) g(verify)f(it)h(later.)164 725 y Fv(A)23 b(\\\014rst)i(try")f(migh)o(t)g(b)q (e)g(for)g(B)g(to)g(generate)g(a)g(random)h(n)o(um)o(b)q(er)e(and)h(giv)o(e)g (an)164 785 y(encryption)17 b(of)g(it)h(to)f(A,)f(with)h(the)g(k)o(ey)f(rev)o (ealed)g(for)h(v)o(eri\014cation)h(later.)23 b(This)18 b(do)q(es)164 845 y(not)f(w)o(ork,)e(since)i(A)f(cannot)h(b)q(e)f(sure)g(that)h(B)f(c)o (hose)g(his)h(n)o(um)o(b)q(er)e(at)i(random.)237 927 y(T)l(o)g(insure)f (randomness,)h(A)e(giv)o(es)i(B)e(a)i(second)f(n)o(um)o(b)q(er)f(\(whic)o(h)h (A)g(is)h(supp)q(osed)164 987 y(to)j(c)o(ho)q(ose)g(at)g(random\))g(after)f (receiving)h(B's)f(encryption,)h(and)g(the)f(n)o(um)o(b)q(er)g(used)164 1048 y(b)o(y)d(B)g(is)h(the)f(\\exclusiv)o(e)g(or")h(of)f(the)g(t)o(w)o(o:) 775 1135 y(A)g(c)o(ho)q(oses)g(0110001)777 1195 y(B)g(c)o(ho)q(oses)g (1011011)p 750 1215 448 2 v 847 1256 a(B)g(uses)g(1101010)164 1344 y(Ev)o(en)f(if)i(one)f(of)h(the)e(pla)o(y)o(ers)i(do)q(es)f(not)h(c)o (ho)q(ose)g(his)f(n)o(um)o(b)q(er)g(at)g(random,)h(the)e(result)164 1404 y(will)j(b)q(e)e(random)h(as)g(long)h(as)f(the)f(other)g(pla)o(y)o(er)g (do)q(es.)164 1496 y Fq(Theorem)i(22)24 b Fu(B)16 b(c)n(an)g(ask)g(A)g(a)g (question)h(r)n(elate)n(d)f(to)g Fr(n)p Fu(.)22 b(The)16 b(answer)h(to)f (this)g(ques-)164 1556 y(tion)i(may)f(or)g(may)f(not)i(al)r(low)h(B)f(to)g (factor)f Fr(n)p Fu(.)22 b(A)o(t)c(the)g(time)g(the)g(question)h(is)e(aske)n (d,)164 1617 y(A)f(c)n(annot)h(tel)r(l)i(whether)e(the)f(answer)h(he)g(gives) g(B)g(is)f(useful)h(or)f(useless,)h(but)g(this)g(c)n(an)164 1677 y(b)n(e)h(veri\014e)n(d)g(later.)164 1769 y Fq(Pro)r(of:)31 b Fv(A)21 b(c)o(ho)q(oses)h(primes)g Fr(p;)8 b(q)24 b Fp(\021)e Fv(3)17 b(mo)q(d)f(4,)23 b(and)f(announces)g Fr(n)g Fv(=)h Fr(pq)r Fv(.)36 b(Using)164 1829 y(the)16 b(tec)o(hnique)g(of)h(Theorem)f Fq(??)p Fv(,)h(B)f(generates)h(a)g(random)g Fr(x)p Fv(,)f(and)h(will)i(ask)e (A)f(for)h(a)164 1889 y(square)g(ro)q(ot)g(of)g Fr(a)d Fp(\021)g Fr(x)599 1871 y Fo(2)618 1889 y Fv(.)22 b(A)o(t)16 b(the)g(time)g(the)g (question)i(is)f(ask)o(ed,)f(A)g(will)i(kno)o(w)f Fr(a)f Fv(but)164 1949 y(not)j Fr(x)p Fv(.)26 b(B)18 b(is)h(allo)o(w)o(ed)g(to)g(sp)q(ecify)f (whether)g(the)g(square)h(ro)q(ot)g(A)f(giv)o(es)g(him)h(is)g(or)f(is)164 2009 y(not)f(in)g Fr(Z)345 1991 y Fo(1)341 2022 y Fk(n)364 2009 y Fv(.)237 2091 y(If)e Fr(x)e Fp(2)i Fr(Z)411 2073 y Fo(1)407 2104 y Fk(n)446 2091 y Fv(and)h(B)e(sp)q(eci\014es)i(that)g(the)f(square)g (ro)q(ot)i(is)f(in)g Fr(Z)1362 2073 y Fo(1)1358 2104 y Fk(n)1382 2091 y Fv(,)f(A)g(will)i(giv)o(e)e(B)g Fp(\006)p Fr(x)p Fv(,)164 2151 y(whic)o(h)i(is)h(useless.)23 b(B)16 b(can)h(get)g(useful)g(information) i(b)o(y)d(sp)q(ecifying)i(that)f(the)g(square)164 2212 y(ro)q(ot)j(is)g(not)f (in)h Fr(Z)509 2194 y Fo(1)505 2224 y Fk(n)529 2212 y Fv(.)29 b(If)19 b Fr(x)f Fp(62)g Fr(Z)758 2194 y Fo(1)754 2224 y Fk(n)778 2212 y Fv(,)i(the)e(square)h(ro)q(ot)h(in)g Fr(Z)1258 2194 y Fo(1)1254 2224 y Fk(n)1297 2212 y Fv(will)h(b)q(e)e(useful,)h(and)f(the)164 2272 y(other)d(will)i(b)q(e)f(useless.)237 2354 y(Since)d Fr(x)g Fv(is)h(randomly)g(c)o(hosen,)f(and)g(half)h(the)f(p)q(ossible)j Fr(x)c Fv(are)i(in)f Fr(Z)1497 2336 y Fo(1)1493 2366 y Fk(n)1531 2354 y Fv(and)h(half)g(are)164 2414 y(not,)h(A)g(will)i(not)f(b)q(e)f(able)h (to)g(guess)g(righ)o(t)g(more)f(than)h(half)g(the)f(time)g(whether)g(he)g(is) 164 2474 y(b)q(eing)h(ask)o(ed)f(for)h(useful)g(or)f(useless)h(information.) 949 2599 y(35)p eop %%Page: 36 36 bop 164 307 a Fq(The)18 b(pro)r(cedure)224 400 y Fv(1.)24 b(A)15 b(announces)h Fr(n)602 407 y Fo(1)622 400 y Fr(;)8 b(:)g(:)g(:)f(n)738 407 y Fo(52)776 400 y Fv(,)15 b(eac)o(h)g(of)h(whic)o(h)f(is)h(a)g(pro)q (duct)g(of)g(t)o(w)o(o)f(large)i(primes)286 460 y Fp(\021)c Fv(3)k(mo)q(d)g(4.)k(He)14 b(enco)q(des)g(the)g(names)h(of)f(the)h (di\013eren)o(t)f(cards)h(using)h(di\013eren)o(t)286 520 y Fr(n)315 527 y Fk(i)349 520 y Fv(and)k(also)h(announces)g(these.)31 b([if)20 b(B)f(\014nds)h(the)g(factors)g(of)g(one)g(of)g(the)f Fr(n)1755 527 y Fk(i)1769 520 y Fv(,)286 580 y(it)h(do)q(es)g(not)g(help)f (him)h(iden)o(tify)g(the)f(other)g(cards])g(B)g(do)q(es)h(the)g(same)f(thing) 286 640 y(using)f Fr(m)457 647 y Fo(1)476 640 y Fr(;)8 b(:)g(:)g(:)f(m)606 647 y Fo(52)643 640 y Fv(.)224 742 y(2.)24 b(T)l(o)17 b(get)g(a)h(card,)f(B)f (asks)i(A)e(one)h(question)h(for)f(eac)o(h)g Fr(n)1315 749 y Fk(i)1329 742 y Fv(,)g(using)h(the)f(pro)q(cedure)286 802 y(of)d(Theorem)g Fq(??)p Fv(.)21 b(51)15 b(of)f(the)g(questions)h(will)h(b)q (e)e(useless.)22 b(The)14 b(useful)g(question)286 862 y(allo)o(ws)k(B)e(to)g (deco)q(de)g(the)g(name)g(of)g(the)g(card)g(he)g(receiv)o(es.)k([it)c(is)h (crucial)f(that)286 923 y(A)h(will)i(b)q(e)f(able)g(to)f(v)o(erify)g(the)g (uselessness)h(of)g(the)f(other)h(51)g(questions)g(after)286 983 y(the)e(game.])224 1084 y(3.)24 b(B)15 b(deletes)g(the)g Fr(m)621 1091 y Fk(i)650 1084 y Fv(corresp)q(onding)j(to)e(the)f(card)g(he)h (receiv)o(ed)e(\(this)i(ensures)f(A)286 1145 y(will)j(not)f(get)f(this)h (card\).)224 1246 y(4.)24 b(A)14 b(gets)h(a)h(card)e(b)o(y)h(asking)h(51)g (questions)f(ab)q(out)h(the)f(remaining)h Fr(m)1563 1253 y Fk(i)1577 1246 y Fv(,)f(of)g(whic)o(h)286 1307 y(50)i(are)f(useless.)22 b(He)16 b(deletes)g(the)g Fr(n)957 1314 y Fk(i)987 1307 y Fv(corresp)q (onding)j(to)d(this)h(card.)224 1408 y(5.)24 b(If)19 b(B)h(gets)g(a)g(second) g(card,)g(he)g(asks)g(51)h(questions.)33 b(He)19 b(a)o(v)o(oids)h(getting)h (the)286 1468 y(same)c(card)g(t)o(wice)g(b)o(y)g(not)h(asking)g(a)g(useful)f (question)h(ab)q(out)h(the)e(same)g Fr(n)1708 1475 y Fk(i)1739 1468 y Fv(as)286 1529 y(the)f(\014rst)g(time.)164 1643 y(This)i(pro)q(cedure) e(is)i(to)q(o)g(cum)o(b)q(ersome)d(to)j(b)q(e)e(practical,)i(but)f(it)g(is)g (a)g(go)q(o)q(d)i(example)164 1703 y(of)25 b(the)f(kinds)h(of)g(things)g (that)g(can)g(b)q(e)f(done)h(using)h(cryptographic)f(pro)q(cedures.)164 1763 y(Curren)o(t)20 b(researc)o(h)h(fo)q(cusses)g(on)h(other)f(tasks)g(in)o (v)o(olving)h(exc)o(hanges)f(of)g(encrypted)164 1823 y(and)c(partially)h (encrypted)e(information)i(b)q(et)o(w)o(een)d(t)o(w)o(o)h(pla)o(y)o(ers.)164 1990 y Fw(8)83 b(Pseudo-random)26 b(n)n(um)n(b)r(er)f(generators)164 2099 y Fv([This)e(section)h(is)f(based)h(on)f(Blum,)h(Blum,)g(&)f(Sh)o(ub,)h (\\A)e(simple)i(unpredictable)164 2159 y(pseudo-random)18 b(n)o(um)o(b)q(er)d (generator,")i Fu(SIAM)g(J.)g(Computing)22 b Fv(15,)16 b(364{383.])237 2245 y(Man)o(y)g(programs)i(\(e.)e(g.,)h(sim)o(ulations,)i(one-time-pads\))f (mak)o(e)e(use)g(of)h(n)o(um)o(b)q(ers)164 2305 y(that)g(are)g(supp)q(osed)h (to)f(b)q(e)g(random.)23 b(A)16 b(gen)o(uine)h(source)g(of)g(randomness)h (migh)o(t)f(b)q(e)164 2365 y(a)22 b(subroutine)h(that)f(made)g(calls)h(on)f (something)h(lik)o(e)f(a)h(built-in)g(Geiger)g(coun)o(ter.)164 2425 y(W)l(e)18 b(will)j(b)q(e)e(concerned)f(with)h(algorithms)i(that)e(pro)q (duce)g(a)g(sequence)f(of)g(n)o(um)o(b)q(ers)949 2599 y(36)p eop %%Page: 37 37 bop 164 307 a Fv(\(usually)19 b(0's)e(and)g(1's\))g(whic)o(h)h(app)q(ears)g (random)f(\(precise)g(de\014nition)i(will)g(b)q(e)e(giv)o(en)164 367 y(later\).)237 452 y(A)g(t)o(ypical)h(example)g(of)f(suc)o(h)h(an)g (algorithm)h(is)f(the)g(function)g Fs(rand\(\))d Fv(in)j(the)g(C)164 513 y(programming)f(language.)22 b(Eac)o(h)15 b(call)h(up)q(dates)g(an)g(in)o (ternally)g(main)o(tained)g Fr(N)21 b Fv(using)164 573 y(the)16 b(form)o(ula)395 683 y Fr(N)j Fv(=)14 b Fr(N)i Fp(\003)11 b Fv(110351524)q(5)j(+)d(12345)51 b(mo)q(d)17 b(4294967296)g(=)d(2)1514 662 y Fo(32)164 793 y Fv(with)j(the)f(output)h(giv)o(en)f(b)o(y)g(2)738 775 y Fl(\000)p Fo(16)803 793 y Fr(N)22 b Fv(mo)q(d)16 b(2)997 775 y Fo(15)1035 793 y Fv(.)237 878 y(I)11 b(recen)o(tly)f(wrote)h(a)h (program)g(to)g(roll)g(dice)f(whic)o(h)h(in)o(v)o(olv)o(ed)f(using)h Fs(rand\(\))d Fv(mo)q(d)j(6.)164 938 y(In)17 b(o)o(v)o(er)f(100)i(calls,)g (it)g(nev)o(er)e(happ)q(ened)h(that)h(the)e(same)h(n)o(um)o(b)q(er)g(o)q (ccurred)g(on)g(t)o(w)o(o)164 998 y(consecutiv)o(e)22 b(rolls,)j(ev)o(en)d (though)h(this)h(should)g(ha)o(v)o(e)e(happ)q(ened)h(ab)q(out)h(1)p Fr(=)p Fv(6\(100\))164 1059 y(times!)d(This)d(suggests)f(this)g(particular)h (generator)f(has)g(some)f(problems.)1567 1040 y Fo(11)237 1144 y Fv(In)k(this)g(section,)h(w)o(e)f(will)i(presen)o(t)d(random)h(n)o(um)o(b)q (er)f(generators)i(for)f(whic)o(h)g(it)164 1204 y(can)e(b)q(e)h(pro)o(v)o(ed) e(\(giv)o(en)h(assumptions)i(lik)o(e)f(\(QRA\)\))e(that)i(suc)o(h)f(problems) g(will)i(not)164 1264 y(o)q(ccur.)164 1408 y Ft(8.1)70 b(The)22 b(Quadratic)g(Generator)164 1501 y Fv(Let)17 b Fr(n)e Fv(=)g Fr(pq)r Fv(,)h(where)h Fr(p;)8 b(q)19 b Fv(are)e(primes)g Fp(\021)d Fv(3)j(mo)q(d)g(4.)23 b(F)l(or)17 b(eac)o(h)g(prime,)f Fr(a)h Fv(is)g(a)h(square)164 1561 y(if)k(and)g(only)g(if)g Fp(\000)p Fr(a)e Fv(is)i(not)g(a)g(square)f(\(Lemma)g Fq(??)p Fv(\).)38 b(This)22 b(implies)h(that,)f(if)g Fr(x)g Fp(\021)164 1621 y(\006)p Fr(a)229 1628 y Fo(1)264 1621 y Fv(mo)q(d)17 b Fr(p)c Fv(and)g Fr(x)g Fp(\021)h(\006)p Fr(a)661 1628 y Fo(2)696 1621 y Fv(mo)q(d)j Fr(q)r Fv(,)12 b(there)f(will)j(b)q(e)f(exactly)f(one)g(c)o (hoice)g(whic)o(h)h(mak)o(es)164 1681 y Fr(x)f Fv(a)h(square)f(mo)q(d)h Fr(n)p Fv(.)20 b(Hence,)12 b(if)h Fr(b)f Fv(is)h(a)g(square)g(mo)q(d)f Fr(n)p Fv(,)h(exactly)f(one)h(of)g(its)g(four)g(square)164 1742 y(ro)q(ots)i(will)g(also)g(b)q(e)f(a)g(square.)21 b(This)14 b Fu(princip)n(al)19 b Fv(square)14 b(ro)q(ot)g(will)i(b)q(e)d(denoted)h(b)o (y)1707 1699 y Fp(p)p 1749 1699 21 2 v 43 x Fr(b)o Fv(.)237 1827 y(The)23 b(quadratic)i(generator)e(uses)h(a)f(randomly)i(c)o(hosen)e (square)g Fr(x)g Fv(\(called)h(the)164 1887 y Fu(se)n(e)n(d)5 b Fv(\))15 b(not)g(divisible)i(b)o(y)d Fr(p)i Fv(or)f Fr(q)h Fv(to)f(generate)g(a)g(sequence)f(of)h(0's)g(and)h(1's)f(\()p Fu(bits)t Fv(\).)21 b(The)164 1947 y(sequence)15 b(is)i Fr(a)441 1954 y Fk(i)471 1947 y Fv(mo)q(d)g(2,)f(where)g Fr(a)802 1954 y Fo(0)835 1947 y Fv(=)e Fr(x)i Fv(and)h Fr(a)1052 1954 y Fk(i)p Fo(+1)1124 1947 y Fp(\021)1177 1915 y(p)p 1218 1915 40 2 v 1218 1947 a Fr(a)1244 1954 y Fk(i)1274 1947 y Fv(mo)q(d)g Fr(n)p Fv(:)538 2076 y Fr(x)f Fv(mo)q(d)h(2)765 2038 y Fp(p)p 806 2038 28 2 v 806 2076 a Fr(x)f Fv(mo)q(d)h(2)1033 2020 y Fj(q)p 1075 2020 70 2 v 18 x Fp(p)p 1116 2038 28 2 v 1116 2076 a Fr(x)f Fv(mo)q(d)h(2)58 b Fr(:)8 b(:)g(:)164 2186 y Fv(\(from)13 b(a)g(practical)i (p)q(oin)o(t)f(of)f(view,)h(it)f(is)h(simpler)g(to)g(generate)f(the)f (sequence)g(starting)164 2247 y(with)17 b(the)f(last)h(n)o(um)o(b)q(er)f(and) h(squaring\))p 164 2293 648 2 v 204 2324 a Fn(11)239 2339 y Fm(Kn)o(uth)c(suggests)i(that)e(a)h(b)q(etter)g(w)o(a)o(y)f(to)g(obtain)g(a)g (random)f(n)o(um)o(b)q(er)g(b)q(et)o(w)o(een)j(0)e(and)g Ff(k)c Fc(\000)g Fm(1)k(is)164 2389 y(to)h(use)g Ff(k)8 b Fb(rand\(\))p Ff(=)n(M)d Fm(,)12 b(where)j Ff(M)j Fm(is)c(the)h(maxim)n(um)9 b(v)n(alue)k(of)h Fb(rand\(\))p Fm(.)949 2599 y Fv(37)p eop %%Page: 38 38 bop 237 307 a Fv(As)17 b(a)h(small)h(example)f(with)g Fr(n)e Fv(=)g(589)h(=)f(19\(31\))j(and)f Fr(x)e Fv(=)g(81,)i(the)f(sequence)g(of)164 367 y Fr(a)190 374 y Fk(i)220 367 y Fv(is)514 428 y(81)49 b(9)h(586)g(175)f (112)h(443)g(214)g(237)8 b Fr(:)g(:)g(:)164 515 y Fv(\(note)16 b(that)397 474 y Fp(p)p 439 474 25 2 v 41 x Fv(9)e(=)g Fp(\000)p Fv(3,)h(not)i(3\))g(whic)o(h)f(giv)o(es)h(the)f(sequence)f(of)i(bits)g (11010101.)164 659 y Ft(8.2)70 b(The)22 b(Next)g(Bit)g(Theorem)164 752 y Fv(It)c(w)o(ould)h(certainly)g(b)q(e)g(undesirable)g(if)g(there)f(w)o (ere)f(an)i(e\016cien)o(t)e(algorithm)k(whic)o(h)164 812 y(to)q(ok)16 b(as)f(input)h(the)f(\014rst)g Fr(k)i Fv(bits)f(of)f(the)g(sequence)f(from)h (the)f(generator)i(and)f(guessed)164 872 y(the)e(\()p Fr(k)6 b Fv(+)f(1\)-st)14 b(bit)g(with)g(probabilit)o(y)h(m)o(uc)o(h)d(greater)h (than)h(1)p Fr(=)p Fv(2.)21 b(W)l(e)13 b(sa)o(y)g(a)g(generator)164 932 y(satis\014es)18 b(the)e Fu(Next)i(Bit)g(Condition)j Fv(if)16 b(there)g(is)h(no)g(suc)o(h)f(algorithm.)164 1034 y Fq(Theorem)i(23)24 b Fu(If)e(\(QRA\))g(is)f(true,)j(the)e(quadr)n(atic)g(gener)n(ator)h (satis\014es)f(the)h(Next)164 1094 y(Bit)18 b(Condition.)164 1196 y Fq(Pro)r(of:)j Fv(W)l(e)15 b(will)i(sho)o(w)f(that)g(an)g(algorithm)i (that)e(could)g(predict)g(the)f(\()p Fr(k)c Fv(+)f(1\)-st)16 b(bit)164 1256 y(could)h(b)q(e)f(used)h(to)f(distinguish)k(squares)c(from)g (pseudo-squares)i(mo)q(d)f Fr(n)p Fv(.)237 1341 y(Let)g Fr(b)c Fp(2)h Fr(Z)443 1323 y Fo(1)439 1353 y Fk(n)463 1341 y Fv(.)21 b(The)16 b(sequence)g(of)g(length)h Fr(k)768 1457 y(b)789 1436 y Fo(2)807 1425 y Fh(k)876 1457 y Fr(b)897 1436 y Fo(2)915 1425 y Fh(k)q Fa(\000)p Fi(1)983 1457 y Fr(:)8 b(:)g(:)g(b)1070 1436 y Fo(4)1138 1457 y Fr(b)1159 1436 y Fo(2)164 1567 y Fv(can)14 b(b)q(e)h(considered)g(as)g(coming)g(from)f(the)g(quadratic)h(generator)g (with)g(seed)g(the)f(\014rst)164 1627 y(term)21 b(of)h(the)g(sequence.)36 b(If)22 b(w)o(e)f(tak)o(e)g(this)i(sequence)d(mo)q(d)j(2)f(and)g(giv)o(e)g (it)g(to)g(our)164 1687 y(predictor,)16 b(w)o(e)g(w)o(ould)h(get)g(a)f(guess) h(as)g(to)g(whether)762 1752 y Fp(p)p 803 1752 41 2 v 803 1797 a Fr(b)824 1783 y Fo(2)858 1797 y Fp(\021)c Fv(0)k(or)f(1)h(mo)q(d)g(2)164 1907 y(whic)o(h)h(has)h(probabilit)o(y)g Fr(>)e Fv(1)p Fr(=)p Fv(2)i(of)f(b)q(eing)h(righ)o(t.)26 b(The)18 b(principle)h(square)f(ro)q(ot)g (of)g Fr(b)1763 1889 y Fo(2)164 1967 y Fv(is)f Fr(b)e Fv(if)h Fr(b)g Fv(is)g(a)g(square,)g Fr(n)10 b Fp(\000)g Fr(b)15 b Fv(if)i Fr(b)e Fv(is)i(a)f(pseudo-square.)22 b(Since)16 b Fr(b)d Fp(6\021)h Fr(n)c Fp(\000)g Fr(b)15 b Fv(mo)q(d)h(2,)g(the)164 2028 y(information)i(from)e(the)g(predictor)h(giv)o(es)f(us)h(a)g(guess)g(as) g(to)f(whether)g Fr(b)g Fv(is)h(a)g(square.)164 2172 y Ft(8.3)70 b(The)22 b(E\016cien)n(t)g(T)-6 b(est)22 b(Theorem)164 2264 y Fv(When)16 b(w)o(e)g(are)g(giv)o(en)g(a)g(sequence)f(of)i(bits)g(from)f(a)g (pseudo-random)i(n)o(um)o(b)q(er)d(gener-)164 2325 y(ator,)h(w)o(e)f(often)g (test)g(the)g(qualit)o(y)h(of)g(the)f(generator)h(b)o(y)f(doing)i(things)f (lik)o(e)g(coun)o(ting)164 2385 y(the)g(fraction)h(of)g(0's,)f(the)g (fraction)h(of)f(subsequences)g(of)h(the)f(form)g(111,)h(etc.)949 2599 y(38)p eop %%Page: 39 39 bop 237 307 a Fv(A)17 b Fu(test)23 b Fv(is)18 b(de\014ned)f(to)h(b)q(e)f(an)h (e\016cien)o(tly)f(computable)h(function)g Fr(T)24 b Fv(whic)o(h)17 b(tak)o(es)164 367 y(as)c(input)h(a)f(sequence)f(of)h(bits)g(of)h(length)f Fr(m)g Fv(and)g(giv)o(es)g(as)g(output)h(a)f(n)o(um)o(b)q(er)f(b)q(et)o(w)o (een)164 428 y(0)17 b(and)f(1.)22 b(De\014ne)439 535 y Fr(A)476 542 y Fk(r)536 535 y Fv(=)41 b(Av)o(erage)16 b(o)o(v)o(er)f(all)j(sequences)d Fr(s)h Fp(f)p Fr(T)7 b Fv(\()p Fr(s)p Fv(\))p Fp(g)438 607 y Fr(A)475 614 y Fk(g)536 607 y Fv(=)41 b(Av)o(erage)16 b(o)o(v)o(er)f Fr(s)h Fv(from)g(the)g(generator)h Fp(f)p Fr(T)7 b Fv(\()p Fr(s)p Fv(\))p Fp(g)164 714 y Fv(These)17 b(a)o(v)o(erages)h(b)q(oth)g(in)o (v)o(olv)o(e)f(\014nite)h(op)q(erations|)h Fr(A)1233 721 y Fk(r)1269 714 y Fv(in)o(v)o(olv)o(es)f(adding)h(up)f Fr(T)7 b Fv(\()p Fr(s)p Fv(\))164 774 y(o)o(v)o(er)14 b(the)h(2)374 756 y Fk(m)423 774 y Fv(p)q(ossible)j Fr(s)d Fv(and)h(dividing.)23 b(Similarly)17 b Fr(A)1188 781 y Fk(g)1223 774 y Fv(deals)f(with)g(an)g(a)o (v)o(erage)f(o)o(v)o(er)164 835 y(all)g(p)q(ossible)h(seeds)e(\(presumably)g (the)f(n)o(um)o(b)q(er)g(of)h(p)q(ossible)i(seeds)e(is)g(m)o(uc)o(h)f(less)h (than)164 895 y(2)188 877 y Fk(m)222 895 y Fv(\).)237 979 y(It)h(w)o(ould)i (tak)o(e)d(to)q(o)j(m)o(uc)o(h)d(time)h(to)h(calculate)g Fr(A)1157 986 y Fk(r)1176 979 y Fr(;)8 b(A)1235 986 y Fk(g)1270 979 y Fv(exactly)l(,)15 b(but)g(they)g(can)h(b)q(e)164 1039 y(estimated)g(with)i (high)f(probabilit)o(y)h(using)g(the)e(sampling)i(ideas)f(in)g(section)g Fq(??)p Fv(.)237 1123 y(A)c(generator)h(is)g(said)h(to)e Fu(satisfy)18 b Fv(the)13 b(test)g Fr(T)20 b Fv(if)14 b Fr(A)1155 1130 y Fk(g)1188 1123 y Fv(is)g(close)g(to)f Fr(A)1441 1130 y Fk(r)1460 1123 y Fv(,)g(i.)h(e.,)f Fr(T)19 b Fv(cannot)164 1184 y(tell)f(the)f (di\013erence)g(b)q(et)o(w)o(een)f(sequences)g(from)h(the)g(generator)h(and)g (gen)o(uinely)f(ran-)164 1244 y(dom)e(sequences.)20 b([w)o(e)13 b(are)i(b)q(eing)h(delib)q(erately)g(v)m(ague)f(ab)q(out)h(the)f(precise)f (de\014nition)164 1304 y(of)j(\\close."])164 1403 y Fq(Theorem)h(24)24 b Fu(If)17 b(a)h(gener)n(ator)g(satis\014es)g(the)g(Next)h(Bit)f(Condition,)g (it)g(satis\014es)h(al)r(l)164 1463 y(e\016ciently)g(c)n(omputable)g(tests)f Fr(T)7 b Fu(.)164 1562 y Fq(Pro)r(of:)24 b Fv(W)l(e)18 b(will)h(sho)o(w)g (that,)f(if)g(w)o(e)f(had)h Fr(T)25 b Fv(with)18 b Fr(A)1181 1569 y Fk(r)1217 1562 y Fv(signi\014can)o(tly)i(di\013eren)o(t)e(from)164 1623 y Fr(A)201 1630 y Fk(g)221 1623 y Fv(,)f(then)g(for)h(some)f Fr(k)r Fv(,)h Fr(T)24 b Fv(could)18 b(b)q(e)f(used)h(to)g(predict)f(the)h(\() p Fr(k)c Fv(+)d(1\)-st)19 b(bit)f(from)f(the)164 1683 y(\014rst)c Fr(k)h Fv(bits)g(with)f(probabilit)o(y)i(somewhat)e(larger)h(than)f(1)p Fr(=)p Fv(2.)21 b(This)14 b(w)o(ould)f(con)o(tradict)164 1743 y(the)j(Next)f(Bit)h(Condition.)237 1827 y(If)d Fr(s)g Fv(is)h(a)g(sequence)e (of)h Fr(i)g Fv(bits,)i(let)e Fr(f)882 1834 y Fk(s)914 1827 y Fv(b)q(e)g(the)g(fraction)h(of)g(all)h(p)q(ossible)g(seeds)e(whose)164 1887 y(\014rst)j Fr(i)g Fv(bits)i(are)e Fr(s)p Fv(.)21 b(F)l(or)16 b(some)h Fr(s)p Fv(,)e(w)o(e)h(ma)o(y)g(ha)o(v)o(e)f Fr(f)1108 1894 y Fk(s)1141 1887 y Fv(=)e(0.)22 b(Note)16 b(that)809 1994 y Fr(A)846 2001 y Fk(g)879 1994 y Fv(=)931 1953 y Fj(X)953 2040 y Fk(s)999 1994 y Fr(f)1023 2001 y Fk(s)1042 1994 y Fr(T)7 b Fv(\()p Fr(s)p Fv(\))164 2130 y(where)16 b(the)g(sum)g(is)h(o)o(v)o(er)e (all)j Fr(s)e Fv(of)h(length)g Fr(m)p Fv(.)237 2214 y(The)f(pro)q(of)i(in)o (v)o(olv)o(es)e(t)o(w)o(o)g(steps:)224 2313 y(1.)24 b(Iden)o(tify)16 b(a)h(0)e Fp(\024)g Fr(k)h Fp(\024)f Fr(m)c Fp(\000)g Fv(1)17 b(suc)o(h)g(that)g(the)f(b)q(eha)o(vior)i(of)f Fr(T)7 b Fv(\()p Fr(s)p Fv(\))16 b(dep)q(ends)h(in)h(a)286 2373 y(signi\014can)o(t)g(w)o(a)o (y)e(on)h(the)f(\()p Fr(k)d Fv(+)e(1\)-st)17 b(bit)g(of)f Fr(s)p Fv(.)224 2474 y(2.)24 b(Use)16 b Fr(T)22 b Fv(to)17 b(mak)o(e)e(a)i (prediction)g(for)g(the)f(\()p Fr(k)d Fv(+)e(1\)-st)17 b(bit.)949 2599 y(39)p eop %%Page: 40 40 bop 237 307 a Fv(The)21 b(pro)q(of)i(of)e(step)h(1)f(uses)h(ideas)g(similar)h (to)f(the)f(\\sampling)j(w)o(alk")e(used)g(to)164 367 y(pro)o(v)o(e)15 b(Theorem)h(5.1)h(in)g(the)f(Goldw)o(asser-Micali)j(pap)q(er.)j(De\014ne)731 477 y Fr(A)768 484 y Fk(i)795 477 y Fv(=)847 436 y Fj(X)858 525 y Fk(s;t)915 477 y Fr(f)939 484 y Fk(s)958 477 y Fv(2)982 457 y Fk(i)p Fl(\000)p Fk(m)1055 477 y Fr(T)7 b Fv(\()p Fr(s)j Fp(\016)h Fr(t)p Fv(\))164 625 y(where)k(the)g(sum)g(is)h(o)o(v)o(er)e(all)j Fr(s)e Fv(of)h(length)g Fr(i)f Fv(and)g Fr(t)g Fv(of)h(length)g Fr(m)9 b Fp(\000)f Fr(i)p Fv(,)15 b(with)h Fp(\016)f Fv(meaning)164 685 y(to)22 b(com)o(bine)f Fr(s)g Fv(and)h Fr(t)f Fv(to)g(create)g(a)g (sequence)g(of)g(length)h Fr(m)p Fv(.)36 b Fr(A)1418 692 y Fk(i)1453 685 y Fv(is)22 b(the)f(exp)q(ected)164 745 y(v)m(alue)i(of)g Fr(T)29 b Fv(applied)24 b(to)f(a)h(sequence)d(in)i(whic)o(h)g(the)g(\014rst)g Fr(i)f Fv(bits)i(come)e(from)g(the)164 805 y(generator)e(\(using)h(a)f (randomly)g(c)o(hosen)f(seed\),)h(with)g(the)f(remaining)i(bits)f(coming)164 865 y(from)c(a)h(gen)o(uinely)g(random)f(source.)237 951 y(Note)e(that)h Fr(A)494 958 y Fo(0)527 951 y Fv(=)e Fr(A)615 958 y Fk(r)634 951 y Fv(,)h Fr(A)699 958 y Fk(m)746 951 y Fv(=)g Fr(A)835 958 y Fk(g)854 951 y Fv(,)g(and)h(that)g(all)h Fr(A)1182 958 y Fk(i)1210 951 y Fv(can)e(b)q(e)g(estimated)h(with)g(high)164 1011 y(probabilit)o(y)j(using)g(sampling.)23 b(Since)193 1147 y Fp(j)p Fr(A)244 1154 y Fk(r)274 1147 y Fp(\000)10 b Fr(A)360 1154 y Fk(g)380 1147 y Fp(j)k(\024)475 1093 y Fk(m)460 1105 y Fj(X)481 1196 y Fo(1)529 1147 y Fp(j)p Fr(A)580 1154 y Fk(i)604 1147 y Fp(\000)d Fr(A)691 1154 y Fk(i)p Fl(\000)p Fo(1)750 1147 y Fp(j)16 b Fv(there)f(is)i Fr(k)i Fv(with)e Fp(j)p Fr(A)1159 1154 y Fk(k)q Fo(+1)1236 1147 y Fp(\000)11 b Fr(A)1323 1154 y Fk(k)1343 1147 y Fp(j)j(\025)g(j)p Fr(A)1475 1154 y Fk(r)1504 1147 y Fp(\000)d Fr(A)1591 1154 y Fk(g)1611 1147 y Fp(j)p Fr(=m)29 b Fv(\(1\))164 1293 y(This)17 b(completes)g(step)f(1.)642 1275 y Fo(12)237 1379 y Fv(In)d(step)h(2,)g(w)o(e)f(are)h(concen)o(trating)g(on)g (a)g(sp)q(eci\014c)g(sequence)f Fr(s)g Fv(of)h(length)h Fr(k)r Fv(,)e(where)164 1439 y Fr(k)22 b Fv(satis\014es)g(\()p Fq(??)p Fv(\).)33 b(W)l(e)20 b(wish)h(to)f(use)g(the)g(b)q(eha)o(vior)h(of)f Fr(T)27 b Fv(to)20 b(predict)g(whether)g(the)164 1499 y(\()p Fr(k)e Fv(+)e(1\)-st)25 b(bit)f(should)h(b)q(e)f(0)g(or)g(1.)44 b(In)o(tuitiv)o(ely)l(,)25 b(w)o(e)e(ask)h Fr(T)31 b Fv(whic)o(h)24 b(of)g(the)f(t)o(w)o(o)164 1559 y(p)q(ossibili)q(ties)c(w)o(ould)f(mak)o(e)d (the)h(sequence)f(lo)q(ok)j(more)e(random.)237 1644 y(W)l(e)24 b(will)i(need)e(to)h(lo)q(ok)h(at)f(the)f(analogues)i(of)f(the)f(a)o(v)o (erages)g Fr(A)1518 1651 y Fk(k)1563 1644 y Fv(and)h Fr(A)1703 1651 y Fk(k)q Fo(+1)1769 1644 y Fv(,)164 1704 y(restricting)17 b(atten)o(tion)g(to)g(those)g(sequences)e(whic)o(h)h(b)q(egin)i(with)f Fr(s)p Fv(:)534 1814 y Fr(A)571 1821 y Fk(k)592 1814 y Fv(\()p Fr(s)p Fv(\))41 b(=)774 1773 y Fj(X)797 1862 y Fk(t)842 1814 y Fv(2)866 1794 y Fk(k)q Fl(\000)p Fk(m)946 1814 y Fr(T)7 b Fv(\()p Fr(s)k Fp(\016)g Fr(t)p Fv(\))489 1929 y Fr(A)526 1936 y Fk(k)q Fo(+1)592 1929 y Fv(\()p Fr(s)p Fv(\))41 b(=)774 1887 y Fj(X)797 1977 y Fk(t)834 1929 y Fv(\()p Fr(f)877 1936 y Fk(s)p Fl(\016)p Fo(0)930 1929 y Fr(=f)978 1936 y Fk(s)997 1929 y Fv(\)2)1040 1908 y Fk(k)q Fo(+1)p Fl(\000)p Fk(m)1166 1929 y Fr(T)7 b Fv(\()p Fr(s)j Fp(\016)h Fv(0)g Fp(\016)g Fr(t)p Fv(\))g(+)774 2002 y Fj(X)797 2092 y Fk(t)834 2043 y Fv(\()p Fr(f)877 2050 y Fk(s)p Fl(\016)p Fo(1)930 2043 y Fr(=f)978 2050 y Fk(s)997 2043 y Fv(\)2)1040 2023 y Fk(k)q Fo(+1)p Fl(\000)p Fk(m)1166 2043 y Fr(T)c Fv(\()p Fr(s)j Fp(\016)h Fv(1)g Fp(\016)g Fr(t)p Fv(\))164 2187 y(The)j(de\014nition)i(of)e Fr(A)567 2194 y Fk(k)q Fo(+1)633 2187 y Fv(\()p Fr(s)p Fv(\))g(is)h(based)f(on)h(the)f (idea)g(that)h Fr(s)7 b Fp(\016)g Fv(0)13 b(and)i Fr(s)7 b Fp(\016)g Fv(1)13 b(are)h(the)g(only)164 2247 y(sequences)h(of)i(length)g Fr(k)d Fv(+)d(1)16 b(whic)o(h)h(b)q(egin)h(with)f Fr(s)p Fv(.)22 b(Note)16 b(that,)g(for)h Fr(i)c Fv(=)h Fr(k)19 b Fv(or)e Fr(k)c Fv(+)e(1,)p 164 2291 648 2 v 204 2322 a Fn(12)239 2337 y Fm(Instead)k(of)f (estimating)f(all)g(the)j Ff(A)800 2343 y Fe(i)814 2337 y Fm(,)e(w)o(e)h (could)f(b)q(egin)h(b)o(y)f(estimating)f Ff(A)1419 2343 y Fe(:)p Fn(5)p Fe(m)1477 2337 y Fm(.)20 b(W)m(e)15 b(w)o(ould)e(next)164 2386 y(estimate)g(either)i Ff(A)479 2392 y Fe(:)p Fn(75)p Fe(m)567 2386 y Fm(or)f Ff(A)649 2392 y Fe(:)p Fn(25)p Fe(m)724 2386 y Fm(,)f(dep)q(ending)i(on)e(whether)j Ff(A)1197 2392 y Fe(:)p Fn(5)p Fe(m)1269 2386 y Fm(w)o(as)d(closer)i(to)f Ff(A)1546 2392 y Fn(0)1578 2386 y Fm(or)g Ff(A)1660 2392 y Fe(m)1692 2386 y Fm(.)949 2599 y Fv(40)p eop %%Page: 41 41 bop 164 307 a Fr(A)201 314 y Fk(i)228 307 y Fv(=)280 274 y Fj(P)324 318 y Fk(s)351 307 y Fr(f)375 314 y Fk(s)393 307 y Fr(A)430 314 y Fk(i)444 307 y Fv(\()p Fr(s)p Fv(\),)16 b(where)f(the)h(sum)h (is)g(tak)o(en)f(o)o(v)o(er)f(all)j Fr(s)e Fv(of)g(length)h Fr(k)r Fv(.)555 417 y(De\014ne)48 b Fr(A)775 424 y Fk(s;)p Fo(0)862 417 y Fv(=)942 376 y Fj(X)965 465 y Fk(t)1010 417 y Fv(2)1034 397 y Fk(k)q Fo(+1)p Fl(\000)p Fk(m)1160 417 y Fr(T)7 b Fv(\()p Fr(s)j Fp(\016)h Fv(0)g Fp(\016)g Fr(t)p Fv(\))738 532 y Fr(A)775 539 y Fk(s;)p Fo(1)862 532 y Fv(=)942 490 y Fj(X)965 580 y Fk(t)1010 532 y Fv(2)1034 511 y Fk(k)q Fo(+1)p Fl(\000)p Fk(m)1160 532 y Fr(T)c Fv(\()p Fr(s)j Fp(\016)h Fv(1)g Fp(\016)g Fr(t)p Fv(\))164 673 y(These)17 b(are)g(the)h(exp)q(ected)e(v)m (alues)i(of)g Fr(T)23 b Fv(for)18 b(a)g(sequence)e(whic)o(h)h(b)q(egins)i (with)f Fr(s)p Fv(,)f(has)164 733 y(either)i(0)h(or)g(1)g(as)g(its)g(\()p Fr(k)c Fv(+)d(1\)-st)20 b(term,)f(and)h(con)o(tin)o(ues)g(randomly)l(.)32 b(They)19 b(can)h(b)q(e)164 793 y(estimated)f(b)o(y)f(sampling.)31 b(Let)18 b Fr(p)805 800 y Fk(s)843 793 y Fv(b)q(e)h(the)f(fraction)i(of)f (the)f(seeds)h(whic)o(h)g(giv)o(e)g Fr(s)f Fv(as)164 853 y(the)d(\014rst)h Fr(k)h Fv(bits)g(whic)o(h)f(giv)o(e)f(0)h(as)g(the)f(\()p Fr(k)d Fv(+)d(1\))h Fp(\000)f Fr(st)15 b Fv(bit)h(\(th)o(us)g Fr(p)1389 860 y Fk(s)1422 853 y Fv(=)d Fr(f)1497 860 y Fk(s)p Fl(\016)p Fo(0)1551 853 y Fr(=f)1599 860 y Fk(s)1618 853 y Fv(\).)21 b(Then)659 985 y Fr(A)696 992 y Fk(k)717 985 y Fv(\()p Fr(s)p Fv(\))42 b(=)904 952 y(1)p 904 974 25 2 v 904 1019 a(2)933 985 y Fr(A)970 992 y Fk(s;)p Fo(0)1027 985 y Fv(+)1081 952 y(1)p 1081 974 V 1081 1019 a(2)1110 985 y Fr(A)1147 992 y Fk(s;)p Fo(1)1721 985 y Fv(\(2\))614 1073 y Fr(A)651 1080 y Fk(k)q Fo(+1)717 1073 y Fv(\()p Fr(s)p Fv(\))g(=)f Fr(p)923 1080 y Fk(s)942 1073 y Fr(A)979 1080 y Fk(s;)p Fo(0)1035 1073 y Fv(+)11 b(\(1)h Fp(\000)f Fr(p)1213 1080 y Fk(s)1231 1073 y Fv(\))p Fr(A)1287 1080 y Fk(s;)p Fo(1)1721 1073 y Fv(\(3\))164 1183 y(If)20 b(w)o(e)h(could)h(estimate)f Fr(p)653 1190 y Fk(s)692 1183 y Fv(from)g(\()p Fq(??)p Fv(\),)i(it)e(w)o(ould)h(b)q(e)f(simple)h(to)f (predict)g(the)f(next)164 1244 y(generated)c(bit)h(after)f Fr(s)p Fv(.)21 b(Unfortunately)l(,)16 b(w)o(e)f(cannot)i(e\016cien)o(tly)e (estimate)h Fr(A)1642 1251 y Fk(k)q Fo(+1)1708 1244 y Fv(\()p Fr(s)p Fv(\).)164 1304 y(The)c(problem)g(is)g(that)g(w)o(e)g(w)o(ould)g(ha)o (v)o(e)f(to)h(sample)g(among)h(the)e(seeds)h(whic)o(h)g(generate)164 1364 y Fr(s)p Fv(,)17 b(and)g(there)g(is)g(no)h(easy)f(w)o(a)o(y)f(to)i (\014nd)f(suc)o(h)g(seeds.)23 b(Instead,)17 b(w)o(e)f(m)o(ust)h(\014nd)g(a)g (w)o(a)o(y)164 1424 y(to)k(use)g(the)g(information)h(that)f(the)g(a)o(v)o (erage)f(of)h Fr(A)1149 1431 y Fk(k)q Fo(+1)1215 1424 y Fv(\()p Fr(s)p Fv(\))g(is)h Fr(A)1388 1431 y Fk(k)q Fo(+1)1454 1424 y Fv(,)f(whic)o(h)g(w)o(e)g(can)164 1484 y(estimate.)237 1569 y(The)13 b(\(far)h(from)f(ob)o(vious\))i(idea)f(will)h(b)q(e)e(to)h(ha)o(v)o (e)f(the)g(prediction)h(of)g(the)f(\()p Fr(k)7 b Fv(+)e(1\)-st)164 1630 y(bit)17 b(itself)g(b)q(e)f(random.)22 b(As)16 b(w)o(e)f(will)j(see)e(b) q(elo)o(w,)h(the)e(probabiliti)q(es)k(can)d(b)q(e)g(assigned)164 1690 y(to)j(the)f(t)o(w)o(o)g(p)q(ossible)i(predictions)g(can)e(b)q(e)h(c)o (hosen)f(so)h(that)f(the)g(exp)q(ected)g(n)o(um)o(b)q(er)164 1750 y(of)f(correct)e(guesses)i(lo)q(oks)h(lik)o(e)e(the)g(righ)o(t-hand)i (side)f(of)f(\()p Fq(??)p Fv(\).)237 1835 y(W)l(e)h(will)h(assume)f Fr(A)620 1842 y Fk(k)q Fo(+1)701 1835 y Fr(>)e(A)791 1842 y Fk(k)829 1835 y Fv([remem)o(b)q(er,)f(w)o(e)i(c)o(hose)h Fr(k)i Fv(so)e(that)g(the)g(di\013erence)164 1895 y(b)q(et)o(w)o(een)g(the)g(t)o(w)o (o)h(is)g(signi\014can)o(t].)27 b(The)18 b(other)g(case)f(can)h(b)q(e)g (handled)h(similarly)l(.)27 b(If)164 1956 y Fr(A)201 1963 y Fk(s;)p Fo(0)260 1956 y Fr(>)14 b(A)349 1963 y Fk(k)370 1956 y Fv(\()p Fr(s)p Fv(\))g Fr(>)f(A)533 1963 y Fk(s;)p Fo(1)579 1956 y Fv(,)i(w)o(e)g(w)o(ould)i(exp)q(ect)d(sequences)h(b)q(eginning)j(with) e Fr(s)9 b Fp(\016)h Fv(0)16 b(to)f(lo)q(ok)164 2016 y(more)e(lik)o(e)h (things)h(from)e(the)h(generator)g(than)g(sequences)f(b)q(eginning)j(with)e Fr(s)6 b Fp(\016)g Fv(1.)20 b(Our)164 2076 y(prediction)d(for)g(the)f(next)g (bit)g(follo)o(wing)j Fr(s)e Fv(will)h(b)q(e)e(random,)h(giv)o(en)f(b)o(y)462 2227 y(Predict)642 2140 y Fj(8)642 2177 y(<)642 2252 y(:)704 2193 y Fv(0)g(with)i(probabilit)o(y)1110 2173 y Fo(1)p 1110 2181 18 2 v 1110 2210 a(2)1144 2193 y Fv(+)11 b Fr(A)1230 2200 y Fk(s;)p Fo(0)1286 2193 y Fp(\000)g Fr(A)1373 2200 y Fk(k)1394 2193 y Fv(\()p Fr(s)p Fv(\))704 2265 y(1)16 b(with)i(probabilit)o(y)1110 2245 y Fo(1)p 1110 2253 V 1110 2282 a(2)1144 2265 y Fv(+)11 b Fr(A)1230 2272 y Fk(s;)p Fo(1)1286 2265 y Fp(\000)g Fr(A)1373 2272 y Fk(k)1394 2265 y Fv(\()p Fr(s)p Fv(\))164 2380 y([The)16 b(probabilities)j(add)e(to)g(1)f(b)o(y)g(equation)h(\()p Fq(??)p Fv(\).])949 2599 y(41)p eop %%Page: 42 42 bop 237 307 a Fv(The)16 b(probabilit)o(y)j(that)d(the)g(prediction)i(for)e (input)h Fr(s)g Fv(is)g(correct)e(is)164 437 y Fr(p)188 444 y Fk(s)215 376 y Fj(\022)251 403 y Fv(1)p 251 425 25 2 v 251 471 a(2)291 437 y(+)c Fr(A)377 444 y Fk(s;)p Fo(0)434 437 y Fp(\000)f Fr(A)520 444 y Fk(k)541 437 y Fv(\()p Fr(s)p Fv(\))602 376 y Fj(\023)644 437 y Fv(+)h(\(1)g Fp(\000)g Fr(p)821 444 y Fk(s)840 437 y Fv(\))867 376 y Fj(\022)903 403 y Fv(1)p 903 425 V 903 471 a(2)943 437 y(+)g Fr(A)1029 444 y Fk(s;)p Fo(1)1086 437 y Fp(\000)f Fr(A)1172 444 y Fk(k)1193 437 y Fv(\()p Fr(s)p Fv(\))1254 376 y Fj(\023)1326 437 y Fv(=)582 523 y(1)p 582 545 V 582 591 a(2)622 556 y(+)h Fr(p)695 563 y Fk(s)714 556 y Fr(A)751 563 y Fk(s;)p Fo(0)808 556 y Fv(+)g(\(1)g Fp(\000)g Fr(p)985 563 y Fk(s)1004 556 y Fv(\))p Fr(A)1060 563 y Fk(s;)p Fo(1)1116 556 y Fp(\000)g Fr(A)1203 563 y Fk(k)1224 556 y Fv(\()p Fr(s)p Fv(\))48 b(=)1425 523 y(1)p 1425 545 V 1425 591 a(2)1465 556 y(+)11 b Fr(A)1551 563 y Fk(k)q Fo(+1)1617 556 y Fv(\()p Fr(s)p Fv(\))g Fp(\000)g Fr(A)1776 563 y Fk(k)1797 556 y Fv(\()p Fr(s)p Fv(\))164 679 y(When)18 b(w)o(e)g(a)o(v)o(erage)g(o)o(v)o(er)g(all)i (seeds)e(resulting)i(in)f(all)h(p)q(ossible)h Fr(s)p Fv(,)d(w)o(e)g(get)h(a)g (correct)164 739 y(prediction)e(with)g(probabilit)o(y)h(1)p Fr(=)p Fv(2)12 b(+)f Fr(A)924 746 y Fk(k)q Fo(+1)1001 739 y Fp(\000)f Fr(A)1087 746 y Fk(k)1108 739 y Fv(,)16 b(whic)o(h,)g(b)o(y)f(\()p Fq(??)p Fv(\),)i(is)g(signi\014can)o(tly)164 800 y(greater)f(than)h(1)p Fr(=)p Fv(2.)551 781 y Fo(13)164 929 y Fq(8.3.1)55 b(A)19 b(consequence)f(in) n(v)n(olving)i(symmetry)164 1022 y Fv(The)e(Next)g(Bit)g(Condition)j(w)o(as)e (stated)g(in)g(a)g(w)o(a)o(y)f(that)h(clearly)g(distinguished)i(the)164 1082 y(b)q(eginning)i(of)e(the)g(pseudo-random)h(sequence)d(from)i(the)g (end.)34 b(By)20 b(con)o(trast,)i(the)164 1142 y(E\016cien)o(t)h(T)l(est)g (Theorem)g(treats)h(a)g(pseudo-random)h(sequence)d(in)i(a)g(completely)164 1202 y(symmetrical)17 b(w)o(a)o(y)l(.)23 b(F)l(rom)17 b(that)g(p)q(oin)o(t)h (of)f(view,)g(it)h(do)q(es)f(not)h(matter)f(whic)o(h)g(end)g(of)164 1263 y(the)f(sequence)f(is)i(used)g(to)f(start)h(the)f(construction.)22 b(This)c(leads)f(to)164 1364 y Fq(Corollary)j(25)k Fu(L)n(et)18 b Fr(n)c Fv(=)g Fr(pq)r Fu(.)23 b(Start)18 b(with)g(a)g(r)n(andom)e Fv(1)f Fp(\024)f Fr(x)g Fp(\024)g Fr(n)d Fp(\000)g Fv(1)18 b Fu(not)h(divisible)164 1424 y(by)k Fr(p)g Fu(or)g Fr(q)r Fu(.)38 b(L)n(et)23 b Fr(a)542 1431 y Fo(0)585 1424 y Fv(=)h Fr(x)p Fu(,)g Fr(a)740 1431 y Fk(i)p Fo(+1)823 1424 y Fp(\021)g Fr(a)912 1406 y Fo(2)912 1437 y Fk(i)949 1424 y Fu(mo)n(d)16 b Fr(n)p Fu(.)39 b(The)23 b(se)n(quenc)n(e)i(of)e(bits)g(given)i(by)164 1485 y Fr(a)190 1492 y Fk(i)221 1485 y Fu(mo)n(d)17 b(2)g(satis\014es)h(al)r (l)h(e\016cient)g(tests.)p 164 2378 648 2 v 204 2409 a Fn(13)239 2424 y Fm(Thanks)10 b(to)g(R.)g(Sengupta)g(for)g(p)q(oin)o(ting)f(out)i(the)g (imp)q(ortance)e(of)h(the)h(expression)g(for)f Ff(A)1634 2430 y Fe(k)q Fn(+1)1697 2424 y Fm(\()p Ff(s)p Fm(\))r Fc(\000)164 2474 y Ff(A)195 2480 y Fe(k)216 2474 y Fm(\()p Ff(s)p Fm(\).)949 2599 y Fv(42)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF