ࡱ>  @ y*bjbj00 (LRbRby"6666666J<NDJ.'2(&&&&&&&$`(R*b&6^^^&66&^66&^&rT66  `h|@; %&0.'I z+.^+ JJ6666 +6!h s&&JJ DJJ CSE 231 Fall 2008 Programming Project 4 This assignment is worth 40 points (4% of the course grade) and must be completed and turned in before midnight on Monday, September 22nd. Assignment Overview Hangman is a popular word game. In this game, the player is given some number of blanks representing the name of a movie or an actor and he/she has to guess the name using at most K number of chances. A good website to play this game is : HYPERLINK "http://www.hangman.no/"http://www.hangman.no/. Select English as the language, then Play game and finally choose a category in the list and get started. Here, the number of chances you get is 10 (i.e. k = 10), for your project it will be only 6. Task Your task is to implement the Hangman game in Python. Before implementing the game, please play the game on the website mentioned above. It would help you understand the project. Program Specifications: Output a brief description of the game of hangman and how to play Ask the user to enter the word or phrase that will be guessed (have a friend enter the phrase for you if you want to be surprised) Output the appropriate number of dashes and spaces to represent the phrase (make sure its clear how many letters are in each word and how many words there are) Continuously read guesses of a letter from the user and fill in the corresponding blanks if the letter is in the word, otherwise report that the user has made an incorrect guess. Each turn you will display the phrase as dashes but with any already guessed letters filled in, as well as which letters have been incorrectly guessed so far and how many guesses the user has remaining. Your program should allow the user to make a total of k=6 guesses. You MUST use at least 3 string methods or operators in a useful manner (several examples that I used are given in the notes below). If you wish to use lists in your project that is fine, as long as you meet this requirement. Assignment Notes: If the letter has already been guessed, output a message to the player and ask for input again. If the guess entered is not an alphabetic letter, output a message and ask for input again. If the letter is present in the word to be guessed, fill in the blanks appropriately with this particular letter. If the complete name has been guessed, the game is over - player wins the game. Output a message telling the player they have won and quit the game. If the letter/digit is not present in the word to be guessed, give a message to the player indicating that the guess is incorrect and remaining number of chances is one less. If remaining number of chances is 0 (zero), the game is over - player loses the game. Output a message that they have lost and what the correct word was. Quit the game. Deliverables You must use Handin to turn in the file proj04.py this is your source code solution; be sure to include your section, the date, the project number and comments describing your code. Please be sure to use the specified file name, and save a copy of your proj04.py file to your H: drive as a backup. Tips/Hints: This project can all be done with strings, use help(str) in the python shell window to see all of the string methods that may be useful. Some of the ones I used in the example program are below: 1) The string concatenation operator +. In order to keep track of the incorrect guesses, you could initialize a blank string and use + to update the string with the incorrect guesses. 2) The membership operator in would be useful to check if a particular letter/digit has already been guessed (correctly or incorrectly). 3) String slicing is useful to insert a letter in a string. For example if I have x = hello and I wanted to put a Z in the middle of the word, I could write: x = x[0:3] + Z + x[3:] or if I wanted to Z to replace the e I could write: x = x[0:1] + Z + x[2:] remember string indexing using slices includes the start position but not the end position, so x[0:2] is he but does not include the l at index 2. 4) lower() can be used to change a string to lowercase make sure you find the letter the user enters whether its lower or uppercase in the guess word. 5) find() returns the index at which the first instance of a substring is found in a string, for example if x=hello x.find(e) returns 1 and x.find(l) returns 2. 6) remember if there is an apostrophe () or a dash (-) in the original phrase you should output it instead of a dash, the user doesnt have to guess those. 7) Try the example program with many different inputs and make sure your program behaves similarly! Sample output of the program (next page):  Extra Credit (10pts): Note: extra credit is an all or nothing deal, you either do the whole thing and get 10 points, or you dont get any extra credit at all. As always if your program doesnt run, you get 0 points for the whole thing, so make sure you save a copy of your working program before you start adding in the extra credit. FINISH everything else in the project first, then attempt this. 10 points is a lot, and this is meant to be hard, you can ask for help with specific errors or coding questions, but you must figure out the logic and solve the problem completely on your own. Write-up: In order to get any credit for the extra coding that you do, you must write a description of your algorithm and solution in your own words. That is, describe how your solution works in English, especially how you make sure and choose letters with the proper frequency distribution. This write-up should be complete but concise, between and 1 typewritten page. You will turn this in with your project under the filename proj04xc.txt. General idea: After the user enters the word to guess, ask the user if they want to choose the letters to guess or if they want the computer to do it. For the first option (they choose to enter the letters themselves), the program should continue just like normal. You must implement the extra code to have the computer choose the letters for the 2nd option. Program flow: Each time the word is displayed with dashes and letters guessed so far, you will ask the user if they would like to solve the puzzle, if they enter y, then ask them what they think the word is. If they enter the correct word, they win and the game is over, otherwise tell them they are wrong and continue with the computer guessing letters until the user again chooses to try and guess the word or the computer uses up its 6 chances at guessing letters. Details of computer letter-guessing: You will need to import the random module in order to have the computer choose a random letter. The computer should never make a guessing mistake, that is it should never try to choose a letter it has already guessed, and obviously it should never try to choose a non-alphabetic letter. Certainly it will sometimes guess letters that arent in the word. In order to increase the computers chances, however, it will not guess letters completely randomly from the alphabet. It will use some information about the distribution of letters used commonly in the English language. Distribution: Wikipedia discusses letter distribution here:  HYPERLINK "http://en.wikipedia.org/wiki/Letter_frequencies" http://en.wikipedia.org/wiki/Letter_frequencies There are many frequencies mentioned, but we will use the basic morse code distribution for this project, which states letter distribution has the pattern e it san hurdm wgvlfbk opjxcz yq where the letters in each group are equally common as one another, and the groups are ordered from left to right as most common to least common. For this project we want, therefore, for the computer to guess e the most, and y and q the least. Specifically we want the computer to guess the first group of letters (e) 7 times as often as the last group (y or q), the second group of letters (i or t), 6 times as often as the last group, the third group 5 times as often, etc So the table of frequencies looks like this: ei,ts,a,nh,u,r,d,mw,g,v,l,f,b,ko,p,j,x,c,zy,q7x6x5x4x3x2x1x There are different ways of using methods from the random module and this distribution information to make sure you select the letter e 7x as often as the letters y or q, it will be up to you to figure this out. Hints: start by getting everything working with the computer just choosing letters in order through the alphabet, then figure out how to get the computer to choose a random letter, and finally figure out how to get the computer to choose a letter using the proper distribution. Deliverables: Your extra code will just be part of your regular program file, proj04.py, and you will also turn in your written document as described above, proj04.txt )*CO T W Z ɽɱɡymaZRNRh<jh<U hG36hjeh CJOJQJaJhFmCJOJQJaJh8CJOJQJaJhO.CJOJQJaJhjs:hje5CJOJQJaJhEhje5CJOJQJaJhQ"CJOJQJaJh(oCJOJQJaJhjs:hjeCJOJQJaJhjeCJ OJQJ^JaJ hjeCJOJQJ^JaJhjeCJOJQJaJ )* { Y x & Fdgd0 dgdua<$d7$8$H$a$gdjs:d7$8$H$gdjs: dgdy* < F j  z { | - 3 X Y Ϸۨۘ{k___ShICJOJQJaJh?bCJOJQJaJh=hje5CJOJQJaJhhje5CJOJQJaJhje5CJOJQJaJhEhje5CJOJQJaJhhjeCJOJQJaJh@CJOJQJaJhF[JCJOJQJaJhnCJOJQJaJhjeCJOJQJaJjh<U hl`hje0JCJOJQJaJ xmn{0v}ĴĥyiZhB$hjeCJOJQJaJhua<hje5CJOJQJaJh?bh?b5CJOJQJaJh?b5CJOJQJaJhje56CJOJQJaJhhQ"CJOJQJaJhQ"hQ"5CJOJQJaJhQ"CJOJQJaJh CJOJQJaJhjeCJOJQJaJhICJOJQJaJh?bCJOJQJaJxmnwxB  & dgd dgdB$ dgd = dgdua< & Fdgd  $%&'12=?彮ɽɊ}m`SmhhS5CJOJQJaJht5CJOJQJaJhKhje5CJOJQJaJh`5CJOJQJaJh5:CJOJQJaJhWFCJOJQJaJh-CJOJQJaJhhjeCJOJQJaJh950CJOJQJaJhICJOJQJaJhhje5CJOJQJaJhjeCJOJQJaJhua<hjeCJOJQJaJ&'4fg?ABCZY dgd(Y$a$gdH dgd?@ACOWXZ XYZg!!!!$$$B$ɼɬɠɠtgZMghD5d5CJOJQJaJh(Y6CJOJQJaJh(Y5CJOJQJaJh(Yh(YCJH*OJQJaJh(YCJOJQJaJh(Yh(Y5CJOJQJaJhD5dCJOJQJaJhD5dh ( 5CJOJQJaJh ( 5CJOJQJaJh ( CJOJQJaJh ( 5CJOJQJaJh(Y5CJOJQJaJh(YhjejhHUYZ!!$$$'''''''''d$Ifgd(Yl@ dgd(YB$C$O$~$$$$$$N%n%o%&&&&&''''(())))r*㟔|ocSFchD5d5CJOJQJaJhD5dhD5d5CJOJQJaJhD5dCJOJQJaJh ( 5CJOJQJaJh8CJOJQJaJh ( CJOJQJaJh(Y5CJ\aJh(Yh(Y5CJ\aJ h kh(Y0JCJOJQJaJ+jwh kh(YCJOJQJUaJh(Yh(YCJOJQJaJh(YCJOJQJaJjh(YCJOJQJUaJ''(kdx$$Ifl֞@ N$XXXXXXX t0644 la''''''''d$Ifgd(Yl\'''(( dgd(Ykddy$$Ifl֞@ N$XXXXXXX t0644 la(())s*t*u*v*w*x*y* dgdD5d dgd(Y r*s*t*u*y*h(YCJOJQJaJh(Yh ( CJOJQJaJh ( hD5dCJOJQJaJhD5dhD5dCJOJQJaJ&1h:pF'/ =!"#$%wDd]"e)aaB  C AbvǼo&O5mEP= :XN썧G[mpO5*<阧eUZۨ}I G۴g1Fee)9O JixMjo0-ȣr){&zx^jHH$^4cҋ/ibS[^aiW^Ocng!p@:Nx;9I향|g#6YKրPʱY̦wW˼z"8xZ:' l G0=@w{>3O<1`dSpxHcƧ~AP=ԴG/dn4(`͵4ʨy.ǟkyRki ݚM99 GY= g2JaVzi{},0;tz;%mwbҀ<٣r_odž+/GˉDb\=Σk׆ޒ { KM/t*Ib<͓ =g8[!k1  p~o@PPzP<8ȎqNU4*Q8ScXMjE/ KEZlMkX:W6S@"K*gfnBC$'AU!8iXͰa槈9u釼vl 8QqM$lC~4IYzؚo55cztB "8,MO 0L1 S^I[0g򆯖G!}P@ `_"j#HGlySB1yH'ARG$>WS7%?_zДCffL`} L/˴%K9l@%O 䝅q _/RZ gm  p}1"P@/$ 1%ǔ@@^  KŬd@{c<[ %۬Ζm߳k3g[G&ΆOkW6~@@/˳ qKኡKKm1j =uHȂ @'u6^nMdu8Bf,j=c~Ӛ+V\<^0b6SKu#m\4 U_4t1Fc*,t bhψ9@(՗xu;mJ1]<ěAY.O1JGXE~<{CB+z>ͽ-2OҮHkFv̉Z_{OZsct z6f<}\b`"bGG}mf[4_=< Z|4ú0xb>ߐxj!>=_C(w3kYs*F" }IxCd.zƈE_m-V\Ϩ<γߚ˹{G1ZAJΦD/W:--c{Qt0♴V#W{+e]=! v_ҙ笆gLg<'0yVfl @`D0}${H>}VVGtWrVcҫΡ^NT MG[_;{rڭbCCl`z5:<^)n97_=IX/wQ{\`PJrze@7q'k 1dSLrcC=Uvrs\x" >.5}n)1DŽĢ:t@^Eg3a"Ґ{v*mJP+e$dvlYׅٟ#@q)  AW74BDB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\?y9,G@ 7ԓ5'X@7KPgM@ З/@@`]*A  @_@@]Kvq  } {@v/٥ā %@E ӗ4}>x/   d7{dR[e@8W2F@ZkKKb '@_r\@kK--! p}q%#`@/$ q%Ǖ@VҒ  ЗW2F@ZkKKb '@_r\@kK--! p}q%#`@/$ q%Ǖ@VҒ  ЗW2F@ZkKKb '@_r\@kK--! p}q%#`@/$ q%Ǖ@VҒ  ЗW2F@Z#KO&߃ϑY(l1 L@`@/ɾz;sd:o!! pl!Gw>z_C@ `Wv@`@:NM#20- j֤Ԕwď`MZiu+x)YRo yE"OY+cBNC18aֹ?T)S&/Ÿi^G JS/H Bz*~z?tʩ4lSRqf4vWz. > 3&4%uߘXR$yI̜*ӳK:FV>ۯ'ruB]mV1wQx>=d)o$Y3_#u%{0!US&$ rLo/I1 bFpNϘ?4 iԜD@]}IpޑF\H+%vxb6qϘeЙ'?bLZ m&]S# rzs@`їăMȤoK4 ;<0'{<(,1E+x?Db'lj:r0qBHwBtvض˓ZGNÜ<!`Iz@h} 1LkK8Sz'di9-G,T%0YwOjZ:lu@xt+tO974S@]qļNOA @/}E|FsnKзũmk L}RyEt2 >%p[_+S&-5a9@,@R "@_K%@K  @W_z]LdamI'0`n}-,_$SaV'q5O_;Z{@%& 8Fypzڊ3sǜ?NDCm̼x&UE3H}J`ED;icH$ pݗt9O Lu޼{D[Ǽ1WOzz4q]^,W:G\8^P*Mq6x Zim{Co /WsxtإH*4^-JۣRz5=J7x-]"[Vu*AH@A`ux  |PE ϩ p}=*M| sK2O7 @./ %@DB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\PDR@@K I \ @_rAI@KK.)$i  p}E$@./ %@DB З\PDR@@K I \ @_rAI@K>ڗOsI%1gF: u%?pL3j@O |/ IS%$;g< pG *G  '@_r_M@SKNq# p@/)}o#mQ׭ʋy@>(K_pnngT^̃ A|褌 %@}N l*@_ia @ З|褌 %@}N l*@_ia @ З|褌 %@}N l*@_ia @ З|褌 %@}N l*@_ia @ З|褌 %@}N l*@_ia @ З|褌 %@}N l*@_ia @ З|褌 %֟?{092C-p?>-"}IwLŸρ3? g C6Ă@Y@/ oe ݻPwK0d_? dRx'M@R l"PD&$#>%~;oH.2NC5[KɊzjDVƄbpv 1sZR=L:_&q򴰌Gu}}Ҕ?csrCI.'r(=۔Tpf^KO MI7&VTw1@^3 ҵѱ5g5#{M7Úb @W~'۬9"ӻ(D̃ KB }=3u6Ϥ^7A.; 1 %vӸgaU`],`R8C/9Kh@@ /a?  .%T8@@= t%'%a~aSb<.ː \C곿i:8My@%&5.PK[*gG~^ QyoS&/S&N@`b_!1/{=X[ ʻjcy-C\LL<,y9_3TG%x`)iyM4B*y|= d# 7{x9#{׃ydO`ZX:H<50N>$<ɻZs6h% 7 ,KF  eŃSɣ`ҩJמF>jG 2M&͍g!+}o @Fm1K+f2/ p}ɽ%3@N/9bċ %֖@8M䴊/  KŬVpEf=ynۨyVx @@/~oKx^ۗ8+IU%Mfx@)Km;;C\?,]vE]GJm1jmU!o?" D0ـ{SE4| $KJgEl\0ֱ\<^0b6SKu#m\4 U_4t1Fc*,t bhψ9@(՗xu;mJ1]<ěAY.O1JGXE9Y"^c4}#S&fj+DŽH@bZ_{OscгI3ຶS= ux>*k3ʤب]K<P 9ƳcS GY{☓LS1\Kb'K5ѻAŊ+y6[9w=Y1 @I>_ٔ=J'šexl6f^<*բ}$`>|% 1$8BK: :oʌ=Z`_!ޗa/dAɧ7hY.?bLZz9kމhkgOX=-5%昐XTHѫ9lf<:R$Ur/Ut|Ζ^tQQ)YzDO.-S S`$ :NCX<@>(@_R~T B[]&>@9%s\'`U㛆Q З\RH@@ H  \"@_rI!I@ K.(")  p}%$ @./ %%4@@" З\RH@@ H  \"@_rI!I@ K.(")  p}%$ @./ %%4@@" З\RH@@ H  \"@_rI!I@ K.(")  p}%$ @./ %%4@@" З\RH@@ H  \"@_rI!I@ K.(?ܐ9 |Ij'GWA@ E \.Ѿ$qy3j$x y_K~/\i65OC <@P%h;x_sFQ>9uE mKژ=kpJ13 /%X]ZBtCBj;4g%~;oH.2NC5[KɊzjDVƄbpv 1sZR=L:_e1X `7+MI#=6gTN t9<1"I<9Uguf/gx+M1 @d#GxNq]')r1A[^mSsEO t%OyGs!=)=cm@g^:ph1keWO47X6ζSxgwM\=\*`%`S:2{?}v~:LJx̼~ъ1Q$+\,h2̺{=/3ҝ}$ݢ;$ w?SC#2KһJDc}ᰧazXBtO<1l!~3qsL[Y"J`Ng̵t"5߰u3ՐNT^)_?7=c<躎.LVJJL@:K`ɒL/}E|FsnKзũmk L}RyEt2 >%p[_+S&-5a9@,@R "@_K%@K  }I{%i~{Kۂ7s[<|e%GINbٶu輙2?|/IǯȃXwg?xF"@ ӗ:~#.[܆B,H'|_ذ@%@u^/ )/'E0W$)gBsHǜn^3sOoUf#Bic2:c8c5̾ J7F z̺sϺ{0푍ΨZ0bCK1>{ZV.$ε< b!ΘaS!aņ jjpsa3O/AdkͶ}z`T= 3&4%uߘXR$yI̜*ӳK:FV֜׌5? k1^}lO<}z\WIʳg̼}ЖW["~Ϙ!>I'zX9'SH~+G"J/Y>k#s3fe֞F3j G0 / q, TSgmڐWshnlm{4Θw_I"3$lJG&}[ygOi|ZSWv¨/9%KPm]KԎ*v<7|UDyVGY1f a'8\}I{t|#:yo3nkMsym× ?4%ͤԴ9q_vWXΨs"  :/%5)5%y9f/>3OO3RtOQOUtg^e=,?lHГgƘ{Ó^Tؔ4_1OݳGEꒃNaㅹ= gF[לdz7´ҙ+ú~'۬AQyB?ҜTL!K'w\';'NhN3JL=Wvc4zlM)whAJ>Fe0镩uM|^<~pXjH/ o'y͊TK)&0㹡pL|Wuqu36*fs }s} bC:c^'c>+CV<g4\8 #Z=.}~<7՗d;j7xdKk+ٳ <+˽-f$Nτv&UYy{C$E" 4"1YӰ§yҴ YyWǾ4GU7ikMtjνy]x4ڌY/簆S:͞+5AK;5cz(UT%~;oH.2NC5[KɊzv^kX+yZrt 3İiJ2|9 1X `7+MI#=6g/7 驜rxy*ܳMIǙaf^պ44 ϘД}~cbEJux%1sL,]^[l#nDZk!7~'۬9wNӧuu^)YoΊ T$/&񾁊Sg>ߐףztc=0O З4sہgLySOiJzx.K\O4"BzX)/Ql1KqX)$%՞;c^k*۔Ɏ"$JG&}[yg6OiU<{YS>LY>?m?μe#h)0|Iڬ)PB?٩̘Ey1ҥz̓vIQY^aL_/Wg$ׅsϛ2}Bdϔ_c lЗ?3ШS&M>iSk:jo4̆1uѐ;OAf lї#eg'GqyBnXSpOu֤ó{t<@`+b_9}0*}٧5DŽH@x$KtSv'z> LL<,].]k꩎J<"g鼔ǰ~NlU~l9?OG5G>t9PwdkGL=a { ᨙ*d]bEOYw5O_6D4l }IzɶΣQ})1sړy.xDمFܬi^w0~=B@6З^ՊĔy'yS{ wF쏇$ BكAң`*hQ+*ȏ'֫yW?$W 0/F'nDH<ԥeiPt}GK%CH|\ U"if蟧4wް?s=] +{C,@@`}la7X@<%%ƴwpE A'@_򽚯ʘ,VI p}=$@N/9ď =%ԒL@8] ? KŬTLz4Qǚ ^L_Rg}~=5ág_G>4; 3" d<ےf}h-YŊ ~'uMoIo&  t_RwkEl\0$ʅ!ϘZz=ż;w>#-m\4 U_4t1F\2.W' t%5|NdsL80?g}f3cгQayxh-1nקz 2%(C Y1ӞZ 9Ya!n9cNhM#.#F_;?YzxZXur\B @})/cq%UILZT/=yo |j1@t/1aTcsfUg A}>fj%=(BpYӼt~sṾ篦vH+eA,}ux[o҇Hqa0FkIZOx&'ѷR:SJǭY+il?E,y~1?5\{b>ɝt@`@{賷n[B;û:X']4;U6G4Biz:<"z ,x<⊧T{̳Uaxf)1z@Pq!l@X,@_|^9U;! З>[$x6 0aL aZ p}ɡ#l@./ %@P¢  ЗZ8F@B JJ *@_rh@ K.,*)! p}ɡ#l@./ %@P¢  ЗZ8F@B JJ *@_rh@ K.,*)! p}ɡ#l@./ %@P¢  ЗZ8F@B JJ *@_rh@ K.,*)! p}ɡ#l@./ %@P䆢O  Kn߿~?f@/9X KҫW)Q>iJ'!'žwŎf(Q4S@\_ֿ5a3jC_W &𹾤i޳* Ϋ3#,b_[Х%D':$SA|F3I@b_m֚ GgM֬ ܉@쥍k{nQ>E )%Cfi(!ϐFgg"A-ž$&ʳ~(Qd~@M>ڗlO  З@@`]*A  KJ@;wgTG5*A@L_R鍢3f  pq)%  p}%$@/$ %Ǘ@FR  З_B@@kJI" /@_r| I@kK)%  p}%$@/$ %Ǘ@FR  З_B@@kJI" /@_r| I@kK)%  p}%$@/$ %Ǘ@FR  З_B@@kJI" /@_r| I@kK)%  p}ɑ%'Ȭ zsS _rj>L7 ;嘆Ÿ3? gav+K±M_M %8!_v7R@vu&G! @њ1I"}X\: ռn/%+B)xkX+yZrt 3İiJ2|9 y@}}Ҕ?csq颟.'r(=۔Tpf^KO MI7&VTw1@^3 ҵѱ|~B @@d#GL:/OR-/sGk=*\FV g) v_m"kVyUv|`E1C9}JO4tsN08WKͭ'rsd?4{xY?j G0 / q, TSgmڐWsFg{qyJO,77Ǵ娟%t6I\K-R8 ZW1#Q DIK'a$ L:β(Y((2A,'K!Z@'ps_>[Eߋ, ֗Oo[׋S,$e|J඾sWħ L[jr Y%g- %@EdJ З@@`1Qא~ (/IfwOAxCMϪh+Y A.  ;U}s*.\VbNRR5rgHk2JseMu߰ekt6%nz0. ͨLKk>{o%I鷚Ԫ?6yT|_R:}ڈzۢP:C_:~Ω1wLŝFI39&sd cM ʚhG7XV/]=f̤y&Zp|;_ ǙWbydc2=/I"j8^';?x9?TjQyN5)P:aLO]qOR]1+㩯7yy^bؘ=y1eXÑ&>8i䓦 O<.1F<~=l_ @`}I8R&}}\],55 Wcge^'p{O,+1*K_"F]j6ըy?txJIdp^:5yzO% lїdt i M}Wpl;S6xZ< [%[p۫7im*QQG=Os&YCjg\s4tLMoQ;-gׅgfml&zj}I|^#0Լ[/@[TfF&GIţnj9X> D@6 0@m}I41ڼ!.|x&a}B_{.5TG%xt^cX?q6a<0L5G>AKB)quamI'0`^,'fv_MxΣ.ĵ@%& 8Fy>kOgxfxDمFܬi^w0N pB$V<$<ɻZs6S $&/1E,=YR(ũ0' 0$ ,/F4k>Q's!=t K0JÆx'̋"|_R9T?}ٱ!j?8c<牢=l=2@|I5r|I2x)џeG$ O>k3lX)"nΔ'" ]ѷr&?K[fzϲ!i'0XOY*A@i]Zy.k>y+*Ev0/gdo7d!{Z;=P9 GOV֌YPJ J<"b^r6l uOg<%2cؙ-^q^.̌XqLX@N/9gK9g(@mK)u.]B @_2)@! K  }. @/a  .%T8@@`L_/ܤ==ynyzv~.>;W@/K_a#۾<{ 1ŠG&ΆoՎu@2}IXmmw/6敁r/ƨyVB\ ڬ09;Lw! t_"ے,?[{Ƅk I怱%/s1!f3zy1.]wzZV3ڸh$ic&^&^;ZA6KȍE7׃*/?;=;8Kzm%isD%4eZ ?I9+DyU@e~o]*& n9wm=IX/t[)a#gXʧyBm{CpMeb[֕`g<X&\ֹydN35PZN-;{f-<>-Vd$+Rq1V34oTrAvXqg<@/ٿFK#|TR CX.@_["j }&h;o>JC 'K>YvF@`K-BP |Re'i@/ٲ, 'K>YvF@`K-BP |Re'i@/ٲ, 'K>YvF@`K-BP |Re'i@/ٲ, 'K>YvF@`K-BP |Re'i@/ٲ, 'K>YvF@`K-BP |Re'i@/ٲ, 'K>YvF@`K-BP |Re'i@/ٲ, 'K>YvF@`K-BP |Re'i@/ٲ,쟇0@K^.#5+  p}A"T@.h_^M5OS< @חd/m\s߫(pï5/Z@O |/U72?mOF ~5g<8  l/%5IV=gGg6 #l"Ѿd}@@T ЗR @@L_Rҧq<=*Q0 dMOomQ5רx@ksM)I@K/!  p}5$@/9$ 5%הD@8^ З\SJA@xKH \#@_rM)I@K/!  p}5$@/9$ 5%הD@8^ З\SJA@xKH \#@_rM)I@K/!  p}5$@/9$ 5%הD@8^Y?8Kz- 7 З\]rC@,E ,@_rdu ꐠG9s!'LX*KCގ'2=c#pfGH $A.uȑݴ^P+#$P}8 L ?%5)5%//c>yDttyJ'^JVԳ[z^SʘP n!uO+UʷIi G0{$^nTN&t9<1"I<9Uguf/,!wt>NY?rD٧wQx>=$Y3fj˫-Gk=*\FV g) v_m"kVyUv|`E1C9}JO4tsN08WKͭ'rsd?4{xY?j G0 / q, TSgmڐWsLj aO68OxbBf昶DRf=kEjga=]#f!!~Sf$ p@uR&)kH",HI ܗh+0xo'!GnKз30qIYI0m}箈Od ,@nK'Z ϼ!@_2C9@@EE  ̉ -%-j<@fЗPeN@hFWdIENDB`MDyK 0http://en.wikipedia.org/wiki/Letter_frequenciesyK xhttp://en.wikipedia.org/wiki/Letter_frequenciesyX;H,]ą'c$$If!vh5V5V5W5W5`5X5V#vV#vW#v`#vX#vV:Vl t65X$$If!vh5V5V5W5W5`5X5V#vV#vW#v`#vX#vV:Vl t65XJ@J F'Normal dCJ_HaJmH sH tH DA@D Default Paragraph FontRi@R 0 Table Normal4 l4a (k( 0No List :U@: G360 Hyperlink>*B*^JphFV@F nFollowedHyperlink >*B* pht@t ( Table Grid7:V0 dy"L )*{Yxmnw x B  &'4fg?ABCZYZ !!s"t"u"v"w"x"{"0000000000000000 0 0 0 0 0 0 00 0 0 0 00 0000x00000000x00x00000000 0x0000000000000x000000x00x00x000000h 0 0 0 0 0 0h 0l 0 0 0 0 0 0 0h 0l 00x00 0x00 00x0x0x0 !!s"t"u"{"@00Q@00@00 >pD@00@00@00D@00@0000@0 i@0 @0 0000D# ?B$r*y* %x&Y'''(y*!"#$y*By"XXT  # AA@0(  B S  ?%L {"{"8*urn:schemas-microsoft-com:office:smarttagstime 0HourMinute M P W\]dekln{"  _ f B I    !4<joMZ {"333333333333333333Q  CZ]{"{"I ^;&KZ >H2,a2I^`^Jo()^`^J.pLp^p`L^J.@ @ ^@ `^J.^`^J.L^`L^J.^`^J.^`^J.PLP^P`L^J. ^`5^Jo()^`^J.pLp^p`L^J.@ @ ^@ `^J.^`^J.L^`L^J.^`^J.^`^J.PLP^P`L^J.^`^Jo()^`^J.pLp^p`L^J.@ @ ^@ `^J.^`^J.L^`L^J.^`^J.^`^J.PLP^P`L^J. ^`56^Jo() 0^`06^Jo()pLp^p`L^J.@ @ ^@ `^J.^`^J.L^`L^J.^`^J.^`^J.PLP^P`L^J.H2,KZI ;         -+        f87.F       ] ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^ ^ ^ ^ ^ ^ ^ ^11ig,Tz K$ sd K | Zin%=8E<~|Hv<e!9"tqh,5'b ( ?R ]!^"#=#[5$t$%&Q':G'(o):v)*O+8.950G0T0B1`1q1G36Q795:<:js:K#;\;i;ua<x@X'A'A>CDTD:FWFpHNIaIF[JjJ+pJnK N]#NHNoN(?Oe-X(*%9OvM~ 0<\Z1r7lW`iI[=sgAts8'KRTO.2K-@yjF'n*CC' "Njto|FB$]h]`l`P"z?Y`(Y# K{G =-T6|<h+lD{p[Q"W,R>lbA6^/[ auXf;k4_+Vk6DZV3mH##)x% :qnLK|`.4z026\uPRBUgkmiDBUo]s"t"w"{"@iD@{y"@@UnknownGz Times New Roman5Symbol3& z ArialCTimesNewRoman7&{ @Calibri"1h̭Ȇ^dɦ̭Ȇ %T>%T>!4dh"h"2QHP $PCSE 231Srikanth Sherri Goings    Oh+'0x   ( 4 @ LX`hpCSE 231 Srikanth Normal.dotSherri Goings10Microsoft Word 10.0@%@@@˵%T՜.+,D՜.+,@ hp  Hewlett-Packard>h" CSE 231 TitleD 8@ _PID_HLINKSA ']0http://en.wikipedia.org/wiki/Letter_frequenciesvohttp://www.hangman.no/  !"#$%&()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcefghijklmnopqrstuvwxy{|}~Root Entry FP#Data 'y1Tabled0+WordDocument(LSummaryInformation(zDocumentSummaryInformation8CompObjj  FMicrosoft Word Document MSWordDocWord.Document.89q