return { ["RM.dvi"] = "", ["abdulaziz-ghuloum/incremental.pdf"] = "An Incremental Approach to Compiler Construction\ Abdulaziz Ghuloum\ Department of Computer Science, Indiana University, Bloomington, IN 47408 aghuloum@cs.indiana.edu", ["adrian-lee/natures-guide-for-mentors.pdf"] = "Vol 447|14 June 2007\ FEATURE\ Nature’s guide for mentors\ Having a good mentor early in your career can mean the difference between success and failure in any\ field. Adrian Lee, Carina Dennis and Philip Campbell look at what makes a good mentor.\ reflect on your practices and determine\ whether there are lessons here that could see\ you alter your approach. Such changes could\ be to the ultimate benefit of those under your\ charge and, given the lasting and broad influence of good mentors highlighted by the competition, to science as a whole.\ All the quotes included here were taken\ word-for-word from the applications, either\ from proposing mentees or the mentors themselves. For obvious reasons they have been", ["al-aho/aho-corasick.djvu"] = "Programming \ Techniques \ Glenn Manacher \ Editor \ Efficient \ String Matching: \ An Aid to \ Bibliographic Search \ Alfred V. Aho and Margaret J. Corasick \ Bell Laboratories \ This paper describes a simple, efficient algorithm to \ locate all occurrences of any of a finite number of key- \ words in a string of text. The algorithm consists of con- \ structing a finite state pattern matching machine from the \ keywords and then using the pattern matching machine \ to process the text string in a single pass. Construction \ of the pattern matching machine takes time proportional \ to the sum of the lengths of the keywords. The number \ of state transitions made by the pattern matching \ machine in processing the text string is independent of \ the number of keywords. The algorithm has been used to \ improve the speed of a library bibliographic search pro- ", ["al-aho/lr-parsing.djvu"] = "LR Parsing \ A. V. AHO and S.C. JOHNSON \ Bell Laboratories, Murray Hll, New Jersey 0?974 \ The LR syntax analysis method is a useful and versatile technique for parsing \ determmstic context-free languages in compiling applications. This paper \ provides an informal exposition of LR parrang techniques emphasizing the \ mechanical generation of efficient LR parsers for context-free grammars. \ Particular attention is given to extending the parser generation techniques to \ apply to ambiguous grammars. \ Keywords ad ph ases: grammars, parsms, compilers, ambiguous grammars, \ context-free languages, LR grammars. \ CR calegores. 4 12, 5 23 \ 1. INTRODUCTION \ A complete specification of a programming \ language must perform at least two func- \ tions. First, it must specify the syntax of the \ language; that is, vhich strings of symbols \ are to be deemed well-formed programs. \ Second, it must specify the semantics of the \ language; that is, what meaning or intent ", ["al-aho/lr-too.djvu"] = "LR Parsing \ A. V. AHO and S.C. JOHNSON \ Bell Laboratones, Murray Hill, New Jersey 0797 \ The LR syntax analysis method is a useful and versatile technique for parsing \ deterministic context-free languages in compiling applications. This paper \ provides an informal exposition of LR parsing techniques emphasizing the \ mechanical generation of efficient LR parsers for context-free grammars. \ Particular attention is given to extending the parser generation techniques to \ apply to ambiguous grammars. \ Keywords and phrases: grammars, parsers, compilers, ambiguous grammars, \ context-free languages, LR grammars. \ CR categories: 4.12, 5.23. \ 1. INTRODUCTION \ A complete specification of a programming \ language must perform at least two func- \ tions. First, it must specify the syntax of the \ language; that is, which strings of symbols \ are to be deemed well-formed programs. \ Second, it mu,st specify the semantics of the \ language; tl,t is, what meaning or intent ", ["al-aho/transitive-reduction.pdf"] = "", ["alain-colmerauer/homme-machine.pdf"] = "Rapport de recherche\ sur le contrat\ CRI nO 72-18 de\ février 72 à Juin 73\ Groupe de r·e cherche en\ Intelligence Artificielle\ U. E.R . de Luminy\ Université d ' Aix-Marseil1e\ UN\ SYSTEME\ HOMME-MACHINE\ DE\ COMMUNICATION\ EN\ FRANCAIS\ A. COLMERAUER\ H. KANOUI\ P. ROUSSEL\ R. PASERO\ o\ AVANT - PROPOS\ En février 1972 . le Groupe d ' Intelligence Artificielle de\ Luminy recev~lt une subvention de 180 000.00 francs dans le cadre\ du contrat CRI 72-18 intitul é \"Corrmunication horrrne-machine en\ langue naturelle avec déduction automatique\" . Ce contrat se termina\ en juin 1973 .\ L' objet du contrat é tait de mettre au point un système expérimental. mais très général de traitement de phrases en français,\ entrées ~ partir d ' une cons.ole d'ordinateur. en vue de dialoguer\ avec un utilisateur.\ L'approche de ce problème difficile fut menée sur trois fronts!\ 1) Ou point de vue lingUistique par une étude sous un angle particulier de la syntaxe et la sémantique du français . Signalons à\ CB sujet la thèse de 3è cycle de R. PASERO: \"Représentation du français en logique du 1er ordre en vue de dialoguer avec l ' ordinateur\" .", ["alan-jay-smith/the_task_of_the_referee.pdf"] = "The Task of the Referee*\ Alan Jay Smith Computer Science Division EECS Department University of California Berkeley, California 94720, USA", ["alan-jeffrey/lists-in-mouth.pdf"] = "TUGboat, Volume 11 (1990), No. 2\ Macros\ mally verified, and worked first time (modulo typing\ errors, of which there were two).\ 2\ Lists in m ' s Mouth\ Alan Jeffrey\ 1\ Why lists?\ W ' s mouth and m ' s stomach\ W'S\ programming facilities come in two forms there are m ' s macros which are expanded in its\ mouth, and some additional assignment operations\ like \\def which take place in the stomach.\ can often spring surprises on you as exactly what\ gets evaluated where. For example, in I m I\ P\ can put down a label by saying \\label{Here).\ Then I can refer back to that label by saying\ Section\"\\ref (Here), which produces Section 2.\ Unfortunately, \\ref {Here) does not expand out to\ 2! Instead, it expands out to:\ \\edef \\@tempa{\\@nameuse{r@Here))\ \\expandafter\\@car\\@tempa\\@nil\\null", ["alan-kay/early-notices.pdf"] = ".\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ Gzs%ef\ . .\ . . . . .\ ,\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ ,\ .\ .\ .\ .\ .\ Permission\ to copy without\ fee all or part of this materinl\ is\ granted\ prowded\ that the topics are not mada or distributed\ for\ direct commcrciol\ advantage,\ the ACM copyright\ notice ond tho\ lillc of the publication\ and its dare appear.\ and notice is given\ that copying\ is by permission\ of the Association\ for Computing\ Machinery.\ To copy othcrwisc,\ or to republish.\ requires\ B fee\ and/or specific\ pornlission.\ HOPL-11/4/93/MA,USA\ o 1993 ACM 0-89791.571.2/93/0004/0069...$1.50\ 69\ :LJ\ .x\ .m\ al\ :5\ .6\ 2\ 2\ E\ 8\ a\ ACM SIGPLAN Notices, Volume 28, No. 3 March 1993\ 70\ 72\ E\ 73\ 74\ 75\ I\ 76\ 77\ c)l\ +\ -\ 78\ L-l\ MIt-----l\ Ll\ LJ\ 80\ 81\ 82\ 83\ :.I :\ ‘1. ’\ 1:\ I.’\ 1,\ i:\ .. iii;(.. i;-__..__..\ 84\ 85\ I\ 86\ -\ 87\ 88\ 89\ 90\ i\ 91\ 0\ (u\ .^.\ 4\ 2\ ,.\ .\ .\ .\ .\ .\ .\ 1\ ;\ 4\ 93\ :.\ :\ :\ :.\ :\ l\ .\ .\ .\ l\ .\ .\ 94\ :\ :\ :\ :\ l\ :\ .\ :\ l\ :\ .\ :\ .\ l\ ---------b-/J\ J’\ b\ 5\ i!\ [-.- -.-.. _.--_", ["alan-kay/early-notices_ocr.pdf"] = "Alan C. Kay, The Earty History Of Smalltalk\ V.\ THE EARLY HISTORY OF SMALLTALK\ Evolution\ of Smalltalk: ST-74, ooze storage management\ Smalltalk and Children\ 1976-80—The first modern Smalltalk (-76)...............\ 29\ “Let's burn our disk packs”\ The Notetaker\ Smailtalk-76\ Inheritance\ More Troubles With Xerox\ ThingLab\ Apple Demo\ Alan C. Kay\ Apple Computer\ kay2 @apple.com.intemet#\ VI.\ £661 YUL\ € “ON “8Z SWINIOA ‘S2SRON NV I1dDIS WOV\ Early Smailtalk was the first complete realization of these new points of view\ as parented by its many predecessors in hardware, language and user interface\ design. It became the exemplar of the new computing, in part, because we were\ actually trying for a qualitative shift in belief structures—a new Kuhnian paradigm in the same spirit as the invention of the printing press—and thus took", ["alan-kay/smalltalk-early-history-notices.pdf"] = "Gzs%ef\ . .\ . . . . .\ ,\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ ,\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ Permission\ to copy without\ fee all or part of this materinl\ is\ granted\ prowded\ that the topics are not mada or distributed\ for\ direct commcrciol\ advantage,\ the ACM copyright\ notice ond tho\ lillc of the publication\ and its dare appear.\ and notice is given\ that copying\ is by permission\ of the Association\ for Computing\ Machinery.\ To copy othcrwisc,\ or to republish.\ requires\ B fee\ and/or specific\ pornlission.\ HOPL-11/4/93/MA,USA\ o 1993 ACM 0-89791.571.2/93/0004/0069...$1.50\ :LJ\ .x\ .m\ al\ :5\ .6\ 69\ 2\ 2\ E\ 8\ a\ ACM SIGPLAN Notices, Volume 28, No. 3 March 1993\ 70\ E\ 72\ 73\ 74\ I\ 75\ 76\ 77\ L-l\ c)l\ +\ -\ 78\ MIt-----l\ Ll\ LJ\ 80\ 81\ 82\ :.I :\ ‘1.\ 1: ’\ I.’\ 1,\ i:\ ;\ .. ii(..\ i; i--\ 83\ __..__..\ 84\ 85\ I\ 86\ 87\ 88\ 89\ 90\ i\ (u\ 0\ 91\ .^.\ 4\ ,.\ 2\ .\ .\ .\ .\ .\ .\ ;\ 1\ 4\ 93\ :\ :\ :\ :\ :.\ :\ :\ :.\ :\ l\ :\ .\ :\ l\ l\ .\ .\ .\ l\ .\ .\ :\ .\ :\ .\ l\ 94\ b\ 5\ i!\ [-.- -.-.. _.--_\ ---------b-/J\ J’", ["alan-kay/smalltalk-history-notices.djvu"] = "69 ACM SIGPLAN Notices, Volume 28, No. 3 March 1993 \ o \ 7O \ 71 \ 72 \ 73 \ o[ \ 74 \ 75 \ 76 \ 77 \ 78 \ 79 \ 8O \ 81 \ 82 \ 83 \ 84 \ 85 \ 86 \ 87 \ 88 \ 89 \ 9O \  o \ 91 \ 92 \ 93 \ 94 \ 95 ", ["alan-kay/smalltalk-hopl-ii.djvu"] = "XI \ Smalltalk Session \ Chair: Barbara Ryder \ Discussant: Adele Goldberg \ THE EARLY HISTORY OF SMALLTALK \ Alan C. Kay \ Apple Computer \ kay2@applelink.apple.com@lnternet# ", ["alan-kay/smalltalk-hopl-ii.pdf"] = "Xl\ Smalltalk Session\ Chair: BarbaraRyder\ Discussant: Adele Goldberg\ THE EARLY HISTORY OF SMALLTALK\ Alan C. Kay\ Apple Computer\ kay2@applelink.apple.com@lnternet#", ["albert-madansky/WEIGHTED_MEAN.pdf"] = "Weighted Standard Error and its Impact on Significance Testing\ (WinCross vs. Quantum & SPSS)\ Dr. Albert Madansky\ Vice President, The Analytical Group, Inc.\ and\ H.G.B. Alexander Professor Emeritus of Business Administration\ Graduate School of Business\ University of Chicago\ Researchers who contrast WinCross’s treatment of the standard error of the weighted\ mean with that of Quantum and SPSS have noted some differences. The purpose of this note is\ to explain the procedure used by WinCross and contrast it with that used by the other two\ programs.\ 1. Theory\ The formula for a weighted mean is\ n\ xw \ w x\ i 1\ n\ i i\ w\ i\ i 1\ When all the x’s are independently drawn from the same population with V(xi)=2, the variance\ of the weighted mean is\ n\ Var ( xw ) \  2  wi2\ i 1\ n\ ( wi ) 2\ i 1\ Notice that when all the w’s =1 (i.e., when there’s no weighting), then this reduces to the usual", ["alex-aiken/ProgramChair.pdf"] = "Advice for Program Chairs\ Alex Aiken October 3, 2010\ 1\ Introduction\ The title says it all: This document is written for people who are, will be, or think they might want to be the program chair for a technical conference. I am a former program chair for POPL (the ACM Symposium on Principles of Programming Languages) and PLDI (the ACM Conference on Programming Language Design and Implementation), both CS programming languages conferences. Given my limited experience, my comments may be most useful to people chairing these particular conferences and next to chairs of other computer science conferences. Program chairs for conferences outside of computer science should understand that computer scientists treat conferences very differently from other disciplines, and that may reduce the relevance of at least some of the points discussed here. Currently there is little written on the general issues facing a program chair. There are a few (very good) summaries with recommendations [Hil05, McK05, Eis07], and also some longer articles covering specific aspects of the process [FC04, Wad06, Fel06]. A program chair has a lot to do, and I will not attempt to cover everything. For example, you will need to produce a Call for Papers, but unless radical changes to the conference’s focus are contemplated, the time-tested method of updating last year’s call will suffice. The intention here is to discuss less obvious aspects of being a program chair.", ["alex-aiken/fpca95.ps"] = "Dynamic Typing and Subtype Inference\ Alexander Aiken Manuel Fahndrich\ Computer Science Division\ University of California, Berkeley\ Berkeley, CA 947201776\ faiken,manuelg@cs.berkeley.edu", ["alexandre-francois/AlexandreFrancois-TSE-review.pdf"] = "AN ARCHITECTURAL FRAMEWORK FOR THE DESIGN, ANALYSIS AND IMPLEMENTATION OF INTERACTIVE SYSTEMS\ 1\ An Architectural Framework for the Design, Analysis and Implementation of Interactive Systems\ Alexandre R.J. Francois, Member, IEEE \ A. R.J. Francois is a 2007-8 Fellow of the Radcliffe Institute for Advanced Study at Harvard University, and a research assistant professor of computer science in the Viterbi School of Engineering at the University of Southern California.\ June 24, 2008 DRAFT\ AN ARCHITECTURAL FRAMEWORK FOR THE DESIGN, ANALYSIS AND IMPLEMENTATION OF INTERACTIVE SYSTEMS\ 2", ["alexey-radul/phd-thesis.pdf"] = "Propagation Networks:\ A Flexible and Expressive Substrate for Computation\ by\ Alexey Andreyevich Radul\ B.S., Massachusetts Institute of Technology (2003)\ M.Eng., Massachusetts Institute of Technology (2005)\ Submitted to the Department of Electrical Engineering and Computer Science\ in partial fulfillment of the requirements for the degree of\ Doctor of Philosophy in Computer Science and Engineering\ at the\ MASSACHVSETTS INSTITVTE OF TECHNOLOGY\ September 2009\ c Massachusetts Institute of Technology 2009. All rights reserved.\ Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ Department of Electrical Engineering and Computer Science\ September 4, 2009\ Certified by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ Gerald Jay Sussman\ Panasonic (Matsushita) Professor of Electrical Engineering\ Thesis Supervisor\ Accepted by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ Professor Terry P. Orlando\ Chair, Department Committee on Graduate Students\ Propagation Networks:\ A Flexible and Expressive Substrate for Computation\ by\ Alexey Andreyevich Radul\ Submitted to the Department of Electrical Engineering and Computer Science\ on September 4, 2009, in partial fulfillment of the", ["alexey-radul/probabilistic-scheme.pdf"] = "Computer Science and Artificial Intelligence Laboratory\ Technical Report\ MIT-CSAIL-TR-2007-059\ October 22, 2007\ Report on the Probabilistic Language Scheme\ Alexey Radul\ m a ss a c h u se t t s i n st i t u t e o f t e c h n o l o g y, c a m b ri d g e , m a 02139 u s a — w w w. c s a il . mi t . e d u\ Report on the Probabilistic Language Scheme\ Alexey Radul\ Massachusetts Institute of Technology\ 77 Massachusetts Avenue\ Cambrdige, MA 02139\ axch@mit.edu", ["alexis-kostich/notes-from-thailand.pdf"] = "", ["alfons-geser/intel8085.djvu"] = "A Specification of the intel I 8085 Microprocessor: \ A Case Study \ Alfons Geser, \ Universitgt Passau, Fakultilt fiir Matheraatik und Informatik, Postfach 540, D-8390 Passau ", ["alfons-geser/intel8085.pdf"] = "A Specification of the intel 1 8085 Microprocessor: A Case Study\ Alfons Geser, Universit~t Passau, Fakultilt fiir Mathematik und Informatik, Postfach P540, D-8390 Passau", ["alfred-spector/spector82cacm.pdf"] = "Operating Systems\ Anita K. Jones Editor\ Performing Remote Operations Efficiently on a Local Computer Network\ Alfred Z. Spector Stanford University\ A communication model is described that can serve as a basis for a highly efficient communication subsystem for local networks. The model contains a taxonomy of communication instructions that can be implemented efficiently and can be a good basis for interprocessor communication. These communication instructions, called remote references, cause an operation to be performed by a remote process and, optionally, cause a value to be returned. This paper also presents implementation considerations for a communication system based upon the model and describes an experimental communication subsystem that provides one class of remote references. These remote references take about 150 microseconds or 50 average instruction times to perform on Xerox Alto computers connected by a 2.94 megabit Ethernet.", ["alfred-spector/spector84shuttle.pdf"] = "i \ r'\ P\ J~\ ~IIV-\ ~i~,~i,i'~i!~'i~ii~,,i~i~Iil~!III'Ii~I~ i~~~i~, i~i,~ii~ '~' ' !!~!!!,,i~i!~i~i~,~,i~,i~!~i~,~~\ %!%......\ ~i~i~iiiii ~ j~\ ~, ~ %11\ ......... J L ~\ REPORTS AND ARTICLES\ THE SPACE SHUTTLE PRIMARY COMPUTER SYSTEM\ IBM's Federal Systems Division is responsible for supplying \"error-free\" software for NASA's Space Shuttle Program. Case Studies Editors David Gifford and Alfred Spector interview the people responsible for designing, building, and maintaining the Shuttle's Primary Avionics and Software System.\ ALFRED SPECTORand DAVID GIFFORD\ PROJECT OVERVIEW What is the extent of IBM's involvement with the Space Shuttle Program? M a c i n a . IBM is involved in a number of different projects. The one that our group is involved with is development of the Primary Avionics Software System (PASS). The PASS is the highly fault-tolerant, on-board software that controls most aspects of Shuttle operation. IBM also has a contract to develop software and supply commercial hardware for the Mission Control Center in Houston. Other major activities include an integration and development contract for the Launch Processing System at the Kennedy Space Center in Florida, and a contract to supply the on-board computer hardware from Owego, New York.", ["alfred-spector/spector84twa.pdf"] = ")\ S r c\ 3650\ 3 X #6\ .\ \"l\ ~ ~ i ~ l\ '- '\"\ I!\ .~--_\ \ O7\ S1\ 7\ ,,,\ 90G3 I \" i ,z !,o I ,J\ 1 ~ I o I z\ iilell,,el m,.i.\ H l ~ ' i i i\ q~\ II\ I\ i\ 11\ De r '\ I\ IAlslcloi\ ,I IVlm.\ \"-\"NTI'\ I~181cloI\ f\ L.\ 37C, OIF\ lJlelClOl\ 138~cG~o)I\ 21 Awl-,-~A2 -~1 I 11.--~<:'82_ !\ 16 0 5\ W h e r e can you find a solid, forthright overview of the computer systems and management behind airline reservations? NASA's space shuttle? Or any of the multitude of other large computer systems that support important projects or national activities? It's hard, sometimes impossible: partly because the people who worked on such systems often do not have the time to write about their experiences; and partly because many professional journalists who interview these people do not have the technical background to ferret out answers to the fundamental design questions addressed in these systems. Through its Case Studies Department, the Communications is attempting to do something about this. Case studies are articles that report experience in constructing and using major computer systems. They aim to transfer knowledge about the capabilities and limitations of contemporary computer systems and their design processes. They report experiences both positive and negative. They provide a blend of broad information and important technical detail. The case study format provides access to information that might otherwise be inaccessible. The principal type of case study will be an edited interview consisting of an introduction by the interviewer, an edited series of questions and answers with figures and citations as needed, and a conclusion by the interviewer. Each question and answer is likely to be the condensed form of a longer discussion at the interview. Material may be added or deleted during editing. The interviews for the first few case studies will be conducted by the Case Study Department editors; eventually, the editors will have enough experience to delegate this responsibility to other interviewers. In all cases, the interviewers will have experience and exper-", ["alfred-spector/spector85cirrus.pdf"] = "CaseStudy:\ This is the third case study to appearin Communications. This time, case-study editors David Gifford and Alfred Spector\ interviewed the president and the\ director of systems and operations at\ CIRRUS Systems, Inc., a funds transfer\ network, to see how distributed systems are being employed in the banking industry. As the following transcript shows, the CIRRUS network provides security, lost message recovery, database\ consistencyvia atomic actions, recovery\ after network partition, and a framework for interorganization cooperation in a distributed system. The CIRRUS system is not the most complex computersystem\ to have beendescribed thesecase in\ studies; rather, it is an example of how u few well-chosen ideas can be the basis of a\ simple and useful system. The interviews\ were conducted on March 29,1985, at the headquarters of ClRRUS Systems, in Chicago. \\", ["alfred-spector/spector85sigmod.pdf"] = "Distributed for Transaction\ Logging Processing\ Dean S Danlets, Alfred 2 Spector, Dean S Thompson Department of Computer Scrence Carnegre Mellon Unrversrty Pmsburgh, PA 15213", ["alfred-spector/spector85sigops.pdf"] = "Distributed Transactions for Reliable Systems\ Alfred Z. Spector, Dean Daniels, Daniel Duchamp, Jeffrey L. Eppinger, Randy Pausch Department of Computer Science Carnegie-Mellon University", ["alfred-spector/spector86bridge.pdf"] = "R. L ,+/o!. 5\ V C PI& 4 Bwers\ .CKING END ~JGE GIRDER\ L /\ DEAD END TOWER 45;`5Uru\",. mEed Brnrn\ Engineers have been designing bridges and other complex structures for millennia. Civil engineering is one of the most classical of the engineering disciplines-it has well-developed designs, procedures, and tools at its disposal. Bridges rarely fall down. In contrast, computer systems design is one of the least classical of the engineering disciplines, and its products are often poorly understood, unmanageably complex, and unreliable. Though some computer systems are more complex than even the largest bridges, there is a wealth of experience and insight in the older discipline that can be of use to computer systems designers, particularly in such areas as specification, standardization, and reliability. There is also the opportunity, in the consideration of two kinds of design, to learn something about design in general. In November 1985, case-study editors Alfred Spector and David Gifford spoke with Gerard F. Fox, a partner in the consulting engineering firm of Howard, Needles, Tammen, and Bergendoff (HNTB). Fox has been a structural engineer specializing in the design of bridges for 38 years. He is also an adjunct professor at Columbia University, where he teaches a course on bridge design. HNTB has designed many bridges and approximately half the toll roads in the United States. Fox has been involved in the design of many important bridges, including the Delaware Memorial Bridge, the Rio Niteroi bridge in Rio de Janeiro, and the Penang Bridge in Malaysia. He is currently working on the Dame Point Bridge, now under construction in Jacksonville, Florida, which is to be the longest concrete cable-stayed bridge in the United States. The analogy between bridge design and computer systems design is implicit in the interview; the editors' conclusion provides a more explicit summary and analysis of many of the major issues that were discussed.", ["alfred-spector/spector87ibm.pdf"] = "Case Study: IBM5 SYSTEM/360-370 ARCHITECTURE\ Why has the IBM System/360-370 architecture been so successful for so long? Case-study editors David Gifford and Alfred Spector sought to answer this question by talking to Andris Padegs and Richard Case, two of the key people responsible for the 360/370 architecture, in Cases's IBM office in Thornwood, New York, on August 8, 1986. As the study shows, instruction-set design constituted only a small fraction of the effort behind the development of the 360/370 architecture. Padegs and Case describe the architecture and its specification, and recount its evolution. They emphasize that the architecture's success can be attributed to a sound initial design, but also to the precision of its definition, the care that has been taken to ensure that implementations meet architectural specifications, and the procedures by which improvements have been managed. And, although the architecture has not survived unchanged since its introduction in 1964, the initial concept was sufficiently good to allow IBM to engineer smooth customer transitions to enhanced versions. Near the end of the interview, Padegs and Case comment on multiprocessing, reduced-instructionset computers, and address space limitations. IBM's largest current computers are all 360/370 family multiprocessors; in order to support multiprocessing, the architecture had to be revised to precisely specify the properties of memory accesses. With respect", ["alistair-moffat/p256-moffat.pdf"] = "Arithmetic Coding Revisited\ ALISTAIR MOFFAT The University of Melbourne RADFORD M. NEAL University of Toronto and IAN H. WITTEN The University of Waikato\ Over the last decade, arithmetic coding has emerged as an important compression tool. It is now the method of choice for adaptive coding on multisymbol alphabets because of its speed, low storage requirements, and effectiveness of compression. This article describes a new implementation of arithmetic coding that incorporates several improvements over a widely used earlier version by Witten, Neal, and Cleary, which has become a de facto standard. These improvements include fewer multiplicative operations, greatly extended range of alphabet sizes and symbol probabilities, and the use of low-precision arithmetic, permitting implementation by fast shift/add operations. We also describe a modular structure that separates the coding, modeling, and probability estimation components of a compression system. To motivate the improved coder, we consider the needs of a word-based text compression program. We report a range of experimental results using this and other models. Complete source code is available. Categories and Subject Descriptors: E.4 [Data]: Coding and Information Theory--data compaction and compression; E.1 [Data]: Data Structures General Terms: Algorithms, Performance Additional Key Words and Phrases: Approximate coding, arithmetic coding, text compression, word-based model", ["alistair-moffat/word-based-compression.pdf"] = "", ["alva-couch/asee.pdf"] = "Re-engineering the value proposition for class attendance in the digital age\ Alva L. Couch, Associate Professor of Computer Science, Tufts University Suggested session: Engineering Education in the Digital Age We utilize a novel interactive class format to increase the value proposition for attending class, while at the same time using digital tools to streamline use of class time and increase social immediacy of class materials. A class consists of a 45-minute lecture followed by a 30-minute problem-solving session in which students work in small groups to solve problems on a paper worksheet based upon the current lecture. Grading results are returned online by scanning each graded worksheet into a document repository that students can access. This reduces class time spent \"giving back assignments\" and allows a single sheet of paper to be \"handed back\" to a potentially large group of students who had a part in creating it. Social immediacy is maintained by announcing the availability of each batch of grading results on the class's Twitter channel! The social effects of this format are profound; class attendance, attention, enthusiasm, and spirit have all dramatically increased as a result. The \"small group\" format allows weaker and less outgoing students to \"go along for the ride\" in a group, but also exposes them to proper thinking, approach, and peer guidance. For an instructor, the group work session provides an opportunity to observe and assess the effectiveness of the lecture, the students' general understanding, student attitudes, and issues that might be interfering with student performance. For an instructor, the task of creating an exercise based upon the current lecture helps one choose and refine clear objectives for the lecture itself, and keeps students informed of those clear objectives. We will show how to implement this format, with examples and guidelines, and demonstrate how the format increases both student performance and teaching effectiveness while actually reducing the effort required to teach the course. NOTES: Exercises reinforce ideas, and do not assess proficiency. o Tightly couple lectures and exercises. o Stand ready with hints to help students succeed! o Do not let students fail! o Do class-wide announcements for shared troubles. o Credit is for participation, not for performance. o Cannot \"make up\" a classroom session. Avoid economic barriers such as use of electronics in class o Use paper to submit answers. o Go paperless after the class session. o Use digital means to grade, file, and return work. Value students' classroom time. o Use social internet channels for announcements.", ["amal-ahmed/mutable-refs-thesis.pdf"] = "Semantics of Types for Mutable State\ Amal Jamil Ahmed\ A Dissertation\ Presented to the Faculty\ of Princeton University\ in Candidacy for the Degree\ of Doctor of Philosophy\ Recommended for Acceptance\ By the Department of\ Computer Science\ November 2004\ c Copyright by Amal Jamil Ahmed, 2004. All rights reserved.", ["amer-diwan/sigplan92.ps.gz"] = "Compiler Support for Garbage Collection in a\ Statically Typed Language \\Lambda\ Amer Diwan Eliot Moss Richard Hudson y\ Object Systems Laboratory\ Department of Computer Science\ University of Massachusetts\ Amherst, MA 01003\ (To appear in SIGPLAN '92 PLDI)", ["amr-sabry/reasoning-lfp.ps"] = "Reasoning about Programs in ContinuationPassing Style\ Amr Sabry Matthias Felleisen \\Lambda\ Department of Computer Science\ Rice University\ Houston, TX 772511892", ["anders-ive/Anders_Ive-embedded-jvm.pdf"] = "Towards an\ embedded real-time\ Java virtual machine\ Anders Ive\ Licentiate thesis, 2003\ Department of Computer Science\ Lund Institute of Technology\ Lund University\ ISSN 1404-1219\ Dissertation 20, 2003\ LU-CS_LIC:2003-4\ Thesis submitted for partial fulfillment of\ the degree of licentiate.\ Department of Computer Science\ Lund Institute of Technology\ Lund University\ Box 118\ SE-221 00 Lund\ Sweden\ E-mail: Anders.Ive@cs.lth.se\ WWW: http://www.cs.lth.se/~ive\ © 2003\ Anders Ive", ["andreas-rossberg/wasm-cacm.pdf"] = "DOI:10.1145 / 3 2 8 2 5 1 0\ Bringing the Web Up to Speed\ with WebAssembly\ By Andreas Rossberg, Ben L. Titzer, Andreas Haas, Derek L. Schuff, Dan Gohman, Luke Wagner, Alon Zakai, J.F. Bastien,\ and Michael Holman", ["andreas-rossberg/webassembly.pdf"] = "Bringing the Web up to Speed with WebAssembly\ Andreas Haas Andreas Rossberg Derek L. Schuff∗ Ben L. Titzer\ ∗\ Google GmbH, Germany / Google Inc, USA\ {ahaas,rossberg,dschuff,titzer}@google.com\ Microsoft Inc, USA\ michael.holman@microsoft.com\ Dan Gohman Luke Wagner Alon Zakai\ JF Bastien\ Mozilla Inc, USA\ {sunfishcode,luke,azakai}@mozilla.com\ Apple Inc, USA\ jfbastien@apple.com", ["andreas-zeller/tr-96-01.pdf"] = "Unified Versioning through Feature Logic\ Andreas Zeller and Gregor Snelting\ Informatik-Bericht No. 96-01 Uberarbeitete Fassung, 15. Februar 1997\ Copyright c 1997 Institut f r Programmiersprachen und Informationssysteme u Abteilung Softwaretechnologie Technische Universit t Braunschweig a B ltenweg 88 u D-38092 Braunschweig/Germany\ Distribution Notice\ This paper has been submitted for publication elsewhere. It has been published as a technical report for early dissemination of its contents. As a courtesy to the intended publisher, it should not be widely distributed until after the date of outside publication.\ To appear in ACM Transactions on Software Engineering and Methodology 6(3), July 1997\ Unified Versioning through Feature Logic\ Andreas Zeller and Gregor Snelting Technische Universitt Braunschweig, Germany", ["andreas-zeller/tr-96-01.ps.gz"] = "Unified Versioning through Feature Logic\ Andreas Zeller and Gregor Snelting\ @\ InformatikBericht No. 9601\ \ Uberarbeitete Fassung, 15. Februar 1997\ Copyright c\ fl 1997 Institut fur Programmiersprachen und Informationssysteme\ Abteilung Softwaretechnologie\ Technische Universitat Braunschweig\ Bultenweg 88\ D38092 Braunschweig/Germany\ Distribution Notice\ This paper has been submitted for publication elsewhere. It has been published as a technical report for early\ dissemination of its contents. As a courtesy to the intended publisher, it should not be widely distributed until\ after the date of outside publication.\ To appear in ACM Transactions on Software Engineering and Methodology 6(3), July 1997\ Unified Versioning through Feature Logic\ Andreas Zeller and Gregor Snelting #\ Technische Universitt Braunschweig, Germany", ["andrei-broder/fing-appl.ps.gz"] = "Some applications of Rabin's fingerprinting method \\Lambda\ Andrei Z. Broder y", ["andres-loeh/nix-os-jfp.pdf"] = "Journal of Functional Programming\ http://journals.cambridge.org/JFP\ Additional services for Journal of Functional Programming:\ Email alerts: Click here\ Subscriptions: Click here\ Commercial reprints: Click here\ Terms of use : Click here\ NixOS: A purely functional Linux distribution\ EELCO DOLSTRA, ANDRES LÖH and NICOLAS PIERRON\ Journal of Functional Programming / Volume 20 / Special Issue 5­6 / November 2010, pp 577 ­ 615\ DOI: 10.1017/S0956796810000195, Published online: 15 October 2010\ Link to this article: http://journals.cambridge.org/abstract_S0956796810000195\ How to cite this article:\ EELCO DOLSTRA, ANDRES LÖH and NICOLAS PIERRON (2010). NixOS: A purely functional \ Linux distribution. Journal of Functional Programming,20, pp 577­615 doi:10.1017/\ S0956796810000195\ Request Permissions : Click here\ Downloaded from http://journals.cambridge.org/JFP, by Username: nrnr, IP address: 108.20.67.9 on 31 Aug 2012\ JFP 20 (5 & 6): 577–615, 2011.\ c Cambridge University Press 2010\ 577\ doi:10.1017/S0956796810000195 First published online 15 October 2010", ["andres-loeh/version-control.pdf"] = "A Principled Approach to Version Control\ Andres Lh1 , Wouter Swierstra2 , and Daan Leijen3 o\ University of Bonn loeh@informatik.uni-bonn.de 2 University of Nottingham wss@cs.nott.ac.uk 3 Microsoft Research daan@microsoft.com\ 1", ["andrew-appel/appel92critique.ps.gz"] = "A Critique of Standard ML\ Andrew W. Appel\ 3\ Princeton University\ revised version of CSTR36492\ November 12, 1992", ["andrew-appel/bootstrapping.pdf"] = "Axiomatic Bootstrapping:\ A Guide for Compiler Hackers\ ANDREW W. APPEL\ Princeton University\ If a compiler for language L is implemented in L, then it should be able to compile itself. But\ for systems used interactively commands are compiled and immediately executed, and these commands may invoke the compiler; so there is the question of how ever to cross-compile for another\ architecture. Also, where the compiler writes binary files of static type information that must\ then be read in by the bootstrapped interactive compiler, how can one ever change the format of\ digested type information in binary files?\ Here I attempt an axiomatic clarification of the bootstrapping technique, using Standard ML\ of New Jersey as a case study. This should be useful to implementors of any self-applicable\ interactive compiler with nontrivial object-file and runtime-system compatibility problems.", ["andrew-appel/callee.ps.gz"] = "LISP AND SYMBOLIC COMPUTATION: An International Journal, 5, 191--221, 1992\ c\ fl 1992 Kluwer Academic Publishers -- Manufactured in The Netherlands\ Calleesave Registers in Continuationpassing Style\ ANDREW W. APPEL \\Lambda (appel@princeton.edu)\ ZHONG SHAO y (zsh@princeton.edu)\ Department of Computer Science, Princeton University, Princeton, NJ 085442087\ Keywords: Register Allocation, Continuationpassing Style, Procedure Call", ["andrew-appel/cpcps.pdf"] = "Continuation-Passing, Closure-Passing Style\ Andrew W. Appel *\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544\ Trevor Jim f\ Bell Laboratories\ Murray Hill, NJ 97974\ AT&T", ["andrew-appel/cpcps.ps.gz"] = "\ ContinuationPassing, ClosurePassing Style\ Andrew W. Appel*\ Trevor Jim+\ CSTR18388\ July 1988\ Revised September 1988", ["andrew-appel/digital-circuits.djvu"] = "a,,cl .So \ vo-f \ oo \ .e f coD Uc-To \ I \ btIT/L \ e4: ,5-- vol' \ 3 \ t J \  -P,,\"e, v', 5 ;'.c o( - \ ;5 \ ) \ Vo v-r t  \ 1 N Y L:: f;Tfx. \ 50 VT \ ,r I \ \\ \ 1 : \ [-ro, no \ 4N IID \  ) o \ t o \ o co o \ o  0 \ ! o o \ B 0 0 \ i ? \ CO  L I lX/A-T( O tVfiL \ c.. t o t-T , \ We.. \ o \ o \ 0 \ o \ o \ o \ o \ o \ o \ 1 \ c  \ P F,,o) 07 \ 0 \ x \ o x c o \ x. < o \ x o x o \ o o )< \ o k' o \ ,v. o 0 0 \ I x ] I \ AcD \ I \ cp \ r \ oT \ c \ 0,_ ?  mot' \ L \ T \ '1\"o \ INo. \ ,. [ \ .SYkl CklokIOOS \ o.,.' 0, c, c.(ott: t \ Ck \ IL \ 0 0 0 0 \ 0 0 o 1 x x  \  o o x 00x \ I 0 o x 0 t \  t o o x x. \ o I \ I 1 o \ I I 0 x  x \ t t t \ I  o \ o o o \ I I o \ o  o \ ] \ l \ oo00 \ ooo I \ 0 o I o \ 0  0 o \ o \ t \ t o o \ f3 \ o I a 0 \ I   I \ t o I \ I x x 0 I \ ' o ! I \ .r, t o x \ y.  'x o \ ',r.  0 I \ S F ' \ o o o O oO 0 I \ oo0f oo0 \ o0I o oo I \ o t O 0 0 t 0 I \ o t o I 0 I I 0 \ o tt 0 O r \ 0 I I I [ 0 0 0 \ t o o o I \ I 0 o I \ o I t l \ I o o o \ o o I  \ ol 02< \ d 0 \ (DOT ' \ I< -oi< \ O \ f5 \ EAD - OfIL_Y' \ / \ L..OD OUTleT \ Expta..i.,, \ o I I t \ t o x o \ [ o x,1. \ t I oo \ I t I o \ fk,,,.,' s r...;' ,,- c..,.u.... ,.. ", ["andrew-appel/edit.ps.gz"] = "How to Edit a Journal by Email\ Andrew W. Appel\ Department of Computer Science\ Princeton University\ appel@princeton.edu\ CSTR49495\ July 10, 1995", ["andrew-appel/gc-can-be-faster.pdf"] = "Garbage Collection Can Be Faster Than Stack Allocation\ Andrew W. Appel\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544\ June 30, 1986\ Revised Jan 15, 1987", ["andrew-appel/gc-can-be-faster.ps"] = "Garbage Collection Can Be Faster Than Stack Allocation\ Andrew W. Appel\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544\ June 30, 1986\ Revised Jan 15, 1987", ["andrew-appel/gc-survey.djvu"] = "A Selective Survey of Garbage Collection \ Algorithms \ Andrew W. A ppel \ October 18, 1989 \ In McCaxthy's 1960 Lisp system, linked lists could be freely created by the cos \ operator, and accessed by the c^R ad c)R operators. The revolutionary innovation \ of Lisp was that the programmer did not need to tediously reclaim unneeded list \ cells. This 'made the manipulation of lists as mathematical values much easier, and \ as a result, Lisp endures to this day. \ More recent language implementations require the garbage collection not just of \ lists but of function activation records, function closures, executable code, strings, \ and other data structures. Automatic management of dynamic storage is increas- \ ingly regarded as a necessary feature of a modern programming language. \ 1 Mark and sweep \ The first Lisp garbage collector used a depth-first search to mark all nodes accessible ", ["andrew-appel/iterated.pdf"] = "Iterated Register Coalescing\ LAL GEORGE Lucent Technologies, Bell Labs Innovations and ANDREW W. APPEL Princeton University\ An important function of any register allocator is to target registers so as to eliminate copy instructions. Graph-coloring register allocation is an elegant approach to this problem. If the source and destination of a move instruction do not interfere, then their nodes can be coalesced in the interference graph. Chaitin's coalescing heuristic could make a graph uncolorable (i.e., introduce spills); Briggs et al. demonstrated a conservative coalescing heuristic that preserves colorability. But Briggs's algorithm is too conservative and leaves too many move instructions in our programs. We show how to interleave coloring reductions with Briggs's coalescing heuristic, leading to an algorithm that is safe but much more aggressive. Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors--code generation; optimization; G.2 [Discrete Mathematics]: Graph Theory--graph algorithms General Terms: Algorithms, Languages Additional Key Words and Phrases: Copy propagation, graph coloring, register allocation, register coalescing", ["andrew-appel/pcc-prop-abs.djvu"] = "PROPOSAL ABSTRACT \ 1. BAA 99-10: Inherent Information Survivability \ 2. Technical Topic Area: Mobile Code \ 3. Proposal Title \ Scaling Proof-Carrying Code to Production Compilers and Security Policies \ Principal Investigator: \ Co-principal Investigators: \ 4. Technical Point of Contact \ Andrew W. Appel, Princeton University \ Edward W. Felten, Princeton University \ Zhong Shao, Yale University \ Andrew W. Appel \ Department of Computer Science \ Princeton University \ 35 Olden Street \ Princeton, NJ 08544-2087 \ Phone: 609-258-4627 \ Fax: 609-258-1771 \ E-mail: appel@princeton.edu \ 5. Administrative Point of Contact \ Garreth A. Chehames, Associate Director \ Office of Research & Project Administration \ Fifth Floor, New South Building \ Princeton University \ P.O. Box 36 \ Princeton, NJ 08544 \ Phone: 609-258-3104 \ Fax: 609-258-1159 \ E-mail: chehames @ princeton.edu \ 6. Summary of Costs \ The proposal includes a subcontract to Yale University. \ Princeton Yale Princeton Yale Princeton Yale \ Senior personnel \ Research staff ", ["andrew-appel/real-time-gc.pdf"] = "RETROSPECTIVE:\ Real-time Concurrent Collection on Stock Multiprocessors\ Andrew W. Appel\ Princeton University\ appel@cs.princeton.edu\ 1.\ INTRODUCTION\ [11] we could have predicted such problems.\ Part of the impact of our 1988 paper is that it helped to stimulate a lot of good research in the 1990’s on how to implement\ read barriers and write barriers. In previous decade, Dijkstra et al.\ [6], Baker [3], Ungar [12], and Lieberman and Hewitt [9] had described different ad-hoc garbage-collection tricks, but by the 1990’s\ the community had a common framework and terminology. Concurrent and generational collector design could be decomposed into\ two separate subproblems: (1) design an algorithm that uses read\ barriers and write barriers, (2) devise tricks for implementing the\ barriers. We cannot claim credit for this decomposition, but perhaps we made an incremental contribution.", ["andrew-appel/real-time-nointro.pdf"] = "ACM SIGPLAN\ 207\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 208\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 209\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 210\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 211\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 212\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 213\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 214\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 215\ Best of PLDI 1979-1999\ ACM SIGPLAN\ 216\ Best of PLDI 1979-1999", ["andrew-appel/runtime.djvu"] = "LISP AND SYMBOLIC COMPUTATION: An International Journal, 3, 343-380, 1990 \ () 1990 Kluwer Academic Publishers - Manufactured in The Netherlands \ A Runtime System \ ANDREW W. APPEL* (appel@princeton. edu) \ Princeton University, Department of Computer Science, Princeton, NJ 085d ", ["andrew-appel/runtime.pdf"] = "LISP AND SYMBOLIC COMPUTATION: An International Journal, 3, 343-380, 1990\ (~) 1990 Kluwer Academic Publishers - Manufactured in The Netherlands\ A Runtime System\ ANDREW W. APPEL*\ (appel@princeton. edu)\ Princeton University, Department of Computer Science~ Princeton, NJ 0854~", ["andrew-appel/runtime.ps"] = "", ["andrew-appel/scans/87concise.pdf"] = "Concise specifications of locally optimal code generators\ Andrew W. Appel Department of Computer Science Princeton University Princeton, NJ 08544", ["andrew-appel/scans/87standard.pdf"] = "A Standard ML Compiler\ Andrew W. Appel * Dept. of Computer Science Princeton University Princeton, NJ 08544 David B. MacQueen AT&T Bell Laboratories Murray Hill, NJ 07974", ["andrew-appel/scans/88profiling.pdf"] = "-\ Profiling in the Presence of Optimization and Garbage Collection\ Andrew W. Appel* Bruce F. Duba David B. MacQueen Andrew P. Tolmach??\ November 1988", ["andrew-appel/scans/88runtime-tags.pdf"] = " e\"k8 V mp%\"8% seP%\" %hPyspepkk%kVeCe8e8m2PV%e\"kbV \"&eV%hR iy x rq yd q v xq l rqd j i q x y wt&uVhe8q \"urb\"v Vrew\"uh8y88%8q V\" r2ewt&b%hbwR\"h8dg%e\"uh0\"eV\"hh\"VwV\"br{eeVue(%R(ey y s rq t xyq l y rq y q tqv y yd rv xy x vd ry rqd r q t e y lq q xvdy r q xy y y e xy y 88v&8b\"vrky %ss2e(\"v ple(\"ee\"2%hq&heVr eV&x&nR\"(2mvvR\"%%e\"y plgl&\"Vplglh8\"mvbVVC(VreVye0%&sd%V\"w%shv d&8\"\"PPFp o q ev t e q v j i dy dy v t l q o y } yq r l xy vq rqd y l y x rq qyy tqq l plRh0VhqFreVx8eby h8wpV\"{(8Ce\"e\"ew8h0by %&sydg%%ey qe(\"b\"V&e\"R(\"ee\"e\"%Ah8F\"(u(\"48Vbw8V\"bey h0wj xv o v dy x xvdy q q ev y y ov ov q i v qyq o xq l x r nq l d \"v \"8V\"h0Vrg%(8q s8h2emqey \" v qy r q r d q y y y yq j isv ty t v xyv 0wt&%(\"h(v&R(\"\"\"Vr\"%eR(\"ye8C\"ew\"%rbe\"\"\" R(8q (\"\"ueVh\"hqy\"bVhhe\"mv&ee0\"hVv&he0d&ewV\"&hq ry o q x y v xy dq ny x rq q xy t y yq r qy v y t y e q x ev fv x t q xqy yv y q yy \"mvy qh08hey V&\"\"Fy b\"Vb\"Ah88V\"e8ut&u\"eV\" qydq v ty t s dd v v dy x xvdy x rq q } xqy yv ydq yRh0\"s\"wew%Vee%\"\"V&e\"eV\"eR\"|Vh\"%Fhm~h8V\"ehueh0\" v v r x xq z isd r d xy v xq l q ev y y (v%uyV\"F\"|v&%(8{&rAeVeyybyVru\"w(88yv\"F8hu\"Vb(j i v xy V\"Fe\"%r8v xvdy ev r l y rq v x rq qy n rv r tv e y v (\"ee\"28u\"(eywV\"u\"88ylv\"u(8te\"e\"%r8v s(r\"m\"e\"%rh0u\"(r&\"%x v l q t vd lvd y q y yd q r d lvd y q o ty \"y%hy \"(\"eeyplhe8q \"8%V\"e(r& v&eeyplhe8q \"8%u\"we\" &n%\"brbwweds&l8mq(Rd&\"8q 2%keRy %&s%e\"ehgf%28\"e\"((r&\"%x s rv t tv l j i ryy x ev dy v v y r q q y r t rv ry t tqv ry x v t s rq \"wt&%V\"8\"%bhw\"V\"VeywV\"%euVrwh\"V\"e0%wuVhFp digfdc a %Vh8e2b`\ Q Q YG W' T 22XV US Q QB I GB E DB @ 2RPCH %F8CA9 7 $6 $ 3 1)' $ 8&)%02&542%0(&% # ! \" \ B 4 D DgWUDV &AD!hRjXUPq62&A9F`hDfQ2WRI Uq&ADc8jvFeql B 2 ` 4 I R G v 4 B BV ` 4 9 D bARD 6YjXUP6`AaR4I P8w94G qfDDY l AIAR8&F2BB 88PxU~62Tv9ADIaD7 jv bVthvyi bC`v bd`V gXCVgXAD&)hRhRWkg4BX 6yqeD iPWUs2YYBV6yV AR F2QDI U&Q2e2 beIUFYARqflDDF9a ARCI&ADgXB V gv9B A bUAVD` hRbsXB C4hIABC`hXB kw94 D8trbUhVD`vIDQ9 PQgC`AI CXbF9` hV8CBD QDgXv Q4 e bye CV X `q `hD` U ibh2R F`qQX VbAID ATFCB@sDX9 6G32Qe~CVPq~|86YIQ2X UW6EhqgX4h4Wha` U6`D bhRY 8qU8AYX4hV` R QD B 37PUc6yGBI ARpgxbQDw9D @E bh2I6YBQVC4 AIbQeTBQD UCTY UgXI xmU42 D !bCVDW gveX q(8jXD 5AE37AI3BW6B` WUs7V C4ABrWF4`92 Qe bVD jXPqh74y AI6BC4~ABR 6`64F9PA99 bF9D 6yCDY PXV qbUWp622Y9T U2 QVbAIB j4UPC46BV e U8ADY2 B Q2F2xkxQDFEE4I` xW6Y6EUh4e C4xgiwB bbQY E F9)WUxqW8WAV746Y`I hVD D &E T 62Uj4629Y Q2eI D 1WVe Y D D B V 9` 4 EC 4 4D # $ ' $ $ &)xS@d$ &\"pUih@cF&tx F9xFEUhRhX@UQ2bW6YC4k6ySF7WAU V V Y 4 9 4 R D D 9 Y IY B V D ` 2 DhTx`A9 U4v 8b@DcqrFI QuG 6`8D4 U9Y IP X 4 V` 9q I 9 gbA94 wB7 4b5PvE cF`B bhY6`j4DSaBe ARqQBv PF9UQ2IUUhRb5E ADhDbbxAiQT 9 fI 6ehDC46`F`PU8F2GD4 WS62&q6e4R hRj4gXCIB UWA2D9 QVi6B9AI UseB4UQIT &g4ae bAD hDP6`` F`P86GGD4 hvQVA` e S&Q2R &j46eI D CIUgXe j4Da seA8)gvD x8AVeQDa qnqqADF2Rv492 62@xbA9DX42 F4 QAIQBU3aw26q6YD UtC4 D `9 V E U Dhv` Y q 4 4 a ` Da A9bQBD 6UxFE6YhDC4)hVs7Px6sEhISAVUtq62Bv`ATB2 uUQ2iY sIwEnUqARvDe 62Wj46eV CIvXxqAEDD hbcV9` fh73yADbF`` Q`UW)gTDIxFEx6GAVU8WQ2B9 U2Sh9I2 sVhI6BF`gvC4bhDD F`bw`Y qADD AV8u@ADI9BhBWxADqWCy62``v 4 V &F9D4 F7D cADa ARh9A9uF9B QBUAI DhD8SVa`bCyv rh4vY U I V S ` SB e D U 4 8 4 r B q2 V D hDhD`6`@ V VQ2 a B B 4 4R 4E u B pvADCBjXAIh`ABF9hDPQ9PA9F`WFYAD8Q2iq62uF9hDA9F9hD8Ubt6y&b62h4@QDU6aC48F2ADF9hDUFhDuUPb ` I D B I v 4 `vv4 V DY ` e B ` ` DR y 6Btqw9g4 4 69hRb)6Y4D gh7sBC4b8PbUFE462a`I B xD 8bxpq6yDEVD 2 Wh4Q98~8hvBVI a xWQY`Vb 3GPxhR9GBVxcqhD4 bF`X )U)QBD4R D hARUQIB 2 bgxA9ai I QDU6Ye QBx6EaC4UABWC`q5UbtQ2`Y E AIV brpCvV` P Ugbbh92 ` &F`V bWPFYDD G AUF`D hD8ABhDR F9pbAEV6yIB s2AD&V gfBD AV` Q9PARB@A9F`WhDD X ARffcQhVB4 B 2 WUqsU2V`I Y hIP6B6F44 F9F`D jX8UQ9DI ARARv UWsBI 2 bcqhIi2YIT U s2 6YABC4Q98AIB v B V v vRIE D4 9 I 4AD x D V ` I37 Vg V 9 2 B Vx2 D X 4 e I I B T a D B I V 9 D B 4 R D G B I V D R bQVAIh4u86GB F2UuWQAICBWh4A`hB6Bch9F9QDPs9PQBPUUgih9F`bwYAD8Q2k6yFDQeAI&UARgfy6equhDF`PA9F`hDfQ2WquhDF`UPG D DQDFEUVe xQE@s7he4 V 6`g4@Q2D cQDD URe qbhV69g4I hDT kqI xFEUhRhXy s9PggF`W4D B FYAD8VB Q2PUART xW@gv4 x9AE2 WV3yw`B q E I D I a 4G 2 ` 9 4 ` I G D D 9 I R D I D B a 2 V D ` D b6DD )uUQ9IQ9BhVBC4a xujXBIhR AIFBD xv ARQBeAI2` 5F`B bVD F F2UP\"vADQ`D UWgB AD@Q9D hRhX` wBDy SC4A`` U4B C4 626GI U@I2 UGB UtWVi CDbGX qDhV C4A`vV UCD BF988\"Q7UbuWPShfyFeADh9QBu4I F`bwYAD8Q25D UhR` uDB bV4 g4ADD )6BqhRY Q2UhRQBPhvby` 5bq624 AD UQi ` Ug4I WhTD 6`gub6GDF``4hD wYUADV tQ2A9AIw`\"FYUhDD hRfthVIBB Q2 8qs4BB 2 &F`BI AR bhDD 8s2YB h4W8q62VBI xnbARvD h4&8bc!ARhv@UPWF92RD &fwE WU6YDD hRh4hXWAV9` bhD B rQ2 ` FIh43`CD ARA9&hDF9B b8V`` UW8c49v hvWF`9ADUgivGTV`q837@AV3GBB 28 b D b B Q9I ` v Vy B WVb G q V x 9U v} D B DY ` ` 4 9 Y4 v V IF9WU62C4uA9w9ADD 8UDv WYv rUD 5)4E QDR UDa h4` hRjXUP`R v Q2~b7i xFEUDD hR hXB9 CYF9bID kP6y2 4 S6Y V QYrPA4 xUARB a4 e B Y 4 I G v I 4 D a 24 I2D v 1 I D 4s2gvFDQeQI6eC4F`UF2Ww2FDq69F9WU62C4PA9F9hD8UW|8PF9837)UQ28U`v CVv vX gkD ~B Py 6GV U8ke 849 7 Pe4 QG6ePs9D QeE FeT CDX D V 9 D B B 9 i 9 V D E 9 v D 4 X x w X U By c7 FDaQeAI&D UhR)hVI UbwD4 sehIcxh4` &vU4ARDB ADB` cY s9QeFeI dD}pB{ 2z brQec`e V gh9F9AD8buUARrcUQTbqF4jXAIF`xU82 zhR8&F`WFYAD8Q262Dy uA9F9hD8UW|UhRxUQ2`UQ26IC4fWCV` CvbxT bhV`QDU6aDqhRQ9UbUQ2hIABy Q98rQ9gQeFeCDX 4G 4 E y e 4 I` T Y I v I 69pUPAu4{ v xbG@SADg4w1tqhBcF94 ` 6ycsI4QD u6`heV F`UhD9 g4F9hR8UA2vV`ADD bUR bix324Bv 5qrAR21v Uqi7giB4 8 Q9UQeY qFe4 Q2UCDI P)6IXG Q28p8Wyx2zB{h4 D CV&Wv`Xw I CvVigvVVyb )ABG W F`D I s2hDF9I ARADDW5q94e4 xxh7gibUxPWx4 gRE gh96yF`wYg4ADADe8urUUWb`DI4Q2 ` 2 VgigvxWFED9 D AhDF`ABhD8F99 A7AD9` D XP9 E G g ` 9 V 8R FED D @ V9 b B V s BD 4 9 B VhDF2F`pfo8@3GxQ2xvbQbhVw2FDqRD hVPGa ` qxFEQDUb2a hV` r&ADF9UPVR ` UDD hRVd6GVf@AVgvFDUBD 2se`QePDbg` hVh9CBfgXBF`ADQDQeI8bQ2eB CVb&&6YBb ADT 6`4 a Aac6`4 n8mv49` cqU&ePUCVDhRXqkU6yYB Q2SA5F9BVhI9 hR7CDjXUUaIX PUiqw`v UhB462DD AR pUhv`i B TWCVy` fa7gXhDhRhDbsX` g4I bg6DT 6yADuFDbfeB UAIV 29 B v 2 B I V G I X D Y weD D lR 4 4 F98t8SAyE fg4B DQhe5F`U4D eWhRbVbcw`bFYhDV cQ2i2 rbUU6bhVCBgXQDQeb2)4D 4 ARP 8gvI WADE h9D UF`B bC4A`@qHABU@vA7P@F`9E hDfQ24 WUq ID G 9 T D8 B Ie V DubAB x@hIQET bAT`2 AV`&gXdB6BQDse)CVh9rgXXCB WDD C6Yb4 qWhaa 6`V y648F9UqhRDD 8b37B pxQVUhID hRCBcQDgXB UQB e fWdVTe qcb6Y4DaXV bQVAahI6`6B85AEQXWA` I 6BVW5Q24y )AVxTWSxAR94E AV QBUPQ2ID xAEw`FEADADFBCB8hV8u62B7 QD56a3241 a DU 9 Y B2 4Y 9 ' $ # 0)(&%\"! ", ["andrew-appel/scans/89allocation.pdf"] = " )n )\"v )\"T)F%)\"tT) e F25)5viTnnTT7%7v2'TTT77{)\"'\"ve \"Fv)n w ~r | ~ w vu r r |~ s uu|~ z z z z u|~~r x | q| vq{FznT){vrv\"'E'\"E\"~Qg\"vE\"\"\"){q{y~5\"\"Ti'}Fz{~Fzv\"r {A\"\"|Envg'vFzTrTzrFz{~)qgET{vFznT){vE\" {vFz{|Tr \"T)w z uv|u q r q ~ z z qr q ~r r | ~ q ~ v |w ur FzTix\"vn2vnr2TE\"\"uEv6\"vQ\"{~)yv\"{uvv{qynd'\"u t2Fqp ~r v~ r q q|u qv ~ z ~ q| x qv z} q| w z x xruwv s r komlkj h )vnT7ig t rxx f w tx w r y w r x yx w u tr eTd%v vw)Tw)edE5T55)e t )w'rQE)e)v) vvsq\ bbph f P1 77i g( 7eX ddcba Y X V 1 B D 7%778`W7& EU) G S DR D H 1 B D TF&)Q7FPI7'& EF) G B DB @ & 9 ( 1 4 31 & (&$ E FECA 8765%2 0)'% # ! \" \ G 1 ! W 6 % C (% U S F F ! % ! 0E89&\"E9E\"V0P5)p ! f ! F ( % %6 C ! ! f 6 W C 6 % ! C ! ! % 66 U 9\"9#)ErP8$Tg\"9p\"9&88`gEg))9\"P)\"7@eE( )EX4I8( V9\"P@87@520TX0E8P))79\"Pp0\"9&8X0( U ( G ! % 66 d % ( % % F F 6 % ! ! 1 1 ! W 6 G ! % % ! ! % 66 % ( % C ! % ! ( ( V9\"P&49p\"$9)T\"w58P))87@40Ea\"Q)&p#9E0) 1 ! W 6 C 66 C C ! % % ! 6 6 66 S ! ( % 9E\"9`\"y0x87@4EwE9\"P&8p\"p`\"v&4pV9))a8u9 t G s f % % d ! C F ! q 6 1 ! ! ( ( U F ! F h6 % ! ! `59&T$R@&E0aEr2\"E8@p2i`\"QXaEi77@RP88g f ( F U ! ( % d F U ( ( U U ! W A ! U % 66 ( % S 6 C % 54a9e0TEIcE9ba`\"QXY)EX% V9'987TE)RQ\"P4 ! H G F ! % F ! C A ! % 66 1 1 ( % % ( % % % ! PIBE&EED% B@987254320)'&$#\" \ p R & ! $$ ! & $$ ! a ! Q & @$ & d R %#%#CX'XH U 7i% U S'o77i\" U AC U Psu R & @$ ! Q d & Q & ! Q d & Q R %AB#F7'f7(HF#4'f'7 T p Q & ! & Q S#'' U 8'7 U & U \"i%'7A7AHiiI#CA8i#f'FfC \"T A7A@ ! @ Q & a & @ $ @ a$ ! ~ } | & ! d U R @ d d Q & a & Q k & Q$ d Q & Q & U R Q & C%H7fVC'7 U (%'H S'7fsPv7 U SB \"T u(7'Ps(B#! Q $ Q @ @ a & ! $$ & & ! $$ ! & ! @ ! Si'A4AS'4iH U S#%#HX'XA#A(#A U b % & d R & & & & a a Q $ y & & ! a ! a & & '7'i8's'7icXy7H U 8t(#t(#%#XV8H7! $$ @ ~ } | Q a Q Q 9 $$ ! & Q & ! $$ { n tt%AA8iHc'7#4qs\"A(B7cG'z R ! @ d @ & Q Q $$ y #i'(f4y7''i#7 & @ y @ w 5 p & l & & 5 & Q & ! & Q r u @ d a ! a B7A7AxSvsiHQ % U i'C('#'Ag('ftS#%At7! & ! $$ & d & Q ! & d R a & ! 9 Q & ! & Q r x y d & ! $$ (B7A U \"C# U Vsi%'s#%#C#''io'7(7Cfi7A Q @ d $$ ! & 3 ) $ @ ! n m l & & k Q & ! $$ & j d y @ Afw7A4qsP6p %4BA(#foQ S U A U #(B7H7(%fi'7(hfd & & Q $ & & @ $ $ ! & Q Q U R & ! $$ @ d w7i\" U \"7XXI\"tiAABI#I'i\"B\" \"T u(B7cg'(f48'& Q Q ! Q & ! & Q d @ & @ @ & & & Q Q Q e @ & $ & 'Xt7#%(B#''sBiP7i8\" U 7Y AAH'C''4'P7(SGBXHBGX U & Q & ! $$ ! d & Q ! & d R & ! $$ ! & $ & & & & ! & A'#SB(#X'Xu'(# U 7 U u7 U %'XtsB'#''Q $ & @ 9 d & Q ! & ! $$ ! & !$ @ Q & & & Q C7'XSX0P#8'#SB(#wFi'u#IAXPB\"7 U X U St87! %'X7BX7iA U c'\"IA'CSABXI#%'B7FH48A U 8# a & ! $$ @ & & $ @ Q Q a @ $ ! Q$$ ! d @ & ! R & ! & Q & Q Q $ d $$ ! a @ $ ! & Q ! a Y & @ u(B#''sBC(c U '4BGB4#c%AI#%\"7'(#c%7'Ac 4'A'X7I(\"V7XI7I'iEGS7'(A7Ac%7(i'X%'CAcE47 Q & $ ! & & Q & $ ! & R Q @ @ a Y Q $ Q @ y Y Q ! $$ ! & Q ! & & ! D @ y Q 3 ) 3 ) & ! $$ ! 774 U X7#H7i#H U P7#E#C'(AE4S\"BG42xw4v u#%#HX'X $ & q R 3 p) X'Xt7s7Cr'#i'77Y U (h4g7FfeABXI#%'8c'(#b7`Y'AXW VT ! ! $$ ! @ $ ! d & Q ! a & @ U R Q @ @ $ & ! D $ @ & 9 ! 3 ) 3 ) & ! $$ ! S7'A4APIHG4BFE#CB4A%'#8765 '4210('#%#\" \ F\ @#d @eWY tYt# qYz\ &6& 1g 1g &r\ a V p VX X R R V o V ' R R f o H R Q gX Q R g X Q @&g&I`879#sGYW5qY!P`8y&5`8`89&1515 l @!(5z59Ab81931c9#65&g5%}z7&c3g!&@R R ' j XX $ R $ Q U f V r ~ | { y x w v u U $ p t $ p R Q U Q R R $ $ V UX f R f $ V f R d U Q 'X 15#g#53d&1P98@5S9!1qcp559#65&g&ge9#c3#1Q R V V $ ' ' Q R V $ XX V U X V ' V Q R R R !5&9Iq5s9@v#1DE55t&5!r55y15Iqg#9#i s $ XX $ d V V V V XX Q $ Q R t15A@5`&1sgs6SEs55)5`I#e8q9#R d p m R p Q ' X ' V Q V $ X V R R Q R R $ f R p Q a o n `#rR @!#6@5gsgg!qsg15D5D@#9!#7#gpx5 ' XX V $ m R VH X V R l VX r V R j V ' R ' X ' V Q @5`s97R 95e151&5&`i15s(9&9#ki5g9#qi@5gg#V Q $ Q ' V g R ' U Q $ U ' X ' V Q V R X p VU V f Q $ Q U Q hg5f1P5#(!cI@5gsg7Sy#5b1G#3&c! ' V 'X V r V R V f Q $ Q XX R p $ p R V V ' R V V R R V f g1Be5s19&g#d5E8`559#y9##(s565sx!#5s(91 Q X p VU V f V R p V $ XX D@5s&g#9t55a 0 55`P9831##E89#Gs98&gR X H Q R f V V Q $ V f U Q U V R p Q ' f f V R V f X R R $ $ V V U X R 9#c9#cY8E&`&9#7#I@g8xD`&Yg`8#99&g5xPt&755x5#9 Q Q RX f $ $ V p f $ Q U V ' V Q X V p r Q R p V $ #551!17#981)swg3e1!gsg#`#y#xs9wvu f $ V f Rd U U pX V r R p r f Q p i @9#`&g3&ge9#ctsE8`s1W815@#q#!h f $ V f Rd U Q aXX $ R $ V U T R Q H F ' ' @9#`&g&ge!9cb3D5`Y13W95SPIG8EDC ' $ 2 B(1A@987#65431# 0 ' $ )(&%#\"! \ | h 3 C 99 C 3 % V H3 6 9 % 7 3 3 3 f9 Q9 C C 21DA@@D`bA4Bx{bzAAURAP8A@$4fE@&B4bE$@E4f@@4yDB d w V V f C C 6 C 6 h ) 9 H H % 7 C 7 w99 aho$E'Ap84@58Y@&@yDTSD4SADS12Sgi@As C h 3 C 99 C ! c V C % f 3 99 h C % C h V g 3 % 6 C h V 9 3 3 % 3 21DA@@DxwaE4A$D $@4@@EsE54&eA@4E8D@b5@5@ E8E@544@ q f % q % ! 3 3 V % C 7 6 Q9 3 Q % f 6 C 6 h ) 9 C ! $5EpvEvY4`e458Esu&@4EsuAE'@t4@D4821b@PpD88S w h 3 C 99 C V C % 3 9 H h % 6 %! % 3 99 h C % C h 3 3 f % 7 @4A1@@$424P2E8@@Sm2124s$4#eE@@EP$D5D&W48bA$A42`43 V C 6 3 6 C 3 3 C h 3 C 99 C 6 %! V C % 3 H3 3 f % 7 3 % V % 7 3 C 5DE8@'8D24SDY@4DBh@@DrE#ShE4YRTbAEA84Y42b42PE@DA q 99 C 3 % 7 C 6 % ) 9 3 C 3 6 9 7 6 Q C 6 C % 3 % @@D'40@4$DPB4SEWh@eC 42$@4DbA8A@8@8bDPE44S@$p w % 3 99 h C % C h 3 % ! V C 9 % 3 ! V C % 3 % 3 % ! 3 6 9 % E4s@1$'E54&4S$#G5Du$4&$DTbE4SB4$SE#W4$5U8A@$47 C V9 H H % 3 7 % % 3 3 H V 3 9 7 6 Q C H 9 C Q C 42DAno2EU(SSAnE@4244B4b@24fASnA@8ES#!D50mP6 3 C 99 C x k 3 % 3 ! % C 7 Q C H3 V V 7 Q C 6 9 % 3 ! $1DA@@DplX$154421SD@D`bDjBARB5ib5A4248`P\"E4bEsFD V C % 3 C % H 6 3 Q C V % V % 7 3 C 99 C 3 7 7 C 3 C E4pS4BSIA4&S8@'g@S4b4'$@4DBh@@Dg@45!\"2A52D5D5 d w % C % % C Q 3 3 C 3 3 7 6 3 $4D4D`A24SD4P$@484C 4WE V % % h % C9 % ! V C h ) 9 % V % % 3 ! g 3 C 3 % h % C9 bX$4UED(gE#42S58A@b1$$baX$S4aDSA@S4YD5\"A$4D(g@pAg4 9 C 3 3 % 3 H % C h C 7 9 C h V9 % 3 3 V 3 C % XE\"@AfD4T@\"BEDp@@4AA$5@ $EBS5Y($4T4A8Aba44sd@ h C 7 C C 3 % h % C9 V % % C ! w h C 7 C C 3 % h % C9 3 V % % 3 C h 9 EDYD4SA$4D(0E4edvgAEDYD4SA$4D(S$@0E44S2E@C V 3 V 3 C % C % C 3 % 3 99 C 3 V % 3 3 C 3 ! w 3 % V % &AB54W40B4bDD5$h D'4A'u@DAubAB54Y4$44TD5vT45XEs4% 3 ! V % H r 3 h % 3 Q 7 C % 3 3 C % 3 3 % 3 3 C 3 % pDeX$U1e4@4E4ebD488A42DA`4$4 45G4'5404B8H % ! % w 3 C 99 h % 3 Q C H 9 C V % % 7 C % 3 3 Q 6 Q % f 3 h V9 E4$#4BSuE@4A@1C E2E424SS#!D5Y4sA'D4U4!44B8AEAET($H 3 V C % f H Q % C V h C 7 C % Q C 6 V % % x w C 7 %! 3 ! V @85A$AD2bE45$5TED'pE4sPWX$ygbE4A4vSuDW5AT43 C % tr q H 7 C % 3 39 C! h C 7 f h 3 Q % 6 6 9 C 3 % f 3 Q9 AE0is`ASeDXp@iYE5WC E@E0`4$8A8gD54@b84eE`@A% d c 3 3 3 99 C 3 ! 3 ) C 3 V9 H 3 6 3 3 H3 9 D4bA4b$'4a@D`XB#Y4EXW12EUS1T8@4'(SRPQ2EP@ 99 H C ! 3 C % 3 3 6 9 7 3 % 3 ) % ! ! @AIAGFD0E@DD484&B8A@86$1544210($'&$#\" ", ["andrew-appel/scans/92calleesave.pdf"] = " t v{ zy sw } r z AC)kCUA ||p 9 p!99fQA x wv u t ts } r z AC@CUA ||p 9 p!99fQA B # V ( ( # B 2 ( ! B D`%UYEo%uC7)E0R@9@qpEw)A8D97E8w8 ( # ( # t # B ( l B ( 2 B # # & 2 # # ( B B j B 1 B 1 B # ! )A'DAoUnfmE)Y7r\"6@8AA8A%WC@YA8DE@AD%A%79 B ! t ( ( 1 j # ( ( ( B ! x # ( # B 2 2 B & 5 B & B # V 2 # @A'@8)U%@9yk88)Df9AaA8E7)i%7h7AcRA%Xr9)( Q B ( ( 1 ( #V V 5 & B 2 f e # d ( B ! # B 2 V 1Q B ! As C@8`U%@8g)SrY@7wAAAhY@AD9y8@3urD9D)G)8DPA8 9Dg6)7w C@sY69$7%7@A8EA9'%C@cD)%@ADiE%# # ! t # 2 ( & ( # 2 B # ! ! ! B B # # 1 Q89)%G6C@6@GA88gA8WA7r)8gw87w88G@@DwD)AE'A8@8GV ( V ( # 2 # B ! ! & 5 # t ! & V p ! ( B # B ( # ( 5 # ! V ( B # ( B # ! x 2 B # ! V # ! t ( B D`%C@)8A@8 C8`7%YA8%@U)%y@`v%D9PA8$$7%7w@8Gv8Du'7s) Q # p 2 B # ( B # V( B # # 1 V B # B # V ( ( # rqiD)Ah7%g7D)%P8Gf7%C8e%C9Ad8EU)@cb%@aD`%UYEXGWU\"75 # ( # T ( & & # Q I HF B # B ( # ( 5 # 2 1 # ( ( & # ! 0'7DG6@SRPG4ED)%C@)8A@908)76430)$'%$\" - 8gq%0|0 a#aQ c A!p'A! 9Qb99%9QIQ9|9A!!99 % I# fa2b 9 Aa AAfn999I!9 ! !w Uc 9!9A9FQ AA!x4aA! a c c ! ! 2!C I QQ|9 8I9Q9a c f AAa c 9fwa 2w Ic 9p!96 !Q!!Q'! F f 9 w A Aa c 9a c 9 9!9AI 9 u 99!wAa c !9 as aA! a' !! ! !w Uc f9Q 9!99F!9! ! w Ic f9% ! 9A689Q)nQ09wba c c c c U 99a#!uQa9a c F Q\"8A9 ! 28!C I f c Q6t!w Uc Q99'ha 0aA! f c 9! ! 2!C I #!C Ic 99'#w Ic 9!99I!9tQ ! haE2ww f9!9 c 4!9a99!9h!9 Q ! ! x 9qC Ic Q9n96 !Q!!Qh!Q a bFQh9!99F!9 ! A c 9 u2g!9!wbf c fA! a c !9Q9b c 0C Ic 89Q! c 9'Q9!QQa' c 2C Ic Q9)96 p!I ! c !6Q a9Q9a c 9p9f!9h!99%9 C Ic Q9s!9E 8 w Ic Q9% !!p!Q f I 9p9!99F!9f!T 9fa AAf c Q94F ! F f !96'Q9w IsfbQ A Aa c 9f c 9 '99f c b4!C Ic 8 a c Q6 9q9A!Qa9 !99 s 9 I f FQ FI99f c a AAa 9h ! ! c h9Q! c 9QQww Ic Q9|IuA9Aa c Q9s!9wba c 9 0 ap)9atp!w Uc 9Q! c 9 a f 68 c f9999I!9pFQa99!9#Q Q ! %Q9|!99!9QA!hsaQ%u % 9 bQA C qtQ c A !9 qqga uQa a wbf c a6 c c 9Qh9ta A9!99% F 99 a AAf )Qs2a9#Q9 Aa AAa'aAI!!h y } w 9QQ! c 94aaAp9 2bf AAa'44a fc ww)'98wIF'bIuAn XaQQA!AaA6FFw!9IICA6I80898II4IQ'A9s0Fqw8A0% AfAIg82 y z %||%|4 AQAI8Q6!QA8 ~ y ~ } { z TppsrT%|y\ w f u d je r j le f o je f j l je h f e d Fx4vtIsp0hFpqpIpnmk!i%pgFh'4)FI\ x s 1 @ G 7 5 y3 5 5 y & 1B s 5 7 P 3 q @ P 1 @ Y x 7 5 y xBG v P qB t 5 s @ q 7 5 i P G g ` W W V c Aa%!F9fIa4%99wwU0)6u!QIFr'8pa)h!fAed ` W W V R V ` ` Y V W V R S RG @ 1 7 P D H G @ 1 DB3 @ 1 7 53 1 1 ( & & $ !aXTUba0IFXTUTE849FQI'!4FECA498642#)0)!'%#\"! \ DGED6FB6BRVUfVTGRwGbDB6h4B6FhBB86R4GFiBhDuwG( a 2 % ( x 1 f Yp (7 5 ' A9( ) ' e 2 5 S 2 (57 2 S 17 t ' 29 S Yp 29 Q75 1 Y C5 2 S 57 2 299 ' ) 2 % ( ( ' % 2 Q x9 f Y ) (7 x ' % S 2 % ( Y 2 % ( 1 } 1 Y7( 1 2 t 1 Y ) W 2 t ' 5r S 299 ' ) H ' 57 57 36VB1 DG6gDGEi6BR66Vq46hGGBh% | R@hqDG( 99 ' ) 2 % S 2(p ' n AS Y a 2 a a YSp a 2 %( A C Y GFh#GUUGDG3v6V) m DGi6GR4GEw6@hqDGgG6FVG63a a 2 % ( 2 S Y ( 5 2 S x 1 ' 99 ' ) 2 % ( 2 S Yp 2 Q n A S Y a 2 Y ( 17 a 2 % ( A C Y GBDGy6V) m TGRwG6hGRbBhDGGUVGDq4DBh' ihB7 BX6Y 5 S 2 (57 2 S 2 t ' 5 (5 f a S 299 ' ) 2 % ( 2 S Yp 2 S 2 % ( 5 2 f9 t 9 ' 1 7 S 2 % ( 17 t S 2 5 2 S C ( f Y % (7 d 5 S 2 ( 5 2 S 17 5 2 f9 ' t A 1 ' ( f C A ' a n W 2 299 ' ) H 2 % DDBUGR4DuDUDGBVGR7 B4DshEvwDDEh#4B@hPDG( m h) 599 ' (7 2 S f x 2 ) Y S C 2 % ( ( ' % ( 2 a f 5 5 ' ( 5 f a n W S 299 ' ) H 2 % BGD4VDGDDGwGDRG6XIbTs@hD( m GD4VDGDyDB@hDG( 2 S f x 2 ) Y S C 1799 ' ) 2 % ( IUVB6Ba VuUDuDGbDBR6GX4G1 iTGX7 GDGDBUhGu6Fp ' % ( 2 Q x9 f Y ) (7 29 C ' e 2 S Y a 2 % ( 17S Y (5 2 S x ' 5 S 2 (5 2 S 2 % ( 17 t ' 5 S Y 1 Y7 ( 1 2 t 1 Y ) 2 a Y 5 2 Q ( 5 f a 2 S 2 % ( x 1 ' 5 2 5 Y C S f C ( 1 2 S 2 7 x S Yp 5 S 2 ( 5 2 S 2 a ' 6BXv66V36RqRbGDGwiP4RvDDqvG@UUhTR7 GbwG5 2 % ( 2 5 f A ' a 5 2 S f x 2 ) Y S C % ( Y Q S 2 % ( Y ' 599 ' ) 2 S f x 2 ) Y S C 2 1 Y 1 2 % $ n 5 2 2 S DR4Eb4GD4VDGD64DGUD1 b@hGD4VDGDED6DTV4G( 1 Y 7 5 5 2 S C e 2 p Y 5 2 x Y 1 9 ' 1 S 2 ( 1 7 UB8G4GDDVuwq4DD0hGGB`62 m 4BXS T6G1 q4BQ FRS 0BwDG( 5 27 ' S Y C a 2 ( x ' 5 29 '7 ' t 9 ' ) Y9 x9 Y % Y 5 S 2 ( 5 2 S 2 5 f 1 2 ( Y 997 d 2 17 % ) ' a 9 ' 1 Y7 ( 1 2 t 1 Y ) ' 1 Y S 297 C a Y ) 9 ' 1 Y7 ( 1 2 t 1 Y TR7 GqXGFp @@qDB6h6BXv66Vb6B@36VhUBR6vUV) d 66h!D6D F j uh~ d v3' kl 1 Y x ' l k ' 1 Y ( f Y Q ' A Q S 2 97 C a Y ) A 2 5 S d 2 Y x x ' Uf1 R36UrfuD6wvB@36VRT2 hp VS Dx rDwT6DG4GwTD6EVBVF64GBDGg46t GDsgG!66 6Dw9 1 ' ( l 2 % ( A Q x 2 ( ' S 2 1 2 2 x Y ) ( 1 27 ) 2r A x ' 2 S9 ' 2 % ( 5 2 Y S C a7 57 % ( 2 ' f 1 ' l k j 9 ' 1 7 S Y 5 29 2 2 ( l 17 % (7 d x 2 5 5 2 S C e 2 2 Q 1 ' ) 5 99 ' ) 2 S f x 2 ) Y S C ' 17 S Y ( 5 2 eu0hs7 BR6hr6BV6BGB4RG4GDDVbwuhGD4VDu( EDBR6GX4GS x 1 ' 17 t ' 5 S 2 (5 2 S p Y 1 Y7( ' c7 a7( C Y ' % ( 2 ' S (5 1 Y a 2 x 2 d S 2 ' C 57 % ( 1 wDBUhGGR7 ew6BRw4BbBRDU( GEG( VGR6bC Gy8 e 29 C a Y ) 2 S Y a S Y A VB6VGUi6s9 Df 2 ' f '9 l k j 2 % ( 17 g ' a 5 S 297 C a Y ) W 175 5 ' Cr 1 Y7 ' f 17 ( 1 Y ) H A Q 29 6 UD1 guhDGgDB6wv6sB#TB@36VvDB8GUFD6BR( BR6V0sQ ' r 5 f 2 Q Y 59 ' x9 f Y % 5 5 S 297 C a Y ) W9 ' 1 Y7 ( 1 2 t 1 Y ) H A Q x 2 5 f 5 1 Y7 ( 1 2 t 1 Y ) x ' 5 1 Y7 XbRFh6DRTs@6Vh6BXv66V4R6BXv66V1 6sR( r ' c7 a7( C } 5 1 Y7( 1 2 t 1 Y ) 175 5 ' Cr S 2 ( 2 w4BbBRDi6BXv66VDBG6FGG3a TS bwvhD4VGD#w#TGRwGS ' ' C x 1 ' 599 ' ) 2 S f x 2 ) Y S C ( ' 5 S 2 (57 2 p EDBR6R4G1 DB6hG6BX( s@hqGR7 up h@hVV6ssid BDGgG4GDDV2 Y 17 S Y ( 5 2 S x ' 17 t ' 5 1 Y7 ' ) Y99 ' S 2 ( 5 2 S Y 597 ' ( 2 x 9 2 t 29r Y9 2 % ( 5 5 2 S C e A99 fp S 2 d Y C x ' A9 C a75 B@FRE1 B3B81 eu0p gBUX!6BRVDFgDG( GBhFuDi} ' ) l k j Y 29 A(5 9 ' 1 Y7( ) 1 fp 2 % ( ' % ( 57 a7 '9 ) S f 29 A ( l 175 5 ' k 1 Y7 ' f 17 ( 1 Y j 9 fp S 2 Y C x ' 1 ' 29 ) A99 ' )7 ( ' a 2 6BUR6Ds8G6#UBR( BR600FRd E1 w4BB@hXv1 ER5 hBwBR6DGBGBeDBU4VR@@RRbB@ie6B846BRwTvX4GDG9 GG6V1 ) 9 ' 17 7 S Y 2 % ( 17 % (7 d 17 A ' ( 5 997 ( 5 297 % d 5 1 Y757 ) 2 x 1 Y7 ( ' ( 1 2 5 2 S C 2 S Y S ( 1 Y ) ' S 2 c7 a7 ( C Y W ( ) ' S ( 5 ' H 2 % ( ( ' % ( Y 5 S 2 % ( S fp 1 Y7 ( Y 1 57 % ( 2 1 o 2 S p S 297 C a Y BBRD6ETVUTGRQ PDGwGRbDGGDF6BR6D`GEDVG8t D 4B@36V) A 2 5 S d 2 Y x x ' x ' ( l 2 % ( x 1 ' p ' x f x ' A 2 59 2 Y S 297 C a Y XT2 iqp &yTS D1 V6DGw0t 4zg Dh1 XVgp bB@36V) 9 ' 1 Y7 ' a S Yp5 ' S ( 2 hBR( EG6F81 TGgD% | P6rR( 61 TGa T66DuDUQ 6B4i6B@VGB7 5 1 Y7 ' a S Y p 5 ' S ( ' S Y S C ( f Y ' 5 1 Y757 ) 2 x ( 1 2 799 2 ( 1 2 S Y a 179 ' 1 % )7 % d 57 % )7 % d 99 2 ( ' ) S 2 c7 a7 ( C Y 2 % ( x 6gDB@Q 2 i!GFiVGb1 isbBRD6DG1 ' TV4DRvBp DFVo m n 5 2 S f5 Y9 ) Y 5 x9 2 5 1 Y7 ' ) Y9 A S Y a 2 a Y ( S Y 5 S 2 (5 2 S Y ( A9( ) 2 S7 x x 1 Y C5 2 S S Y ) 2 ' f '9 l k j 2 % ( 6sR( DBgG63iG6TGX7 GgGqBRV4BU6R4GGUVu6 UD1 ieugDGDp Y 5 29 Q '7 4BwRS ' IDu( R4B1 v6iF4h@6hDwTgup gB@6V) | i3D% | t 2 % ( ' % ( Y 5 x 2 c7 ' S Y 57 t p c 1 ' S Y S 297 C a Y ~}2 4s@6V{Rzy6iDB6E6GS VTsV6sR( TR4GDGgV6Bsid Bv6GFp S 297 C a Y ) C 57 x ' 5 ' d 2 17 % ) ' a ( 2 ' ( 5 (7 w 5 1 Y7 ' ( 1 2 5 2 S C 2 S 9 2 t 29r Y9 a Y S x 2 ) S Y t7 x A9 2 S ' 9 5 ' d l k j s qp 29 2 2 ( l A Q 1 797 C a Y ) 17 x 2 5 f ( 5 S o 4VV66BUBV6GwUeEu!t Ur6BVG6Ds@@6VB4RgRTh5 d Tj m nl k 29 A( l 175 5 ' kr 1 Y7 ' f 17( 1 Y j 57 A5 ' 2 5 1 Y7 ' c7 a7( C Y 9 2 t 29r % 7 % Y 5 x 17 g A 1 ' s6R6DBG6#BD6sR( BR60`ER64gBX( 4BbBXD6iVUBsD6B0p hDBUvwa 5 2 g ' a ' %( 2 ' f '9 ( ) 'S(5 Q ' 46hb( G6w6D1 `V6TGRwy1 4Bs@hR1 Xqp BwfPDvU d ' 29 ) A99 ' )7 ( ' a 2 5 ' Y 29 C a ' e 2 x Y Y S 2 c7 a7( C BbBXD6Y ( ) ' S ( 5 ' 2 % ( Y 5 1 Y757 ) 2 x x ' Q x ' 5 1 Y7 ( 1 2 t 1 Y ) x 7 S A Q x 1 f Y Q 2 Q 997 d 5 2 f 5 5 V6VGRQ qDGp 6s84E6E1 0UBR6vUV7 BXvD6g@@4DR7 1 Y7 ' ) Y99 'r S 2 ( 5 2 S 5 2 x7 ) 2 x ( ' % ( S 2 c7 a7 ( C Y W 2 ( 2 S ) 1 Y ) H 2 % ( ( f Q a 2 % ( 2 c7 UBs( DB@hGR7 G344wGbBbBRDU4GGV6VPDGDDDGsba r7( C Y Y ( 2 ) 1 ' % ) 2 % ( 5 25 Y9 (7 ( ' % ( Y5 5 1 Y757 ) 2 x 1 Y7( ' ( 1 25 2 S C 2 S 9 2 t 29r Y9 p BRDUGVwGDG4RvBbswGRiV6B4y6BRwTvX4GDGuV6ss0d BqhY 2 ' d ' 1 f 2 Q 997 d S 2 c7 a7 ( C Y W ( ) ' S ( 5 ' H 2 % ( ' % ( 57 1 2 C ' % A975 ' 2 GS ihDg@@e0@b@RD6`XVUTGRQ PIDG#( GFEDC B@86431 0( &$ ') '% \" #! ", ["andrew-appel/scans/advisor.djvu"] = "An Advisor for Flexible Working Sets \ Rafael Alonso \ Andrew W. Appel \ Department of Computer Science \ Princeton University ", ["andrew-appel/scans/cont-passing.pdf"] = "Continuation-Passing, Closure-Passing Style\ Andrew W. Appel * Department of Computer Science Princeton University Princeton, NJ 08544 Trevor Jim f\ AT&T\ Bell Laboratories Murray Hill, NJ 97974", ["andrew-appel/scans/reopening.pdf"] = "Re-opening Closures\ Andrew W. Appel Department of Computer Science Princeton University Princeton, NJ 08544", ["andrew-appel/scans/runtime-system.ps"] = "A Runtime System\ Andrew W. Appel #\ Princeton University\ CSTR22089\ May 1989\ A revised version of this paper appeared in Journal of Lisp and Symbolic Computation 3, 343380, 1990.", ["andrew-appel/scans/simplegenerationalGC.ps"] = "Simple Generational Garbage Collection and Fast Allocation\ Andrew W. Appel\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544\ March 1988\ revised September 1988", ["andrew-appel/scans/unrollingrecursions.ps"] = "Unrolling Recursions Saves Space\ Andrew W. Appel\ 3\ Princeton University\ CSTR36392\ March 10, 1992", ["andrew-appel/scans/virt-prim.djvu"] = "Memory PrimRives for User Prostrans \ Andrew W. Appel and I(ai Li \ Department, of Computer Science \ Princet,on University ", ["andrew-appel/scrabble.djvu"] = "RESIWCH CONTRIBUTIONS \ Programming \ Techniques and \ The World’s Fastest \ Data Structures \ Daniel Sleator \ Editor \ ANDREW W. APPEL AND GUY J. JACOBSON ", ["andrew-appel/simple-gen-spe.pdf"] = "\ \ \ )\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ !\ #\ &\ '\ (\ *\ +\ ,\ 0\ .\ \ /\ 2\ 1\ 4\ 3\ \ 5\ 6\ 7\ %\ \ \"\ $\ 8\ ;\ F\ V\ :\ <\ B\ >\ E\ A\ 9\ ?\ @\ ?\ ?\ C\ H\ D\ J\ G\ I\ K\ @\ C\ C\ L\ ?\ P\ N\ Q\ S\ O\ H\ T\ U\ R\ A\ W\ C\ X\ =\ M\ a\ Y\ Z\ C\ [\ J\ \\\ ]\ H\ U\ C\ ^\ _\ `\ ^\ 3\ c\ d\ e\ f\ g\ b\ i\ j\ k\ l\ h\ †\ €\ \ ”\ Œ\ }\ n\ t\ m\ p\ q\ r\ x\ s\ u\ y\ v\ r\ n\ {\ |\ ~\ \ n\ \ n\ ‚\ n\ „\ ‡\ ‰\ ‹\ y\ ˆ\ |\ ‡\ \ n\ Š\ \ ‰\ Ž\ „\ “\ y\ •\ s\ ƒ\ o\ w\ ‰\ ˜\ ™\ š\ ›\ |\ œ\ ¡\ Ÿ\ ž\ ~\ ’\ z\ –\ ‘\ ¢\ £\ —\ \ ¤\ ­\ ¥\ ¦\ §\ ¨\ ©\ ª\ «\ ¬\ ®\ °\ ´\ ±\ ²\ µ\ ¶\ ·\ ¸\ »\ ¹\ ¨\ º\ ½\ ¼\ ¿\ «\ À\ Å\ º\ Á\ Ã\ Ä\ Â\ ¨\ ¨\ Æ\ Ç\ È\ ´\ É\ Ä\ Ê\ ¨\ Ä\ Ì\ ¨\ Í\ Î\ Ã\ Ê\ ¨\ ¨\ Ï\ ¨\ Ð\ º\ Ñ\ Ò\ Ó\ Ô\ Î\ ×\ Ö\ Ø\ Ù\ º\ ¯\ ³\ ¾\ Ë\ Õ\ à\ Ú\ Û\ Ü\ Ý\ ¿\ ¿\ ¨\ ¶\ Ä\ á\ º\ ¨\ Þ\ ¶\ â\ ä\ ª\ æ\ Û\ Ú\ ç\ ¨\ è\ Ü\ Ó\ º\ Ä\ é\ ¿\ ê\ Ä\ ¶\ ì\ í\ î\ §\ ¶\ ï\ ´\ ó\ Ü\ ð\ ñ\ Ó\ ò\ ô\ Û\ ÷\ ø\ Ã\ õ\ ù\ ú\ û\ ö\ ü\ Ü\ ý\ «\ ñ\ þ\ ¶\ ß\ ã\ å\ ë\ ã\ Õ\ ÿ\ º\ ¼\ \ ¨\ ¿\ \ Î\ Ú\ ¶\ \ ¿\ Ü\ ª\ Û\ ´\ Ø\ \ ¨\ ó\ Ä\ \ é\ ¼\ §\ Û\ \ ç\ \ ¿\ Ã\ «\ º\ ¨\ \ ª\ Â\ ´\ ¿\ ì\ \ \ ê\ \ ¨\ \ \ \ ª\ ¿\ \ \ \ \ \ \ \ \ \ \"\ ¸\ ¹\ \ ¶\ Ä\ \ \ ¨\ ü\ á\ Ã\ \ Ä\ \ \ \ ¨\ §\ ª\ î\ ç\ ´\ #\ $\ \ %\ ¨\ Ó\ ¨\ \ §\ &\ ª\ Â\ *\ ¶\ '\ (\ í\ \ ¨\ )\ ¨\ ¿\ Ä\ é\ þ\ \ ¶\ ª\ +\ í\ ,\ Ã\ ¨\ -\ .\ /\ 0\ Ã\ º\ ¨\ 2\ 3\ 4\ Î\ (\ 5\ 6\ \ ã\ !\ 1\ 4\ H\ Í\ 7\ Ä\ Ã\ ²\ ¿\ ±\ ¼\ ¹\ ¨\ 8\ 9\ 9\ *\ Ä\ ¨\ :\ þ\ ª\ ;\ \ <\ ±\ ¨\ =\ ¶\ È\ Ä\ ´\ À\ ¨\ §\ í\ >\ ?\ ª\ %\ 9\ ¦\ º\ Ç\ ®\ Ä\ ª\ @\ ¿\ ç\ A\ ¶\ \ Ä\ Ó\ ¶\ Ô\ B\ \ C\ $\ D\ ¿\ í\ ¶\ E\ §\ F\ >\ ´\ G\ ¿\ ³\ ³\ b\ I\ B\ K\ L\ ®\ ;\ ¹\ N\ O\ \ M\ ¦\ ¨\ ¶\ Ó\ R\ Ä\ Q\ T\ ¿\ ç\ )\ \ U\ ¼\ ¶\ S\ «\ ¶\ \ ²\ ¼\ V\ W\ \ X\ Y\ R\ Z\ ¶\ [\ ¦\ Ä\ \\\ ¨\ ]\ ^\ _\ `\ c\ °\ Ä\ ´\ ¶\ E\ \ \ Û\ E\ J\ P\ ¾\ \ a\ i\ Ê\ f\ d\ k\ ü\ e\ g\ h\ Î\ j\ 5\ ç\ l\ ¶\ m\ §\ n\ ¶\ ¨\ R\ \ Ï\ ¶\ ²\ ?\ Ü\ M\ ¼\ ñ\ º\ \ í\ ´\ ¨\ q\ r\ Õ\ o\ \ ¶\ Â\ ¿\ ¶\ s\ Ó\ ¨\ t\ ¨\ ¶\ v\ L\ º\ w\ ¿\ ÿ\ x\ p\ u\ \ €\ y\ z\ {\ |\ }\ ~\ Ä\ Î\ ¶\ ´\ Æ\ Î\ X\ Î\ ó\ \ ¶\ ‚\ ƒ\ ¨\ „\ ”\ ‘\ œ\ ‡\ †\ ˆ\ ¼\ ¿\ ¦\ Ó\ \ ¼\ ¨\ ‰\ ‹\ Š\ Œ\ s\ Î\ ¨\ Ü\ È\ Ä\ Ž\ ¨\ ‚\ §\ À\ \ º\ º\ ó\ Ï\ ’\ ¦\ .\ “\ ¿\ ¨\ ª\ Û\ –\ Ü\ Æ\ \ Ž\ •\ ¨\ §\ ¶\ ¨\ —\ ²\ ˜\ §\ \ ™\ ¼\ š\ c\ ±\ \ Õ\ ë\ Ü\ \ ¶\ ›\ \ Õ\ \ \ \ ª\ Ê\ «\ ž\ ¶\ Ÿ\ >\ \ ¢\ Î\ ²\ \ Ä\ 5\ ¥\ ¡\ À\ ç\ §\ \ ¤\ ¦\ \ Q\ *\ º\ ¨\ §\ 9\ \ ¨\ \ ¼\ ¨\ G\ ©\ –\ «\ ü\ %\ ²\ ¬\ Ü\ ­\ §\ º\ ®\ ¯\ §\ ¦\ í\ °\ £\ ¨\ Ä\ Ö\ ²\ ±\ ³\ ´\ ¶\ ·\ ¸\ ¹\ »\ ¼\ ½\ ¾\ ¿\ À\ Á\ Â\ ½\ µ\ Ê\ Ã\ Å\ Æ\ È\ Ì\ É\ Ë\ Ï\ Í\ Ð\ Ñ\ Ò\ Í\ Ó\ Ô\ Õ\ 5\ Ø\ ×\ º\ Ç\ Î\ Ù\ Û\ Ü\ Þ\ Ú\ Û\ Ý\ ð\ ß\ á\ à\ â\ ã\ ö\ \ \ ä\ æ\ ñ\ é\ ê\ ì\ í\ å\ î\ ï\ ô\ å\ õ\ ÷\ ï\ ó\ ù\ ú\ û\ æ\ ø\ ü\ ý\ þ\ ÿ\ \ \ \ å\ \ ÷\ \ æ\ \ \ \ í\ \ \ \ \ å\ \ \ \ \ å\ \ ê\ \ \ \ \ ò\ ç\ è\ ë\ \ ë\ &\ 6\ @\ J\ !\ \ æ\ \ \ %\ \ \ \ \ \"\ #\ $\ '\ (\ )\ \ *\ û\ +\ ý\ \ ý\ û\ -\ .\ ý\ \ /\ 2\ \ 1\ \ \ 5\ 3\ \ 4\ 7\ 9\ 8\ *\ :\ 8\ ÷\ ?\ \ <\ å\ =\ \ B\ ÷\ E\ \ >\ A\ C\ \ D\ \ F\ G\ I\ =\ H\ *\ K\ 0\ \ ë\ ,\ ë\ ;\ ë\ P\ Z\ c\ h\ m\ a\ 6\ M\ ñ\ O\ \ L\ û\ Q\ ì\ R\ S\ T\ \ U\ W\ \ V\ ÿ\ A\ Y\ X\ å\ W\ 2\ [\ \ ^\ ý\ å\ \ ]\ \ _\ `\ \ b\ d\ \"\ f\ $\ e\ å\ ý\ #\ g\ i\ \ \ j\ k\ \ l\ n\ X\ \ o\ é\ p\ û\ 7\ r\ C\ s\ t\ v\ w\ \\\ N\ ë\ q\ u\ {\ „\ ‰\ •\ ‚\ x\ ê\ y\ A\ 2\ z\ |\ g\ å\ å\ æ\ [\ å\ }\ \ ~\ ý\ \ E\ \ \ ƒ\ ü\ €\ \ †\ ‡\ \ e\ ˆ\ B\ \ I\ û\ Š\ ~\ ‹\ Œ\ \ \ \ A\ Ž\ M\ û\ \ \ ’\ ñ\ ê\ ‘\ \ ê\ “\ ü\ ï\ 2\ û\ ü\ é\ Û\ –\ ý\ þ\ û\ \ ë\ ”\ ž\ —\ ¢\ «\ ¯\ ±\ ´\ œ\ \ ˜\ ™\ \ å\ 8\ ø\ š\ \ ›\ ›\ Ÿ\ B\ \ \ å\ y\ ¡\ 2\ L\ I\ £\ 4\ ¤\ ¥\ ý\ \ ¦\ §\ [\ 2\ \ '\ \ ©\ ©\ \ \ ª\ \ \ \ i\ 8\ j\ ˆ\ ­\ ^\ ®\ þ\ °\ \ \ I\ ²\ å\ ³\ 2\ ÿ\ û\ ¬\ ë\ ;\ ¨\ ç\ ”\ ¶\ û\ µ\ \ õ\ ·\ e\ [\ ¸\ û\ ¹\ å\ \ [\ \ ~\ º\ »\ e\ Å\ Ñ\ Ä\ ¾\ Ç\ Á\ Â\ Î\ Õ\ ¼\ 2\ \ ½\ ¿\ æ\ À\ \ ˆ\ \ s\ \ ý\ ¸\ ¸\ 2\ o\ I\ \ Æ\ È\ í\ \ 2\ ý\ É\ Ê\ 2\ ÿ\ \ Ë\ 7\ å\ û\ Ì\ \ 2\ Í\ §\ å\ Ð\ À\ Ò\ 7\ ¿\ Ï\ º\ R\ û\ \ È\ Ô\ 2\ Ö\ \ e\ ÷\ \ e\ þ\ ×\ Ã\ ë\ Ó\ â\ é\ Ø\ W\ Ù\ 2\ Û\ å\ Ü\ Ý\ \ ¸\ \ ‹\ Þ\ ÷\ ¦\ ›\ Ú\ ý\ \ \ #\ W\ [\ ß\ û\ ì\ ÷\ à\ \ \ ¿\ 8\ O\ ã\ ê\ ä\ á\ 2\ ‘\ Û\ \ ^\ å\ -\ æ\ ç\ \ ÷\ 3\ \ \ û\ è\ \ 2\ '\ ›\ ê\ b\ R\ ²\ í\ C\ \ û\ 2\ \ ë\ ï\ í\ ó\ û\ 7\ ì\ I\ ²\ \ `\ \ ð\ ï\ ê\ ›\ ñ\ î\ C\ \ 2\ '\ ò\ $\ \ ï\ ì\ \ 2\ ›\ \ s\ ý\ ô\ ý\ æ\ ý\ ÷\ ~\ ù\ ›\ ½\ ö\ Ÿ\ 2\ \ ¸\ À\ ì\ s\ æ\ å\ \ é\ ø\ ›\ Ú\ \ ý\ \ ¦\ ù\ \ ê\ \ “\ ú\ 2\ ö\ \ \ õ\ ”\ ü\ \ \ š\ %\ \ þ\ \ ‘\ A\ û\ 2\ C\ ›\ ý\ ÿ\ \ \ \ \ û\ ^\ ì\ 2\ \ -\ \ ý\ 2\ \ B\ \ ~\ Í\ å\ \ \ \ û\ \ Œ\ \ \ \ “\ \ \ \ \ \ å\ 2\ û\ *\ 2\ ê\ =\ C\ \ ý\ \ ý\ ;\ \ \ \ /\ ,\ .\ \ $\ 1\ 6\ \ \ %\ \ \ 8\ \ #\ \ \ !\ #\ 2\ \ \ /\ û\ 2\ &\ å\ ÿ\ T\ ý\ \ ý\ þ\ \"\ \ ÷\ \ \ \ '\ \ 2\ ý\ û\ 2\ \ \ [\ þ\ \ \ 8\ 2\ (\ \ \ )\ T\ *\ +\ ê\ 0\ ñ\ û\ 2\ ‘\ è\ \ ê\ ý\ 3\ \ 5\ 7\ 2\ ë\ è\ @\ 8\ ^\ ÷\ \ R\ è\ \ 2\ \ \ s\ \ -\ \ \ ð\ û\ \ å\ 2\ 9\ \ û\ :\ 4\ \ A\ Ÿ\ ;\ 8\ <\ ê\ C\ æ\ ?\ \ å\ I\ 0\ \ ›\ \ \ B\ \ 3\ å\ =\ ý\ ö\ å\ ¸\ E\ *\ F\ ý\ \ ú\ \ [\ G\ û\ I\ ê\ \ J\ å\ ì\ K\ L\ =\ >\ D\ C\ H\ ‰\ U\ X\ ]\ `\ m\ b\ M\ N\ P\ ñ\ û\ \ b\ ì\ Q\ û\ \ 3\ '\ \ 9\ T\ 2\ 2\ e\ #\ R\ “\ B\ S\ ý\ V\ W\ y\ A\ \ \ =\ \ û\ R\ I\ A\ 2\ “\ *\ Y\ ^\ \ ý\ 8\ Ü\ Z\ =\ \ \\\ 8\ æ\ I\ ^\ \ _\ ‘\ \ ð\ û\ \ -\ c\ I\ a\ \ \ +\ \ O\ \ ç\ \ \ [\ g\ `\ k\ m\ m\ q\ s\ \ =\ û\ R\ d\ e\ \ ¸\ *\ ç\ \ Ô\ \"\ š\ \ 2\ \ =\ \ c\ È\ ô\ -\ I\ ý\ û\ +\ þ\ f\ h\ \ \ º\ j\ \ \ I\ \ æ\ l\ b\ R\ \ ý\ \ \ I\ n\ n\ #\ 8\ \ o\ p\ r\ Q\ \ V\ \ \ t\ I\ u\ ~\ *\ #\ i\ ë\ ”\ 4\ €\ ƒ\ y\ 8\ æ\ '\ v\ B\ ^\ '\ ‘\ ˜\ \ ô\ \ å\ [\ \ Œ\ ÷\ 2\ û\ ×\ \ M\ \ \ /\ \ \ ø\ ²\ w\ x\ Y\ 2\ ê\ \ å\ z\ R\ {\ ~\ |\ \ \ -\ \ ½\ 2\ ¸\ }\ n\ ¸\ ~\ ¦\ Q\ \ c\ Œ\ o\ \ A\ \ ê\ i\ ‚\ \ Q\ '\ ý\ ç\ „\ Ä\ Ç\ §\ †\ ‡\ ˆ\ Š\ Ž\ \ \ Ž\ ’\ ‰\ ‹\ \ Ó\ ”\ •\ –\ ×\ ‘\ ˜\ ™\ š\ ¸\ ›\ ‹\ œ\ \ ž\ ‹\ ›\ Ë\ Ô\ •\ Ÿ\ ¢\ ×\ £\ ¤\ ¥\ »\ ¦\ ¨\ ª\ ¬\ «\ »\ ­\ ®\ ¯\ °\ ±\ ²\ ³\ ´\ µ\ ¶\ ·\ ¸\ ¹\ º\ »\ ¼\ ½\ ¾\ ¿\ À\ »\ Ó\ ›\ Á\ ¯\ Ã\ Â\ Ø\ Å\ Æ\ È\ À\ É\ Ò\ Ë\ ·\ ¡\ Œ\ “\ º\ —\ —\ ©\ Ê\ Ì\ º\ Ó\ Í\ Î\ Ï\ Ð\ Ñ\ Ë\ Ó\ Ô\ Ò\ ·\ Õ\ Ï\ Ö\ ×\ Ø\ Ú\ Û\ Ü\ Ý\ Þ\ á\ ›\ ß\ à\ ¸\ â\ ã\ ä\ ½\ ×\ É\ Ó\ ‘\ æ\ ç\ è\ é\ ê\ ë\ µ\ ¤\ $\ ‹\ Ù\ å\ —\ ©\ \ ü\ ì\ ó\ í\ î\ ï\ ð\ ñ\ ò\ õ\ ó\ ô\ ÷\ ù\ ö\ ø\ û\ û\ ì\ ú\ ÿ\ \ î\ þ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ý\ 9\ \ $\ \ \ \ \ \ \ \ ñ\ \ 5\ V\ æ\ \ \ \ ­\ ý\ !\ ›\ 3\ \"\ \ \ (\ #\ %\ &\ '\ )\ *\ +\ -\ \ .\ /\ \ 0\ 1\ \ \ \ 4\ \ ,\ :\ 2\ ;\ <\ >\ =\ ?\ A\ @\ B\ C\ D\ C\ E\ F\ G\ H\ I\ K\ T\ N\ J\ L\ Y\ S\ M\ O\ P\ R\ U\ X\ V\ M\ Q\ W\ [\ R\ Z\ ]\ ^\ _\ a\ b\ c\ d\ f\ e\ j\ g\ h\ k\ l\ o\ a\ c\ n\ p\ W\ ]\ r\ s\ t\ u\ v\ R\ q\ c\ y\ z\ n\ _\ {\ n\ y\ |\ n\ \ €\ \ `\ ‚\ ƒ\ „\ y\ †\ R\ \\\ i\ m\ w\ x\ }\ ~\ i\ ‡\ ‰\ ¨\ ”\ ¯\ ´\ ¾\ ˆ\ Š\ ‹\ Œ\ ƒ\ \ “\ Ž\ \ \ ‘\ R\ ’\ •\ —\ ˜\ u\ ™\ š\ ›\ œ\ \ ž\ ¡\ e\ Š\ O\ r\ R\ ¢\ d\ ¤\ Š\ £\ §\ ¦\ ©\ ª\ ž\ «\ ¬\ ‘\ ­\ ®\ u\ °\ Q\ ±\ ²\ ®\ ³\ µ\ p\ n\ ·\ u\ ¸\ ¹\ º\ »\ ¼\ ½\ ¿\ –\ Ÿ\ ¥\ ¶\ Á\ Ç\ É\ ã\ ê\ Ó\ â\ \ Š\ À\ Ã\ Ä\ \ ©\ a\ Å\ p\ Æ\ d\ È\ —\ ª\ Ê\ º\ R\ —\ ^\ Ë\ Ì\ Í\ Î\ f\ c\ \ Ï\ W\ Ð\ Ñ\ Ò\ g\ œ\ R\ ×\ •\ Õ\ n\ Â\ Ù\ Ö\ Q\ u\ Ø\ Ú\ Ö\ Û\ Ü\ c\ Þ\ ß\ à\ £\ ä\ å\ é\ ç\ ì\ £\ t\ ¶\ ë\ í\ î\ ¥\ Ô\ Ý\ ¥\ á\ æ\ è\ ù\ ê\ \ ô\ û\ ü\ \ g\ P\ ï\ ð\ V\ ñ\ ò\ ó\ b\ õ\ ö\ ÷\ _\ a\ ì\ ø\ y\ W\ p\ ú\ V\ u\ ø\ R\ Ø\ þ\ V\ ÿ\ [\ S\ Z\ •\ n\ ·\ \ \ y\ Ö\ \ u\ \ \ ¢\ n\ c\ s\ \ ’\ ý\ \ Q\ [\ r\ s\ Q\ Þ\ m\ \ \ *\ -\ \ \ g\ \ a\ \ \ Z\ Ž\ “\ p\ \ R\ ©\ \ Ø\ \ \ Î\ y\ \ ž\ u\ ¢\ \ \ •\ \ \ ²\ u\ \ ž\ \ \ Ú\ !\ \"\ #\ y\ $\ Q\ \ &\ %\ '\ a\ s\ S\ d\ )\ ±\ \ +\ ,\ S\ /\ %\ \ .\ V\ \ s\ 0\ Ÿ\ (\ è\ 3\ K\ 2\ N\ u\ d\ ì\ r\ Æ\ R\ —\ “\ u\ 4\ 5\ 6\ ž\ u\ Ú\ Q\ 7\ u\ 8\ :\ Ö\ 9\ •\ ;\ \ ž\ 8\ =\ „\ \ R\ >\ ¢\ y\ W\ Q\ V\ \ @\ O\ n\ „\ A\ Z\ B\ C\ s\ %\ ö\ D\ E\ R\ F\ G\ J\ H\ I\ 1\ <\ M\ L\ ž\ N\ O\ c\ {\ ?\ è\ è\ P\ U\ X\ c\ g\ ´\ Q\ R\ ^\ Ø\ Æ\ Í\ W\ \ V\ ³\ ì\ ž\ Y\ Z\ [\ R\ n\ \\\ V\ f\ ]\ ^\ b\ _\ \ `\ b\ n\ V\ s\ e\ ø\ d\ d\ ©\ f\ \ d\ Q\ Æ\ h\ y\ j\ Q\ l\ m\ n\ o\ £\ ž\ Í\ p\ ±\ r\ ¦\ S\ G\ s\ ƒ\ T\ è\ è\ a\ i\ k\ q\ „\ )\ t\ y\ h\ \ y\ \ u\ u\ ì\ c\ V\ v\ '\ w\ n\ a\ x\ ž\ y\ ;\ f\ y\ Ž\ Š\ q\ ž\ {\ y\ n\ |\ u\ }\ ~\ \ €\ \ \ F\ ^\ ²\ y\ n\ 5\ y\ N\ ð\ t\ \ ƒ\ ò\ Ø\ ˆ\ ‡\ /\ V\ ‰\ s\ Š\ Ø\ z\ ‹\ I\ Œ\ y\ \ n\ †\ \ ‚\ •\ ™\ \ \ \ \ R\ ‘\ w\ ’\ W\ X\ a\ —\ \ –\ N\ –\ n\ R\ Æ\ ˜\ Q\ t\ g\ ›\ y\ t\ œ\ [\ g\ Ÿ\ Z\ g\ ž\ e\ ¡\ ¡\ p\ c\ Ø\ ž\ ¢\ £\ ¤\ ¥\ ¦\ ª\ \ ©\ ’\ R\ ž\ «\ #\ Ž\ :\ ¬\ ­\ “\ ”\ š\ S\ §\ ¨\ ½\ È\ ®\ ¯\ °\ 5\ u\ R\ y\ ž\ œ\ ±\ ì\ u\ V\ ³\ v\ n\ ’\ ²\ t\ U\ y\ ž\ Q\ ´\ Ú\ µ\ P\ n\ y\ 5\ n\ n\ \ v\ g\ /\ ¶\ ·\ R\ ’\ ¹\ º\ »\ ¼\ p\ °\ u\ Z\ ’\ ¾\ À\ V\ Á\ /\ ’\ ¥\ Â\ Ä\ Å\ /\ Æ\ Ç\ n\ ©\ è\ ¸\ è\ Ã\ ¿\ è\ Ó\ ×\ y\ É\ Z\ v\ y\ Ê\ f\ n\ n\ y\ 5\ Ë\ Ì\ „\ t\ R\ Z\ e\ Í\ £\ \ Â\ \ ]\ c\ P\ ’\ q\ t\ Ï\ ’\ \ R\ r\ ’\ \ R\ !\ ’\ n\ j\ ˜\ Ò\ Í\ Á\ Õ\ Ö\ Ø\ r\ ¼\ n\ Ù\ Ü\ î\ Ý\ Û\ ž\ h\ Þ\ :\ y\ ß\ D\ Ð\ Î\ i\ Ñ\ š\ Ô\ Î\ Ú\ â\ ë\ î\ ç\ è\ à\ y\ á\ \ q\ ‹\ ®\ Ÿ\ ã\ N\ Š\ \ œ\ å\ Ñ\ æ\ V\ L\ Î\ \ é\ ê\ ž\ u\ Ø\ W\ S\ ª\ Z\ \ –\ ì\ í\ ä\ ¶\ ”\ ï\ ô\ û\ \ ½\ \ d\ R\ ð\ ñ\ y\ u\ ò\ ’\ J\ h\ {\ Ÿ\ ®\ U\ V\ n\ u\ n\ \ •\ U\ u\ W\ ø\ y\ ú\ \ n\ ù\ Ø\ ü\ ²\ ¾\ \ ý\ ’\ þ\ ^\ €\ ´\ ú\ ÿ\ r\ \ \ \ \ \ {\ \ n\ ÷\ S\ ó\ õ\ ö\ è\ c\ \ û\ \ $\ \ \ È\ \ \ \ \ u\ n\ R\ v\ V\ \ n\ \ \ Z\ ì\ u\ ç\ g\ \ ^\ é\ G\ y\ n\ W\ \ \ \ „\ \ \ \ \"\ ±\ J\ l\ %\ G\ '\ /\ \ s\ &\ y\ u\ *\ (\ ¢\ R\ )\ +\ ±\ \ ƒ\ Í\ ¬\ s\ \ \ \ !\ ,\ #\ 0\ 2\ C\ ž\ [\ u\ \ Y\ ú\ .\ R\ /\ 1\ u\ R\ Z\ [\ d\ o\ u\ y\ *\ ;\ ¢\ q\ Æ\ 4\ [\ 5\ 6\ /\ ²\ n\ y\ u\ 8\ :\ ;\ <\ y\ u\ =\ >\ ˆ\ {\ ]\ Z\ 5\ ?\ @\ A\ B\ g\ Æ\ R\ n\ \ D\ E\ F\ s\ V\ H\ Þ\ ’\ 3\ 7\ 9\ 2\ W\ K\ V\ G\ g\ 8\ H\ n\ R\ 8\ N\ \ w\ V\ I\ R\ u\ [\ L\ n\ M\ N\ O\ ²\ ƒ\ +\ ž\ \ [\ —\ o\ P\ \ b\ Q\ £\ R\ \ L\ ’\ ž\ S\ ì\ T\ (\ Ú\ l\ Æ\ X\ Z\ ¢\ '\ u\ \ [\ \\\ c\ q\ D\ ž\ ¬\ ]\ \ J\ è\ ¶\ U\ š\ è\ Y\ 3\ b\ _\ a\ ^\ \ [\ ž\ `\ ‹\ a\ \ è\ k\ n\ t\ v\ c\ d\ V\ R\ ƒ\ \ e\ \ o\ Æ\ Z\ f\ g\ V\ ¢\ h\ U\ P\ 4\ ž\ j\ l\ d\ Æ\ y\ f\ ì\ m\ R\ o\ D\ S\ p\ –\ \ s\ q\ x\ u\ Ú\ w\ y\ c\ u\ z\ y\ (\ q\ y\ }\ h\ {\ R\ ~\ r\ \ €\ \ {\ s\ ¢\ \ ó\ ¶\ i\ q\ r\ |\ ‹\ œ\ –\ y\ f\ t\ O\ ‚\ \ R\ „\ ;\ \ \ †\ ‡\ c\ “\ ö\ P\ ˆ\ \ [\ ‰\ g\ >\ g\ Œ\ g\ r\ ø\ –\ d\ g\ \ Ž\ I\ y\ y\ ’\ Ž\ \ 5\ ‚\ ”\ \ ‘\ •\ —\ ±\ (\ ƒ\ ˜\ š\ ¢\ f\ ›\ ™\ Î\ R\ Š\ “\ Ÿ\ ¡\ £\ ¦\ ¤\ ©\ \ ­\ °\ «\ t\ u\ \ Ú\ ƒ\ ;\ ž\ n\ J\ ©\ ¢\ J\ •\ d\ ã\ ²\ \ ¥\ ø\ \ §\ ·\ \ u\ [\ ¨\ l\ ð\ ª\ w\ ò\ Ý\ \ V\ \ ¬\ v\ (\ ¨\ p\ d\ l\ ø\ a\ ¨\ (\ ±\ \ {\ ²\ u\ ¢\ \ ö\ ¢\ s\ ·\ ;\ £\ ´\ µ\ ·\ ¸\ R\ g\ ;\ ¹\ ¥\ ¢\ |\ q\ ®\ ¯\ º\ ³\ ¾\ À\ ¶\ ¼\ Ä\ Ë\ Ñ\ t\ ž\ y\ u\ ;\ V\ q\ _\ ž\ ·\ »\ Ó\ G\ N\ ½\ —\ ¿\ ’\ y\ W\ (\ ^\ Ë\ y\ >\ \ Â\ d\ Á\ Ã\ Å\ Æ\ ž\ Ç\ y\ (\ \ c\ ^\ 5\ È\ É\ Ê\ f\ V\ Ì\ u\ y\ T\ Í\ V\ ƒ\ S\ Î\ Ï\ Ð\ Ç\ Ø\ Ò\ Ô\ Ô\ Ñ\ Õ\ 2\ ×\ ‹\ í\ û\ Ü\ ³\ Š\ Ö\ Æ\ w\ ˜\ Ù\ Ú\ Ø\ Û\ ;\ Þ\ R\ n\ ß\ \ f\ à\ á\ â\ ä\ æ\ å\ ç\ è\ g\ Ý\ c\ ê\ V\ ò\ y\ n\ ƒ\ ì\ ¢\ y\ y\ [\ ì\ ë\ Q\ î\ ©\ ï\ ð\ ò\ ñ\ ó\ Ý\ ô\ \ f\ õ\ ö\ ÷\ ø\ ù\ ú\ j\ Ï\ ã\ é\ \ è\ \ \ \ þ\ \ \ y\ \ a\ f\ ý\ ÿ\ \ ½\ \ (\ \ \ 8\ ›\ \ I\ ’\ [\ d\ :\ \ ¼\ ^\ n\ \ S\ ò\ n\ X\ \ (\ \ ˜\ \ \ ½\ \ \ ü\ V\ ì\ \ ’\ ž\ \ \ \ “\ )\ \ G\ Ô\ \ 3\ \ q\ T\ y\ u\ \ \"\ #\ %\ Œ\ ^\ Á\ \ ’\ \ L\ u\ \ Æ\ Ì\ Æ\ Š\ !\ ©\ Ñ\ $\ ø\ V\ ¢\ g\ &\ '\ )\ Z\ (\ c\ *\ ¶\ s\ ^\ o\ Z\ ‰\ +\ \ 2\ 3\ º\ >\ ,\ g\ -\ .\ /\ d\ E\ g\ 0\ v\ ¨\ ©\ 5\ Q\ 4\ Ð\ Ú\ ò\ >\ 6\ :\ 7\ ª\ ò\ \ \ 9\ ²\ Ë\ Â\ \ \ Û\ ;\ ì\ ž\ ±\ <\ =\ ?\ Ï\ >\ ž\ Ò\ v\ @\ B\ õ\ ¿\ C\ V\ D\ F\ ì\ 9\ m\ ¦\ G\ 1\ è\ 8\ \ :\ A\ ™\ N\ Ó\ U\ [\ Ê\ H\ ¡\ u\ e\ \ \ J\ a\ K\ ì\ \ L\ ž\ ã\ ¿\ (\ u\ '\ Z\ c\ ì\ O\ ¿\ ª\ U\ P\ n\ (\ \ Z\ R\ ¥\ S\ ø\ T\ –\ s\ R\ \ V\ W\ X\ R\ Y\ Z\ >\ ½\ Ø\ ±\ ]\ _\ I\ ^\ `\ a\ #\ Q\ y\ g\ b\ m\ M\ Q\ \\\ f\ Ó\ k\ s\ |\ t\ Œ\ Ÿ\ c\ g\ g\ \ e\ I\ n\ 8\ V\ t\ c\ Î\ i\ T\ j\ ½\ Æ\ m\ y\ l\ R\ ²\ ò\ V\ 5\ ›\ 5\ \ p\ #\ q\ ¿\ r\ ò\ —\ J\ ¢\ [\ u\ Ž\ ±\ v\ w\ Á\ h\ r\ p\ \ D\ x\ y\ z\ ¢\ õ\ d\ ä\ n\ o\ ¶\ ¶\ {\ Ó\ }\ _\ „\ Ó\ ‰\ Š\ “\ \ ž\ ~\ \ O\ f\ ž\ ƒ\ O\ \ \ y\ ‚\ \ (\ ƒ\ p\ Ÿ\ r\ \ †\ I\ ‡\ Ú\ d\ ø\ f\ ÿ\ ‹\ Œ\ ú\ B\ c\ d\ ž\ V\ H\ :\ !\ ’\ Ý\ V\ \ \ 4\ ¢\ ‘\ ‹\ )\ F\ ’\ [\ ‡\ 5\ Ö\ \ Î\ ”\ ˆ\ –\ n\ €\ r\ q\ Š\ Ž\ •\ —\ ™\ S\ l\ ¢\ d\ ˜\ Æ\ u\ J\ \ ;\ —\ e\ y\ u\ p\ š\ ›\ œ\ ª\ ž\ ¤\ «\ ¬\ ³\ ¦\ ¨\ §\ Æ\ \ \ ¢\ Æ\ a\ n\ –\ ©\ Ÿ\ *\ \ ¡\ (\ g\ a\ ¢\ £\ v\ \ ¥\ \ v\ e\ Q\ >\ f\ ©\ ²\ ²\ b\ ª\ e\ &\ X\ O\ ò\ Æ\ ­\ {\ V\ y\ Ö\ ¯\ °\ ±\ s\ ³\ ¥\ g\ Ú\ ²\ ´\ i\ Ú\ ²\ ©\ V\ µ\ d\ ¥\ N\ 9\ è\ è\ x\ 3\ q\ ®\ ¿\ º\ ¿\ È\ Å\ P\ V\ ¶\ _\ n\ ·\ n\ Ú\ ¸\ ®\ Ç\ ì\ ©\ \ £\ ì\ ’\ ¹\ ¯\ ì\ ’\ ù\ (\ Ø\ Z\ d\ »\ p\ ¼\ u\ y\ ž\ /\ f\ ½\ \ )\ ¾\ (\ u\ r\ [\ R\ Ø\ Ú\ À\ b\ Á\ ¢\ Á\ y\ —\ u\ Ã\ Â\ \ Å\ ò\ \ y\ ž\ h\ v\ Ê\ ¢\ Q\ R\ Ë\ è\ Ä\ É\ |\ Æ\ Ì\ ½\ k\ Ô\ Ø\ Š\ \ ì\ :\ ð\ R\ n\ ñ\ u\ y\ n\ u\ Í\ \ u\ Î\ n\ S\ Ï\ Á\ W\ R\ ë\ V\ (\ Ñ\ ‰\ Ò\ n\ Ó\ L\ i\ n\ s\ y\ O\ ’\ S\ /\ l\ Þ\ Õ\ /\ V\ .\ \ /\ Á\ Ö\ ž\ (\ Ù\ ¬\ /\ F\ ú\ Ú\ ø\ n\ G\ j\ õ\ Ð\ Î\ ×\ Ü\ á\ â\ ê\ é\ ï\ ò\ Ø\ Û\ ¢\ ^\ Z\ ž\ R\ t\ o\ V\ &\ Á\ u\ à\ n\ ß\ R\ \ Å\ \ ã\ w\ Ø\ c\ å\ 4\ ­\ æ\ :\ è\ ç\ \ e\ ¨\ £\ &\ ê\ V\ ð\ g\ H\ ë\ [\ Ä\ Ë\ Þ\ í\ v\ n\ /\ ™\ î\ [\ e\ ï\ V\ ¢\ Ý\ Ý\ F\ I\ Æ\ ä\ S\ 8\ ó\ ì\ ñ\ ü\ ÷\ þ\ \ g\ ±\ ·\ E\ !\ n\ õ\ -\ ¥\ m\ g\ ù\ ø\ ’\ ú\ g\ y\ V\ ì\ û\ \ u\ ý\ Ñ\ ð\ ÿ\ ž\ ã\ \ \ u\ —\ \ s\ R\ u\ t\ u\ \ \ ô\ ö\ –\ \ ¯\ \ \ \ \ \ U\ \ R\ \ \ Î\ ‹\ (\ a\ u\ „\ R\ (\ r\ Ý\ \ ’\ Ì\ Q\ \ f\ V\ *\ ’\ q\ œ\ ø\ \ å\ (\ ·\ Q\ Â\ \ q\ u\ –\ ò\ \ Ú\ \ V\ ¯\ ²\ (\ p\ \ {\ u\ d\ ž\ \ \ ¨\ ì\ \ ¶\ 3\ q\ ‚\ è\ \ ¶\ \ \ \"\ &\ %\ y\ ˆ\ n\ \ n\ Æ\ d\ R\ Á\ \ \ \ c\ !\ c\ \ V\ t\ Æ\ #\ ò\ u\ f\ Î\ „\ n\ d\ $\ L\ '\ u\ (\ ø\ ª\ ]\ c\ ­\ q\ ž\ Ð\ ;\ )\ n\ 9\ *\ +\ ,\ f\ I\ :\ —\ 0\ R\ -\ \ 1\ /\ \ 2\ E\ ì\ è\ è\ .\ 3\ 4\ 5\ 8\ :\ =\ U\ ò\ ‹\ a\ J\ R\ y\ \ Š\ W\ ì\ g\ ƒ\ ì\ 2\ y\ (\ y\ —\ [\ ^\ ÿ\ Q\ S\ —\ g\ î\ 9\ 7\ U\ ž\ \ J\ L\ H\ y\ £\ ’\ y\ Ú\ ;\ >\ 9\ <\ A\ X\ ê\ i\ À\ D\ V\ ¢\ À\ ú\ Ð\ ²\ Ú\ B\ D\ R\ £\ E\ š\ 6\ >\ q\ ?\ @\ k\ C\ F\ H\ Y\ Š\ Q\ G\ a\ d\ Š\ Z\ ©\ \ v\ a\ J\ ž\ ;\ y\ R\ \ I\ \ ·\ K\ ·\ J\ M\ R\ \ N\ L\ a\ \ \ Q\ O\ n\ n\ (\ ƒ\ ¦\ ¥\ R\ \ S\ y\ n\ Ú\ \ ò\ \"\ Q\ O\ ¢\ ’\ Á\ v\ n\ €\ \ V\ D\ \ X\ ·\ R\ Y\ P\ T\ r\ U\ W\ [\ a\ c\ e\ f\ h\ L\ ƒ\ I\ Z\ ž\ \\\ Š\ Æ\ V\ M\ y\ Æ\ ²\ ]\ _\ [\ `\ 8\ d\ Ã\ Z\ 8\ Ã\ \ b\ –\ v\ \ d\ ™\ ‡\ ¡\ _\ /\ ¿\ \ s\ ì\ d\ Q\ S\ ú\ n\ ­\ ²\ p\ g\ ;\ i\ V\ n\ Ò\ Ê\ ’\ \ @\ å\ ƒ\ j\ k\ \ Z\ î\ O\ ^\ 3\ Ô\ n\ u\ z\ R\ m\ \ Ó\ o\ u\ \ d\ Ú\ r\ I\ Z\ s\ \ 7\ t\ ’\ Æ\ v\ –\ V\ ò\ Ø\ ;\ w\ b\ \ a\ ž\ [\ M\ b\ V\ \ \ ì\ y\ \ y\ y\ ž\ ½\ £\ \ G\ }\ V\ ú\ V\ ¢\ ~\ u\ €\ l\ i\ \ n\ q\ p\ ä\ x\ è\ {\ |\ \ O\ d\ \ n\ ì\ b\ À\ ò\ ž\ e\ N\ Ú\ V\ y\ o\ V\ \ ‚\ ƒ\ q\ g\ \ •\ \ „\ _\ u\ ½\ \ ±\ y\ \ 2\ Ý\ À\ n\ †\ ‡\ \ ˆ\ ‰\ v\ ¥\ \ f\ (\ ;\ G\ y\ Ý\ \ ±\ \ Š\ ž\ Õ\ ·\ q\ ò\ ¢\ ‹\ m\ Ž\ n\ \ \ ‘\ “\ ”\ \ ’\ \ y\ *\ Š\ ·\ @\ [\ \\\ \\\ A\ \ À\ \ –\ \ —\ ˜\ ¢\ I\ ®\ 3\ è\ ž\ Œ\ ¡\ š\ ¨\ ¬\ ™\ y\ Ú\ p\ N\ œ\ n\ \ Ñ\ Ö\ f\ ¢\ d\ n\ ž\ ÿ\ Š\ ¢\ &\ ¤\ \ \ @\ #\ ô\ p\ À\ ¦\ ð\ ª\ °\ ±\ c\ Ö\ µ\ ;\ ~\ ¶\ u\ ·\ \ ›\ s\ ¸\ ì\ a\ ž\ ¹\ Ÿ\ ¢\ (\ 4\ ©\ §\ ­\ «\ ¯\ ®\ \ »\ (\ G\ ²\ £\ ¥\ ³\ ´\ º\ À\ Õ\ Ð\ Ä\ Ù\ ¼\ u\ ½\ ¾\ ¿\ Ü\ Â\ Á\ &\ ì\ \ '\ \ \ V\ O\ Å\ ’\ ò\ þ\ a\ ì\ y\ d\ )\ Æ\ \ B\ ô\ Î\ Ç\ p\ /\ w\ 8\ n\ ;\ D\ Ê\ Ë\ B\ Ì\ 5\ F\ Ñ\ Ò\ \ Ó\ Ô\ *\ ­\ ²\ q\ Ã\ Ö\ f\ ×\ Ú\ Ý\ E\ s\ Û\ Í\ q\ è\ è\ Ï\ Ø\ Î\ È\ 9\ 7\ É\ à\ Ÿ\ \ y\ a\ y\ Þ\ ¶\ á\ (\ ’\ \ p\ ß\ è\ ã\ æ\ ì\ í\ ñ\ â\ \ g\ 4\ Ð\ å\ ç\ v\ _\ u\ Š\ —\ R\ Á\ \ ”\ ž\ ú\ é\ a\ f\ W\ ê\ L\ t\ V\ v\ À\ ©\ y\ Þ\ ì\ )\ ë\ ž\ r\ V\ ³\ R\ î\ ï\ \ Ý\ ª\ (\ \ B\ ð\ ò\ ±\ ž\ ó\ Î\ Ð\ ô\ ä\ Ø\ |\ |\ \ ú\ k\ \ ¢\ s\ t\ õ\ ò\ Î\ R\ Ê\ ö\ N\ ÷\ y\ ø\ a\ ‘\ d\ R\ Ë\ v\ ž\ ’\ #\ V\ f\ Ñ\ \ ù\ 7\ {\ \ ü\ r\ ½\ p\ Ã\ \ Ò\ À\ \ \ ì\ {\ ›\ y\ ù\ À\ ^\ £\ t\ †\ 9\ þ\ ÿ\ V\ p\ \ q\ ·\ Æ\ \ ^\ ø\ £\ \ \ E\ \ ž\ \ {\ ý\ û\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \"\ #\ !\ $\ \ %\ &\ '\ (\ \ +\ )\ ,\ *\ -\ )\ /\ .\ *\ 0\ 1\ 2\ 3\ 7\ 6\ Y\ 8\ 5\ 4\ 9\ ;\ <\ =\ :\ T\ W\ X\ >\ @\ ?\ A\ B\ C\ U\ V\ Z\ p\ €\ u\ H\ D\ E\ G\ I\ K\ J\ L\ M\ N\ O\ P\ Q\ R\ I\ R\ T\ V\ W\ Y\ R\ [\ ]\ I\ a\ _\ e\ f\ I\ Q\ [\ R\ I\ h\ X\ j\ e\ i\ [\ P\ k\ f\ I\ l\ m\ H\ `\ n\ o\ q\ r\ v\ P\ w\ x\ y\ z\ {\ I\ b\ |\ n\ I\ x\ }\ f\ `\ R\ ~\ e\ I\ \ [\ \ ƒ\ „\ t\ I\ s\ F\ ‚\ d\ g\ ›\ Z\ ™\ ‡\ ˆ\ ‰\ I\ R\ |\ H\ I\ ‹\ Œ\ \ I\ ‰\ I\ S\ U\ ‰\ Q\ X\ \\\ \ ^\ I\ `\ c\ \ [\ \ ‘\ w\ “\ n\ ”\ •\ ’\ ]\ –\ c\ —\ š\ œ\ \ G\ †\ ~\ Ÿ\ I\ ž\ Š\ ¡\ ¢\ ‹\ I\ H\ [\ Ž\ l\ £\ ¤\ I\ ¥\ ˜\ S\ ¦\ §\ ¨\ n\ ©\ [\ I\ «\ ¬\ ­\ ®\ ^\ ¯\ ]\ Ž\ ª\ ¹\ °\ ±\ m\ ²\ I\ ´\ e\ [\ ´\ µ\ ¶\ ·\ ¦\ I\ }\ º\ ³\ ¸\ ½\ Ê\ Ø\ â\ ð\ ü\ Ú\ »\ ¼\ ¾\ Á\ ¿\ Å\ À\ Ã\ Ä\ Æ\ É\ Â\ Ç\ È\ Ì\ Ë\ Î\ Í\ Ï\ Ñ\ Ð\ Ò\ Ô\ Ñ\ Ó\ Ö\ Õ\ ×\ Â\ Ð\ Ù\ Û\ Ü\ Ý\ Ó\ Þ\ ß\ à\ á\ ã\ Î\ å\ ç\ è\ æ\ é\ ì\ ê\ í\ î\ ï\ ñ\ ó\ ô\ õ\ ö\ ÷\ Å\ è\ ø\ ù\ û\ ý\ Ä\ þ\ ä\ ë\ ò\ \ ú\ \ +\ 9\ \ >\ #\ 0\ ÿ\ \ \ \ \ \ \ Î\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ !\ %\ \ \"\ &\ Ò\ $\ è\ '\ (\ )\ *\ Æ\ \ Ñ\ ,\ .\ \ \ 1\ 2\ \ 3\ 4\ 5\ 6\ 7\ 8\ \ ;\ <\ Ë\ Ñ\ =\ ?\ @\ \ \ /\ A\ :\ L\ >\ V\ Y\ a\ m\ J\ i\ \ D\ B\ C\ E\ F\ G\ H\ I\ K\ \ Æ\ M\ ó\ Þ\ N\ O\ Ä\ P\ å\ \ R\ T\ U\ W\ 8\ S\ X\ H\ Z\ [\ \\\ ^\ `\ õ\ _\ b\ c\ Î\ d\ 4\ e\ g\ Í\ f\ l\ h\ Ñ\ k\ n\ ã\ p\ Ä\ o\ Ð\ r\ f\ s\ H\ q\ t\ Â\ u\ v\ Q\ :\ ]\ j\ |\ \ –\ š\ Ð\ \ w\ x\ Ý\ Í\ y\ ù\ \ {\ ó\ Ð\ z\ Ö\ ~\ \ *\ \ ‚\ }\ Ð\ 5\ €\ ƒ\ \ ‡\ †\ ˆ\ Ð\ ‰\ Š\ ‹\ \ \"\ \ Œ\ Ù\ Ž\ \ Ð\ Â\ \ \ 4\ \ ‘\ ’\ “\ ”\ S\ •\ û\ ˜\ 6\ —\ \ H\ ™\ ù\ û\ \ œ\ H\ „\ \ ž\ Ÿ\ ¡\ ¢\ £\ ›\ Z\ Z\ ¹\ Â\ ¥\ C\ ¤\ Ñ\ Ð\ Ð\ Î\ ¦\ ¨\ \"\ ©\ \ «\ ¬\ ª\ 4\ ­\ \"\ ®\ ¯\ Ð\ ±\ ±\ &\ ²\ ³\ Ä\ H\ ´\ µ\ ¶\ ·\ º\ ù\ ¸\ »\ ¼\ ½\ ¾\ <\ f\ ¿\ Ð\ 4\ §\ Ð\ )\ f\ Ð\ ’\ \ D\ \ °\ “\ \ \ À\ <\ Á\ É\ Ã\ ¥\ ß\ H\ Å\ Î\ Ò\ ù\ c\ Ä\ 6\ Ç\ \ ”\ È\ \ É\ Ê\ Ë\ 4\ Ì\ ù\ \ Í\ ­\ \ Ï\ ª\ \ Ð\ 4\ Ñ\ *\ \ Ó\ Ô\ Õ\ Ö\ ù\ ´\ \ ×\ H\ ,\ ù\ Ø\ Æ\ Ü\ ä\ Ù\ Ú\ Û\ H\ Ý\ Þ\ ¼\ á\ \ ß\ à\ Ì\ Ï\ â\ Ð\ ª\ \ ã\ ù\ \ æ\ \ Ñ\ þ\ å\ 4\ ù\ \ ý\ è\ é\ ë\ ì\ í\ î\ d\ ï\ \ ð\ ¶\ Ð\ c\ ‰\ Ä\ Î\ H\ ò\ \ ñ\ ó\ X\ ô\ c\ õ\ w\ Ó\ Þ\ ê\ ö\ ÷\ ø\ ç\ ê\ ú\ ý\ \ \ \ ù\ û\ ü\ Î\ H\ \ þ\ ‰\ \ Å\ \ Ã\ 2\ ù\ þ\ â\ 4\ Ñ\ \ ¢\ ´\ Í\ Ò\ d\ \ ò\ \ Ð\ \"\ k\ û\ Î\ ­\ \"\ Î\ Ä\ O\ \ \ ì\ È\ Ú\ \ O\ Ç\ \ ô\ w\ \ \ x\ Õ\ \ \ \ Ä\ Ñ\ <\ Œ\ \ ½\ ÿ\ ]\ >\ \ \ >\ /\ 4\ \ 4\ \ *\ \ \ É\ \ \ ù\ \ \ Ð\ Ä\ ç\ Ü\ È\ \ û\ 4\ \ f\ Ñ\ å\ Ð\ æ\ \"\ ù\ !\ $\ r\ %\ ‰\ \ ,\ &\ '\ x\ È\ (\ )\ *\ +\ .\ ì\ Â\ ,\ ù\ 0\ Ó\ ê\ 1\ È\ d\ Î\ 2\ 4\ f\ Î\ W\ C\ þ\ 3\ Þ\ \ #\ 4\ ;\ š\ J\ L\ P\ É\ 8\ \ Ÿ\ 5\ 6\ 9\ ­\ 7\ :\ t\ <\ \"\ 4\ >\ ´\ H\ ?\ @\ d\ 4\ \ C\ \ A\ B\ D\ }\ E\ 2\ ‚\ \ F\ è\ H\ f\ *\ \ ã\ K\ 4\ Ö\ M\ û\ \ ù\ Ä\ ·\ 8\ N\ O\ Q\ Ð\ Ð\ R\ \ )\ Ö\ Ð\ Î\ S\ #\ H\ T\ :\ =\ G\ I\ I\ >\ ]\ [\ a\ a\ h\ l\ U\ V\ 1\ ­\ \ ½\ Ó\ \ ø\ W\ X\ •\ ž\ Y\ Ð\ ;\ H\ æ\ k\ Z\ *\ \\\ \ ^\ \ \ f\ Â\ k\ _\ `\ O\ ¥\ Ò\ \ Ó\ b\ Ä\ ¿\ d\ e\ f\ \ é\ S\ C\ ²\ ù\ \ g\ +\ \ æ\ i\ H\ j\ ”\ €\ û\ m\ H\ [\ c\ c\ k\ p\ {\ †\ ‹\ o\ q\ .\ ù\ B\ r\ u\ s\ H\ \"\ t\ v\ Ð\ ·\ w\ Q\ Ö\ Ð\ y\ Þ\ z\ ©\ x\ ó\ ^\ \"\ Ï\ ~\ M\ \ x\ }\ H\ \ \ €\ \ Â\ Ë\ ‚\ n\ f\ ƒ\ *\ „\ Ñ\ Í\ Ó\ \ ‡\ ¥\ u\ ©\ ˆ\ ù\ }\ Ä\ ‰\ Š\ \ Œ\ 6\ \"\ Ð\ ·\ }\ x\ C\ q\ \ |\ #\ •\ +\ \ K\ \ Ž\ H\ \ ‘\ ”\ —\ “\ Ð\ È\ )\ 4\ –\ c\ \ r\ ™\ \ í\ “\ ›\ œ\ Ð\ *\ œ\ D\ \ ž\ y\ Ÿ\ Î\ Û\ ¡\ D\ ¢\ \ £\ „\ Ù\ ¤\ ¥\ ¢\ (\ ¦\ ²\ ©\ §\ 1\ ˜\ Ð\ 4\ ª\ ™\ Ÿ\ \ «\ ˆ\ )\ ©\ ­\ ®\ ¯\ ’\ ~\ \ [\ ×\ \ 4\ Î\ š\ ¨\ ¬\ ³\ »\ ¿\ Ç\ ´\ ù\ ù\ °\ ñ\ \ ²\ <\ ±\ ;\ ”\ \ Ä\ ”\ Á\ ¶\ c\ \ Â\ Ä\ r\ ·\ ¹\ ¸\ Ÿ\ Â\ ½\ ¼\ ¾\ \ º\ “\ ²\ ½\ \ 4\ Ñ\ ½\ Ö\ }\ s\ \ Â\ •\ Á\ \ \ <\ f\ \ Ä\ Ã\ H\ æ\ ±\ O\ c\ Ä\ ª\ è\ Å\ [\ Æ\ \ \ \ È\ µ\ \ À\ É\ Z\ •\ Ô\ Û\ Þ\ Ê\ \ c\ 4\ c\ Ë\ Ñ\ Í\ W\ \ \ Ð\ Ù\ Î\ Ï\ 4\ Î\ ž\ Ð\ Ñ\ “\ Ó\ \ H\ Î\ \ c\ ¸\ å\ Õ\ ƒ\ \ t\ Ð\ –\ C\ ‘\ Î\ 4\ Ø\ 4\ \ ¹\ ×\ \ D\ Ê\ ”\ 4\ Ú\ \ Ù\ 4\ \ ñ\ ¢\ n\ Ö\ Ä\ Ý\ Ì\ Ñ\ Ö\ Ò\ :\ Ü\ #\ j\ ê\ ì\ >\ õ\ ù\ ß\ á\ â\ ã\ ä\ \ Ï\ f\ \ å\ â\ æ\ C\ Ð\ ô\ ç\ Þ\ è\ ™\ \ é\ ©\ Ÿ\ ë\ ê\ Ä\ n\ ½\ ¹\ W\ Ð\ \ í\ \ •\ \ î\ ©\ H\ ð\ ñ\ ò\ à\ ½\ 4\ Ð\ ó\ Ñ\ ô\ Â\ Ò\ Ä\ è\ ©\ ‚\ )\ Î\ H\ Ÿ\ ÷\ ø\ \ ù\ ›\ j\ ï\ ö\ j\ \ \ p\ \\\ <\ (\ 4\ ú\ W\ <\ û\ Z\ ü\ 4\ ý\ f\ B\ ¡\ þ\ \"\ \ ÿ\ \ ,\ \ K\ \ n\ \ 4\ \ \ ©\ \ 4\ \ ù\ Ä\ \ Ñ\ ©\ \ ¸\ \ ·\ ¿\ é\ r\ ½\ û\ Ž\ \ ‚\ —\ Î\ H\ ‰\ \ \ \ \ :\ \ L\ \"\ (\ Ù\ r\ \ ™\ \"\ ¢\ ¥\ Ð\ j\ È\ å\ \ Ð\ \ \"\ ¹\ Î\ \ \ \ \ \ Ð\ ¡\ \ \ \ ×\ \ W\ \ \ —\ ½\ \ 2\ r\ Ý\ ©\ Ð\ B\ \ Ð\ È\ \ \ 4\ !\ ª\ )\ #\ $\ 4\ æ\ \ \ &\ y\ Ä\ '\ c\ [\ %\ >\ Z\ \ ƒ\ A\ )\ ú\ 3\ I\ :\ î\ Í\ +\ 4\ Î\ \ ,\ ,\ E\ ‚\ .\ /\ .\ 4\ ®\ 0\ ß\ 2\ ç\ 4\ õ\ (\ 1\ 4\ Ð\ œ\ 6\ 7\ (\ 8\ ·\ ì\ 9\ ;\ 8\ <\ =\ \ >\ <\ \ ?\ @\ ,\ \ W\ ž\ B\ (\ ¹\ r\ C\ {\ x\ §\ x\ \ é\ )\ C\ D\ \ *\ G\ F\ H\ J\ \ [\ 5\ Ô\ Z\ W\ ý\ A\ \ Ê\ \ B\ È\ }\ Ð\ ²\ K\ Ñ\ L\ Ð\ 4\ c\ \ Í\ Ð\ c\ \ N\ ¼\ P\ Q\ H\ d\ ï\ R\ S\ T\ Î\ ×\ Í\ \ Ý\ U\ @\ %\ h\ ù\ \ \ 4\ ©\ V\ í\ Å\ Ð\ X\ Y\ 2\ Z\ Ð\ ×\ e\ \ º\ [\ Î\ ½\ f\ \\\ ]\ ^\ 0\ _\ M\ O\ š\ j\ i\ o\ s\ ì\ `\ ©\ Ä\ f\ Ð\ a\ b\ c\ )\ n\ \ ½\ ²\ u\ r\ 4\ e\ f\ n\ g\ Ð\ «\ \ h\ t\ c\ k\ D\ 4\ ò\ ã\ Ä\ l\ m\ n\ Z\ \ C\ 4\ ª\ X\ 4\ ”\ œ\ C\ ß\ `\ \"\ §\ q\ Î\ r\ k\ ê\ þ\ \"\ B\ d\ ]\ j\ p\ t\ >\ Š\ »\ “\ \ ½\ v\ ®\ y\ ”\ f\ z\ {\ Ð\ 4\ \ x\ |\ (\ ~\ \ .\ \ (\ ~\ ‚\ ã\ ƒ\ Ð\ „\ ‡\ ¥\ ¤\ 4\ Ñ\ È\ Ð\ Î\ ˆ\ \\\ z\ c\ ‰\ ó\ ‹\ Ñ\ \ Ã\ ‹\ ù\ Œ\ ü\ W\ Ó\ \ n\ 4\ Ñ\ §\ ·\ Ú\ Ž\ V\ \ ­\ Þ\ €\ ’\ ”\ _\ w\ }\ †\ \ \ ‘\ ˜\ ¤\ ¨\ ]\ Ñ\ •\ ,\ ™\ s\ –\ g\ ~\ 4\ ×\ *\ —\ Ñ\ Ð\ ™\ f\ š\ ›\ >\ \ Ð\ r\ œ\ \ ã\ (\ \ )\ f\ Ð\ ž\ ¥\ º\ “\ ž\ h\ £\ f\ ¡\ ¢\ g\ Ó\ Á\ \ ¥\ å\ \ ¦\ ñ\ §\ ©\ Â\ Ä\ ª\ «\ ¬\ H\ þ\ ­\ .\ 4\ ®\ \\\ N\ +\ ´\ ¯\ ±\ H\ °\ Ñ\ Ÿ\ Ô\ ´\ ½\ ¾\ >\ Ð\ \ º\ t\ ³\ ”\ ¶\ Z\ Í\ É\ µ\ _\ ”\ ,\ \ X\ r\ ï\ 4\ Œ\ ,\ ¶\ Ð\ ·\ è\ ®\ ©\ º\ ”\ 4\ C\ Ã\ X\ ½\ H\ Ÿ\ Ð\ Ä\ ¡\ É\ ‰\ \ Ã\ Œ\ W\ \ ç\ ¿\ ®\ Í\ À\ Ð\ Á\ Â\ Ã\ ½\ Ä\ Å\ ‚\ å\ ¹\ \ O\ Æ\ Ç\ ½\ ²\ I\ ½\ ¸\ »\ ¼\ ¼\ >\ h\ Î\ Ü\ Ê\ È\ Þ\ 9\ É\ 4\ •\ Ì\ æ\ Ë\ ù\ Õ\ Î\ Ï\ \ ¹\ Ð\ Ñ\ ×\ \ Ò\ Ó\ –\ Ð\ 4\ Ó\ Õ\ \ Â\ Ô\ ¢\ Ö\ è\ ×\ 1\ \ Ð\ W\ Ð\ f\ Ð\ Î\ C\ Ø\ ®\ Å\ Ú\ Á\ þ\ È\ Û\ Ñ\ A\ û\ Ý\ ß\ à\ Ã\ C\ á\ ã\ â\ Ð\ ó\ È\ å\ Í\ \ Ù\ ä\ ô\ ù\ æ\ ê\ å\ Ê\ ë\ ì\ 4\ î\ í\ \ Ð\ \ !\ \"\ H\ ð\ Í\ ñ\ 4\ 3\ f\ \ ò\ \ ó\ Ã\ X\ õ\ \ ö\ ¢\ ½\ é\ ç\ X\ Ñ\ \ ÷\ ø\ µ\ ß\ Á\ è\ '\ ½\ C\ Ð\ Â\ /\ ú\ –\ ‹\ Ä\ ü\ —\ \ ï\ þ\ û\ „\ c\ \ Ê\ \ ý\ ý\ ÿ\ \ 4\ )\ \ \ ô\ \ \ \ Ä\ ê\ \ \ ”\ \ 4\ ­\ Ú\ H\ Ä\ –\ Ð\ Ô\ ý\ Î\ \ À\ \ ¢\ Ÿ\ —\ H\ d\ •\ Ã\ Î\ f\ Á\ f\ Ð\ \ Ä\ \ À\ B\ }\ í\ f\ O\ \ I\ \ \ Þ\ \ ù\ ¥\ \ ²\ ©\ ^\ \ ‚\ ½\ ž\ (\ ¹\ 4\ Ê\ ×\ §\ Ð\ Ð\ \ ‚\ Ô\ ,\ \ 4\ \ Ä\ \ \ \"\ Ž\ Â\ \ Ä\ B\ Ú\ E\ y\ f\ È\ Z\ Î\ f\ .\ X\ F\ Ñ\ ­\ ­\ \ Å\ \ \ Î\ ®\ D\ \ B\ \ Q\ \ Æ\ \ ò\ #\ &\ -\ 6\ ^\ –\ Ÿ\ 4\ Ð\ Ê\ .\ \"\ $\ ¿\ ½\ ½\ %\ ”\ '\ (\ )\ E\ \ ^\ Ñ\ *\ 4\ ‹\ Ñ\ v\ \ Î\ ,\ l\ å\ f\ Ñ\ ©\ +\ Ü\ .\ Î\ f\ /\ õ\ 0\ ¢\ ©\ 1\ ™\ 2\ Ð\ 3\ ”\ –\ )\ 5\ F\ ó\ 4\ Õ\ Î\ Ö\ !\ \ Ð\ ½\ \"\ 7\ Ù\ Ä\ 8\ ;\ ‘\ ä\ :\ 9\ ê\ ¾\ K\ :\ ?\ F\ Ê\ Q\ A\ <\ ¥\ Ã\ \ Û\ 4\ =\ '\ >\ \ k\ Ä\ \ È\ è\ x\ F\ ~\ @\ æ\ Ñ\ B\ D\ C\ E\ G\ Â\ s\ C\ \ \"\ È\ I\ .\ ©\ –\ ±\ \ J\ Ä\ 3\ \ Ê\ K\ Î\ Í\ +\ Â\ “\ r\ )\ M\ L\ t\ ²\ Ä\ Ð\ –\ H\ H\ N\ Ò\ O\ P\ D\ 4\ R\ 2\ 5\ H\ _\ S\ `\ b\ a\ k\ h\ f\ i\ l\ m\ n\ j\ g\ e\ c\ d\ °\ ¨\ ™\ ¶\ z\ §\ ª\ «\ ¬\ ¯\ ­\ “\ Œ\ ˆ\ }\ \ |\ v\ p\ w\ x\ y\ }\ \ ~\ †\ \ ”\ –\ ‘\ \ Ÿ\ ˜\ ’\ ‹\ ‡\ ¡\ \ —\ š\ ›\ £\ ƒ\ ¤\ ¢\ ¥\ ¦\ †\ ²\ ³\ ´\ µ\ ®\ ©\ ž\ •\ Ž\ ‰\ ‚\ ƒ\ €\ {\ u\ o\ q\ r\ s\ t\ ±\ œ\ \ Š\ „\ å\ ¿\ ñ\ Ï\ Ý\ Ô\ Ô\ Ù\ Ð\ ¾\ ·\ ¸\ º\ À\ Á\ Ç\ É\ \ Û\ á\ ä\ Ù\ è\ ë\ ç\ ð\ ß\ u\ ×\ Í\ Ò\ »\ î\ Ë\ Ä\ \ ì\ Ö\ Ã\ Ó\ ÷\ \ \ \ \ \ \ ú\ –\ æ\ Ú\ Ì\ Ñ\ Á\ Â\ Æ\ à\ ê\ é\ í\ ó\ ï\ ò\ ô\ u\ õ\ ü\ ý\ ÿ\ û\ š\ Â\ ø\ \ \ \ \ \ —\ \ \ Ò\ \ þ\ ù\ ö\ â\ Ü\ Ø\ È\ Å\ Þ\ Õ\ Ê\ ¼\ Î\ ¹\ \ ã\ ½\ =\ (\ ý\ H\ D\ <\ 8\ ,\ *\ í\ $\ \ \ \ \ \ ý\ \ !\ \ ®\ \"\ %\ &\ ‡\ +\ Ð\ 0\ 3\ 2\ ‡\ /\ $\ 1\ 5\ 6\ >\ @\ ¸\ :\ 7\ A\ B\ E\ \ F\ G\ J\ K\ M\ N\ L\ O\ L\ P\ Q\ í\ C\ I\ ?\ 9\ õ\ .\ '\ #\ \ \ \ 4\ ;\ )\ \ y\ u\ l\ c\ ]\ W\ ‹\ [\ x\ S\ T\ Y\ ×\ ^\ x\ ï\ `\ Ü\ _\ ‹\ g\ h\ k\ Á\ j\ e\ í\ ‡\ i\ n\ o\ p\ q\ s\ \ ˆ\ z\ ³\ í\ t\ r\ {\ }\ ~\ ‚\ ƒ\ „\ †\ ‡\ ‰\ \ Ž\ Œ\ Š\ €\ |\ \ v\ &\ x\ K\ \\\ V\ R\ b\ d\ f\ ‘\ Z\ U\ ˆ\ w\ m\ a\ X\ Ë\ Î\ Â\ ¸\ °\ ¢\ §\ ¥\ Í\ Å\ Á\ Ÿ\ ¦\ ¡\ í\ ®\ ¯\ ±\ ²\ ´\ x\ ³\ µ\ <\ »\ ¹\ ¼\ Ã\ Ä\ ½\ ¾\ Æ\ È\ ƒ\ \ º\ É\ Ð\ x\ Ê\ Ì\ Ï\ ¿\ ¶\ ù\ _\ ¨\ í\ ·\ }\ ­\ ‡\ ž\ Ç\ x\ ©\ ª\ ¬\ ¤\ ˜\ “\ \ \ –\ ’\ ”\ —\ ™\ š\ ›\ Ü\ œ\ \ •\ À\ «\ ‘\ £\ \ å\ Õ\ \ ð\ ä\ Þ\ Ñ\ Ò\ Ö\ d\ Ø\ ß\ ¨\ ç\ è\ î\ ã\ ë\ Ž\ þ\ `\ ô\ ö\ ø\ \ \ \ \ \ þ\ ÿ\ û\ \ Ð\ á\ Ú\ ù\ ò\ §\ Ü\ \ \ ý\ ú\ ñ\ ê\ ã\ í\ Ó\ Ô\ Û\ ×\ Ù\ à\ ó\ ü\ ö\ 7\ ˆ\ ·\ x\ —\ $\ \ ¡\ \ \ \ ¹\ \ Û\ Á\ Ú\ \ ƒ\ \ \ \ \ \ –\ \ \ \ \ ÷\ í\ ì\ í\ â\ €\ ¬\ ®\ é\ \ æ\ ý\ ï\ \ õ\ Ý\ U\ E\ 5\ %\ .\ '\ *\ !\ Z\ T\ G\ =\ @\ B\ A\ H\ F\ Ý\ C\ J\ K\ Á\ O\ L\ N\ Q\ P\ V\ W\ X\ ˆ\ N\ Y\ \\\ Å\ ]\ }\ [\ S\ R\ /\ ‘\ Á\ D\ ?\ 4\ 3\ \"\ &\ (\ ,\ -\ /\ 0\ 1\ Ì\ 7\ 8\ 9\ Ã\ Ø\ :\ ;\ <\ €\ x\ Ï\ 7\ <\ <\ <\ ^\ 2\ +\ $\ Á\ #\ M\ I\ >\ 6\ )\ ”\ \ „\ ì\ k\ e\ ‚\ ‘\ †\ \ |\ ‹\ d\ b\ ç\ §\ c\ g\ m\ i\ r\ t\ q\ Â\ n\ Â\ £\ º\ u\ x\ z\ ò\ u\ {\ }\ ~\ u\ \ A\ ‹\ ˆ\ ƒ\ í\ ‹\ ‰\ Ž\ \ ’\ F\ “\ j\ •\ \ ‡\ ”\ ö\ p\ ª\ l\ ÿ\ h\ f\ í\ j\ B\ a\ `\ Œ\ Š\ €\ v\ w\ y\ s\ o\ 6\ _\ y\ ²\ ª\ ¢\ Ü\ œ\ —\ É\ Ë\ Â\ Å\ J\ »\ µ\ ¯\ ¦\ ¡\ š\ ™\ ¾\ ¾\ î\ \ í\ ¤\ ¡\ §\ ¥\ ¨\ «\ ¬\ í\ ­\ %\ °\ ±\ ‹\ ¶\ ·\ ¸\ ¹\ ½\ ¿\ ¼\ ù\ º\ À\ Á\ Â\ Ã\ Ç\ Ä\ È\ Ê\ Ì\ Î\ Â\ ~\ Æ\ ¾\ ´\ ®\ ©\ ‡\ Í\ Ÿ\ ›\ \ –\ \ ³\ £\ ž\ ˜\ ð\ â\ (\ ú\ Ò\ è\ à\ ‰\ Ú\ í\ e\ Ñ\ Ó\ Õ\ Ð\ Ô\ ×\ Ö\ D\ Ø\ Ù\ ý\ í\ #\ Ð\ Þ\ á\ å\ í\ æ\ é\ Â\ [\ “\ x\ î\ ²\ í\ s\ ï\ ñ\ u\ ù\ µ\ ò\ ö\ ô\ ‹\ ø\ ƒ\ n\ ·\ ù\ u\ õ\ p\ í\ ß\ Ž\ Ý\ p\ ç\ ë\ Ï\ ÷\ ä\ ó\ ê\ ì\ ã\ Û\ Ü\ ÷\ î\ \ \ ý\ ð\ \ “\ Ö\ Ÿ\ \ \ \ \ \ ä\ ã\ û\ ÿ\ \ ß\ \ Ü\ 2\ ì\ \ \ \ %\ ;\ \ 9\ 1\ .\ §\ \"\ \ \ \ \ Ú\ \ ä\ â\ \ \ í\ \ \ 7\ '\ )\ *\ +\ &\ ‹\ !\ #\ ?\ u\ $\ ‹\ A\ 3\ 5\ 6\ 7\ 8\ 6\ :\ /\ \ 0\ 4\ ,\ Y\ \ Á\ \ j\ þ\ \ q\ x\ ¨\ {\ ü\ (\ \ ^\ @\ G\ C\ a\ Y\ ?\ ý\ O\ M\ Â\ \ <\ =\ >\ D\ x\ #\ A\ ‡\ #\ B\ b\ F\ Â\ E\ ƒ\ H\ Õ\ K\ I\ ç\ P\ L\ Q\ R\ Á\ T\ W\ U\ ã\ š\ t\ \ u\ Z\ \\\ `\ [\ ]\ X\ %\ V\ _\ ¬\ S\ ›\ ‡\ N\ Ú\ ƒ\ &\ à\ J\ ’\ †\ U\ €\ y\ m\ Œ\ i\ \ 2\ „\ {\ s\ Ì\ ¯\ c\ e\ f\ j\ ù\ í\ `\ l\ o\ p\ q\ t\ ‡\ \ Â\ u\ v\ x\ z\ |\ @\ ¡\ º\ }\ ~\ ƒ\ \ ÿ\ ‰\ $\ ‡\ ^\ \ \ â\ \ Â\ ‹\ Ž\ \ }\ \ “\ ‘\ ”\ \ •\ •\ ˆ\ þ\ €\ w\ r\ n\ þ\ h\ b\ Š\ ‚\ d\ g\ k\ ¦\ ¡\ –\ \ »\ ¼\ G\ ¬\ ¥\ Â\ Á\ §\ ¢\ í\ Õ\ š\ Ô\ k\ —\ ¡\ ˜\ \ `\ ›\ ß\ ™\ Ý\ r\ ¬\ u\ þ\ £\ ©\ ª\ p\ ¨\ s\ Ž\ \ í\ ®\ ­\ ¯\ p\ °\ í\ Á\ \ x\ ³\ \ ±\ F\ ´\ ¹\ O\ ù\ ·\ º\ ©\ ¸\ µ\ ²\ ~\ «\ \ •\ ž\ ¶\ œ\ ¤\ Ÿ\ å\ å\ Õ\ ­\ ï\ á\ É\ q\ \ À\ Ã\ !\ Á\ 2\ Ä\ #\ Â\ x\ Å\ x\ Ê\ Í\ Ú\ Ë\ Ô\ Ü\ Ú\ Þ\ â\ Ú\ ã\ ä\ ç\ à\ è\ é\ ê\ ë\ ¶\ í\ ´\ û\ !\ æ\ ß\ Ù\ &\ Û\ ×\ Ò\ Ï\ \ Â\ z\ Ð\ Ì\ Ó\ ×\ Ñ\ Æ\ t\ ˜\ ¾\ ¿\ î\ ì\ Î\ Ý\ È\ Ö\ Ø\ Ë\ Ç\ ½\ \ ù\ \ \ õ\ ö\ ô\ ÷\ b\ ø\ ü\ Á\ \ Â\ }\ \ \ \ \ \ \ \ \ \ \ \ \ É\ û\ í\ ù\ \ \ \ \ Â\ Ã\ •\ \ Å\ \ \ }\ ô\ \ \ ®\ í\ Á\ ý\ û\ F\ F\ Á\ ñ\ ß\ þ\ Û\ L\ $\ ú\ Û\ ò\ ÿ\ o\ \ ó\ ð\ E\ 6\ 2\ )\ m\ B\ F\ x\ 7\ !\ Ù\ \ í\ Â\ t\ H\ \ x\ \ \ ‡\ #\ Ú\ \"\ $\ %\ n\ 5\ *\ Á\ ,\ -\ /\ Ú\ A\ §\ }\ ²\ +\ (\ n\ Â\ T\ \ 0\ í\ 4\ 8\ :\ Á\ 5\ ;\ =\ 9\ >\ Á\ ?\ C\ <\ ­\ D\ @\ .\ ß\ '\ •\ A\ p\ â\ 3\ 1\ &\ e\ T\ (\ Q\ ì\ H\ m\ c\ ^\ [\ Y\ U\ Á\ ¾\ ­\ Á\ ‡\ Â\ N\ L\ t\ í\ Ú\ Ý\ .\ P\ x\ ²\ O\ ;\ K\ J\ I\ à\ G\ [\ #\ ˜\ í\ \ X\ \ Z\ Á\ \\\ _\ `\ ¡\ d\ Á\ f\ :\ h\ g\ i\ j\ k\ e\ !\ }\ Â\ l\ ®\ ¥\ Á\ ~\ Á\ a\ ]\ í\ |\ '\ n\ R\ u\ b\ V\ W\ S\ M\ g\ •\ \ Œ\ ~\ {\ t\ p\ š\ ™\ “\ Y\ ‚\ z\ y\ u\ v\ \"\ w\ x\ q\ }\ í\ ª\ s\ o\ D\ \ €\ ƒ\ „\ Ú\ ƒ\ ˆ\ [\ †\ ª\ ‘\ H\ Á\ †\ \ Â\ –\ ”\ N\ Á\ ƒ\ ?\ ’\ d\ —\ \ }\ Ê\ ‹\ Š\ \ ø\ Ž\ š\ °\ \ è\ |\ t\ r\ ‰\ ˜\ y\ ‡\ ;\ ¸\ ª\ ¢\ =\ ¥\ Ÿ\ ,\ ´\ °\ F\ 4\ ž\ >\ k\ N\ §\ ¦\ ¡\ ¨\ ¯\ ®\ ã\ \ «\ Ô\ t\ ¬\ ±\ ²\ Á\ \ Á\ ®\ Á\ |\ ª\ ù\ µ\ ·\ ³\ ¹\ °\ º\ ¶\ ¬\ #\ ©\ x\ ¤\ \ Â\ ›\ \ ×\ 6\ Œ\ ­\ £\ œ\ È\ É\ Ê\ å\ Ë\ Å\ ¿\ »\ ¼\ \ ½\ Â\ À\ Á\ Ä\ Ã\ Æ\ Ç\ ¾\ y\ æ\ â\ Õ\ ý\ #\ Ï\ Ò\ :\ ;\ Õ\ Ô\ ‹\ Ö\ ‡\ Ü\ @\ ß\ \ ¡\ }\ Â\ ã\ Á\ &\ ä\ Å\ \"\ Ø\ ç\ è\ é\ \ \ ï\ Ô\ ®\ ¼\ ñ\ Á\ ò\ x\ ð\ ê\ á\ Þ\ p\ ù\ Ø\ â\ Ð\ Í\ î\ í\ ,\ å\ \ à\ Û\ Ù\ ×\ ¤\ Ò\ Î\ Ì\ Ñ\ t\ ì\ ë\ Ý\ Ú\ Ó\ \ y\ \ \ \ \ ¯\ \ ø\ x\ õ\ û\ ý\ ß\ \ ÿ\ I\ š\ Â\ ‡\ \ u\ ß\ ÿ\ \ ô\ „\ °\ þ\ ú\ $\ ‚\ ó\ \ í\ Â\ ƒ\ Á\ \ \ \ ‹\ Ž\ \ \ \ [\ ~\ Ñ\ 7\ ÷\ ù\ ù\ ƒ\ \ \ \ \ ü\ ö\ ?\ B\ 4\ '\ $\ \ 2\ 8\ -\ A\ >\ “\ \ /\ *\ %\ í\ )\ \ \ ª\ Â\ \ \ !\ \"\ Â\ \ ­\ Á\ &\ Á\ \ \ \ \ ,\ [\ 0\ Ú\ í\ Á\ 7\ \ Â\ u\ 5\ 6\ 7\ :\ p\ ;\ Ø\ 9\ ¤\ <\ \ @\ Á\ z\ ÿ\ ¹\ b\ =\ .\ û\ #\ \ u\ ×\ .\ 3\ 1\ +\ (\ F\ ]\ ¨\ S\ ‡\ \ w\ C\ G\ \ N\ P\ Q\ O\ U\ Ý\ X\ [\ L\ ì\ ^\ _\ c\ Ø\ Á\ d\ g\ Â\ j\ \ p\ R\ I\ \ K\ D\ z\ ^\ =\ a\ v\ L\ p\ f\ Y\ r\ ê\ <\ h\ `\ W\ J\ í\ E\ F\ M\ T\ \ í\ Z\ x\ \ b\ \ e\ ‡\ C\ F\ O\ i\ ‡\ m\ o\ l\ n\ q\ o\ F\ t\ t\ X\ í\ s\ w\ ö\ x\ y\ Å\ Û\ u\ ~\ þ\ ¿\ Ü\ V\ f\ p\ ;\ H\ |\ •\ t\ k\ \\\ ˜\ •\ \ Š\ †\ Ÿ\ ’\ £\ š\ ¡\ \ \"\ ê\ }\ \ {\ |\ €\ Ý\ \ \ }\ £\ x\ ‚\ ‰\ â\ ‡\ \ }\ >\ Œ\ ÿ\ @\ \ ®\ \ \ ‘\ 7\ “\ q\ Ž\ Ã\ Á\ –\ —\ Â\ ›\ \ ž\ Ž\ \ Â\ ›\ ¡\ A\ ¢\ ™\ ”\ Ï\ ‹\ „\ Ö\ u\ ˆ\ ÷\ ~\ /\ œ\ „\ ƒ\ ·\ ®\ ì\ \ â\ ¸\ ¥\ @\ Ã\ \ \ \ À\ Á\ Å\ Â\ Æ\ Ç\ q\ M\ /\ º\ x\ Î\ ²\ ¯\ Ö\ ¦\ Ô\ ¬\ í\ ö\ ª\ ­\ «\ °\ ±\ ´\ µ\ ¡\ U\ ‡\ ¶\ o\ Á\ Á\ ¼\ ¹\ ƒ\ ½\ ¾\ [\ S\ #\ ³\ L\ ù\ ©\ §\ ?\ Ä\ ³\ Ü\ ¿\ »\ ¨\ ¤\ å\ \ Í\ é\ â\ Ù\ ×\ Ò\ Â\ c\ 7\ \ F\ Ê\ ;\ Ö\ Î\ x\ Ë\ Ð\ Õ\ /\ Ö\ 6\ ·\ :\ Ø\ Ú\ O\ F\ Ú\ þ\ á\ ä\ æ\ ç\ ê\ ß\ Ý\ ‘\ ÿ\ C\ à\ ã\ Ü\ Ü\ ò\ ®\ Ú\ ß\ Ô\ Ú\ Ï\ á\ È\ Þ\ É\ ë\ ¼\ á\ 6\ Ñ\ è\ Û\ Ó\ Ì\ ú\ õ\ î\ ì\ ï\ ð\ ñ\ ó\ ö\ í\ ò\ ô\ \ ú\ ÷\ ø\ û\ ü\ þ\ ù\ ý\ ÿ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ a\ 6\ =\ 7\ 2\ )\ &\ !\ \ \"\ #\ +\ -\ *\ .\ /\ 0\ \ 5\ 9\ 1\ :\ \ ;\ 8\ >\ ?\ 3\ \ 3\ ,\ \ $\ 4\ 1\ \ <\ %\ '\ (\ @\ G\ C\ A\ D\ E\ H\ I\ J\ L\ F\ B\ K\ M\ û\ l\ d\ e\ h\ i\ k\ g\ b\ X\ U\ N\ °\ O\ P\ Q\ V\ Y\ Z\ [\ ^\ \\\ ]\ _\ 9\ `\ c\ \ a\ n\ o\ p\ m\ \ j\ f\ W\ R\ T\ S\ S\ T\ |\ z\ s\ x\ u\ q\ r\ v\ y\ b\ w\ ø\ r\ {\ }\ t\ š\ \ ‚\ °\ ƒ\ ‡\ ˆ\ Œ\ \ —\ e\ \ ‹\ †\ €\ y\ ~\ \ ˜\ ›\ œ\ \ ž\ Ÿ\ ¡\ ™\ ”\ ‘\ e\ ’\ “\ ‰\ „\ \ •\ Š\ –\ Ž\ ©\ ¥\ ¢\ £\ \ ¦\ §\ ¤\ ¨\ ª\ J\ ­\ «\ ¬\ \ E\ ®\ ¯\ °\ ±\ 3\ ²\ É\ ü\ ¶\ H\ Î\ Â\ }\ Ÿ\ \ ï\ ³\ ´\ ½\ »\ ¿\ À\ í\ Ä\ \ ‡\ ˜\ d\ Á\ Æ\ Å\ Â\ €\ \ \ \ Ë\ Ï\ Ì\ Ê\ Ç\ •\ <\ r\ •\ #\ ÷\ í\ \ @\ ®\ Ã\ Â\ ð\ ¸\ ¹\ ~\ µ\ Ô\ ¾\ Í\ ¼\ È\ º\ ¸\ ·\ æ\ ê\ Û\ \ î\ ä\ à\ Þ\ Ù\ Ô\ s\ :\ \ Ð\ Ò\ û\ Ó\ V\ ×\ Ø\ Â\ Ð\ \\\ x\ t\ J\ R\ Ü\ Ý\ ÿ\ ß\ ©\ ›\ ˜\ Ï\ Ð\ á\ â\ ã\ x\ ‡\ å\ Ë\ 7\ Á\ ç\ è\ é\ ê\ í\ í\ \ ï\ ‚\ ð\ ñ\ ò\ ó\ š\ ë\ &\ ¿\ e\ •\ ì\ L\ Õ\ Ñ\ ô\ Ú\ õ\ Ö\ þ\ ý\ ÿ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ !\ \"\ #\ $\ %\ &\ *\ 7\ ;\ Y\ a\ f\ k\ >\ (\ +\ )\ .\ ,\ -\ 0\ 1\ 2\ 6\ /\ -\ 3\ -\ 4\ 8\ 9\ :\ 5\ =\ 5\ A\ <\ B\ @\ F\ 4\ D\ H\ E\ G\ I\ J\ K\ L\ O\ C\ M\ N\ P\ Q\ R\ R\ S\ U\ W\ V\ X\ Z\ [\ \\\ P\ ^\ J\ `\ b\ c\ g\ e\ i\ j\ h\ l\ m\ n\ O\ o\ V\ ?\ '\ d\ T\ ]\ _\ u\ ˆ\ ‘\ ›\ p\ r\ Z\ e\ v\ w\ x\ y\ z\ {\ 5\ b\ K\ |\ €\ \ ‚\ ƒ\ ‡\ ‰\ U\ ‹\ L\ Š\ q\ \ Ž\ \ G\ \ Œ\ “\ ’\ ”\ •\ —\ –\ ™\ s\ š\ A\ ˜\ \ ž\ R\ „\ Ÿ\ ¡\ ¤\ †\ \ t\ }\ ~\ œ\ ¢\ £\ ·\ ¼\ Ç\ È\ Ò\ ¥\ ¦\ ¨\ L\ §\ §\ b\ L\ C\ L\ ©\ «\ ¬\ ­\ ®\ °\ ±\ ²\ ¯\ ³\ ´\ µ\ ¶\ P\ b\ º\ ˜\ »\ ½\ ¾\ À\ ¿\ J\ Á\ Â\ z\ L\ Ã\ Ä\ Æ\ `\ Ë\ 5\ É\ Í\ Ê\ Ì\ Ð\ Ñ\ À\ Î\ 1\ Ó\ z\ Ô\ Ö\ Õ\ ×\ Ø\ ^\ Ù\ Ú\ Å\ ª\ ¸\ ¹\ }\ Ü\ å\ Ï\ é\ ï\ û\ \ \ Û\ Ý\ Þ\ ß\ à\ á\ â\ ã\ ‹\ ä\ æ\ O\ ç\ è\ ê\ ë\ L\ ì\ z\ î\ ð\ ò\ ñ\ ó\ õ\ ö\ ÷\ ø\ ú\ ô\ ü\ ù\ ÿ\ ý\ þ\ \ \ \ b\ \ \ b\ \ \ \ \ \ \ R\ \ \ \ \ \ V\ \ \ \ \ E\ y\ 2\ \ G\ ª\ í\ \ $\ )\ 4\ :\ B\ F\ \ \ ô\ \ !\ 1\ \"\ #\ 1\ &\ g\ '\ %\ (\ ^\ À\ \ -\ +\ /\ ,\ 1\ .\ 0\ 2\ 3\ ;\ É\ 5\ 8\ 3\ 9\ ^\ <\ R\ =\ >\ ?\ `\ @\ A\ «\ E\ M\ C\ G\ D\ H\ z\ \ K\ I\ J\ L\ 5\ ù\ M\ L\ P\ N\ Q\ ¾\ R\ P\ *\ \ 6\ O\ 7\ ¢\ d\ o\ v\ |\ \ S\ T\ —\ U\ L\ V\ W\ P\ X\ Y\ ]\ \ Z\ À\ \\\ ^\ _\ 5\ [\ `\ a\ b\ c\ ”\ ¬\ e\ i\ M\ g\ h\ i\ Î\ j\ k\ l\ m\ \ n\ q\ p\ i\ s\ `\ r\ t\ u\ _\ 8\ ì\ w\ \ \ ì\ x\ z\ V\ ©\ y\ {\ }\ \ €\ P\ ~\ f\ £\ }\ ‘\ )\ ƒ\ ;\ +\ g\ „\ †\ ‡\ ˆ\ ‰\ Š\ ‹\ \ L\ O\ ¡\ ¥\ b\ Â\ Œ\ \ M\ Ž\ \ \ ”\ k\ •\ –\ “\ ’\ ˜\ 1\ ›\ ™\ š\ ž\ \ “\ H\ `\ Ÿ\ ¢\ £\ ¤\ +\ P\ ¦\ ¨\ ©\ §\ ‚\ —\ ª\ œ\ °\ ¸\ Ç\ F\ Ô\ «\ ¿\ ®\ ª\ ¯\ ±\ ³\ A\ ´\ ­\ V\ ¬\ ²\ µ\ \ ¶\ z\ \ ·\ 1\ ©\ b\ ˜\ ¹\ º\ »\ ½\ ¾\ À\ P\ Á\ Â\ R\ Ã\ \ Ä\ b\ O\ Å\ L\ ç\ \ o\ e\ ß\ ­\ Æ\ É\ Ë\ O\ Ì\ Í\ Z\ O\ Î\ Ï\ \ z\ Ð\ ¹\ Ó\ Ò\ Õ\ 1\ Ý\ Ö\ ¿\ ¼\ ×\ \ Ê\ È\ Ñ\ ã\ ï\ ø\ :\ ÿ\ M\ Ø\ Ù\ Ú\ ý\ Û\ Ü\ Ý\ Þ\ z\ \ á\ à\ â\ ä\ i\ æ\ å\ y\ ç\ O\ è\ é\ ’\ ë\ Y\ 1\ í\ î\ c\ ò\ ê\ X\ ð\ 5\ ì\ ó\ V\ ô\ ö\ ñ\ â\ ”\ õ\ b\ \ ù\ L\ ú\ É\ û\ ü\ ý\ þ\ \ 5\ U\ \ \ €\ \ è\ ñ\ \ y\ \ ß\ ÷\ \ \ ›\ Ô\ ¨\ \ \ \ »\ \ P\ \ \ V\ \ O\ \ \ \ \ \ O\ \ ì\ \ <\ \ ^\ R\ \ \ —\ O\ ¿\ \ C\ ü\ \ ]\ \ -\ \ !\ ]\ \"\ z\ É\ #\ “\ %\ V\ &\ '\ (\ À\ R\ À\ )\ Î\ *\ Ë\ L\ ì\ ÷\ +\ ,\ -\ $\ °\ \ 0\ @\ H\ 1\ ^\ /\ 3\ ì\ 2\ L\ b\ 4\ V\ 5\ 6\ ‡\ \ P\ É\ 8\ ¬\ t\ \ 7\ »\ :\ i\ n\ ;\ b\ g\ X\ =\ L\ ?\ Ú\ A\ C\ D\ X\ u\ B\ D\ b\ E\ Ö\ F\ G\ G\ M\ Y\ I\ J\ ã\ <\ G\ ¡\ M\ b\ \ K\ O\ ½\ Š\ N\ P\ õ\ <\ .\ 9\ >\ K\ T\ º\ »\ b\ R\ \ ¥\ S\ U\ V\ W\ E\ X\ Y\ Z\ è\ ¿\ õ\ \\\ _\ c\ \ [\ ^\ ;\ `\ a\ ­\ b\ G\ \ \ c\ d\ Ö\ Q\ ]\ e\ f\ g\ h\ j\ f\ k\ l\ m\ n\ o\ i\ q\ p\ t\ @\ {\ †\ Š\ ±\ r\ s\ i\ u\ =\ v\ z\ L\ w\ ~\ A\ |\ X\ ‚\ \ \ §\ -\ \ O\ €\ .\ ƒ\ O\ b\ O\ t\ Ö\ „\ „\ 1\ ô\ ‡\ K\ [\ Ú\ ý\ b\ .\ R\ =\ ‰\ ‹\ Œ\ \ Ž\ \"\ õ\ ­\ \ ƒ\ Y\ \ ”\ ‘\ ’\ “\ ç\ Î\ €\ •\ ”\ o\ ˆ\ x\ y\ œ\ }\ ]\ í\ š\ ¨\ ­\ ±\ ª\ L\ ù\ –\ —\ ™\ ˜\ X\ ›\ \ \ ž\ G\ H\ Ÿ\ z\ c\ O\ ¢\ 5\ L\ ù\ À\ ¤\ ¥\ I\ ¦\ \ §\ ¬\ ê\ Ð\ ®\ ²\ O\ «\ ¯\ b\ °\ ´\ ¶\ n\ ·\ µ\ §\ -\ O\ ¹\ G\ b\ º\ »\ \ ½\ ¾\ ¿\ \ ô\ ü\ L\ y\ º\ L\ À\ Á\ ©\ œ\ ¡\ \ £\ x\ ³\ ¸\ ¼\ Ì\ Ï\ â\ Ý\ Â\ Ä\ J\ Ã\ Ç\ À\ \ Å\ Æ\ O\ ¯\ \ É\ X\ \ Í\ Î\ –\ É\ i\ Ð\ Ñ\ b\ ý\ ô\ z\ À\ Ÿ\ ¬\ Ò\ P\ Ô\ Õ\ u\ ‡\ Ö\ \ Ò\ <\ ×\ Ø\ á\ O\ ]\ Ú\ Þ\ z\ Ü\ ß\ [\ à\ ì\ n\ á\ ã\ O\ L\ À\ >\ Ÿ\ È\ æ\ #\ ä\ å\ O\ Ê\ ¸\ Ë\ Ó\ Û\ Ù\ È\ ˆ\ ð\ ô\ ú\ b\ “\ ç\ è\ é\ P\ ‹\ ^\ ê\ ë\ b\ X\ à\ Æ\ ì\ L\ w\ P\ î\ Í\ ï\ í\ A\ ñ\ ¾\ K\ »\ ó\ O\ —\ \"\ ”\ õ\ °\ 5\ ö\ O\ ÷\ ‚\ ø\ ù\ û\ ü\ ò\ \ \ $\ ý\ \ \ þ\ ÿ\ ÿ\ ˜\ O\ \ ì\ 1\ \ \ x\ \ Ø\ y\ ¡\ L\ (\ M\ \ \ À\ g\ ì\ \ P\ Î\ \ 5\ V\ \ \ \ z\ F\ \ \ O\ \ b\ L\ €\ Ö\ ¿\ L\ c\ \ \ \ \ \ U\ ¡\ \ G\ €\ \ \ !\ \"\ É\ #\ \ \ \ \ :\ ˆ\ C\ E\ J\ %\ \ L\ )\ L\ '\ C\ (\ ,\ Î\ \ O\ ì\ -\ O\ J\ .\ /\ Ö\ i\ 0\ 1\ 2\ 3\ 4\ 5\ þ\ ¿\ =\ X\ 7\ U\ L\ \ 8\ :\ Š\ ;\ 9\ <\ T\ =\ >\ \ 1\ A\ Î\ $\ \ @\ n\ e\ Z\ D\ B\ X\ P\ F\ I\ O\ K\ L\ M\ ?\ +\ &\ *\ 6\ G\ H\ N\ ¼\ l\ m\ a\ g\ ²\ Ÿ\ P\ ø\ O\ O\ S\ T\ U\ W\ ˜\ R\ P\ X\ Y\ +\ Z\ ]\ O\ C\ ú\ ^\ _\ b\ c\ O\ 5\ ¡\ b\ d\ n\ ˜\ e\ 5\ h\ L\ z\ f\ é\ D\ i\ V\ j\ ñ\ V\ z\ Ò\ n\ }\ A\ â\ y\ k\ n\ â\ [\ o\ p\ ì\ q\ O\ r\ \ ì\ P\ s\ \\\ Q\ `\ \ ~\ ‘\ ˆ\ \ Í\ O\ t\ u\ \ w\ x\ L\ L\ Z\ y\ O\ B\ ·\ Î\ L\ {\ ^\ }\ *\ À\ Y\ –\ |\ €\ \ –\ ‚\ ƒ\ P\ „\ ê\ ‹\ <\ ‹\ ·\ †\ ‡\ ‰\ R\ \ €\ ß\ 5\ P\ ‹\ Œ\ À\ b\ ’\ Ž\ \ \ \ Î\ ‘\ Y\ P\ O\ ’\ “\ v\ z\ \ Š\ ·\ ¡\ ¤\ Ÿ\ ”\ w\ •\ R\ –\ —\ À\ ˜\ <\ À\ ™\ g\ ›\ .\ š\ œ\ \ º\ \ z\ X\ ,\ L\ ð\ \ ˜\ `\ \ ¢\ ü\ £\ |\ ¥\ K\ §\ ¨\ b\ L\ ¦\ –\ ©\ ­\ «\ ª\ b\ ÿ\ ¬\ ­\ I\ P\ z\ <\ ®\ ¯\ {\ .\ ü\ ±\ °\ ³\ x\ ²\ ž\ £\ K\ º\ ´\ U\ µ\ ·\ ¶\ Î\ P\ e\ L\ ¸\ O\ ¹\ º\ b\ \ Â\ Õ\ Ü\ »\ ¼\ ½\ ¿\ 1\ \ é\ O\ ¾\ 5\ Á\ Ü\ \ O\ \ O\ Ã\ Å\ Æ\ È\ „\ b\ Æ\ X\ º\ Ë\ \ Ç\ Ê\ †\ -\ Í\ Ì\ [\ Î\ O\ Î\ Ï\ b\ Ð\ Ñ\ š\ R\ ^\ Ò\ Ô\ 8\ Ö\ Ø\ ×\ Î\ ‹\ €\ \ Ú\ ¡\ Û\ e\ Ã\ Þ\ P\ É\ À\ Û\ \ Ä\ Ó\ Ù\ Ý\ ˆ\ â\ ä\ ì\ ú\ æ\ ÷\ î\ ï\ Ñ\ z\ À\ c\ ß\ à\ ð\ á\ ?\ Ë\ â\ 5\ É\ Ê\ ~\ G\ ç\ X\ å\ -\ ê\ \ ë\ è\ Ç\ é\ X\ ñ\ y\ í\ ¶\ ó\ ‹\ á\ ô\ \ ò\ Ÿ\ ö\ R\ à\ O\ L\ \ V\ ü\ ø\ O\ Ò\ À\ O\ ù\ Ž\ ú\ §\ ¿\ ý\ \ ü\ G\ ã\ ð\ õ\ Ä\ û\ \ ¨\ \ \ ­\ \ ³\ þ\ g\ ÿ\ \ 1\ Â\ þ\ =\ Y\ \ \ \ z\ \ W\ c\ I\ «\ “\ —\ \ \ \ [\ ‹\ \ \ C\ “\ \ §\ \ \ I\ Æ\ O\ ‹\ \ \ Ã\ E\ ³\ c\ -\ \ [\ \ \ \ \ J\ \ §\ \ \ ¥\ \ 6\ '\ .\ 7\ ¡\ #\ 1\ \ \ \ À\ !\ ’\ \"\ §\ §\ V\ $\ Æ\ ì\ ý\ &\ (\ )\ L\ *\ +\ \ 0\ /\ .\ y\ =\ ª\ “\ ˜\ O\ 9\ :\ ;\ <\ b\ >\ =\ ?\ 3\ R\ 4\ 5\ 6\ â\ —\ 8\ \ %\ ,\ A\ 2\ D\ @\ B\ C\ \ E\ ¥\ O\ F\ b\ G\ ó\ H\ \ O\ I\ “\ J\ Æ\ ‚\ á\ L\ ¤\ U\ Ã\ N\ *\ »\ €\ O\ R\ O\ ¿\ P\ &\ é\ I\ ^\ L\ Q\ \ K\ M\ \ ã\ k\ h\ R\ S\ T\ U\ V\ W\ 1\ X\ Y\ Z\ b\ <\ ß\ \\\ Þ\ í\ ”\ “\ _\ ]\ ý\ ^\ I\ &\ a\ U\ \ b\ d\ `\ i\ ;\ Z\ e\ §\ f\ g\ 4\ .\ b\ j\ š\ ‹\ [\ î\ ì\ b\ Y\ l\ m\ n\ i\ c\ ª\ i\ u\ p\ q\ 1\ o\ m\ r\ \ s\ §\ t\ =\ 1\ v\ Œ\ m\ §\ w\ 4\ x\ z\ [\ y\ \ |\ €\ {\ }\ 1\ ~\ \ \ .\ y\ X\ ‚\ ƒ\ \ „\ †\ v\ Y\ L\ ‡\ ˆ\ u\ ´\ ”\ ‰\ Š\ ‹\ Œ\ \ Ž\ 5\ \ ¢\ b\ L\ Ã\ \ ‘\ ’\ Ñ\ !\ €\ ÿ\ i\ ü\ “\ \ ê\ b\ •\ O\ ø\ z\ J\ —\ b\ \ A\ ˜\ Q\ ™\ –\ œ\ ®\ ±\ š\ \ ›\ ó\ \ ‹\ \ \ ž\ b\ \ U\ Ÿ\ e\ O\ ¡\ £\ þ\ É\ ¥\ ¢\ \ è\ ¤\ C\ ¦\ \ §\ Ÿ\ ¨\ ”\ v\ L\ N\ P\ G\ V\ ž\ +\ R\ ©\ ª\ w\ O\ \ Ê\ ­\ \ ¬\ O\ â\ «\ à\ ­\ ê\ b\ ß\ =\ \ °\ X\ ß\ ³\ C\ ¯\ ²\ ¼\ ´\ µ\ ¶\ ·\ ¸\ P\ ¹\ è\ º\ þ\ ü\ »\ ‹\ ®\ h\ ¿\ ¾\ ¡\ 1\ ,\ À\ \ ñ\ V\ Ã\ Á\ Ã\ Ä\ “\ Â\ V\ Ÿ\ Å\ Æ\ Ç\ û\ È\ •\ É\ Ê\ ½\ Ó\ ë\ ;\ Ë\ O\ Í\ M\ Ð\ Ì\ ;\ Ñ\ Ò\ Õ\ \ Î\ ‹\ Ô\ [\ Ï\ Ö\ ˜\ Ø\ ^\ ×\ \ x\ O\ L\ ô\ Ù\ \ +\ Ú\ Û\ C\ ê\ |\ R\ n\ Ü\ \ Ý\ Þ\ 1\ ß\ X\ ã\ æ\ à\ á\ Þ\ â\ å\ l\ ç\ ‰\ Ë\ 1\ À\ è\ _\ ê\ C\ ¡\ ì\ é\ 2\ ä\ Ó\ ~\ Y\ ¼\ þ\ í\ A\ â\ î\ ð\ é\ ñ\ ò\ ó\ O\ ï\ =\ b\ O\ n\ ô\ ‹\ í\ õ\ ÷\ À\ ö\ X\ ú\ û\ O\ P\ O\ ;\ ç\ ½\ R\ z\ (\ ý\ \ \ ÿ\ X\ \ {\ •\ \ “\ \ ô\ L\ &\ b\ \ <\ À\ b\ Ÿ\ \ b\ É\ O\ À\ ž\ \ À\ ø\ ù\ ¸\ ü\ \ £\ \ \ Ï\ m\ \ O\ y\ O\ y\ <\ ¸\ \ R\ §\ ²\ \ À\ ß\ \ g\ X\ \ \ \ -\ ò\ ‚\ \ \ ý\ \ Â\ \ \ +\ ¢\ å\ R\ O\ \ \ \ \ O\ \ \ !\ \"\ P\ o\ #\ L\ A\ %\ $\ \ x\ ì\ ¸\ ¿\ X\ ¢\ i\ L\ ¶\ À\ ž\ µ\ \ \ \ 6\ ¨\ ì\ ~\ 6\ 2\ ;\ $\ )\ z\ '\ ç\ <\ I\ ¢\ &\ (\ <\ â\ *\ +\ ‹\ y\ í\ /\ 0\ ì\ ½\ Ú\ ú\ “\ 3\ 1\ g\ â\ 4\ 5\ Ê\ +\ c\ 7\ O\ E\ ¹\ 8\ 5\ »\ ¾\ J\ Š\ a\ b\ y\ ¡\ ^\ :\ á\ ;\ Ð\ .\ ,\ 9\ £\ \ m\ H\ L\ P\ U\ >\ 6\ <\ Ü\ b\ =\ ?\ 4\ .\ O\ j\ \ A\ Ñ\ ³\ B\ ¬\ r\ O\ ;\ C\ D\ R\ \ F\ =\ ˆ\ b\ O\ G\ m\ b\ .\ I\ J\ K\ |\ {\ M\ „\ É\ O\ =\ O\ R\ \ ô\ ‹\ í\ S\ T\ <\ W\ f\ V\ ¯\ i\ X\ |\ Y\ ‚\ Z\ ¿\ [\ L\ ª\ @\ E\ \ N\ \\\ Q\ ã\ ¨\ i\ d\ z\ A\ O\ ]\ ^\ ¥\ ’\ _\ ¿\ ¬\ `\ É\ »\ m\ U\ O\ C\ \ a\ ¿\ b\ z\ c\ ž\ 1\ \ þ\ À\ x\ A\ ×\ `\ O\ ô\ z\ R\ f\ g\ ý\ I\ h\ O\ \ u\ x\ k\ e\ ã\ ó\ E\ R\ l\ \ ì\ r\ þ\ ¿\ m\ A\ X\ e\ €\ í\ 2\ j\ n\ w\ H\ ƒ\ r\ z\ o\ O\ è\ Î\ p\ q\ ‚\ t\ I\ s\ M\ À\ “\ A\ ;\ V\ ,\ \ u\ Å\ ‹\ v\ x\ y\ |\ Ò\ R\ z\ {\ ß\ b\ b\ }\ ú\ 1\ ­\ \ ~\ L\ \ ‚\ €\ \ \ P\ ê\ V\ U\ †\ K\ À\ ‡\ z\ W\ U\ ‰\ Š\ ‹\ Œ\ \ ˆ\ Ž\ ,\ „\ 7\ \ y\ ‹\ \ P\ ‘\ ’\ ¶\ ›\ “\ •\ –\ £\ ¤\ —\ ˜\ ¥\ ¦\ ™\ \ ž\ ”\ š\ œ\ Ÿ\ ©\ ¡\ §\ «\ ¬\ ¢\ ®\ ¨\ ª\ ­\ ·\ ¯\ ¸\ ¹\ »\ º\ ¿\ À\ ¼\ Á\ Ã\ ¾\ Ä\ Å\ Æ\ Ç\ Â\ ½\ õ\ ï\ Ò\ ü\ Û\ Í\ \ û\ ñ\ ã\ Ó\ Ê\ È\ Ë\ Ì\ Î\ Ñ\ Ñ\ Ð\ Ö\ ×\ Ô\ Ø\ Ü\ Ý\ ç\ ß\ Ú\ ä\ Þ\ à\ á\ å\ ì\ æ\ è\ é\ ê\ í\ ó\ î\ \ ù\ ò\ ë\ ô\ ö\ \ þ\ ÷\ ú\ ð\ \ ý\ ÿ\ \ \ \ \ \ \ \ é\ \ \ ø\ â\ É\ \ Õ\ \ \ \ Ù\ Ï\ A\ :\ P\ &\ D\ \ \ !\ \ \ æ\ è\ æ\ \ %\ \"\ *\ )\ (\ +\ ,\ 2\ Î\ .\ Î\ '\ $\ \ /\ -\ 9\ *\ 3\ 0\ 6\ 1\ 4\ 7\ ;\ =\ 8\ ?\ <\ @\ B\ >\ K\ C\ F\ (\ \ G\ H\ M\ T\ I\ N\ E\ J\ F\ O\ Q\ R\ S\ V\ L\ U\ 5\ é\ \ #\ \ \ €\ \ _\ „\ m\ W\ M\ \\\ Z\ [\ æ\ Y\ `\ a\ d\ b\ c\ q\ r\ s\ u\ l\ Î\ e\ f\ g\ h\ i\ j\ w\ t\ k\ x\ y\ z\ {\ |\ }\ ~\ \ \ ƒ\ v\ †\ \ ‚\ ‰\ Š\ V\ ‡\ ˆ\ \ ‹\ \ ø\ “\ Ž\ ‘\ \ Œ\ ’\ ”\ •\ –\ n\ ^\ U\ p\ o\ ]\ X\ Í\ œ\ ¡\ \ ˜\ ™\ —\ š\ ž\ Ÿ\ @\ £\ N\ ¤\ ¥\ ¦\ Ô\ ÷\ æ\ ¢\ ›\ §\ °\ ©\ ª\ «\ ¬\ ­\ ®\ ¯\ ³\ ±\ ´\ ²\ µ\ ¶\ ·\ ¸\ »\ ¹\ º\ ¼\ ¨\ ò\ Ý\ Ö\ ì\ Î\ Å\ Ü\ À\ ½\ Á\ Â\ Ã\ È\ Ä\ Æ\ É\ !\ Ç\ Ï\ Ñ\ Ð\ Ë\ Õ\ Ó\ Í\ `\ Ê\ Ò\ s\ ×\ ;\ Û\ Ù\ æ\ Ô\ E\ Ì\ Ü\ Ú\ Þ\ á\ ¥\ ó\ |\ à\ â\ æ\ ç\ Î\ å\ è\ !\ ê\ •\ ï\ é\ í\ ë\ ð\ ñ\ ó\ î\ ô\ õ\ w\ E\ ß\ ¿\ Ø\ ä\ ã\ ¾\ \ '\ \ !\ Û\ ø\ )\ \ ÷\ ù\ ü\ ý\ !\ ö\ ú\ þ\ \ \ N\ Š\ \ ó\ ã\ û\ `\ Ò\ `\ ê\ \ \ \ \ >\ \ \ \ \ \ \ !\ \ \ ã\ y\ \ \ \ >\ \ è\ \ ó\ }\ \ \"\ \ &\ \ #\ â\ (\ ž\ +\ ì\ ,\ -\ ä\ $\ 1\ \ *\ %\ \ ÿ\ @\ '\ B\ 0\ G\ û\ =\ !\ .\ Ò\ ò\ m\ \ /\ 1\ ÷\ 2\ 6\ 5\ ê\ >\ ?\ ê\ A\ C\ Þ\ 7\ 8\ 9\ :\ û\ F\ è\ 4\ 3\ \ H\ E\ ;\ <\ D\ ]\ t\ g\ k\ [\ j\ ó\ R\ X\ T\ K\ J\ N\ L\ O\ M\ P\ Q\ U\ Z\ W\ S\ M\ \\\ '\ ]\ `\ Y\ a\ b\ c\ e\ c\ d\ ^\ c\ V\ l\ h\ y\ \ l\ Z\ i\ n\ o\ z\ \ q\ s\ u\ v\ '\ p\ w\ x\ {\ R\ y\ \ |\ ~\ z\ \ `\ }\ ^\ I\ m\ f\ r\ _\ n\ \ Ò\ €\ è\ ‚\ ƒ\ !\ „\ í\ ›\ \ \ ­\ û\ •\ ”\ Î\ ‰\ †\ ‡\ ú\ ˆ\ Œ\ ƒ\ `\ ‹\ Ž\ \ N\ ‘\ !\ Š\ ’\ “\ `\ à\ w\ Î\ b\ ÷\ –\ ˜\ ™\ Þ\ &\ š\ Ÿ\ ¢\ ž\ ¡\ œ\ ý\ ú\ •\ !\ £\ p\ §\ \ ¤\ \ ¥\ «\ ¦\ ¨\ ©\ ª\ ¯\ \ á\ ®\ ¬\ —\ —\ Î\ ³\ ²\ \ ¹\ Õ\ N\ °\ ±\ å\ A\ ´\ Î\ >\ c\ ô\ ·\ ¶\ í\ ¿\ o\ »\ Î\ 4\ ¼\ 5\ º\ ½\ `\ 5\ >\ À\ Ä\ ¾\ æ\ Â\ @\ Ç\ \ Å\ Â\ ú\ º\ Æ\ ~\ V\ z\ Ë\ «\ É\ \ Ì\ Ñ\ &\ Ê\ C\ Ò\ Ó\ Ô\ Õ\ †\ Ï\ Ð\ ø\ ¸\ Í\ Á\ Ã\ È\ µ\ þ\ ß\ â\ \ Ø\ Ù\ È\ Þ\ Ü\ Ö\ /\ Î\ à\ Ü\ æ\ Î\ 4\ Ô\ \ Ô\ ç\ á\ ã\ í\ Î\ é\ c\ ¥\ ì\ ü\ ó\ b\ Æ\ î\ ï\ ð\ ;\ Â\ ñ\ ô\ õ\ ø\ ú\ û\ ÿ\ &\ ù\ ò\ \ v\ æ\ \ a\ ë\ Ú\ ×\ ÷\ ö\ ý\ ê\ è\ Ý\ Û\ ä\ å\ )\ 7\ 0\ \ \ '\ .\ \ ¼\ \ \ \ æ\ \ ¯\ \ Z\ \ V\ \ \ Û\ \ #\ ó\ \ É\ \ É\ \ !\ \ %\ &\ í\ (\ +\ ä\ \ \ \ \ £\ \ ,\ -\ /\ 1\ 2\ ó\ 3\ *\ 5\ 6\ 8\ æ\ \"\ /\ \ $\ !\ \ \ \ 4\ \ ÿ\ E\ L\ M\ J\ K\ C\ A\ 9\ G\ ;\ B\ \ :\ <\ =\ >\ D\ â\ ?\ F\ \ H\ I\ \ Þ\ @\ m\ o\ q\ c\ Y\ \\\ R\ N\ ¢\ O\ Î\ c\ Ü\ W\ Û\ T\ ú\ U\ ä\ V\ Þ\ _\ X\ Ë\ ^\ 8\ `\ b\ d\ Ï\ a\ e\ f\ g\ Ñ\ v\ i\ \ /\ ž\ h\ <\ É\ k\ È\ ù\ n\ p\ Î\ r\ O\ y\ t\ Î\ ‚\ \ s\ v\ w\ `\ x\ Â\ l\ 1\ j\ S\ u\ Z\ ]\ [\ Q\ ]\ P\ ›\ Š\ „\ W\ b\ V\ z\ €\ š\ |\ ‚\ ˆ\ š\ ~\ †\ y\ ‡\ \ y\ ¨\ \ š\ Ž\ “\ Ö\ ‘\ Ÿ\ Œ\ \ {\ \ \ W\ ƒ\ T\ }\ \ ‰\ !\ Â\ ó\ Þ\ Î\ ’\ ”\ !\ \ \ —\ •\ –\ Î\ ˜\ \ &\ ¥\ ƒ\ Î\ ù\ ¡\ ¢\ £\ œ\ ›\ ß\ ¤\ V\ ¦\ §\ ©\ N\ Û\ ª\ «\ ó\ `\ ¬\ ­\ ®\ ¯\ –\ °\ 5\ \ ê\ Š\ ‹\ ™\ ›\ X\ ž\ Ù\ Á\ '\ Ç\ Ï\ Ã\ i\ ¹\ º\ ¼\ ½\ ¾\ ¶\ ±\ ³\ ²\ Õ\ ;\ µ\ ´\ ·\ Â\ Å\ R\ '\ Æ\ \ æ\ z\ Í\ Ë\ R\ Ë\ É\ È\ û\ Î\ Ì\ Ê\ —\ ¹\ Ð\ \ /\ Ñ\ Ò\ Ó\ Ô\ Õ\ ×\ v\ Ø\ Ú\ Ö\ ¤\ Í\ û\ ¿\ ¸\ À\ Ä\ —\ »\ û\ î\ Ý\ ñ\ á\ þ\ \ ë\ Û\ `\ /\ å\ ó\ Ü\ Þ\ à\ â\ ã\ ä\ \ ç\ è\ Ð\ é\ \ F\ •\ í\ ò\ ì\ ï\ G\ é\ Î\ ô\ ó\ õ\ \ ¤\ ð\ N\ æ\ ÷\ ø\ ö\ 8\ ù\ ú\ ü\ ý\ +\ s\ Ó\ \ \ Ê\ ÿ\ ˆ\ \ \ \ \ /\ V\ ƒ\ j\ V\ \ ê\ ß\ æ\ 2\ 5\ /\ \ \"\ )\ 4\ !\ \ \ H\ \ •\ 8\ \ \ \ \ \ \ \ \ R\ Z\ \ ´\ æ\ \ \ 8\ i\ \ \ !\ «\ \ #\ (\ &\ \ %\ ,\ >\ '\ -\ +\ .\ 0\ 1\ &\ 3\ 7\ æ\ z\ 8\ Æ\ 6\ 9\ 1\ Â\ \ \ *\ $\ \ \ \ D\ ?\ I\ R\ ó\ =\ :\ `\ ;\ >\ @\ `\ ¥\ y\ ˜\ É\ T\ A\ B\ C\ F\ H\ \ E\ Â\ \ Æ\ ó\ J\ K\ L\ M\ y\ N\ O\ ƒ\ G\ ¤\ ž\ P\ Q\ S\ T\ <\ l\ i\ b\ h\ R\ \ N\ U\ C\ a\ É\ {\ É\ \ Y\ Z\ [\ \\\ ]\ ^\ `\ V\ W\ c\ d\ e\ Ó\ `\ ë\ `\ V\ ß\ \ Ü\ h\ ¡\ \ ê\ g\ º\ k\ ž\ m\ |\ c\ û\ j\ ƒ\ p\ \ ÿ\ q\ /\ B\ t\ æ\ –\ X\ o\ n\ _\ r\ ‘\ \ í\ x\ u\ v\ w\ ^\ z\ y\ é\ Î\ }\ ö\ |\ Î\ r\ \ !\ Î\ Û\ \ ~\ ƒ\ ‡\ N\ <\ ‚\ s\ f\ 7\ „\ (\ º\ \ y\ ˆ\ è\ ‰\ z\ ß\ ‹\ \ 5\ \ ’\ “\ ”\ V\ ¤\ Ž\ •\ ˜\ —\ `\ t\ ™\ †\ €\ ê\ –\ Š\ Œ\ {\ ©\ ¢\ ¹\ µ\ ¨\ \ ž\ N\ š\ œ\ ›\ ó\ \ Ÿ\ ú\ £\ ¡\ \ \ ¤\ ¥\ ²\ \ ª\ 6\ 5\ §\ ¦\ ¬\ ë\ V\ ­\ ¯\ ®\ Î\ •\ \ i\ E\ É\ \ X\ ¶\ ·\ »\ ó\ Ô\ ¼\ ½\ ¾\ Â\ ¿\ À\ Î\ Ä\ Ã\ *\ Á\ ®\ ´\ s\ ±\ º\ «\ ¸\ °\ ³\ å\ Å\ â\ Ç\ í\ \ É\ Æ\ Ô\ È\ !\ Ê\ <\ É\ s\ \ Ë\ ‡\ Î\ Ì\ ™\ Ï\ Ð\ Ô\ Ñ\ Î\ $\ x\ Ò\ Ó\ (\ ú\ ì\ n\ \ Õ\ È\ Ô\ Ž\ ™\ Ö\ ×\ Ú\ Ü\ ó\ Þ\ í\ Ý\ ß\ y\ à\ á\ C\ Î\ à\ Í\ ã\ ä\ ç\ +\ \ Ô\ Ø\ ¦\ å\ æ\ ú\ Ù\ é\ Û\ Í\ [\ \ î\ ë\ è\ `\ ‰\ é\ ê\ ì\ k\ æ\ í\ z\ è\ ï\ ð\ Î\ ›\ ó\ ñ\ ò\ ô\ @\ T\ \ õ\ Í\ „\ ö\ ÷\ \ Î\ :\ æ\ È\ ú\ R\ +\ û\ ±\ ý\ •\ Â\ ü\ þ\ ÿ\ ‰\ \ Ð\ \ \ \ \ \ \ ä\ \ \ ø\ Ë\ ƒ\ •\ 1\ ù\ \ %\ *\ \ M\ W\ \ \ Â\ È\ Î\ N\ \ Ð\ `\ Ò\ \ ø\ <\ \ \ \ \ !\ '\ \ ˆ\ \ \ \\\ \ >\ v\ æ\ \ \ '\ \ `\ X\ !\ ž\ ]\ \ ,\ ó\ \"\ #\ &\ O\ \\\ \ )\ –\ T\ '\ ä\ <\ \ (\ +\ ê\ \ \ \ $\ ž\ \ \ 1\ 5\ 7\ 0\ Î\ /\ 2\ 3\ 4\ z\ 6\ .\ -\ S\ ^\ N\ G\ Ç\ X\ O\ M\ B\ @\ R\ ?\ 8\ 9\ :\ A\ C\ v\ E\ D\ 4\ F\ H\ L\ R\ J\ I\ è\ \ y\ É\ \ \ ñ\ N\ „\ M\ Î\ P\ ­\ R\ ž\ Q\ Y\ Z\ [\ \\\ ]\ _\ `\ a\ U\ £\ b\ c\ d\ Ü\ e\ \ Â\ T\ €\ K\ \ Ò\ ì\ ;\ n\ à\ W\ V\ =\ >\ <\ \ _\ ›\ m\ j\ Š\ „\ u\ o\ !\ f\ g\ h\ \ š\ !\ c\ œ\ ±\ <\ `\ k\ l\ n\ Ð\ ê\ p\ Õ\ X\ i\ r\ ƒ\ s\ v\ +\ x\ ï\ y\ z\ /\ t\ *\ ï\ }\ R\ {\ •\ |\ Þ\ €\ ð\ ~\ \ \ ‚\ ˆ\ Î\ <\ †\ É\ x\ ‰\ ‹\ Œ\ ì\ í\ ƒ\ L\ w\ ä\ §\ i\ ‡\ q\ ³\ \ o\ \ ž\ “\ ´\ i\ —\ ²\ ­\ (\ ¦\ Ÿ\ ’\ @\ \ Ž\ \ h\ \ Ž\ ;\ 4\ ‘\ ”\ ÿ\ v\ R\ ˜\ \ –\ ™\ ‚\ ä\ ›\ |\ š\ X\ œ\ é\ ’\ Ü\ Ÿ\ F\ È\ ¡\ ¤\ R\ ¢\ Ç\ ¨\ ª\ ¯\ y\ °\ <\ ®\ Í\ «\ µ\ ±\ ¬\ `\ Ô\ •\ ¥\ §\ ©\ £\ _\ ¶\ :\ Ë\ Î\ Û\ Ê\ É\ ¾\ ¸\ ¹\ »\ ·\ À\ Á\ Å\ ½\ Æ\ Ì\ Í\ Ï\ Ð\ Ñ\ Ò\ É\ Ó\ Ô\ Õ\ Ö\ ×\ Ù\ Ø\ Ü\ Ú\ Ý\ Ç\ Ä\ º\ Ã\ ¼\ ¿\ Þ\ È\ Â\ ã\ ß\ à\ á\ ç\ å\ è\ â\ ä\ æ\ é\ ê\ Þ\ ñ\ ó\ í\ ë\ ì\ ï\ ô\ î\ ð\ ò\ ö\ õ\ \ \ þ\ ù\ \ ÷\ ú\ \ \ \ \ ü\ ø\ \ \ \ \ \ \ \ \ \ \ \ \ ì\ \ û\ \ ý\ ÿ\ \ Â\ j\ <\ Ð\ $\ '\ (\ +\ Õ\ )\ ,\ .\ 0\ 2\ /\ 3\ 4\ ×\ 1\ 6\ 5\ 7\ 8\ 9\ :\ ;\ =\ ø\ %\ \ \ \ \ \ \ \"\ #\ &\ !\ *\ @\ A\ D\ -\ Á\ G\ ?\ E\ B\ >\ C\ F\ H\ I\ J\ —\ o\ €\ t\ K\ ©\ ‹\ |\ l\ c\ Z\ S\ L\ M\ N\ P\ T\ U\ V\ W\ X\ [\ \\\ ]\ _\ `\ a\ d\ e\ f\ g\ h\ i\ j\ p\ k\ m\ q\ s\ u\ w\ n\ ~\ \ \ ‚\ ƒ\ „\ u\ ™\ ~\ ˆ\ †\ ‡\ ‰\ \ Š\ Ž\ \ \ ‘\ “\ \ ”\ ˜\ š\ œ\ \ ¢\ £\ ¤\ ¦\ ¥\ §\ ¨\ x\ v\ y\ z\ {\ b\ Y\ Q\ Ÿ\ ’\ Œ\ •\ ›\ O\ }\ r\ R\ O\ ^\ æ\ 7\ ò\ ú\ Ñ\ È\ ý\ \ ï\ ÷\ þ\ ¼\ \ ç\ Ç\ ¿\ µ\ ª\ ¬\ ­\ ®\ °\ M\ ´\ ²\ ¹\ »\ ¶\ ·\ À\ Î\ Ê\ Ì\ Ò\ Ô\ Ð\ T\ ½\ Y\ N\ Ã\ Å\ Æ\ Ö\ Ó\ Ù\ Õ\ Û\ Ø\ Ü\ Ý\ Þ\ ß\ à\ á\ N\ ™\ è\ ê\ é\ ä\ ì\ í\ î\ ø\ ß\ ž\ ñ\ ó\ ù\ –\ û\ í\ ž\ ¡\ \ ô\ Ú\ É\ ¾\ j\ «\ ð\ õ\ ü\ \ \ ã\ ³\ Á\ ±\ ¯\ \ \ ë\ Ë\ Â\ Ï\ Ä\ :\ c\ Y\ B\ ö\ å\ /\ )\ º\ \ \ \ \ \ \ \ \ T\ \ \"\ ¸\ #\ $\ %\ '\ *\ +\ £\ (\ ,\ -\ 0\ Í\ 1\ 3\ 4\ 5\ 6\ j\ .\ 7\ ×\ 8\ 9\ <\ ;\ >\ =\ ?\ â\ G\ J\ D\ C\ K\ M\ N\ O\ Q\ U\ S\ ø\ T\ V\ W\ ÿ\ [\ \\\ ^\ _\ \ `\ H\ k\ \ \ X\ ]\ b\ E\ :\ @\ \ \ \ F\ \ æ\ L\ Ä\ :\ \ \ •\ ž\ Ÿ\ ’\ ‚\ q\ m\ l\ j\ d\ \ e\ f\ \ s\ t\ |\ v\ w\ y\ x\ u\ 3\ \ !\ n\ o\ &\ )\ 2\ z\ |\ }\ ~\ \ ƒ\ „\ †\ ?\ “\ A\ \ ‰\ Š\ I\ ‹\ Œ\ \ ˆ\ Ž\ \ P\ R\ \ “\ ”\ —\ {\ ‘\ ˜\ ™\ Z\ ›\ ;\ ]\ œ\ ’\ a\ ˆ\ {\ p\ k\ h\ –\ ‡\ i\ š\ \ €\ k\ r\ g\ Þ\ æ\ Ë\ ú\ —\ ¥\ è\ é\ Ñ\ ½\ Á\ ç\ ¼\ ¶\ °\ ¡\ 0\ £\ ¢\ ª\ ß\ «\ ¬\ ­\ ø\ ¯\ ±\ _\ ²\ ·\ »\ ³\ ¸\ N\ u\ —\ ¹\ º\ Ù\ ~\ À\ á\ ¾\ »\ Ä\ ¿\ S\ Â\ Æ\ Ã\ Ç\ Â\ Ë\ 6\ È\ ‰\ Å\ é\ ×\ x\ Í\ z\ É\ \ Ó\ Î\ Ô\ —\ Ø\ Ù\ Ú\ à\ Û\ Ü\ Ý\ ß\ Õ\ â\ ã\ x\ ä\ æ\ à\ å\ Ò\ Ð\ ´\ ©\ ¤\ §\ ¨\ Ì\ á\ Ï\ Ê\ ±\ µ\ ®\ ¦\ &\ .\ \ ú\ ö\ ï\ 7\ \ 3\ \ \ \ ×\ ù\ ì\ ë\ í\ î\ ð\ Y\ ó\ ô\ Y\ þ\ ü\ â\ ò\ ê\ (\ û\ Å\ ÿ\ \ #\ x\ i\ \ x\ \ \ »\ “\ í\ \ ê\ 6\ \ \ \ \ \ \ \ \ x\ \ +\ \ \ \ \"\ \ Ö\ Ü\ #\ $\ !\ %\ '\ _\ (\ )\ *\ x\ ,\ æ\ /\ 0\ 1\ ±\ \ z\ ý\ ø\ ñ\ ÷\ œ\ 2\ \ \ \ õ\ Y\ .\ d\ \ I\ T\ Ä\ X\ F\ ¶\ ]\ S\ Í\ \ 5\ 6\ \ 7\ 8\ :\ í\ d\ ;\ <\ =\ >\ >\ ?\ @\ A\ P\ M\ \ B\ C\ x\ x\ ì\ D\ \ G\ H\ º\ L\ J\ K\ ¢\ O\ P\ Q\ V\ 4\ é\ ó\ Z\ [\ \\\ ¹\ ^\ _\ `\ v\ a\ b\ c\ e\ 9\ M\ z\ 9\ 4\ N\ €\ U\ R\ ±\ E\ W\ Ê\ \ f\ l\ g\ m\ n\ p\ o\ Š\ ƒ\ x\ s\ t\ u\ r\ v\ z\ r\ q\ w\ {\ \ |\ }\ €\ †\ \ „\ ~\ \ ‡\ u\ }\ ‘\ ’\ “\ †\ Ž\ Œ\ ‰\ \ \ ‹\ —\ –\ ˜\ –\ ¡\ œ\ ‘\ £\ ¤\ ¥\ \ š\ ™\ ¢\ •\ Ÿ\ ›\ •\ \ ˆ\ ‚\ y\ \ ž\ ”\ é\ ×\ Å\ ·\ «\ Î\ Ò\ ¿\ Á\ Ä\ ´\ Ç\ Ê\ ´\ È\ Ì\ Î\ Ð\ Ë\ Ô\ Ñ\ Ù\ Ó\ Õ\ Ö\ Û\ Ø\ Ü\ Ý\ Þ\ ä\ Ê\ ß\ á\ è\ ´\ æ\ ã\ à\ í\ ç\ ë\ Ù\ å\ ê\ ì\ Ú\ Ï\ Æ\ ²\ ¦\ ¨\ ©\ ª\ ¬\ ®\ °\ §\ ³\ ´\ µ\ ¶\ ¹\ ¸\ º\ ¼\ ¾\ »\ À\ Â\ Ã\ ±\ ¯\ â\ É\ Í\ ½\ ­\ (\ 0\ \ ý\ ó\ ,\ \ \ ð\ ò\ õ\ ÷\ Ù\ ï\ ø\ ù\ ú\ \ \ ä\ \ \ \ \ \ \ ´\ ²\ ü\ î\ \ \ \ \ \ \ \ \ \ ´\ \ å\ !\ \"\ \ \ $\ '\ %\ #\ )\ \ 2\ +\ .\ *\ /\ 1\ û\ &\ \ \ û\ \ ÿ\ \ þ\ ñ\ ô\ é\ ö\ T\ X\ 5\ b\ R\ G\ C\ ¨\ @\ ;\ ¨\ 4\ 6\ 7\ ü\ 9\ ì\ \ :\ <\ =\ A\ E\ ï\ F\ æ\ H\ :\ I\ O\ \"\ K\ \ L\ D\ M\ P\ S\ U\ V\ W\ Y\ [\ Q\ Z\ N\ \\\ ]\ ^\ d\ C\ _\ ^\ e\ æ\ f\ c\ Æ\ å\ Ï\ J\ å\ ¨\ å\ 8\ >\ å\ 3\ a\ B\ `\ ?\ œ\ ™\ \ Š\ ˆ\ t\ i\ ƒ\ €\ \ –\ \ „\ {\ Î\ s\ w\ u\ h\ j\ k\ l\ m\ o\ g\ p\ \ ê\ n\ x\ y\ ~\ z\ \ \ \ ‚\ }\ ‡\ Ž\ ²\ æ\ ÷\ |\ q\ *\ \ ‹\ ‰\ ’\ “\ ”\ •\ —\ À\ ˜\ e\ u\ '\ ¨\ š\ ^\ ›\ \ ž\ å\ Ã\ å\ \ Œ\ å\ v\ å\ q\ ‘\ \ †\ r\ É\ ý\ ±\ ¤\ ­\ ¨\ Ì\ ´\ ´\ \ „\ º\ ÷\ ¼\ ì\ ½\ ¿\ Ý\ ^\ ¾\ À\ Á\ Ä\ ¸\ Å\ Ç\ Ã\ c\ È\ Î\ Ê\ 2\ Í\ Æ\ µ\ ª\ ;\ æ\ ¡\ ¦\ µ\ ‡\ \"\ ¢\ ¬\ ©\ «\ ¥\ °\ ®\ ²\ \"\ ³\ ´\ ÷\ \ M\ ¶\ ·\ å\ ¸\ ¹\ \ \ £\ §\ Ï\ Â\ \ Ë\ »\ ¯\ Ÿ\ ò\ ì\ Þ\ Ö\ ã\ õ\ ë\ ä\ à\ Ê\ Ô\ Ñ\ ä\ Ò\ \ Õ\ ×\ Ø\ Ù\ Ç\ Û\ Ý\ Ø\ Ú\ á\ \ ß\ æ\ â\ æ\ g\ å\ å\ ä\ ¨\ æ\ »\ q\ º\ î\ Û\ ð\ ñ\ ó\ ´\ ²\ ÷\ ô\ ã\ ï\ Z\ d\ è\ ú\ ù\ ö\ ø\ \ æ\ \ c\ Â\ é\ Ü\ Ó\ å\ Ð\ å\ ç\ ê\ \ í\ ô\ *\ \ \ \ œ\ '\ \ !\ #\ \ \ ;\ S\ û\ þ\ \ \ Ø\ \ µ\ ÿ\ ö\ \ \ Z\ •\ \ '\ \ \ \ \"\ ³\ ¸\ \ ´\ ”\ \ ´\ \ <\ \ ¨\ \ ¨\ \ ‚\ \ \ \"\ Ñ\ \ \ )\ +\ (\ 2\ $\ %\ æ\ &\ \ À\ å\ ÷\ Ø\ ý\ 2\ \ \ \ ü\ /\ 2\ \ ,\ ö\ \ Ñ\ \ 3\ .\ 1\ 0\ W\ Z\ T\ I\ A\ ê\ S\ P\ ²\ x\ 9\ 4\ ¿\ 5\ |\ 6\ ;\ u\ æ\ ´\ \ 8\ 1\ >\ ¨\ <\ ö\ ?\ C\ ©\ @\ ³\ æ\ =\ q\ F\ ¨\ u\ æ\ G\ ð\ \ K\ H\ E\ \ J\ R\ M\ O\ Y\ Ð\ V\ X\ ¨\ \ ¨\ L\ [\ Q\ 0\ ÷\ å\ q\ 2\ \ Æ\ 7\ D\ U\ N\ ö\ :\ B\ Ë\ \ f\ \ \\\ z\ ´\ ä\ ;\ e\ ¨\ '\ Ò\ õ\ ?\ ¨\ _\ #\ Û\ ^\ ]\ ´\ ð\ <\ g\ #\ 8\ i\ h\ §\ \ ´\ j\ ¨\ k\ l\ ¨\ ÿ\ <\ M\ m\ s\ p\ è\ \ *\ o\ t\ V\ v\ u\ \ q\ w\ ù\ \ y\ å\ x\ ~\ {\ Ð\ c\ |\ \"\ }\ r\ q\ b\ Œ\ ·\ d\ n\ c\ `\ a\ ¥\ T\ †\ ¢\ ¡\ œ\ ™\ x\ \ ‡\ Ê\ Ô\ €\ \ \ å\ ‚\ ƒ\ „\ ¨\ *\ „\ ®\ €\ \ ‰\ 2\ {\ ‹\ Æ\ ˆ\ Œ\ \ \ Ž\ Š\ \ ‘\ “\ Ð\ ’\ \ ¿\ à\ ,\ –\ ©\ —\ ©\ 2\ ˜\ \ ›\ ‚\ š\ Ÿ\ å\ £\ ¤\ ¦\ \ ¨\ ì\ ¯\ M\ \ Œ\ ž\ ”\ •\ Ë\ É\ \ ±\ ¸\ ®\ ´\ —\ æ\ §\ ¨\ «\ ª\ ¾\ å\ ¬\ Á\ ´\ ¯\ ô\ \ ²\ ³\ ´\ ý\ Ï\ ·\ Ý\ \ µ\ ´\ E\ ¶\ ­\ \ ©\ °\ Ú\ Õ\ Ò\ œ\ É\ ´\ '\ Ö\ ²\ Ë\ \ ´\ ½\ ¹\ º\ 2\ »\ ¿\ ¼\ ‡\ À\ \ Á\ Å\ Â\ Ã\ ©\ \ K\ ì\ \ Ç\ Ä\ ¨\ Ê\ Í\ \ Ì\ ,\ Ï\ u\ }\ ´\ Ð\ H\ <\ \ ´\ ^\ Ó\ Ñ\ Ô\ p\ Ü\ \"\ ×\ ¨\ Û\ \ q\ Î\ \ À\ ¾\ Ø\ Ù\ Ë\ È\ Æ\ ý\ Ö\ *\ æ\ è\ \ ©\ \ à\ G\ \ â\ X\ å\ å\ ã\ ì\ ‚\ î\ ´\ ë\ í\ ç\ ´\ k\ ï\ ò\ ©\ 2\ ð\ ñ\ \ µ\ ô\ ó\ õ\ ø\ ö\ û\ æ\ S\ 2\ þ\ ¼\ ï\ S\ ÿ\ \ \ ÷\ \ ú\ å\ \ ´\ b\ ;\ ù\ ÷\ ê\ }\ \ ß\ Þ\ Ý\ å\ q\ ì\ á\ å\ á\ L\ \ é\ ü\ ä\ \ œ\ ë\ Ì\ #\ \ 2\ ´\ ²\ \ \ \ \ *\ \ ´\ º\ \ \ Û\ „\ \ 7\ \ Ä\ Ð\ \ \ \ \ \ ¨\ å\ ©\ ´\ ¼\ \ \ \ ™\ æ\ \"\ %\ \ !\ ´\ \"\ &\ $\ |\ \ \ Ð\ “\ \ r\ '\ (\ \ \ \ \ ,\ /\ +\ *\ 0\ 2\ ÷\ .\ 1\ )\ -\ =\ :\ 4\ 5\ 6\ 7\ 8\ >\ ;\ 9\ 3\ @\ ?\ <\ í\ M\ C\ ì\ Q\ E\ A\ œ\ G\ B\ H\ I\ K\ J\ L\ N\ O\ P\ P\ R\ S\ T\ V\ I\ W\ F\ U\ D\ x\ i\ Ò\ ^\ f\ E\ s\ p\ „\ \ X\ Y\ Z\ \ `\ þ\ ]\ a\ \ _\ \ c\ u\ d\ e\ ì\ b\ \ g\ ´\ h\ \ \ m\ \"\ j\ l\ n\ o\ p\ \ q\ æ\ r\ ì\ \ ï\ á\ ´\ v\ c\ u\ —\ y\ w\ \ t\ z\ æ\ ï\ {\ u\ |\ }\ \"\ q\ Ã\ ï\ Ë\ k\ B\ †\ U\ [\ \\\ œ\ ›\ —\ ~\ Î\ \ \ ©\ \ €\ ‚\ ƒ\ ‡\ ©\ „\ å\ ï\ ó\ Ü\ \ \ Û\ ˆ\ ä\ ‰\ ´\ à\ Š\ Ž\ =\ ‘\ ’\ $\ •\ \ \ ·\ „\ „\ ´\ \ ´\ Œ\ ‹\ ï\ \ “\ å\ ÷\ ¸\ —\ ´\ ˜\ 6\ '\ »\ š\ Ø\ ‰\ \ \ \ w\ \ $\ †\ ”\ –\ ™\ \ Š\ Š\ £\ ¤\ \ ¨\ \ ©\ \ ¼\ O\ å\ ¶\ æ\ ¬\ \ ­\ ×\ ‹\ ®\ i\ ¯\ °\ ±\ Ü\ \ }\ ´\ \ µ\ Z\ µ\ Ø\ å\ ´\ ü\ ²\ ü\ ª\ §\ Ÿ\ K\ :\ ¢\ ž\ ¶\ ·\ Q\ ¸\ º\ ¨\ Ë\ I\ ¨\ ¼\ Æ\ ê\ á\ «\ ¦\ ¡\ ¯\ ¹\ »\ ³\ Â\ ?\ ¥\ T\ Þ\ Ô\ Â\ ¾\ É\ ;\ À\ ¿\ ´\ \ d\ Á\ Ä\ Z\ \ Ù\ Ê\ Ø\ ½\ \ Ã\ ^\ Ó\ \ Å\ Æ\ <\ \ Ç\ k\ ö\ o\ ˆ\ ‘\ È\ Ë\ Ê\ Ã\ g\ Ì\ µ\ \ Ø\ Ê\ Ð\ ´\ Î\ Í\ Ò\ Ï\ Ñ\ ü\ \ Õ\ ´\ x\ ×\ Ó\ Ë\ å\ \ ¸\ Ù\ Ö\ u\ Ú\ Ñ\ Ü\ Ç\ Û\ ß\ Ý\ \ å\ à\ Ø\ L\ ÷\ ¯\ \ \ ÷\ å\ á\ î\ \ ï\ ^\ â\ )\ ´\ \ <\ Ó\ æ\ ¶\ ä\ ã\ ç\ \ ¨\ ë\ µ\ å\ ¼\ Z\ b\ ì\ ´\ ð\ ñ\ \ ò\ ô\ ó\ õ\ æ\ ©\ ì\ ‡\ ö\ \ î\ x\ %\ ¨\ ´\ Î\ â\ µ\ ø\ Æ\ å\ þ\ \ ü\ û\ ý\ \ ê\ à\ ÷\ |\ Ú\ é\ \ ”\ ù\ ú\ í\ è\ ™\ \ \ \ \ ª\ ¦\ ÿ\ ´\ q\ Ã\ ²\ ¬\ \ \ ˆ\ å\ \ \ ¨\ \ ´\ ‡\ <\ q\ æ\ ´\ \ \ \ ó\ \ !\ \ \ \ \ ê\ ˆ\ \ \ ”\ f\ \ „\ \ \ \ \ =\ ê\ ¼\ \ Ò\ Û\ \ P\ \ #\ \ \"\ Ý\ \ \ ´\ \ µ\ æ\ u\ ì\ \ \ ¿\ ´\ æ\ æ\ \ ó\ \ æ\ \ \ #\ \"\ ì\ \ ž\ 2\ \ $\ \ !\ \ \ %\ \ &\ ²\ \ ì\ å\ \ '\ \ è\ B\ 3\ 5\ 3\ ?\ 6\ /\ Û\ (\ )\ Û\ *\ -\ æ\ +\ ,\ ”\ 0\ 1\ ²\ 2\ \ .\ \ 2\ v\ Ù\ u\ 4\ b\ \ Þ\ à\ 9\ ;\ ï\ =\ ™\ æ\ /\ \ ý\ 7\ 2\ <\ ô\ Ù\ ×\ >\ \ A\ \ ²\ E\ C\ L\ F\ ¨\ G\ Ð\ D\ ¯\ :\ \ µ\ À\ @\ r\ r\ 8\ Y\ ^\ a\ Ò\ Ò\ T\ K\ I\ P\ [\ Z\ ,\ ü\ U\ ®\ O\ ‚\ \ H\ ü\ Ð\ ÿ\ ì\ §\ E\ J\ L\ \ #\ M\ Q\ \ l\ \ S\ ‚\ à\ å\ N\ ú\ w\ Ã\ ô\ ²\ ´\ Ñ\ ¸\ V\ Ð\ å\ º\ g\ ÷\ u\ å\ å\ \\\ ´\ ’\ <\ Z\ Ÿ\ ]\ \ ´\ k\ \ ´\ `\ Ç\ '\ ‚\ ˆ\ ‹\ '\ Ð\ \ \ Ð\ X\ _\ W\ R\ É\ Æ\ K\ ´\ f\ \ Ë\ c\ \ \ \ e\ h\ O\ g\ ²\ ì\ i\ Æ\ b\ d\ ±\ Y\ u\ ï\ x\ y\ „\ r\ E\ \ ñ\ j\ ß\ c\ ÷\ Ý\ p\ \ l\ \ 2\ k\ ´\ ß\ \ u\ q\ Ê\ ß\ \ ´\ t\ \ \ s\ v\ w\ ³\ x\ Ð\ à\ å\ z\ ~\ \ å\ h\ |\ å\ —\ \ Ð\ ÷\ Ð\ \ ~\ Ð\ \ }\ \ ‰\ m\ 0\ {\ '\ ”\ n\ o\ t\ —\ a\ \ ¿\ É\ i\ ‚\ €\ %\ 1\ †\ ©\ ƒ\ u\ ì\ \ ‡\ „\ Ó\ ˆ\ ‰\ Š\ \ d\ Ú\ \ ‹\ ;\ 2\ Ÿ\ ª\ Ÿ\ Œ\ \ Û\ Ž\ \ \ Æ\ \ \ ¤\ ï\ Ý\ å\ À\ \ {\ “\ Ý\ ’\ ’\ \ ”\ }\ •\ '\ ™\ Ý\ ¥\ r\ \ k\ \ 0\ ‘\ ˜\ –\ »\ «\ ¡\ ë\ \ ›\ —\ \ ð\ š\ \ \ \ \ ´\ \ \ œ\ þ\ ž\ q\ 8\ ö\ ì\ \ Ÿ\ q\ x\ ä\ ó\ £\ ¢\ \ \ ¤\ ¥\ \ Û\ \ 2\ å\ ¨\ \ ¨\ \ §\ Æ\ ©\ \ ¬\ \ ´\ ª\ 6\ ¤\ \ ¯\ ó\ ®\ ¯\ Ú\ b\ }\ ¦\ ­\ \\\ ä\ N\ ô\ \\\ Ñ\ Ô\ Ä\ T\ º\ ±\ C\ ½\ ¶\ ô\ P\ ´\ °\ ²\ ³\ ß\ ´\ µ\ ¹\ i\ º\ .\ ÿ\ ¸\ ì\ »\ \ ·\ Ý\ {\ \ ¼\ \ ³\ v\ ¾\ \ Â\ ¿\ À\ |\ Ã\ º\ Á\ Å\ Æ\ Ì\ Ç\ È\ Ì\ É\ Ð\ O\ “\ Ó\ ä\ Î\ Ë\ Í\ å\ L\ å\ û\ X\ î\ Ï\ ,\ Ê\ Ò\ L\ \ Ð\ Æ\ é\ \ Ü\ Ö\ ÿ\ Ê\ `\ Õ\ ×\ Ø\ \ \ \"\ Å\ Û\ Î\ ’\ ©\ ,\ Þ\ ä\ #\ Ú\ Ý\ ´\ \ à\ \ å\ æ\ \ ß\ \ ´\ Ê\ Ë\ ‰\ á\ ¼\ %\ €\ â\ ç\ \ X\ ÷\ ã\ ä\ 2\ Æ\ Å\ \ \ ,\ Ü\ æ\ \ Ì\ ê\ å\ V\ ë\ «\ ï\ æ\ \ ï\ è\ a\ å\ à\ \ Ù\ \\\ \ K\ ï\ \ þ\ #\ \ æ\ ™\ ´\ \ î\ ì\ \ ð\ ¯\ ´\ ò\ \ ó\ ^\ ê\ E\ Î\ õ\ ø\ æ\ Û\ ö\ ÷\ ù\ ú\ û\ :\ ü\ ´\ ‰\ ¶\ ÷\ \ ÿ\ ¹\ Æ\ \ \ Ë\ 2\ \ \ \ \ \ Ì\ ¨\ Ð\ Ã\ \ Æ\ ô\ ~\ §\ í\ ¥\ ý\ \ ñ\ \\\ \ \ 3\ \ \ æ\ \ ¹\ ‹\ \ \ \ Í\ \ à\ \ \ \ À\ ¨\ ó\ Ø\ \ ß\ \ \ 2\ \ y\ \ \ S\ â\ º\ ï\ ‰\ æ\ ´\ \ c\ ß\ ´\ \ ¾\ ß\ \ ®\ \ ð\ \ \ å\ \ Ÿ\ ¥\ '\ K\ `\ \ #\ \ Î\ \ û\ ®\ !\ ï\ %\ Ë\ \"\ )\ ’\ ´\ $\ Z\ x\ \ ÿ\ q\ \ ´\ ´\ `\ +\ *\ ,\ ¼\ ˜\ (\ ·\ «\ ÷\ ‚\ :\ .\ ù\ 0\ ý\ ê\ x\ b\ ´\ \ Ó\ 2\ 3\ 5\ !\ å\ /\ ù\ \"\ C\ ¾\ “\ &\ w\ 4\ \ 1\ —\ =\ û\ Ê\ ¼\ Ó\ 6\ Ÿ\ 7\ »\ \ Ñ\ ~\ ©\ \ 8\ 9\ 9\ æ\ :\ :\ õ\ ;\ %\ \ ï\ q\ <\ È\ Ø\ <\ >\ @\ ?\ ^\ Ë\ è\ \ \\\ æ\ „\ B\ ²\ C\ F\ D\ \ H\ æ\ :\ G\ \ ©\ I\ —\ à\ K\ \ Ý\ L\ º\ J\ \ N\ O\ \ ”\ \ S\ ´\ 2\ ®\ R\ ­\ K\ P\ ,\ Ú\ <\ T\ U\ €\ V\ ,\ \ \ Ñ\ W\ b\ \ æ\ ö\ X\ Æ\ Œ\ å\ \ å\ å\ \ A\ M\ E\ å\ †\ Q\ è\ U\ f\ C\ ^\ [\ ;\ \ €\ Y\ Z\ \\\ ù\ ¸\ ë\ ]\ ð\ _\ %\ ì\ a\ 8\ J\ ‚\ \ c\ \ e\ g\ m\ 5\ j\ h\ n\ l\ o\ p\ ‰\ q\ å\ s\ Z\ %\ r\ æ\ *\ w\ ¨\ \ t\ u\ ï\ ´\ æ\ Ç\ x\ \ z\ Ú\ ©\ F\ Ñ\ Ð\ ¯\ \ |\ {\ b\ §\ k\ c\ V\ y\ d\ v\ i\ `\ b\ –\ “\ 3\ ~\ —\ †\ \ }\ ß\ \ Ý\ ‚\ Ñ\ ¹\ €\ ƒ\ ^\ w\ <\ ´\ ‡\ •\ ˆ\ ‰\ „\ „\ ´\ ´\ Š\ Q\ Œ\ 8\ \ Ž\ \ ´\ â\ ó\ ”\ ü\ “\ ’\ \ \ •\ \ š\ \ œ\ \ ž\ \ ˜\ ÷\ ¢\ Ÿ\ ¡\ ·\ ‹\ Ð\ \ Ÿ\ ñ\ ™\ ›\ —\ ‘\ è\ k\ „\ \\\ 5\ ¶\ é\ ¹\ »\ ¿\ ©\ ¦\ \ \ æ\ Á\ ï\ ¥\ ¨\ v\ §\ ¨\ «\ ª\ ­\ E\ ®\ \ ¬\ ¯\ °\ ±\ 5\ ²\ \ »\ µ\ ¼\ X\ ´\ ·\ .\ ¸\ ]\ º\ ½\ w\ \ ¾\ ¼\ C\ À\ 1\ d\ Á\ ¨\ Â\ Ã\ j\ \ Ä\ 2\ ï\ Û\ —\ Æ\ ´\ Å\ ©\ Ç\ \ ³\ u\ P\ ¬\ ÷\ \ \ Æ\ £\ È\ Ÿ\ ¹\ Â\ ³\ ¤\ \\\ Ø\ Õ\ »\ Ó\ Ê\ â\ \ Ê\ ~\ Î\ ’\ É\ {\ Ë\ Ì\ Í\ æ\ v\ ¡\ Ï\ x\ :\ ä\ \"\ \ Ð\ Ñ\ }\ ©\ p\ Ò\ c\ ì\ ê\ \ Ö\ ×\ ­\ •\ Ò\ ¯\ ±\ Ú\ ±\ Û\ Ÿ\ Û\ Þ\ Ó\ Ý\ |\ u\ ¬\ P\ \ å\ Þ\ \ ß\ ‰\ à\ \ å\ å\ á\ ã\ ä\ Ù\ w\ w\ £\ Ü\ Ô\ „\ æ\ ç\ ò\ è\ ó\ ô\ ö\ õ\ ÷\ ø\ ù\ ú\ û\ ü\ ý\ þ\ ÿ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ #\ \ \ \ \ \ \ !\ \"\ %\ &\ '\ $\ (\ )\ *\ +\ ,\ -\ .\ 0\ /\ 1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ \ :\ \ >\ D\ ;\ <\ =\ ?\ @\ A\ B\ C\ F\ E\ G\ H\ \ I\ J\ K\ M\ L\ N\ '\ P\ O\ Q\ R\ S\ T\ U\ V\ Y\ W\ X\ Z\ [\ \\\ \ \ \ _\ ]\ ^\ a\ b\ c\ e\ d\ f\ h\ i\ j\ k\ m\ n\ c\ o\ p\ q\ `\ g\ l\ r\ \ z\ Œ\ \ ±\ s\ t\ v\ w\ y\ {\ |\ }\ ~\ \ €\ ‚\ „\ \ ƒ\ †\ ‡\ ˆ\ ‰\ Š\ \ ‹\ Ž\ \ x\ ‚\ ’\ “\ •\ —\ ˜\ ™\ u\ š\ ›\ \ ž\ Ÿ\ ¡\ £\ ¥\ ¦\ ¨\ ©\ ª\ ­\ «\ ¬\ ‘\ ®\ ¯\ °\ œ\ ”\ –\ ³\ À\ ¢\ ´\ ¶\ µ\ ¤\ Ã\ È\ §\ ²\ ë\ \ ·\ ¸\ ¹\ º\ »\ ½\ ¼\ ¾\ ¿\ Á\ Â\ Ä\ Å\ Æ\ Ç\ É\ Ê\ Ë\ Ì\ Í\ Î\ Ï\ Å\ Ð\ Ñ\ Ô\ Ò\ Ó\ Ô\ Ö\ ×\ Õ\ Ø\ Ù\ Û\ Ü\ Ú\ Ý\ Þ\ ‚\ Ÿ\ á\ à\ „\ â\ ä\ å\ æ\ ç\ „\ „\ è\ é\ ´\ ê\ ì\ ï\ í\ î\ ð\ ò\ ó\ ñ\ ã\ ß\ ü\ ô\ õ\ ÷\ ø\ ö\ ù\ ú\ û\ ý\ ÿ\ \ \ \ t\ \ \ \ \ \ ~\ \ \ \ \ \ å\ \ \ \ \ \ \ \ \ \ \ \ \ þ\ !\ #\ \"\ $\ %\ &\ '\ (\ )\ *\ ,\ -\ .\ +\ 1\ \ 0\ 9\ /\ 2\ 3\ „\ 4\ 5\ ¹\ \ ª\ 6\ 7\ 8\ º\ :\ ;\ <\ =\ >\ @\ ?\ A\ º\ B\ C\ F\ E\ G\ H\ þ\ D\ N\ S\ m\ t\ y\ r\ I\ ª\ K\ J\ L\ M\ ¿\ O\ Q\ R\ T\ U\ W\ X\ [\ Y\ Z\ \\\ ^\ ]\ _\ `\ ÷\ b\ c\ d\ e\ Ÿ\ f\ g\ h\ i\ k\ V\ j\ l\ n\ p\ q\ s\ o\ v\ u\ w\ x\ z\ P\ Å\ ‚\ |\ }\ ~\ s\ {\ \ €\ a\ ‚\ \ ƒ\ „\ ‰\ \ §\ ´\ ˆ\ ö\ †\ Y\ Š\ ‹\ Œ\ \ º\ Ž\ \ ‘\ ’\ “\ ”\ •\ –\ —\ ˜\ ™\ š\ ›\ œ\ ž\ \ ¡\ ›\ Ÿ\ s\ ¢\ ‚\ ƒ\ ¥\ ¤\ ¦\ ¨\ e\ ‡\ ©\ ª\ ¬\ «\ ­\ ®\ ±\ ¯\ Ÿ\ °\ ²\ ³\ µ\ ¶\ ·\ ¸\ ³\ º\ ¹\ o\ „\ »\ ½\ ¾\ `\ £\ Ä\ Ë\ Ï\ Ò\ ×\ ¼\ á\ ë\ õ\ À\ Á\ Â\ Ã\ ¿\ ‰\ Å\ Æ\ È\ Ç\ É\ º\ Ê\ A\ Ì\ Î\ Í\ Ð\ Ñ\ \ Ó\ Ô\ Ö\ Õ\ Ø\ |\ Ù\ Å\ Ú\ Û\ Ü\ Ý\ Þ\ „\ ß\ à\ â\ s\ ã\ ä\ å\ æ\ ç\ š\ è\ é\ ê\ ì\ ª\ í\ ð\ ñ\ ï\ ó\ ô\ ÷\ ‚\ ø\ ù\ û\ þ\ 2\ þ\ Ÿ\ `\ ÿ\ \ î\ ò\ ö\ ú\ \ ü\ ý\ (\ -\ \ \ \ L\ \ \ U\ \ \ º\ \ \ ›\ \ \ \ \ ÷\ »\ \ \ \ G\ \ \ \ s\ \ )\ \ \"\ \ \ \ \ \ !\ ‚\ ª\ \"\ ·\ $\ #\ Å\ %\ &\ '\ «\ )\ *\ +\ \ .\ 0\ >\ 1\ 3\ 4\ º\ /\ 6\ \ 5\ §\ ,\ G\ K\ R\ W\ _\ k\ 7\ 8\ 9\ s\ :\ ;\ Z\ =\ 7\ \ º\ »\ ?\ A\ @\ B\ C\ Å\ D\ º\ E\ F\ f\ I\ J\ L\ M\ \ N\ O\ P\ Q\ S\ ¹\ V\ U\ X\ Z\ Y\ [\ ˆ\ \\\ ]\ ^\ ç\ Æ\ <\ ¿\ \ `\ °\ a\ b\ c\ g\ h\ Ÿ\ H\ i\ j\ l\ m\ n\ o\ Ú\ T\ d\ {\ e\ #\ ¡\ Œ\ p\ q\ r\ ª\ Y\ v\ s\ t\ s\ u\ w\ ‚\ ˆ\ y\ z\ y\ x\ |\ }\ \ È\ ~\ ’\ \ €\ \ ‚\ ƒ\ „\ †\ ‡\ V\ ‰\ \ Š\ Y\ ‹\ Ž\ \ \ ‘\ ’\ “\ ”\ •\ –\ §\ ‚\ —\ ˜\ ™\ ›\ š\ d\ œ\ \ ¹\ \ Ÿ\ ³\ ž\ 0\ v\ ˆ\ !\ \ ¢\ x\ s\ ¤\ \ ¥\ †\ £\ ´\ º\ È\ ¦\ Ó\ §\ ¨\ ©\ ª\ «\ u\ ”\ ®\ ¯\ °\ ±\ ²\ ³\ ›\ µ\ Ž\ ¶\ G\ ·\ ¸\ „\ ¹\ \ \ ³\ ¼\ »\ ;\ ¾\ ¨\ ¿\ Á\ Å\ À\ Â\ Ä\ Ã\ Æ\ Ç\ É\ ¬\ Ê\ ž\ Ë\ «\ ­\ Ì\ ]\ Í\ Î\ ž\ Ï\ Ð\ Ñ\ Å\ Õ\ Ô\ ×\ Ø\ Ù\ Ú\ ½\ Ö\ ã\ ç\ Ò\ ü\ \ Û\ Ü\ º\ Ý\ Ò\ Þ\ á\ ¢\ º\ à\ â\ ¬\ ä\ æ\ å\ é\ ê\ y\ †\ ¹\ ë\ ì\ í\ t\ \ Ø\ ð\ ñ\ ò\ P\ ï\ é\ õ\ ö\ ÷\ Ë\ ³\ ù\ ú\ û\ °\ ß\ Î\ ý\ þ\ ÿ\ \ \ \ ¦\ è\ \ \ \"\ A\ Ò\ •\ î\ ó\ ô\ ø\ \ \ \ \ \ \ \"\ \ ’\ \ Ò\ s\ Å\ ”\ \ ”\ \ \ \ \ \ Ç\ \ à\ \ \ Æ\ ‹\ \ É\ \ \ !\ ;\ Ð\ ­\ Å\ #\ $\ ­\ %\ &\ '\ (\ Ù\ )\ \ *\ ,\ -\ .\ /\ 0\ 1\ 2\ \ 3\ ›\ 4\ 6\ 7\ 5\ 9\ :\ +\ \ <\ Z\ 8\ V\ >\ p\ =\ Ÿ\ ?\ @\ Ò\ A\ Z\ C\ E\ D\ ê\ F\ ›\ G\ H\ I\ J\ K\ \ L\ P\ ¨\ N\ O\ t\ O\ P\ Q\ à\ R\ T\ U\ W\ S\ ~\ V\ ¦\ B\ X\ Y\ #\ [\ \\\ \ ]\ ^\ _\ `\ a\ \ c\ d\ b\ M\ f\ e\ g\ h\ D\ ž\ l\ }\ ‚\ —\ i\ j\ Z\ º\ k\ m\ n\ q\ õ\ p\ s\ t\ m\ Ú\ K\ v\ x\ w\ þ\ |\ y\ z\ {\ s\ |\ ~\ ª\ \ €\ Q\ ú\ \ o\ æ\ ƒ\ „\ †\ \ \ \ \ ‡\ ˆ\ Š\ {\ Œ\ ‹\ \ Ž\ r\ \ u\ ’\ “\ ”\ •\ ±\ –\ 0\ ˜\ 8\ h\ ‰\ \ ‘\ £\ §\ ¹\ ³\ ¶\ (\ ¸\ å\ \ ™\ š\ ›\ \ œ\ ö\ I\ º\ x\ ç\ \ Ÿ\ \ ž\ ¥\ ¢\ ”\ æ\ ¤\ T\ v\ D\ ï\ ³\ Þ\ ?\ ‚\ ¥\ ƒ\ \ s\ ?\ c\ ¨\ Ú\ !\ ª\ K\ \ «\ ¬\ ­\ ®\ ¯\ °\ \ s\ ±\ ²\ ¡\ ´\ µ\ »\ ·\ ©\ ¼\ ¾\ 4\ ¿\ ¦\ º\ ½\ Ü\ ß\ Î\ ë\ ñ\ “\ å\ Ã\ Ä\ Å\ ™\ ÿ\ Z\ Ê\ Æ\ È\ É\ Ë\ Ì\ Í\ Ñ\ Ï\ u\ Ò\ Ó\ Ð\ Ô\ Õ\ Ö\ \\\ ×\ D\ Ø\ Ù\ K\ 8\ Ú\ À\ Ù\ Ý\ Æ\ Þ\ ñ\ à\ á\ Â\ Á\ A\ \ â\ í\ å\ ã\ ä\ \ Ç\ ñ\ æ\ ç\ è\ s\ 6\ é\ \ í\ ì\ ð\ î\ ï\ ò\ K\ ó\ Û\ ê\ \ \ \ \ \ \ ô\ õ\ ö\ ÷\ ö\ \ ø\ ù\ \ „\ ú\ û\ ü\ \ ž\ 7\ †\ ý\ þ\ O\ ÿ\ ¥\ G\ \ '\ v\ º\ \ \ x\ \ V\ 1\ ó\ `\ s\ \ Ô\ .\ \ \ \ \ \ \ \ \ \"\ \ \ \ \ !\ ¦\ \ Y\ \ #\ \"\ @\ #\ \ 7\ ?\ I\ L\ =\ c\ $\ \ &\ (\ „\ '\ s\ \ )\ +\ *\ B\ Y\ Ê\ .\ ˆ\ /\ 0\ t\ 1\ 2\ n\ 3\ 4\ 5\ \ 6\ ‘\ =\ œ\ \ x\ 8\ 9\ :\ ;\ <\ $\ >\ A\ @\ %\ \ ,\ F\ G\ H\ J\ K\ M\ O\ „\ P\ Q\ R\ S\ T\ U\ \ \ V\ W\ E\ C\ D\ Y\ N\ c\ X\ Z\ D\ [\ \\\ ÿ\ ’\ y\ «\ ^\ |\ _\ `\ a\ b\ e\ f\ p\ Q\ g\ ·\ ]\ d\ j\ —\ {\ ë\ „\ t\ h\ Ì\ ±\ 8\ i\ l\ Ô\ m\ \ {\ „\ o\ `\ p\ „\ q\ r\ ‹\ s\ w\ u\ Å\ v\ \ ‚\ x\ z\ ð\ L\ š\ |\ \ \ }\ €\ ~\ \ \ ‚\ ƒ\ n\ ‡\ é\ †\ ˆ\ ]\ ‰\ ò\ ‹\ Œ\ \ k\ \ \ \ ‘\ ’\ y\ Š\ Ž\ µ\ (\ é\ “\ •\ –\ ˜\ `\ ™\ \ —\ \ š\ ž\ \ ›\ œ\ \ ¡\ 9\ Ÿ\ £\ ó\ ¤\ ¢\ Â\ Ö\ s\ ¦\ §\ A\ Ù\ ©\ ª\ õ\ «\ Ÿ\ v\ ¬\ ­\ j\ ¯\ ”\ ®\ °\ ±\ ²\ D\ ³\ ´\ ¶\ ·\ ¸\ K\ º\ C\ ”\ S\ »\ ¨\ ¾\ ¼\ ¹\ ¥\ Ä\ º\ ½\ ¿\ \ À\ Ã\ Á\ Â\ Å\ Ì\ Ò\ ç\ Æ\ Ç\ È\ Ê\ Ë\ Í\ Î\ Ï\ Ð\ Ñ\ Ó\ Ô\ Ö\ ×\ Ø\ Ù\ Ú\ Û\ Ü\ Þ\ Ý\ ß\ à\ á\ â\ Í\ ã\ ä\ è\ æ\ é\ ë\ ê\ ì\ í\ î\ ñ\ ð\ ó\ ò\ ô\ å\ Ê\ õ\ ö\ ÷\ ø\ ù\ ë\ ú\ ü\ û\ ý\ þ\ ÿ\ \ É\ \ Õ\ ï\ Õ\ \ \ \ \ 0\ ,\ \ \ \ \ \ \ !\ \ \"\ #\ %\ &\ $\ )\ \ '\ \ \ \ *\ -\ .\ 1\ 2\ /\ +\ (\ #\ \ \ \ \ \ A\ C\ >\ A\ B\ 9\ 6\ 5\ :\ ;\ <\ =\ E\ D\ B\ @\ ?\ 7\ 4\ @\ 8\ 3\ „\ q\ ^\ e\ S\ |\ K\ L\ M\ T\ U\ \\\ ]\ _\ `\ d\ f\ g\ h\ i\ j\ K\ n\ p\ t\ u\ r\ ‚\ \ i\ s\ m\ k\ c\ x\ y\ {\ }\ ƒ\ †\ \ L\ ~\ w\ r\ v\ l\ H\ b\ Z\ R\ O\ J\ a\ Y\ V\ W\ Q\ X\ z\ N\ H\ F\ P\ G\ €\ o\ [\ I\ \ ¥\ ‰\ –\ ¨\ ¿\ ¶\ ¸\ i\ «\ ¨\ ¢\ i\ x\ ™\ i\ \ Œ\ ‡\ Š\ Ž\ ‹\ ˆ\ g\ “\ \ ˜\ œ\ ž\ ¤\ ¦\ ©\ ¬\ ®\ ª\ ¯\ °\ ²\ ­\ ¹\ Z\ º\ ¼\ \ À\ Á\ Ã\ i\ Ä\ Æ\ Â\ Å\ ½\ ·\ ´\ µ\ ±\ `\ ¡\ r\ Ÿ\ Ç\ š\ •\ ’\ \ \ ‘\ ¾\ £\ »\ ³\ —\ ›\ §\ ”\ ñ\ ú\ ö\ ÷\ i\ ƒ\ ù\ ò\ è\ å\ ã\ Ý\ Ù\ Ö\ Ñ\ ×\ Ø\ Ó\ Ô\ Þ\ ß\ à\ á\ æ\ ë\ ç\ u\ ê\ î\ û\ ü\ ý\ þ\ ÿ\ ô\ ð\ ¯\ ¿\ ó\ ø\ í\ ä\ â\ Ü\ Ú\ Û\ M\ ¨\ Ò\ Õ\ õ\ Ð\ É\ U\ Ë\ Ê\ Í\ Ì\ Î\ Ï\ ž\ é\ ï\ ì\ È\ 7\ \ '\ \"\ #\ 1\ \ \ \ \ \ \ i\ \ \ (\ ,\ 0\ -\ 2\ 6\ Ë\ 3\ 5\ 4\ =\ 9\ :\ ;\ ?\ <\ >\ 8\ .\ )\ $\ \ \ \ \ b\ \ \ Ê\ \ \ ×\ K\ \ i\ *\ &\ \ \ \ \ i\ \ \ \ Æ\ \ \ \ !\ /\ +\ %\ \ P\ n\ Q\ f\ J\ K\ Ý\ T\ (\ S\ Þ\ V\ 4\ r\ W\ K\ X\ Y\ ½\ ]\ _\ \ S\ c\ f\ g\ d\ Œ\ a\ K\ G\ E\ U\ B\ \\\ i\ Z\ U\ R\ ­\ ¨\ F\ A\ @\ e\ \ i\ h\ Ž\ k\ j\ l\ m\ L\ `\ ^\ [\ a\ N\ L\ I\ D\ C\ b\ M\ O\ H\ „\ \ ~\ ¨\ Š\ Œ\ Ž\ ‹\ ƒ\ m\ {\ x\ E\ p\ Û\ s\ r\ i\ u\ |\ €\ U\ Ê\ \ K\ †\ \ ‡\ ˆ\ \ \ \ ‘\ ’\ h\ Ü\ \ 9\ Ó\ ‰\ ‚\ r\ z\ y\ i\ w\ i\ 9\ t\ ¦\ q\ \ \ \ u\ K\ o\ \ Ó\ }\ v\ [\ \ r\ }\ ›\ \ \ ì\ ‰\ ¥\ ²\ ¨\ i\ ¯\ ¨\ ”\ •\ `\ \ `\ ›\ £\ u\ ¤\ ¦\ ­\ ­\ ®\ ±\ \ ³\ i\ ¸\ µ\ ´\ ¶\ º\ ·\ >\ 8\ ¿\ i\ °\ \ ‡\ ¯\ ¬\ «\ ¨\ ¢\ ž\ \ ™\ `\ S\ ª\ `\ ©\ ¡\ Ÿ\ \ ˜\ —\ “\ ¹\ \ €\ /\ §\ œ\ š\ –\ á\ Õ\ Ú\ Ä\ Á\ Ò\ Í\ é\ à\ Ö\ i\ Ô\ i\ Å\ Æ\ Ç\ u\ \ Ë\ Ì\ Î\ Ð\ ®\ Ø\ «\ Ù\ i\ Û\ â\ K\ ×\ •\ Ý\ Ü\ ã\ å\ æ\ ê\ ç\ v\ ß\ Þ\ è\ K\ ×\ p\ Ï\ Ê\ {\ É\ Ã\ ®\ À\ ä\ i\ Ñ\ ¨\ Û\ È\ Â\ «\ ¼\ ½\ »\ ¾\ ¿\ 5\ ë\ Ó\ \ ï\ \ ÷\ î\ ƒ\ \ i\ ô\ û\ i\ °\ ƒ\ õ\ ò\ ƒ\ °\ Þ\ ô\ \ ñ\ \ ï\ ˜\ ì\ r\ K\ ¡\ Þ\ û\ ø\ ù\ \ ü\ þ\ Z\ ’\ \ \ \ \ \ \ Ž\ ¦\ i\ \ \ í\ \ ÿ\ ú\ ‡\ ö\ (\ ð\ \ í\ ý\ ›\ ó\ ¥\ %\ Ä\ \ :\ i\ ,\ 1\ #\ \ \ \ K\ o\ \ \ \ ¡\ \ R\ $\ å\ \ \ \ \ \ i\ *\ '\ \ !\ )\ E\ i\ .\ ù\ *\ +\ (\ ,\ i\ \ 9\ ¡\ /\ ¨\ \ 4\ u\ p\ 2\ Ê\ \ \"\ 6\ 9\ 8\ 5\ 3\ -\ (\ &\ \"\ \ \ \ 7\ 0\ 2\ S\ H\ C\ =\ O\ P\ Q\ (\ r\ X\ V\ W\ \ ¨\ g\ [\ ¨\ Z\ ƒ\ Ô\ ¯\ Û\ «\ t\ \ Y\ _\ j\ \\\ ^\ ¡\ a\ ½\ G\ i\ ù\ Ó\ >\ @\ Ù\ B\ (\ K\ ˜\ Ù\ i\ M\ A\ ©\ <\ ;\ I\ L\ K\ Â\ M\ N\ >\ ¡\ E\ D\ &\ \ ]\ r\ ?\ J\ U\ T\ R\ /\ F\ ƒ\ }\ k\ h\ d\ ¨\ †\ \ f\ Ý\ s\ t\ q\ K\ ¢\ x\ \ \ é\ u\ r\ i\ ¯\ y\ {\ ~\ û\ i\ |\ \ „\ ‰\ Â\ i\ ‡\ ˆ\ \"\ \ €\ Š\ ‡\ -\ ¨\ `\ p\ c\ \ g\ q\ e\ b\ `\ i\ j\ Ý\ \ l\ n\ o\ m\ ¢\ a\ u\ v\ ‹\ z\ f\ ‚\ w\ \ \ ¡\ ‘\ §\ {\ ¦\ c\ ›\ «\ ™\ ˜\ •\ Ý\ \ \ \ Ž\ Œ\ ’\ X\ \ \ ”\ –\ Ä\ Ó\ K\ ž\ ¤\ \ ¢\ ¯\ œ\ X\ š\ ¥\ B\ £\ ¨\ Þ\ p\ ?\ \"\ ’\ “\ }\ Ÿ\ —\ Ò\ h\ ¸\ h\ Ö\ ¨\ è\ ½\ U\ ¢\ °\ ±\ ´\ µ\ ¹\ º\ Á\ Ä\ ’\ Ë\ ¨\ È\ E\ Å\ Ã\ À\ °\ \ ³\ ¬\ ­\ i\ ¡\ «\ ©\ É\ Æ\ Ï\ Ð\ Î\ Ñ\ ¶\ Í\ Ê\ }\ 5\ Ó\ X\ &\ Õ\ b\ >\ Ç\ \ Â\ »\ Ô\ p\ ¶\ ·\ ²\ ®\ ª\ Ì\ ¼\ ¿\ ¾\ ¯\ ï\ î\ ç\ é\ ä\ Ý\ i\ ò\ Ù\ W\ Ü\ –\ Ú\ Þ\ ß\ Ý\ à\ ±\ å\ æ\ `\ ƒ\ è\ £\ t\ ê\ ¦\ ž\ X\ á\ \ u\ ð\ p\ ô\ \ ó\ i\ í\ ã\ ¨\ «\ i\ Ø\ õ\ i\ Ù\ ö\ ÷\ ¯\ ž\ ë\ \ Û\ }\ ×\ ì\ o\ ñ\ â\ \ \ \ ¨\ 1\ (\ \ ü\ (\ \ Ê\ Ý\ Û\ ž\ K\ \ \ R\ \ ˜\ \ Ù\ \ \ M\ \ \ \ `\ T\ \ \"\ ’\ Þ\ u\ ÿ\ þ\ Û\ ¿\ X\ \ \ Ó\ û\ ù\ ¯\ ¨\ \ \ i\ Ø\ ý\ ú\ ø\ •\ ï\ ñ\ \ \ §\ á\ *\ \"\ \ º\ ¨\ ½\ 0\ u\ \ \ \ d\ \ \ L\ &\ )\ )\ +\ ÿ\ 3\ 4\ 6\ \ 9\ 7\ 8\ 5\ (\ .\ r\ (\ '\ -\ [\ ,\ X\ !\ %\ ¶\ \ 1\ \ K\ \ 2\ u\ i\ Ž\ #\ Z\ $\ O\ \ ¨\ \ ì\ /\ #\ \ >\ M\ °\ D\ =\ f\ K\ @\ \ Ê\ t\ G\ £\ X\ K\ ë\ L\ C\ >\ :\ F\ <\ \ X\ J\ h\ _\ R\ V\ T\ Ù\ U\ I\ A\ ¨\ ;\ A\ û\ B\ E\ Ž\ \ \ ?\ \ \ Ž\ \ £\ \ H\ û\ N\ \ Q\ R\ R\ Â\ Y\ u\ T\ K\ \ Û\ c\ ˜\ \ Z\ ,\ ¨\ ]\ ^\ \ Æ\ `\ b\ a\ g\ c\ L\ r\ \ [\ ¢\ ë\ S\ O\ \ b\ d\ 9\ P\ \\\ W\ \ }\ ‚\ t\ v\ p\ „\ ƒ\ z\ ƒ\ o\ f\ E\ j\ ç\ ,\ g\ \ ¡\ h\ i\ Ø\ ]\ Ž\ \ k\ ­\ l\ W\ i\ K\ m\ »\ n\ ­\ q\ f\ H\ r\ ­\ K\ i\ u\ &\ s\ x\ û\ ~\ \ {\ |\ y\ €\ \ u\ \ \\\ (\ \ 5\ w\ \ (\ ¢\ \ !\ X\ ¢\ }\ \ f\ ì\ e\ ›\ ”\ Ž\ >\ \ ‡\ Œ\ i\ ô\ \ \ ‹\ \ \ “\ W\ ‘\ ²\ •\ i\ ¨\ \ ¼\ •\ ç\ C\ \ i\ ï\ •\ Ÿ\ Ü\ œ\ ß\ ¡\ i\ ž\ ß\ ™\ ’\ ¨\ Š\ ˆ\ i\ †\ ¦\ ¥\ e\ £\ ’\ s\ ±\ ¢\ \ —\ –\ ¤\ ¡\ [\ ‰\ \ š\ Ÿ\ /\ ˜\ \ }\ ®\ ¬\ ¨\ Û\ ©\ i\ \ i\ W\ \ K\ f\ ¯\ °\ ²\ ­\ g\ ž\ Þ\ «\ Í\ ¨\ ±\ §\ ó\ ª\ Å\ Â\ h\ ¹\ \ Õ\ Ï\ Û\ K\ b\ Ä\ Æ\ 5\ µ\ ·\ º\ \ »\ )\ ¼\ Á\ ¦\ \ ¢\ ±\ u\ À\ V\ ã\ ®\ ¿\ i\ ¨\ ¸\ ¶\ {\ i\ ³\ Ž\ l\ Ç\ Æ\ }\ Ã\ Ì\ \ (\ o\ Û\ 2\ \ «\ Î\ Ñ\ Ó\ Ò\ 5\ Ð\ (\ Í\ ×\ Ô\ W\ Ö\ €\ Ê\ È\ Á\ ½\ \ ’\ y\ ¾\ Ë\ É\ ´\ ë\ ç\ Ü\ ò\ ï\ î\ Ã\ {\ â\ Ý\ í\ m\ i\ Ú\ *\ Ø\ \ ­\ \ Û\ Û\ \ E\ ®\ Þ\ ß\ à\ Ã\ t\ è\ é\ i\ ¢\ ð\ 9\ Ê\ í\ \ ê\ ¾\ æ\ á\ ñ\ \ ó\ l\ õ\ Ò\ W\ \ Û\ `\ >\ \ Ç\ \ i\ ¨\ ¿\ \ ã\ ä\ }\ ô\ å\ ì\ ³\ Ù\ ü\ \ i\ \ \ ¢\ þ\ ý\ i\ Â\ \ ¨\ `\ ø\ \ -\ (\ b\ \ \ \ \ Ó\ †\ \ }\ }\ ¨\ Í\ \ 9\ \ >\ ÿ\ ½\ \ “\ ù\ ø\ \ \ r\ \ \ \ i\ \ í\ i\ ÷\ ö\ û\ ?\ \ \ \ \ ú\ 6\ ë\ -\ ›\ %\ \ \ ¨\ +\ =\ Ž\ i\ \ \ \ \ Ù\ \ \ g\ \ Ù\ \ “\ h\ í\ ž\ 5\ #\ »\ ‡\ (\ .\ Í\ /\ ­\ û\ ,\ ¹\ *\ )\ 0\ ¡\ 2\ 3\ \ 1\ 5\ U\ 7\ i\ ½\ l\ (\ 4\ 4\ 8\ (\ (\ –\ ‹\ >\ $\ i\ &\ ƒ\ \"\ !\ \ \ \ ¿\ \ \ ³\ '\ ?\ \ \ U\ î\ R\ N\ M\ I\ C\ =\ ƒ\ í\ i\ ¨\ <\ D\ r\ A\ -\ E\ t\ L\ K\ ‡\ ë\ i\ B\ Q\ –\ m\ ô\ O\ í\ \ \ L\ ƒ\ X\ V\ ž\ S\ Y\ ˜\ Z\ °\ Í\ W\ 6\ (\ t\ Œ\ D\ Ñ\ }\ J\ \ ƒ\ B\ @\ ›\ K\ ;\ i\ H\ «\ x\ >\ :\ Ø\ 9\ 8\ G\ u\ T\ ž\ P\ ï\ F\ ?\ i\ a\ _\ \ n\ ®\ e\ R\ b\ ¨\ ^\ Å\ ¨\ [\ \\\ u\ \ ?\ K\ Þ\ ]\ i\ &\ `\ ‹\ e\ d\ K\ Ñ\ O\ Ç\ h\ i\ j\ g\ k\ u\ Ó\ l\ 4\ m\ o\ ·\ (\ f\ c\ W\ È\ ¿\ (\ $\ Ç\ x\ r\ ®\ Ó\ Œ\ €\ N\ ƒ\ Œ\ K\ W\ q\ p\ ž\ s\ t\ \ \\\ u\ z\ v\ H\ /\ {\ y\ å\ l\ \ }\ w\ „\ \ ]\ ¼\ \ Ç\ ‚\ ×\ H\ ¨\ K\ \ „\ >\ X\ ¢\ u\ \ ˆ\ †\ S\ ‡\ J\ ¨\ \ ~\ o\ 8\ ö\ ƒ\ |\ p\ ¢\ “\ \ š\ y\ ž\ ®\ ¨\ Ý\ \ \ \ Ž\ ½\ ¨\ \ \ ü\ ´\ ‚\ \ ®\ ï\ ”\ L\ X\ à\ (\ \ ™\ \ ›\ K\ œ\ Ÿ\ í\ ¡\ i\ £\ u\ \ ¤\ 8\ Ÿ\ ž\ \ ‡\ `\ \ \ }\ \ —\ ¨\ •\ ’\ m\ o\ 2\ Œ\ ‰\ >\ –\ \ ?\ -\ ¿\ `\ Š\ \ ‘\ ì\ ˜\ ‹\ º\ ´\ ¯\ ©\ À\ i\ ƒ\ \ §\ ¨\ K\ 5\ \ ª\ )\ \ ­\ Þ\ °\ H\ ²\ s\ r\ °\ 4\ ¼\ R\ ²\ ,\ ±\ \ (\ ³\ u\ µ\ Q\ ¨\ °\ ·\ ‚\ U\ „\ e\ ¬\ ¯\ |\ ¥\ Š\ ¶\ ð\ W\ `\ &\ ¨\ »\ i\ i\ \ \ ¼\ ½\ U\ ¾\ Á\ ¿\ £\ \ ¸\ (\ o\ ®\ ¹\ }\ ¦\ ñ\ «\ ‹\ /\ \ ï\ ¯\ Ê\ í\ «\ Å\ è\ Æ\ Ž\ U\ Ã\ Ó\ \"\ Ä\ [\ Ý\ i\ Û\ È\ r\ å\ $\ ¨\ z\ K\ Ì\ Ë\ `\ <\ Î\ K\ Ï\ r\ 1\ Ð\ &\ \ Ñ\ Þ\ i\ ˜\ Â\ ¢\ u\ ¢\ ¨\ Í\ U\ É\ ¾\ 5\ ?\ E\ i\ \ Â\ i\ >\ Ò\ \ Ç\ ”\ ñ\ ì\ @\ í\ Ý\ Ö\ ƒ\ |\ i\ i\ H\ £\ Ž\ Õ\ ×\ Ú\ Þ\ f\ i\ \ ß\ n\ Û\ 3\ â\ à\ {\ Ù\ u\ s\ ã\ ä\ å\ ˆ\ \ é\ æ\ Ê\ i\ Ü\ Ù\ Ô\ Ó\ ç\ è\ ê\ Ž\ i\ <\ \ ì\ )\ î\ ¨\ \ ð\ ª\ E\ 8\ ï\ \\\ ¿\ ñ\ ç\ L\ ?\ ë\ ¨\ c\ í\ á\ ¿\ Ø\ ¡\ {\ l\ »\ ñ\ ¹\ \ C\ ý\ ÷\ ä\ o\ \ \ ü\ K\ Û\ \ ¸\ ‚\ ó\ K\ ¥\ ô\ õ\ \ ö\ “\ i\ K\ \ u\ ø\ -\ ê\ \ d\ ÿ\ ú\ ù\ ¢\ G\ \ <\ \ \ £\ ¹\ ¯\ ˜\ \ K\ -\ –\ \\\ (\ »\ Ë\ $\ å\ C\ þ\ (\ Ê\ ?\ ¦\ (\ `\ Â\ [\ û\ \ ì\ Ÿ\ ò\ \ \ \ \ ¨\ \ [\ \ ¨\ \ \ ¡\ Q\ i\ i\ Ö\ \ \ g\ \ T\ g\ ý\ \ ¡\ i\ \ ±\ Û\ U\ °\ \ R\ E\ \ \ 9\ ,\ 5\ €\ ¨\ \ \ U\ s\ \ î\ !\ \"\ ¶\ Y\ r\ Q\ ‡\ S\ ?\ Ÿ\ b\ \ J\ #\ \ ì\ \ %\ &\ ¨\ »\ ¤\ –\ 5\ £\ (\ K\ >\ $\ '\ )\ =\ 7\ :\ 6\ 9\ +\ ,\ -\ .\ 1\ 0\ *\ 4\ 2\ \ <\ 9\ 5\ >\ ?\ Ú\ ;\ 8\ 3\ /\ A\ X\ ô\ G\ V\ Û\ «\ b\ ß\ F\ <\ H\ M\ N\ ñ\ \ ‰\ \ Q\ O\ <\ «\ \ P\ \ R\ ¿\ ¨\ T\ i\ ¡\ S\ \ T\ -\ u\ c\ Q\ (\ W\ Y\ K\ Ð\ U\ n\ Z\ H\ í\ ë\ H\ ±\ \ 2\ W\ K\ p\ {\ D\ B\ q\ J\ *\ A\ @\ L\ /\ ì\ €\ E\ C\ ³\ I\ §\ |\ Ý\ p\ j\ a\ ^\ f\ [\ w\ i\ i\ i\ c\ _\ [\ \\\ `\ Ø\ ‹\ i\ \ (\ f\ g\ º\ o\ ¨\ l\ ë\ i\ h\ K\ K\ -\ m\ S\ q\ u\ r\ #\ s\ \ ¡\ H\ u\ t\ -\ v\ û\ Ð\ y\ t\ x\ z\ O\ $\ u\ {\ ¨\ û\ i\ U\ Ü\ i\ t\ \ Q\ (\ ¡\ k\ C\ b\ ]\ n\ d\ o\ e\ }\ \ \ ³\ ¡\ ¥\ \ ~\ Ò\ Á\ ¹\ ­\ ¤\ š\ ’\ ƒ\ \ \ †\ „\ ˆ\ ‡\ ‹\ ‰\ Œ\ Ž\ \ €\ \ “\ ”\ •\ –\ —\ ˜\ œ\ ™\ \ ˆ\ ›\ ž\ ¢\ ¦\ §\ ¨\ ©\ ª\ «\ ˜\ £\ ¯\ ´\ ®\ ¬\ °\ µ\ Ã\ º\ ¸\ ²\ º\ »\ ¼\ ½\ ¿\ Å\ µ\ Ä\ Æ\ È\ È\ É\ Ê\ Ë\ Ì\ Í\ ‘\ Î\ Ï\ Ð\ Ñ\ Ô\ Ó\ €\ À\ ·\ Ö\ Ç\ ‘\ Õ\ ‚\ €\ ¾\ ±\ Â\ ¶\ Ÿ\ Š\ \ \ ž\ \ ¨\ ö\ ó\ ç\ à\ Þ\ Ø\ Ü\ ×\ Ù\ Ý\ ß\ â\ ã\ ä\ å\ è\ æ\ Î\ ê\ ë\ ì\ ê\ í\ \ î\ °\ ï\ ð\ ñ\ ò\ õ\ ø\ ù\ ú\ û\ ü\ \ ý\ þ\ ÿ\ È\ \ \ \ ý\ \ \ \ \ \ \ µ\ \ \ \ \ \ \ \ \ \ \ \"\ \ \ !\ ý\ Ë\ \ B\ ÷\ ô\ é\ á\ Ú\ \ Û\ 7\ \ ;\ 1\ #\ &\ '\ (\ )\ *\ ¨\ 4\ 5\ 6\ 8\ 9\ <\ :\ 2\ +\ -\ .\ /\ 0\ $\ 3\ ,\ %\ C\ =\ D\ F\ E\ \ G\ H\ I\ J\ K\ L\ M\ N\ O\ P\ Q\ R\ S\ W\ `\ ~\ V\ T\ U\ Y\ X\ [\ Z\ _\ d\ ^\ a\ b\ c\ e\ f\ h\ g\ j\ i\ k\ l\ m\ n\ p\ o\ q\ r\ s\ \ u\ t\ v\ x\ w\ y\ z\ {\ |\ }\ €\ \ \\\ ‚\ ƒ\ „\ ]\ ˆ\ Š\ x\ †\ ‰\ |\ ‹\ Œ\ Ž\ ‘\ \ \ “\ ”\ •\ –\ —\ ˜\ ™\ š\ \ ‡\ ’\ Ã\ Î\ ª\ ›\ \ œ\ ž\ Ÿ\ ¢\ ¡\ ¿\ o\ £\ ¥\ ¦\ ¤\ ¨\ §\ ¬\ «\ ­\ ›\ ®\ ¯\ ±\ ²\ °\ ¶\ ´\ ·\ µ\ ¸\ s\ ¹\ º\ »\ ½\ ¼\ ¾\ Á\ Â\ Ä\ Å\ ¶\ Æ\ Ç\ ³\ q\ É\ Ê\ Ë\ ¶\ Æ\ Ì\ Í\ Ï\ Ð\ ©\ Ñ\ \ Ò\ r\ Ó\ Ô\ Õ\ Ø\ Ù\ ×\ À\ Þ\ è\ È\ æ\ Ö\ ò\ þ\ \ \ ã\ Ú\ Û\ ¸\ Ü\ Ý\ ¾\ à\ Ô\ ß\ â\ á\ ä\ å\ ç\ é\ ¥\ ê\ ë\ ì\ í\ î\ ð\ ï\ ñ\ ó\ ô\ õ\ ö\ ÷\ ø\ \ ù\ û\ ý\ Á\ ú\ ÿ\ ü\ \ \ ¼\ \ \ |\ \ \ ¡\ \ \ «\ \ \ \ \ \ \ ­\ ¼\ \ \ \ \ \ '\ \ \ ?\ F\ \"\ 0\ ý\ \ !\ ·\ #\ q\ $\ ¼\ &\ )\ %\ Ú\ (\ Û\ *\ +\ ,\ .\ /\ 1\ 2\ 3\ ±\ -\ 6\ 4\ 5\ 7\ i\ 8\ 9\ :\ Ç\ ;\ <\ >\ =\ @\ A\ B\ o\ \ D\ E\ G\ H\ <\ I\ J\ K\ L\ M\ O\ r\ N\ P\ Q\ R\ S\ T\ V\ C\ W\ U\ X\ ±\ _\ e\ i\ \ w\ Y\ c\ [\ \\\ Z\ ý\ ]\ ^\ `\ b\ c\ A\ a\ d\ f\ _\ \ h\ g\ j\ k\ m\ ,\ l\ n\ o\ p\ r\ o\ q\ s\ |\ q\ u\ t\ v\ x\ ¾\ ­\ y\ 6\ z\ {\ |\ }\ ~\ \ ¶\ o\ €\ ‚\ ƒ\ „\ †\ ‡\ ˆ\ \ ‰\ ‹\ Š\ Œ\ \ Ž\ ±\ \ “\ ›\ Ÿ\ ¦\ o\ \ \ ’\ ‘\ ”\ •\ –\ |\ ý\ —\ |\ ™\ š\ œ\ ÷\ ±\ ž\ U\ ¡\ ¢\ £\ ¤\ ¥\ §\ ¨\ ©\ «\ ¬\ ·\ l\ ª\ ­\ ®\ ¯\ °\ t\ i\ ¼\ ±\ ˜\ \ º\ ¿\ ë\ Ê\ ³\ ²\ q\ ´\ µ\ ¶\ ·\ ¸\ ¹\ (\ ñ\ »\ ¾\ ¼\ ½\ ×\ À\ |\ Â\ ç\ Á\ Ã\ Ä\ Å\ Æ\ G\ Ç\ É\ Í\ È\ Ì\ Î\ Ð\ r\ o\ Ñ\ Ó\ Ô\ Õ\ Ö\ o\ ¢\ ×\ Ø\ Ù\ Ú\ Ý\ Û\ Ü\ Ú\ Þ\ ß\ à\ w\ Ë\ á\ ã\ ß\ â\ A\ ä\ å\ æ\ é\ ¢\ è\ ê\ ì\ Ï\ Ò\ ö\ \ |\ í\ |\ n\ î\ ï\ ð\ ó\ ñ\ ò\ õ\ ÷\ ô\ ù\ k\ ú\ û\ ü\ ý\ ¹\ þ\ o\ ó\ o\ ÿ\ +\ \ \ \ |\ \ x\ \ Ü\ \ \ s\ o\ Ç\ \ \ \ \ \ \ p\ ø\ \ \ à\ \ \ \ \ \ \ \ \ \ ,\ \ C\ N\ \ \ !\ \"\ c\ x\ e\ #\ $\ %\ F\ ¸\ Ô\ &\ '\ |\ (\ *\ )\ ý\ ü\ .\ -\ /\ 0\ G\ 1\ 3\ 4\ 5\ 6\ 8\ 9\ :\ ;\ <\ :\ >\ f\ =\ \ o\ +\ ?\ =\ A\ D\ @\ B\ G\ H\ I\ J\ K\ Ì\ s\ L\ M\ P\ \ O\ \ Q\ w\ R\ U\ 2\ S\ T\ Ô\ 7\ E\ _\ a\ ë\ t\ {\ V\ Å\ ø\ ¹\ W\ .\ É\ X\ Y\ n\ Z\ ]\ ^\ ý\ »\ `\ b\ c\ í\ d\ U\ ø\ e\ ±\ *\ o\ f\ A\ Z\ h\ i\ k\ j\ |\ o\ l\ m\ n\ ß\ o\ Ù\ p\ t\ [\ r\ ¾\ s\ u\ w\ Ü\ \\\ r\ x\ Õ\ 6\ z\ |\ ù\ }\ g\ \ Ç\ €\ „\ ‡\ q\ ‰\ v\ y\ ~\ ™\ \ ¡\ §\ ‘\ \ ‚\ ƒ\ ˆ\ %\ †\ \ Š\ Œ\ \ Ž\ ¾\ ”\ \ ¼\ ó\ \ ’\ ±\ “\ ”\ –\ —\ •\ |\ ˜\ ¸\ š\ ›\ \ d\ q\ ¶\ {\ \ ]\ 6\ ž\ Ÿ\ ¢\ |\ ¥\ ‹\ ¤\ ¦\ ¨\ ©\ ª\ «\ œ\ £\ ®\ Ý\ ²\ º\ Ç\ Ó\ Ú\ \ ¬\ ­\ o\ |\ ¯\ Ô\ Y\ L\ „\ °\ Ü\ ª\ ±\ ³\ |\ µ\ ´\ ·\ ¶\ Ç\ ¼\ Y\ ¦\ %\ ¹\ «\ »\ ½\ ¼\ ¿\ À\ Â\ Þ\ Á\ %\ ù\ Ã\ ï\ Å\ ¾\ Ä\ È\ x\ É\ ¸\ Ë\ Ê\ Ì\ Í\ Î\ Ï\ \ Ò\ Ð\ Ô\ Õ\ Ö\ ×\ ›\ Ø\ Ù\ Û\ Ü\ ¾\ Æ\ é\ í\ Ñ\ ù\ æ\ ý\ ÿ\ \ ó\ ß\ à\ í\ á\ â\ ã\ Y\ ä\ å\ ç\ ß\ è\ ì\ î\ ª\ ï\ ð\ \ ®\ Á\ ñ\ „\ ò\ ö\ \ .\ õ\ ¾\ ø\ ÷\ ú\ M\ ü\ \ 6\ P\ û\ Ò\ ë\ þ\ f\ ¶\ \ \ \ ê\ \ D\ \ ô\ \ \ \ \ #\ Ì\ \ ®\ è\ \ É\ \ À\ “\ \ $\ (\ \ .\ Ú\ 8\ +\ \ -\ \ >\ \ \ Ô\ \ :\ \ ±\ \ \ \ ß\ \ \ !\ ?\ \"\ q\ Ò\ |\ #\ o\ %\ '\ &\ )\ *\ @\ ,\ -\ Ü\ á\ _\ |\ /\ Ò\ Ì\ 0\ 1\ A\ 2\ ¥\ 3\ %\ 4\ 5\ ¬\ 6\ D\ 7\ 9\ \ :\ {\ ;\ <\ =\ u\ ?\ A\ E\ R\ ›\ Ô\ D\ B\ C\ G\ H\ Õ\ I\ P\ J\ K\ \ ð\ L\ M\ t\ B\ N\ O\ ±\ Q\ \ P\ ^\ ­\ S\ M\ |\ T\ U\ V\ Ã\ X\ W\ Y\ c\ Z\ Ü\ [\ d\ \\\ _\ ]\ `\ F\ ^\ y\ :\ a\ 6\ c\ b\ d\ g\ h\ e\ i\ j\ k\ Ð\ O\ @\ É\ r\ m\ ‰\ f\ q\ l\ €\ †\ d\ n\ p\ r\ o\ .\ s\ Z\ ±\ t\ u\ v\ Ô\ o\ w\ x\ y\ {\ |\ ¾\ í\ }\ ×\ o\ ~\ c\ |\ Ü\ \ O\ \ \ ƒ\ Õ\ „\ _\ ˆ\ u\ Ô\ ß\ Š\ q\ ‰\ \ 6\ ‹\ Œ\ \ c\ Ž\ z\ Ü\ \ \ ‘\ ’\ Ç\ P\ f\ ”\ •\ W\ ¼\ ‚\ –\ ‡\ “\ \ {\ µ\ ¸\ À\ š\ 6\ ˜\ ¥\ #\ \ P\ J\ \ ¢\ ›\ 6\ œ\ \ ž\ Ÿ\ à\ +\ p\ ¡\ ¶\ ð\ ž\ ¢\ £\ »\ ¾\ ¤\ ¥\ ¦\ ¨\ §\ D\ ©\ ý\ —\ «\ ¬\ ­\ ®\ ¯\ ¶\ ™\ °\ ±\ ü\ ³\ ²\ ´\ L\ °\ ¶\ à\ ·\ ¹\ »\ w\ ¼\ ½\ ¿\ _\ Á\ Â\ ª\ Ä\ C\ º\ {\ Ö\ Û\ Ý\ â\ Ã\ #\ Z\ ”\ Å\ Æ\ Ô\ Á\ O\ Ç\ È\ ¼\ j\ í\ s\ ¼\ Ë\ Ì\ Ã\ ©\ o\ 6\ A\ É\ ×\ Î\ Ï\ 2\ Ð\ O\ Ñ\ Ó\ Ò\ ½\ \ Õ\ ×\ Ø\ Ú\ Š\ É\ \ Ù\ Ê\ Ü\ Þ\ ß\ Õ\ h\ q\ à\ á\ ã\ Í\ ­\ O\ å\ Ô\ %\ ç\ ë\ C\ ä\ ö\ ø\ î\ æ\ é\ Ü\ §\ ê\ %\ n\ ‘\ í\ õ\ ¸\ ì\ h\ e\ ‘\ Y\ ­\ 9\ ð\ ò\ ó\ ñ\ ß\ ô\ V\ í\ õ\ D\ v\ É\ ÷\ o\ ù\ =\ ±\ ú\ û\ .\ ï\ ü\ ¼\ #\ ›\ è\ >\ ×\ ý\ Š\ ÿ\ þ\ \ \ \ o\ ¼\ u\ \ \ \ Ü\ ~\ \ \ Æ\ ~\ y\ °\ \ \ t\ \ i\ \ u\ \ \ \ :\ u\ Ù\ \ \ \ \ ±\ \ \ n\ \ }\ \ <\ \ \ '\ 9\ C\ \ !\ \"\ #\ $\ %\ ¸\ ?\ :\ |\ õ\ &\ A\ Ù\ )\ o\ +\ *\ Ü\ ¼\ .\ /\ •\ 0\ 1\ ž\ 2\ 3\ 4\ ½\ q\ 5\ \\\ _\ ²\ ,\ \ ­\ 7\ (\ 8\ t\ Ù\ Ã\ ;\ <\ =\ Ò\ >\ A\ B\ C\ D\ 6\ @\ J\ :\ T\ V\ E\ ç\ |\ F\ ‘\ §\ %\ Á\ H\ ®\ I\ õ\ K\ t\ M\ ð\ N\ L\ N\ O\ Ô\ Ä\ P\ ý\ Q\ R\ S\ õ\ |\ è\ U\ E\ G\ \ W\ f\ X\ Á\ Y\ Z\ ~\ t\ Á\ [\ ñ\ —\ |\ \ |\ \\\ f\ º\ q\ u\ ]\ ^\ _\ `\ O\ ±\ a\ Ô\ b\ „\ c\ e\ `\ ¦\ d\ g\ \ \ h\ i\ ù\ \ ë\ j\ \"\ k\ ­\ D\ l\ m\ Ô\ Ô\ ø\ n\ p\ o\ p\ r\ \ y\ Ó\ s\ t\ w\ †\ v\ ø\ ‡\ ˆ\ “\ ›\ y\ z\ x\ {\ °\ |\ ø\ }\ \ ¤\ €\ ‚\ ƒ\ Æ\ ¨\ ¸\ s\ „\ †\ ¿\ ¯\ _\ ‰\ \ Š\ ¾\ ‹\ \ Œ\ :\ \ Ž\ x\ \ \ :\ ~\ ®\ ’\ Ü\ ›\ Ü\ Œ\ t\ ¦\ ”\ •\ –\ —\ ˜\ ™\ \ š\ ¶\ \ ž\ Ÿ\ \\\ ‡\ ¡\ /\ \ ¢\ ¢\ £\ 6\ ‘\ œ\ ±\ ¶\ »\ ¤\ ¥\ ¨\ ¦\ §\ ©\ ]\ «\ ¬\ h\ ­\ í\ ®\ °\ o\ w\ ¯\ Ä\ ¸\ ¦\ ²\ \ ³\ ÷\ Ô\ q\ ´\ ò\ µ\ ·\ ¸\ ¹\ º\ ¼\ b\ ß\ Ó\ ¾\ •\ ×\ 3\ À\ 2\ Á\ .\ \ ª\ Ì\ \ È\ d\ 6\ Ã\ Â\ °\ ½\ ¿\ Ç\ Ï\ \ Û\ Ý\ {\ \ Ä\ ­\ )\ )\ Å\ ¤\ ø\ o\ Ç\ È\ Z\ /\ ¢\ Ê\ Ì\ c\ )\ Ë\ \ Ì\ Í\ õ\ ÷\ Î\ ±\ í\ ¸\ A\ Ð\ Ñ\ Ó\ Ô\ Õ\ Ö\ ×\ \ È\ Ø\ Ù\ Ú\ ¦\ R\ «\ q\ Ü\ ¤\ w\ \ Æ\ Þ\ ß\ É\ š\ ½\ ß\ Ò\ à\ á\ Ù\ Ý\ ä\ ã\ ç\ N\ ê\ â\ \ å\ +\ æ\ ý\ è\ o\ 0\ é\ %\ B\ ë\ |\ Z\ í\ c\ î\ Ç\ :\ ï\ ð\ ß\ ó\ ô\ Ú\ V\ ¼\ ö\ ÷\ û\ Ü\ \ ø\ ú\ 4\ L\ û\ ý\ ü\ ü\ þ\ \ ÿ\ \ |\ \ 1\ ò\ \ ì\ ™\ \ m\ \ ñ\ \ ®\ \ \ ý\ \ \ \ \ õ\ ù\ \ \ \ \ \ \ \ \ \ œ\ \ \ î\ Ã\ (\ *\ .\ \ \ !\ \"\ ¢\ #\ $\ %\ &\ '\ }\ â\ Ô\ e\ )\ \ Å\ +\ H\ ,\ o\ m\ ¾\ \ È\ ~\ :\ /\ Ô\ 0\ \ 2\ 1\ ¶\ 3\ 4\ /\ <\ >\ E\ 5\ 6\ !\ o\ \"\ 7\ 8\ ‰\ 9\ :\ ·\ é\ ;\ =\ ?\ Á\ ®\ @\ B\ ¾\ Z\ ¥\ C\ b\ D\ Ô\ G\ ­\ H\ Y\ ¸\ x\ ÿ\ Z\ I\ A\ F\ \\\ J\ L\ K\ M\ N\ q\ +\ O\ P\ Q\ R\ ÿ\ ý\ S\ Á\ T\ U\ \ V\ È\ ×\ \ \ \"\ ø\ t\ Z\ 6\ [\ ]\ ^\ _\ Ð\ \ `\ á\ ü\ Ç\ a\ b\ c\ €\ d\ W\ \ X\ Y\ h\ k\ Ç\ |\ \ ‰\ Œ\ Ž\ ’\ ™\ e\ f\ ¿\ •\ l\ g\ i\ j\ n\ m\ \ É\ {\ o\ s\ p\ q\ §\ ›\ r\ \ u\ ø\ v\ w\ x\ y\ {\ ¾\ }\ ~\ õ\ €\ \ Ž\ O\ Æ\ o\ ¥\ \ ƒ\ ‚\ ü\ r\ „\ †\ o\ ˆ\ Š\ ‹\ \ ª\ ±\ z\ ×\ \ \ Z\ ¥\ ‘\ Â\ ”\ {\ “\ ¶\ t\ —\ y\ ˜\ š\ Ù\ ‡\ œ\ –\ Ý\ C\ «\ ¨\ µ\ ¸\ ½\ q\ ›\ ¸\ >\ ž\ Ÿ\ œ\ \ ›\ :\ ×\ ¡\ ¢\ £\ ¤\ c\ ¥\ ©\ §\ ª\ ¬\ H\ x\ ¢\ ­\ ®\ ¯\ °\ ø\ 9\ ±\ \ ²\ ³\ ´\ ˆ\ u\ ¶\ Õ\ `\ ·\ \ ¹\ ¦\ º\ »\ \ b\ ¾\ ò\ À\ ¼\ ¾\ Á\ À\ .\ ­\ ¢\ Â\ Ã\ ¼\ Ä\ Æ\ Ç\ Ê\ v\ È\ Â\ \ Å\ ¿\ Ô\ É\ }\ Ë\ Ì\ [\ 6\ Í\ Î\ u\ ”\ %\ Ï\ ð\ \ Ç\ %\ £\ Ñ\ Ò\ é\ \ m\ Ó\ ×\ U\ œ\ |\ \ q\ Ð\ Õ\ Ö\ Ê\ ë\ ×\ Ø\ #\ Ù\ Û\ Ü\ Ý\ ¨\ Ä\ ø\ Þ\ ß\ à\ €\ o\ á\ y\ â\ M\ o\ o\ ´\ ñ\ å\ æ\ è\ é\ A\ \ ê\ Þ\ \ U\ ì\ ¶\ í\ ]\ :\ \ î\ ï\ À\ Ú\ ð\ ñ\ Á\ ­\ ô\ õ\ ö\ ã\ ä\ ø\ ÷\ ç\ >\ ù\ ú\ ¤\ ý\ ò\ ó\ \ ½\ œ\ Á\ p\ \ ¾\ û\ 6\ 1\ ü\ ý\ þ\ ô\ Ü\ ¥\ ÿ\ Ô\ i\ \ #\ \ ´\ \ \ O\ ¢\ \ ž\ \ ›\ \ \ ±\ %\ \ ¢\ Ä\ \ à\ \ o\ á\ O\ \ \ ‰\ m\ \ \ ×\ \\\ \ \ \"\ \ \ \ %\ Ü\ Ô\ \ \ \ \ \ ý\ À\ ­\ \ \ G\ #\ /\ 2\ ‡\ .\ D\ )\ \ \ !\ \"\ ö\ %\ Ü\ $\ 9\ &\ '\ Ô\ (\ *\ r\ \ +\ ,\ J\ æ\ ¤\ .\ 0\ 1\ ¢\ É\ 3\ 4\ 5\ o\ 7\ 6\ \ 8\ Ç\ ®\ :\ Æ\ <\ B\ ;\ =\ >\ Ò\ ?\ @\ ¾\ C\ A\ \ x\ E\ F\ 9\ Õ\ H\ È\ G\ K\ M\ B\ [\ µ\ i\ I\ J\ ±\ L\ Ô\ -\ C\ ¶\ t\ \ ß\ O\ o\ «\ $\ ”\ P\ ¦\ Q\ ™\ R\ S\ T\ ¸\ U\ X\ V\ W\ @\ Y\ Z\ ´\ N\ N\ ]\ ÷\ \\\ `\ •\ ^\ ±\ _\ '\ \ `\ a\ b\ c\ N\ d\ e\ û\ f\ h\ g\ G\ Ý\ F\ i\ j\ k\ l\ o\ w\ „\ ˆ\ C\ \ ~\ ¥\ m\ n\ n\ ±\ p\ ]\ þ\ ®\ è\ r\ t\ u\ s\ v\ ¦\ x\ y\ ³\ Y\ z\ R\ {\ s\ |\ }\ ¯\ \ Š\ Y\ ‚\ €\ \ †\ ª\ q\ ƒ\ Ç\ ‡\ \ â\ ‰\ ü\ \ `\ Š\ w\ 7\ Œ\ ‹\ š\ y\ \ r\ Ž\ \ \ \ \ ‘\ \ C\ \ A\ ñ\ ¤\ N\ ”\ Y\ ’\ ¶\ p\ Ô\ •\ È\ È\ –\ r\ \ \ —\ œ\ ˜\ “\ ™\ š\ ›\ ½\ °\ ­\ Ï\ Ù\ Þ\ â\ Å\ \ \ ž\ Ÿ\ ¡\ £\ ¤\ ¥\ ¦\ ¨\ §\ ª\ ê\ «\ ©\ ¬\ ®\ ¯\ ²\ ³\ ¤\ µ\ ¶\ ð\ ´\ ·\ ¹\ ¸\ º\ »\ ¼\ ½\ ¾\ ¿\ À\ Á\ Ã\ Ä\ È\ œ\ Æ\ Ê\ É\ Ë\ Ì\ Í\ Î\ Ð\ Ñ\ Ò\ ¢\ Ô\ ±\ Õ\ Ö\ ×\ Ø\ Ú\ Û\ Ü\ Ý\ ß\ à\ á\ ã\ ä\ æ\ è\ é\ ì\ Â\ Ç\ Ó\ Ð\ ï\ í\ î\ ñ\ ò\ ó\ ë\ ú\ å\ ç\ õ\ ö\ ÷\ û\ ø\ ù\ ü\ ý\ þ\ é\ \ \ \ \ »\ Ü\ \ \ \ \ \ \ ô\ \ \ þ\ \ \ {\ ÿ\ \ \ \ !\ +\ \"\ #\ $\ '\ %\ )\ &\ 4\ *\ ,\ -\ .\ 0\ (\ 1\ 2\ 5\ 6\ +\ 3\ /\ ;\ 7\ :\ (\ 8\ =\ 2\ @\ <\ >\ A\ B\ ?\ 9\ ~\ \\\ u\ ˆ\ |\ V\ ]\ X\ G\ C\ D\ E\ H\ I\ J\ K\ O\ F\ L\ M\ P\ S\ N\ Q\ U\ _\ [\ W\ Y\ b\ ^\ n\ a\ c\ d\ e\ f\ g\ I\ Z\ h\ j\ k\ o\ p\ q\ t\ I\ m\ i\ r\ w\ x\ z\ s\ }\ {\ \ d\ €\ y\ ‚\ n\ ‡\ „\ \ †\ d\ Š\ ƒ\ ‹\ ƒ\ l\ R\ `\ T\ v\ ‰\ ¥\ ¡\ \ “\ ½\ \ Ž\ ‘\ ’\ —\ ”\ Œ\ \ h\ I\ –\ \ d\ ™\ ›\ ˜\ •\ U\ J\ œ\ ¢\ ¦\ ’\ £\ Ÿ\ š\ «\ e\ ²\ ©\ ¤\ ¬\ §\ ­\ ®\ ¶\ ±\ ³\ ´\ ·\ ¸\ µ\ ¹\ º\ »\ £\ O\ ¼\ Á\ K\ ¾\ Q\ ¿\ À\ Â\ Ã\ Ä\ Å\ Ç\ Ê\ J\ –\ È\ ª\ ž\ Æ\ É\ °\ ¨\ ¯\ ø\ æ\ ê\ í\ Ù\ Ñ\ Ë\ Ì\ Í\ Ð\ Ï\ U\ Œ\ Ë\ ¾\ Ó\ j\ Î\ Ø\ g\ Õ\ Ô\ Ê\ Ú\ j\ J\ Ý\ ƒ\ Á\ â\ ¶\ Û\ Ö\ à\ á\ €\ £\ º\ Þ\ Ü\ Ö\ d\ ã\ ä\ è\ é\ ô\ À\ ë\ ì\ ð\ å\ ò\ Ê\ î\ ç\ ó\ õ\ û\ ‡\ ö\ ù\ ¼\ µ\ œ\ ú\ ‘\ ý\ þ\ ®\ ÿ\ ü\ Ÿ\ Ò\ ×\ ÷\ ß\ ï\ ñ\ $\ \ -\ \ \ #\ €\ \ \ \ I\ K\ \ I\ \ ¶\ \ J\ \ I\ Ã\ ‘\ \ À\ Ÿ\ Á\ Q\ \ ¶\ \ \ \ ‡\ \ \ \ m\ L\ Ü\ N\ \ \ \ \ &\ '\ ,\ J\ \ Ö\ m\ \ \ )\ \ !\ \"\ +\ (\ *\ /\ a\ .\ J\ \ %\ \ Æ\ 0\ Æ\ G\ =\ R\ E\ 4\ S\ 7\ 2\ I\ 1\ 3\ 5\ Ç\ J\ 6\ \ G\ è\ ¶\ J\ ƒ\ :\ J\ 8\ Ã\ ;\ <\ >\ ­\ Ë\ A\ ?\ 9\ B\ Ã\ C\ ‘\ 3\ D\ Ø\ F\ I\ H\ K\ Y\ Q\ ¼\ š\ L\ M\ N\ Ã\ P\ O\ §\ Î\ @\ W\ Ã\ 6\ T\ J\ a\ ]\ `\ b\ V\ X\ U\ ¹\ [\ „\ V\ ]\ I\ Z\ \\\ ƒ\ M\ \ ^\ ¦\ n\ c\ ¾\ €\ Û\ d\ Ë\ _\ J\ Ã\ ]\ ¶\ f\ i\ J\ g\ –\ j\ Ê\ m\ h\ 6\ ƒ\ 6\ n\ g\ õ\ k\ €\ M\ H\ o\ p\ K\ £\ q\ s\ r\ t\ u\ v\ Ï\ y\ w\ z\ F\ x\ Æ\ b\ l\ e\ \ \ ¶\ |\ }\ ~\ {\ Î\ „\ f\ \ {\ \ ƒ\ €\ U\ ƒ\ ‚\ ¶\ Õ\ ¸\ ó\ e\ J\ „\ o\ ‡\ è\ ¶\ s\ L\ ˆ\ Š\ ®\ Ã\ ‰\ š\ 3\ Ž\ J\ \ S\ Œ\ C\ D\ \ Q\ –\ û\ ’\ J\ ‘\ Ã\ “\ ^\ ”\ Ø\ \ ™\ •\ —\ ¶\ º\ ó\ ˜\ œ\ ‡\ M\ ž\ ®\ ›\ Ÿ\ †\ ñ\ ‹\ ¹\ G\ ¨\ ¿\ Ç\ ¦\ ¾\ ¡\ £\ t\ ¢\ Á\ ¤\ ¦\ ¥\ e\ §\ ª\ M\ ­\ ®\ ’\ Ã\ ©\ °\ \ ²\ ³\ ¯\ o\ ¬\ µ\ Ã\ •\ Š\ ™\ ¶\ !\ ¸\ ¾\ Ã\ º\ »\ J\ ¼\ Ã\ ½\ ƒ\ Å\ Á\ k\ ‹\ Æ\ €\ d\ Ê\ €\ ·\ f\ É\ Ä\ È\ Ë\ Ï\ Í\ Î\ ž\ Â\ À\ ´\ Ì\ Æ\ «\ ±\ î\ í\ Ó\ ¼\ Ð\ Œ\ Ñ\ e\ Ò\ Ë\ Õ\ £\ Z\ Ö\ ×\ c\ Ø\ „\ G\ ›\ ƒ\ Ÿ\ ¼\ Ù\ Ú\ Û\ Ü\ Ý\ Þ\ ß\ â\ Ã\ á\ à\ µ\ ·\ å\ Ã\ Ö\ ã\ ç\ ä\ æ\ N\ M\ \ è\ G\ ë\ Á\ é\ ì\ ‡\ ê\ ï\ n\ ³\ ñ\ ¾\ ð\ ò\ ó\ Ã\ O\ ¹\ ½\ ^\ Ô\ \ \ \ ý\ û\ \ ú\ J\ õ\ ‹\ ‘\ J\ ö\ J\ Ú\ ô\ ÷\ Ã\ ø\ ü\ ²\ \ ÿ\ ù\ \ \ \ G\ \ Î\ \ I\ G\ \ \ J\ \ ò\ |\ ­\ \ â\ \ \ ­\ À\ I\ \ _\ \ \ \ ¶\ \ Ë\ \ \ \ „\ \ Ê\ N\ þ\ M\ \ \ û\ :\ -\ A\ 0\ 5\ &\ ¶\ !\ Q\ o\ ã\ J\ \"\ (\ €\ %\ £\ '\ D\ +\ g\ )\ *\ ,\ /\ ©\ 1\ £\ .\ 2\ G\ 3\ J\ 4\ à\ 6\ Ÿ\ I\ •\ }\ 8\ h\ \ ?\ \ ;\ n\ 7\ s\ ®\ r\ <\ h\ Ú\ ¦\ D\ E\ @\ R\ =\ F\ B\ G\ B\ C\ ƒ\ M\ #\ H\ >\ 9\ $\ ^\ Q\ \ X\ S\ ­\ I\ \ g\ Ç\ f\ ¯\ J\ K\ ~\ L\ K\ ó\ w\ N\ M\ Q\ (\ Ë\ R\ \ P\ ¶\ J\ „\ W\ U\ Y\ Z\ €\ J\ [\ \\\ ]\ ¼\ Ã\ V\ _\ a\ ›\ þ\ b\ õ\ ¾\ ²\ c\ d\ e\ f\ i\ g\ l\ G\ j\ ¹\ ¶\ m\ ·\ €\ k\ `\ ž\ R\ L\ N\ Ÿ\ h\ @\ l\ T\ L\ O\ ˆ\ G\ \ v\ o\ ]\ M\ t\ n\ ²\ s\ p\ r\ \ |\ K\ u\ w\ s\ „\ ®\ q\ {\ »\ x\ y\ \ c\ „\ \ I\ Ž\ |\ J\ }\ g\ ~\ S\ ‚\ Ã\ €\ \ i\ ½\ ¶\ *\ „\ †\ '\ ƒ\ c\ €\ ‡\ ¹\ !\ ‰\ z\ §\ •\ Ž\ ‘\ ©\ u\ ™\ \ c\ Š\ ©\ G\ ‘\ ‹\ µ\ \ J\ \ c\ ’\ ”\ I\ _\ ƒ\ Œ\ \ –\ c\ ²\ Z\ û\ š\ ˜\ œ\ ›\ Ú\ \ Ç\ Ÿ\ k\ G\ ž\ ¶\ J\ „\ q\ ‘\ ¶\ ¡\ ¢\ Ã\ ¤\ ¥\ Ö\ £\ ¦\ t\ «\ ¬\ Ã\ ¨\ ƒ\ ¸\ ­\ ¯\ L\ 6\ H\ Q\ æ\ ª\ ®\ —\ “\ l\ Ç\ Á\ ¶\ ‘\ ´\ ¼\ Î\ Å\ ’\ »\ ²\ °\ c\ '\ ±\ €\ U\ g\ Ë\ µ\ S\ ·\ [\ €\ J\ ­\ ¹\ ~\ À\ ½\ º\ ¿\ ’\ J\ I\ ¾\ !\ ½\ €\ «\ Ã\ Á\ Ä\ Ö\ ’\ J\ \ ù\ z\ Í\ †\ Æ\ \\\ ¤\ É\ J\ È\ Ë\ \ Ê\ s\ Ì\ Â\ ³\ “\ —\ ñ\ ¸\ ±\ ¯\ ë\ A\ í\ Ú\ à\ ö\ è\ Þ\ Ñ\ Ï\ Õ\ Ð\ Ò\ Ó\ ©\ Ö\ ­\ Ù\ Ô\ ¯\ Û\ K\ ß\ á\ f\ â\ S\ w\ \ Ü\ €\ f\ ã\ J\ ä\ J\ º\ ò\ a\ æ\ Ã\ ê\ í\ é\ ç\ î\ ™\ I\ ð\ ô\ ñ\ ì\ |\ f\ õ\ m\ ó\ ÷\ Ã\ µ\ _\ N\ ×\ <\ ^\ å\ —\ ï\ ò\ l\ Ý\ Ø\ =\ \ \ û\ ¶\ \ ü\ ½\ ú\ c\ ø\ \ ý\ I\ S\ ó\ Û\ þ\ Ö\ M\ ¶\ ÿ\ k\ ü\ ù\ \ &\ \ e\ \ J\ \ \ c\ \ :\ \ À\ Ò\ i\ ­\ ¶\ \ ¶\ g\ \ \ \ \ –\ M\ \ \ U\ \ ž\ m\ \ \ \ \ J\ \ ¶\ ó\ \ Ê\ Y\ ž\ \ h\ Ž\ 5\ #\ +\ \ \ €\ \ ¾\ \ !\ €\ J\ r\ ©\ Î\ |\ –\ %\ ½\ \"\ Ï\ &\ \ '\ H\ I\ (\ J\ G\ *\ ,\ H\ /\ ö\ 0\ 1\ 4\ z\ z\ 2\ q\ J\ 6\ Ã\ ~\ 8\ 7\ :\ 9\ N\ \ K\ Ä\ \ ;\ J\ J\ N\ 3\ M\ <\ $\ T\ .\ )\ e\ Æ\ ‹\ \ K\ I\ B\ Ë\ \ <\ ®\ =\ K\ ¾\ J\ º\ ü\ Ã\ L\ ƒ\ ƒ\ ›\ Ú\ L\ \ Ÿ\ I\ @\ H\ \ N\ ¼\ £\ ê\ I\ 9\ Ÿ\ ‚\ \ D\ H\ ó\ ö\ E\ F\ r\ G\ H\ Ã\ ©\ [\ ]\ J\ J\ L\ õ\ O\ \ n\ G\ \ M\ Á\ Q\ Ã\ ˜\ ú\ ¥\ N\ \ O\ P\ ¸\ J\ \ C\ >\ A\ ?\ ¾\ R\ U\ S\ ï\ £\ T\ Ÿ\ Î\ V\ É\ Ü\ l\ `\ W\ X\ Y\ Z\ [\ \\\ ]\ ^\ b\ _\ c\ d\ e\ f\ a\ g\ h\ ‡\ }\ û\ u\ i\ D\ Ú\ k\ j\ l\ \ o\ m\ J\ ¶\ a\ Ë\ r\ Ý\ p\ t\ q\ I\ „\ Ë\ I\ ¶\ x\ J\ ­\ |\ v\ Œ\ I\ {\ z\ Ì\ |\ ~\ ‚\ J\ f\ \ \ º\ ‚\ €\ ·\ û\ ƒ\ †\ ù\ \"\ €\ „\ ž\ ˆ\ ö\ ƒ\ s\ n\ w\ y\ É\ ñ\ ±\ ž\ ¦\ E\ £\ G\ I\ ‡\ J\ ‰\ |\ Š\ Ž\ ¾\ ‹\ (\ ‘\ \ J\ ƒ\ Œ\ _\ ó\ \ ò\ \ O\ \ [\ µ\ ‘\ ’\ “\ J\ c\ –\ ”\ ë\ ®\ •\ G\ M\ —\ ²\ H\ Î\ \ Ó\ ™\ ¤\ ›\ š\ â\ œ\ ¡\ ¢\ Ž\ \ ¥\ J\ e\ n\ „\ Y\ I\ S\ §\ ¤\ ¨\ ª\ á\ Ë\ ©\ –\ ž\ Ÿ\ ˜\ \ \ »\ ·\ Å\ ¾\ ¸\ ½\ I\ «\ ®\ ³\ ¦\ \ ­\ ¬\ I\ \ ð\ °\ J\ \ J\ ±\ \\\ q\ Q\ \ ²\ \ µ\ Ë\ ¬\ ’\ e\ \ ¶\ Ã\ ´\ o\ a\ º\ D\ ¶\ \ ¿\ Á\ ¾\ Ä\ À\ Z\ Ã\ ¼\ Æ\ Ç\ É\ Ê\ Ë\ g\ *\ È\ ƒ\ Â\ q\ Î\ ‚\ I\ Í\ ~\ ¹\ ¯\ Ì\ Ì\ —\ ß\ ä\ Û\ Ù\ Þ\ Ð\ Ï\ ¶\ c\ Ñ\ Š\ Î\ \ c\ _\ Ò\ g\ Ö\ \ Ã\ Ô\ ×\ q\ I\ Ø\ S\ ‘\ ©\ Ê\ ­\ H\ Ý\ K\ Ã\ ƒ\ *\ J\ \ á\ f\ ¾\ J\ Q\ ã\ \ J\ P\ ~\ ó\ æ\ q\ Ã\ ç\ á\ ¶\ I\ ë\ \ é\ ì\ ê\ í\ ï\ ¸\ î\ å\ !\ Õ\ ¹\ è\ Ó\ â\ ñ\ à\ “\ Ü\ Ú\ G\ ¼\ ð\ Æ\ ñ\ ƒ\ °\ I\ ¶\ ò\ ó\ ô\ ƒ\ L\ l\ ¶\ \ \ ü\ n\ É\ ,\ D\ I\ €\ ¶\ J\ Ú\ ö\ û\ c\ J\ I\ ø\ ¶\ x\ ú\ „\ 3\ ‡\ ‰\ Î\ ·\ N\ ý\ F\ ½\ i\ Ã\ Ü\ ÿ\ ü\ Ž\ ƒ\ ›\ \ §\ \ ½\ \ \ \ M\ à\ Á\ J\ e\ å\ s\ '\ ‰\ I\ F\ =\ \ \ õ\ þ\ \ \ ù\ ÷\ \ \ û\ \ w\ ü\ ¦\ ‹\ \ \ g\ P\ \ \ \ \ J\ \ ½\ \ N\ \ †\ [\ Ö\ Ú\ ~\ \ \ \ &\ #\ û\ \ \ t\ ¦\ %\ '\ I\ n\ \"\ É\ J\ Å\ $\ !\ v\ 1\ .\ û\ ,\ ,\ +\ (\ )\ -\ ¶\ I\ /\ 6\ Ã\ G\ g\ ²\ 2\ M\ M\ Í\ *\ 0\ 8\ 4\ J\ 5\ t\ 3\ 6\ !\ M\ =\ \ 7\ ,\ <\ :\ ;\ I\ M\ \ >\ ó\ ½\ 9\ G\ E\ K\ \ -\ M\ F\ S\ B\ ?\ „\ *\ Ø\ |\ ž\ ª\ C\ ø\ A\ !\ H\ ¼\ ›\ D\ I\ ¶\ J\ J\ J\ L\ J\ I\ \ O\ s\ ›\ ¼\ P\ *\ Ã\ Q\ ƒ\ ›\ \ ©\ T\ F\ U\ ^\ U\ \ X\ H\ G\ V\ Ì\ ~\ Ø\ Y\ Ð\ ^\ y\ W\ Z\ ¤\ [\ \\\ R\ ú\ N\ S\ ñ\ E\ @\ p\ Ç\ d\ f\ a\ I\ ú\ 3\ \ ­\ D\ Ë\ \ |\ n\ ^\ _\ U\ <\ `\ ¦\ ‡\ ^\ „\ Š\ c\ r\ ü\ ƒ\ I\ r\ ’\ e\ ‘\ Ã\ J\ \ +\ Š\ b\ e\ ²\ \ ‘\ L\ g\ h\ \ §\ X\ J\ ¸\ j\ ð\ ¾\ k\ l\ m\ n\ o\ ’\ ð\ q\ r\ t\ O\ ž\ s\ —\ e\ ]\ ñ\ à\ i\ \ ˆ\ ƒ\ z\ €\ S\ u\ y\ {\ *\ |\ w\ }\ v\ v\ U\ ~\ \ þ\ \ â\ s\ J\ ‚\ J\ Ü\ S\ „\ ˆ\ ‡\ J\ k\ Ø\ „\ Š\ \ \ j\ †\ Œ\ ‘\ \ G\ Š\ ^\ ­\ Ÿ\ Ê\ O\ \ \ ¸\ ‘\ H\ \ €\ ’\ \ U\ Á\ ù\ “\ L\ I\ x\ ‹\ ‰\ Æ\ Ž\ ¦\ ™\ í\ —\ K\ ]\ ”\ „\ :\ f\ Œ\ €\ •\ c\ f\ ƒ\ =\ H\ Æ\ D\ –\ O\ ,\ ˜\ ½\ š\ J\ ƒ\ õ\ ›\ J\ K\ \ œ\ \ <\ ž\ H\ ^\ Ÿ\ Ã\ s\ w\ ¡\ €\ Î\ D\ =\ ó\ ü\ „\ €\ ‰\ ¢\ O\ ¤\ £\ ¥\ ê\ L\ §\ h\ Ä\ ’\ ©\ ¨\ \ ö\ \ ª\ „\ M\ <\ œ\ Æ\ ¹\ °\ ]\ K\ ù\ «\ â\ Ã\ Z\ ­\ ¯\ ®\ Ê\ M\ Ì\ ¬\ $\ [\ D\ ±\ ²\ µ\ g\ I\ ·\ \ K\ w\ ¶\ C\ ù\ ó\ K\ \ e\ ‡\ O\ \ Ÿ\ »\ ¾\ J\ ¼\ ±\ º\ Ö\ =\ ¹\ I\ ½\ s\ ¿\ Œ\ ó\ ´\ ©\ ³\ “\ ±\ ¸\ Ó\ Ì\ Ø\ É\ Ç\ ¾\ Á\ Â\ Ã\ w\ G\ Ä\ K\ ¶\ Å\ À\ Æ\ Ã\ Ÿ\ I\ †\ \ È\ 1\ Ë\ š\ \ ò\ ª\ ‚\ Ë\ @\ Î\ 3\ J\ Í\ ¶\ I\ ¤\ Ê\ Ï\ „\ Ò\ ’\ h\ Ð\ {\ Š\ „\ Õ\ ð\ Ö\ Ö\ *\ <\ ×\ ~\ N\ q\ Æ\ [\ ´\ M\ .\ ‰\ Ô\ Ñ\ l\ ÷\ æ\ ð\ ÷\ G\ æ\ á\ ¶\ N\ ¯\ G\ Ý\ @\ \ ò\ ¶\ Û\ Ú\ Ù\ Ü\ Þ\ Ú\ Š\ ã\ c\ à\ ß\ â\ ì\ Ã\ G\ Ã\ ó\ ä\ ç\ ±\ \ \ ë\ †\ é\ ´\ í\ ò\ ê\ I\ ò\ î\ €\ ï\ H\ d\ Y\ ¦\ H\ ô\ m\ ò\ =\ ¤\ õ\ ö\ ,\ =\ =\ §\ ø\ ó\ è\ A\ ñ\ Æ\ 0\ \ å\ ž\ ¨\ ý\ Á\ \ \ Æ\ ü\ ù\ G\ ú\ Ã\ I\ û\ ’\ þ\ F\ G\ ‰\ \ \ o\ ·\ Ô\ Š\ \ \ õ\ ö\ ª\ \ \ I\ à\ O\ \ \ \ q\ \ ã\ \ œ\ \ J\ ÿ\ Ÿ\ \ Ë\ \ Œ\ ¸\ \ .\ f\ \ \ ð\ \ N\ \ ƒ\ æ\ \ \ l\ Ú\ É\ \ ©\ \ \ ë\ \ \ \ ù\ !\ v\ Z\ Q\ T\ ,\ ¿\ \"\ N\ O\ *\ j\ F\ <\ %\ #\ &\ '\ +\ $\ (\ -\ )\ /\ 2\ .\ 3\ 4\ 5\ 6\ 8\ 0\ 9\ A\ :\ =\ 7\ >\ ?\ B\ D\ @\ G\ J\ E\ K\ R\ I\ L\ S\ X\ U\ P\ Y\ [\ :\ W\ ]\ \\\ ^\ `\ _\ c\ b\ d\ e\ f\ g\ h\ i\ k\ n\ l\ q\ o\ p\ r\ s\ h\ t\ u\ w\ y\ z\ {\ |\ }\ @\ ~\ \ €\ x\ C\ ;\ H\ a\ M\ M\ m\ V\ 1\ †\ ®\ †\ œ\ †\ ƒ\ ›\ \ ?\ „\ ‚\ ‡\ ˆ\ Š\ [\ •\ ‹\ \ Ž\ \ \ ‘\ ’\ “\ ”\ –\ —\ ˜\ 8\ Ÿ\ š\ ™\ ¢\ ¡\ 0\ \ ž\ £\ ¨\ I\ ¤\ ¥\ ¦\ §\ £\ ^\ ©\ ª\ «\ ¬\ ­\ ¯\ °\ ±\ ²\ X\ ¥\ ³\ K\ ¶\ _\ ´\ ·\ ¸\ ´\ ¹\ º\ >\ ‰\ Œ\ µ\ À\ »\ Á\ Ã\ Â\ 0\ Ä\ Ç\ Å\ Æ\ Ê\ È\ Ë\ Ì\ Í\ Î\ É\ ò\ Ð\ Ñ\ Ó\ Ï\ ö\ ú\ Ø\ Ò\ Ò\ Ö\ ×\ Ù\ Ú\ Ý\ Õ\ Û\ Þ\ ß\ á\ â\ Ü\ Ù\ ã\ ä\ å\ ç\ è\ ì\ í\ ê\ é\ ë\ õ\ ï\ Ü\ ð\ ó\ ô\ ÷\ ü\ ñ\ ø\ ÿ\ ù\ ý\ þ\ \ \ \ \ \ \ \ \ ø\ î\ Ô\ à\ æ\ û\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \"\ $\ %\ &\ '\ (\ \ !\ #\ 1\ @\ L\ Q\ 0\ )\ *\ +\ ,\ /\ 2\ 3\ 4\ 5\ 6\ 9\ <\ 7\ ý\ F\ é\ :\ ;\ =\ >\ ?\ A\ C\ G\ B\ D\ E\ I\ ñ\ K\ M\ J\ H\ O\ P\ N\ R\ S\ U\ X\ T\ V\ Z\ W\ [\ \\\ ]\ Y\ ^\ _\ ý\ a\ b\ ë\ c\ d\ e\ 8\ .\ `\ |\ ‚\ 1\ g\ i\ f\ \ h\ ÷\ k\ Ø\ n\ p\ l\ o\ q\ s\ m\ u\ r\ v\ t\ y\ i\ z\ {\ Ü\ }\ ~\ \ €\ \ „\ Þ\ ƒ\ m\ †\ ‡\ ˆ\ ‹\ ‰\ Š\ Œ\ \ \ ý\ \ ‘\ ’\ “\ ”\ Ž\ 6\ –\ ë\ ˜\ •\ ™\ š\ ›\ œ\ \ ž\ Ÿ\ x\ j\ —\ w\ ¬\ ²\ 1\ ¼\ Ä\ g\ Ø\ ƒ\ ¢\ ¤\ Ù\ £\ ¦\ ©\ §\ ¨\ «\ ª\ ®\ ­\ 6\ ¯\ °\ ±\ ³\ µ\ ¶\ º\ ¸\ ´\ ¹\ [\ »\ ·\ ¾\ Á\ ƒ\ Æ\ Û\ ½\ ¿\ À\ Â\ Ã\ Å\ Ç\ È\ É\ Ê\ Ì\ Í\ Î\ Ë\ Ï\ Ñ\ Ð\ J\ Ò\ Ó\ Ô\ Ø\ Õ\ q\ ×\ ¡\ ¥\ Ö\ Þ\ é\ ò\ Ù\ Ü\ Û\ Ý\ ß\ à\ /\ ã\ å\ Ú\ ä\ ç\ è\ ê\ ë\ ì\ \ î\ O\ E\ ï\ í\ ð\ ô\ 6\ ñ\ ó\ õ\ t\ 6\ ÷\ ú\ û\ Ø\ ù\ ü\ ÿ\ \ \ \ \ \ \ \ Ð\ \ §\ \ \ á\ â\ æ\ ö\ ø\ ý\ þ\ \ $\ 9\ \ Ñ\ \ I\ A\ X\ ý\ \ \ \ \ \ \ Ù\ \ ¿\ \ !\ \ #\ \ \ \"\ '\ C\ )\ %\ &\ (\ *\ å\ +\ ,\ .\ /\ -\ 0\ 1\ 2\ 3\ 5\ C\ ô\ 4\ é\ 6\ 7\ †\ 8\ <\ P\ 9\ :\ =\ >\ ?\ @\ %\ B\ \ \ \ #\ ;\ R\ E\ Ð\ F\ D\ G\ H\ I\ J\ K\ ã\ \ £\ †\ Ø\ 6\ L\ O\ N\ I\ 7\ P\ Q\ «\ U\ S\ T\ V\ J\ W\ Õ\ Y\ Z\ [\ \\\ ]\ X\ _\ ƒ\ ^\ `\ b\ ]\ a\ Ü\ d\ g\ e\ f\ h\ k\ i\ j\ n\ l\ p\ m\ q\ r\ s\ o\ C\ M\ þ\ c\ t\ u\ !\ ‡\ Œ\ ”\ ¦\ 2\ ô\ v\ w\ ô\ z\ {\ -\ x\ |\ }\ €\ ~\ \ ‚\ „\ \ ï\ †\ ˆ\ ‰\ ƒ\ ‹\ Ð\ Š\ Ž\ N\ \ \ Û\ \ ’\ B\ •\ ‘\ {\ “\ £\ –\ é\ —\ ˜\ ›\ œ\ L\ \ Û\ ž\ /\ Ÿ\ ¡\ ¢\ C\ y\ £\ ¤\ ¥\ â\ š\ ™\ Ì\ Ý\ ¬\ É\ ©\ ª\ §\ «\ ®\ -\ ±\ ­\ ²\ ³\ ´\ µ\ ¶\ ·\ ¸\ 6\ °\ ¹\ »\ Á\ ^\ ¼\ ¾\ ¿\ À\ Á\ Â\ º\ ^\ Ã\ Ä\ Æ\ Ç\ Ø\ È\ Ê\ Ë\ Í\ 6\ Å\ Ð\ Ò\ Ï\ Ñ\ Ó\ Ô\ Õ\ Ö\ ô\ £\ ×\ 6\ Ù\ Ù\ Ü\ Ó\ Ø\ Þ\ \ Û\ C\ ß\ ½\ ¨\ ¯\ Î\ Ú\ ä\ ñ\ \ \ \ \ \ á\ à\ â\ ã\ æ\ í\ ^\ E\ è\ å\ \ ê\ ë\ î\ ð\ ì\ ó\ ç\ ï\ \ ù\ ô\ ò\ õ\ \ ö\ ÷\ ø\ I\ >\ \"\ ú\ ü\ û\ ü\ Ù\ þ\ í\ \ ý\ ÿ\ 6\ \ \ ß\ d\ \ +\ \ \ Ó\ ô\ ¿\ \ \ \ Ù\ é\ \ \ 3\ !\ %\ *\ 5\ ^\ \ ª\ ô\ \ \ \ \ \ \ O\ \ \ \ †\ \ #\ \"\ É\ ¸\ æ\ $\ &\ )\ \ '\ µ\ )\ g\ \ (\ Ü\ +\ ,\ 6\ -\ m\ .\ X\ ¹\ /\ 1\ ^\ 2\ 6\ g\ i\ 3\ 0\ g\ 4\ Ó\ 6\ 5\ 6\ 8\ 9\ :\ <\ 7\ ;\ =\ Ù\ ý\ \ æ\ J\ V\ i\ D\ ]\ ?\ A\ \ >\ M\ ^\ B\ C\ \"\ E\ F\ ‡\ G\ H\ )\ K\ L\ š\ I\ O\ ¿\ Ü\ N\ P\ E\ Q\ R\ P\ S\ T\ U\ ƒ\ ý\ X\ P\ Y\ Z\ [\ \\\ Û\ ^\ ,\ ]\ À\ 5\ _\ `\ C\ a\ c\ ]\ ¿\ d\ e\ f\ h\ j\ g\ d\ @\ Ô\ ‡\ q\ W\ b\ w\ {\ \ }\ l\ n\ k\ ¯\ p\ m\ {\ o\ t\ ý\ •\ ë\ ª\ s\ 6\ Ù\ Ø\ €\ µ\ 7\ ¢\ v\ •\ x\ Ú\ z\ |\ ¿\ Ê\ Ù\ Ã\ í\ ‚\ §\ \ €\ 2\ Ü\ ƒ\ „\ N\ †\ ‡\ ‰\ Š\ á\ \ ‹\ ª\ Ù\ Œ\ ñ\ Ž\ {\ \ Ù\ $\ ‘\ ü\ \ “\ ’\ r\ ~\ u\ y\ \ ˆ\ `\ £\ ”\ C\ ™\ I\ –\ —\ š\ ‡\ í\ ç\ ›\ ]\ ž\ œ\ •\ \ Ÿ\ ¡\ ¢\ f\ §\ ¤\ Õ\ )\ ¦\ ¨\ ©\ ˜\ ¥\ ®\ ½\ À\ ª\ ã\ ï\ ¬\ 4\ Ù\ ­\ n\ \ °\ «\ ­\ ›\ ¯\ ²\ 6\ ´\ ±\ µ\ ¶\ Ø\ ‡\ ³\ ·\ ¹\ »\ ¸\ º\ ¼\ Ë\ ¾\ ª\ ¿\ È\ »\ ¿\ `\ Ù\ Á\ Â\ ]\ Ä\ ô\ I\ Ã\ ƒ\ Æ\ Å\ Ë\ P\ Î\ Ê\ Ñ\ Í\ É\ Ø\ Ì\ Ï\ Ð\ Ò\ Ó\ +\ Ô\ ×\ Ö\ ë\ Õ\ Ç\ #\ ä\ ï\ û\ ß\ Ù\ Ü\ „\ Ø\ Ú\ Û\ ´\ \ Ý\ Ü\ à\ Ò\ á\ â\ ã\ i\ 9\ é\ N\ æ\ ç\ ã\ €\ ê\ ƒ\ è\ Ê\ ì\ é\ í\ Ý\ ë\ \ ñ\ ð\ ò\ ó\ Ì\ f\ ·\ õ\ ô\ ö\ +\ ÷\ +\ ú\ Ó\ ø\ Û\ ù\ ü\ Ù\ ý\ I\ þ\ ß\ Þ\ å\ î\ ÿ\ \ \ \ ”\ \ .\ \ \ 4\ \ M\ \ \ \ ý\ Õ\ \ \ Æ\ \ ™\ ž\ Á\ \ ¹\ J\ \ \ \ \ \ B\ P\ \ \ \ æ\ å\ ¤\ Ó\ R\ \ k\ #\ !\ \"\ Û\ $\ '\ I\ ª\ %\ (\ *\ &\ ô\ ]\ )\ +\ 0\ l\ ,\ -\ 2\ 1\ 3\ \ \ \ \ \ /\ 6\ =\ 8\ R\ X\ b\ ?\ æ\ 7\ 5\ Õ\ 9\ ,\ :\ ;\ \ <\ F\ €\ \ ¯\ Ù\ ñ\ @\ A\ B\ C\ E\ Ü\ F\ ã\ G\ H\ I\ J\ ‡\ f\ L\ M\ ÷\ K\ N\ O\ ¸\ P\ ô\ Q\ S\ \ ü\ T\ V\ X\ ¿\ W\ Y\ À\ U\ þ\ Z\ 2\ [\ \\\ †\ ]\ _\ Ó\ `\ ý\ a\ ƒ\ ƒ\ >\ .\ D\ ^\ k\ n\ z\ \ u\ c\ d\ e\ f\ g\ j\ —\ 4\ [\ F\ ó\ m\ o\ b\ \ 4\ l\ p\ é\ p\ q\ j\ _\ é\ s\ /\ t\ h\ i\ ‘\ r\ v\ w\ y\ £\ x\ S\ <\ ß\ |\ ý\ \ {\ ~\ €\ t\ }\ \ ‚\ ƒ\ „\ Œ\ †\ ‡\ ‰\ †\ ‹\ ˆ\ Š\ \ „\ \ ƒ\ \ “\ Ž\ •\ –\ —\ ‘\ ’\ ƒ\ ™\ š\ ”\ œ\ Ž\ ˜\ ž\ ¡\ ¢\ ›\ \ £\ Ÿ\ ƒ\ ¤\ „\ ¥\ ¦\ §\ ©\ †\ ª\ ¨\ «\ ¬\ ­\ ®\ ¯\ ±\ ²\ ©\ ±\ ´\ °\ ³\ 5\ Ä\ ¾\ ò\ ¶\ µ\ ·\ ¸\ º\ »\ ¿\ ¼\ Â\ ½\ À\ Ù\ Ã\ f\ Á\ q\ 9\ Æ\ 6\ 2\ Ç\ È\ ^\ Õ\ É\ ×\ û\ Ê\ N\ Ì\ Í\ \ Ï\ \ Ð\ Ñ\ Ò\ Ü\ F\ Î\ Ï\ í\ ¥\ Ó\ Ö\ Ô\ ×\ Ø\ Ù\ Ú\ Û\ Õ\ ‰\ N\ Ý\ ]\ ß\ 6\ à\ +\ ¨\ ¹\ Å\ Þ\ h\ Ë\ i\ ì\ Î\ þ\ â\ á\ 4\ ä\ ã\ Ø\ å\ ã\ [\ I\ æ\ –\ ç\ é\ ê\ è\ ë\ 2\ Ü\ ™\ I\ í\ ›\ \ 0\ ¥\ ñ\ é\ î\ õ\ ð\ ÷\ ó\ _\ B\ ­\ ô\ ö\ )\ n\ ù\ û\ ø\ H\ ü\ -\ ú\ ]\ o\ ý\ ô\ ÿ\ \ ÷\ ò\ ï\ \ \ \ Ü\ \ \ Ø\ î\ é\ \ \ Ô\ \ Ù\ ¯\ ¯\ Þ\ \ \ ]\ )\ \ \ \ f\ \ \ Ô\ æ\ \ \ \ \ \ ]\ \ Ä\ ÷\ \ \ \ \ º\ !\ $\ ž\ %\ &\ (\ \"\ '\ )\ *\ ]\ U\ \ #\ \ ˆ\ \ ,\ /\ A\ +\ Ù\ i\ Ð\ ô\ þ\ 0\ \ \ \ 1\ 3\ G\ R\ 2\ f\ 4\ P\ ž\ 5\ 6\ 7\ ¢\ U\ Ø\ -\ ë\ +\ Ù\ 9\ Ò\ û\ :\ ƒ\ ;\ <\ =\ >\ ?\ B\ D\ 2\ £\ E\ C\ 6\ \ G\ H\ Õ\ ]\ I\ J\ N\ I\ .\ K\ L\ î\ M\ i\ 8\ @\ F\ |\ q\ O\ Q\ \ ?\ R\ T\ U\ ë\ S\ P\ I\ ç\ Å\ ¿\ V\ W\ X\ Z\ [\ Ù\ \ š\ Ù\ P\ ]\ \ \ º\ ^\ ô\ _\ £\ ¹\ ô\ ^\ b\ b\ þ\ É\ c\ e\ Â\ 4\ d\ f\ h\ g\ Û\ i\ 7\ k\ \"\ ‹\ l\ m\ ×\ n\ o\ Y\ p\ r\ ô\ Û\ s\ ¸\ j\ Y\ \\\ `\ a\ ÿ\ y\ t\ q\ €\ ‡\ µ\ v\ C\ u\ +\ -\ Û\ w\ ‚\ þ\ «\ \ z\ %\ {\ |\ ~\ }\ \ å\ P\ Ù\ ÷\ p\ ƒ\ 4\ „\ †\ ˆ\ x\ \ 6\ œ\ ¡\ £\ ¬\ Š\ \ ‰\ Œ\ £\ Ø\ 4\ \ Û\ L\ ‘\ Û\ ¦\ Ž\ ‹\ Ø\ ’\ Ó\ q\ [\ “\ 6\ Å\ –\ •\ S\ ”\ —\ ˜\ ›\ ô\ ™\ d\ \ )\ ž\ æ\ \ ü\ Ù\ ü\ Ÿ\ ý\ Ý\ e\ \"\ ¢\ ¤\ ¦\ š\ ÷\ §\ þ\ ¨\ \ \ ©\ »\ ª\ H\ ð\ ÷\ ­\ Ø\ Z\ ¥\ «\ º\ Ã\ Ï\ Õ\ P\ ®\ °\ \ ¯\ £\ ±\ \ ²\ ³\ ´\ µ\ \ ¹\ ¶\ »\ ¼\ ½\ ž\ ¿\ Á\ ¾\ Â\ À\ ó\ P\ Ä\ ’\ Å\ Ç\ Û\ \ K\ È\ ÷\ ^\ ¿\ Æ\ Ê\ _\ É\ \ í\ Ë\ ‰\ Í\ Î\ Ð\ g\ ’\ Ì\ ·\ ‰\ ÷\ Ñ\ Ó\ I\ ´\ \"\ Ó\ Ó\ I\ Ò\ ·\ Ô\ ¯\ ¸\ Ü\ å\ ð\ þ\ Ù\ ×\ I\ ö\ 4\ Ø\ Ý\ Û\ ½\ \ à\ á\ Q\ Þ\ «\ ä\ â\ æ\ p\ Ê\ \ è\ ë\ é\ I\ ç\ í\ ê\ ì\ î\ ñ\ ó\ ï\ ƒ\ I\ Þ\ ]\ \ ô\ ¯\ ÷\ 4\ ù\ ]\ \ \ í\ Õ\ õ\ d\ û\ B\ ü\ ý\ ÿ\ \ \ \ b\ \ ú\ Ö\ ß\ ã\ Ú\ Ú\ u\ ò\ \ ø\ 8\ \ ë\ \ å\ ^\ \ \ Ù\ \ z\ ã\ 4\ \"\ l\ \ î\ \ \ l\ \ Œ\ 2\ \ \ \ <\ â\ \ \ X\ ñ\ \ Ç\ E\ \ \ \ s\ ±\ \ J\ \ \ û\ Ü\ \ \ \ \"\ \ -\ #\ !\ ž\ ]\ \ $\ &\ \ '\ (\ À\ ƒ\ I\ \ *\ À\ /\ 4\ .\ 0\ 1\ 3\ 5\ \ 6\ 7\ \ \ %\ ·\ )\ +\ ,\ ;\ Ä\ R\ \ 8\ P\ 9\ :\ 1\ 6\ »\ °\ š\ Ù\ >\ ž\ ô\ Ù\ Ý\ @\ A\ z\ =\ B\ k\ Ø\ C\ Ø\ I\ G\ ]\ D\ ý\ +\ B\ E\ I\ F\ H\ E\ J\ N\ É\ K\ M\ ë\ «\ N\ \ O\ §\ P\ Q\ T\ S\ X\ U\ V\ W\ Y\ N\ Z\ \ ß\ ?\ <\ `\ L\ 7\ j\ Œ\ ‡\ \ _\ [\ `\ (\ Ú\ a\ ÿ\ ^\ b\ d\ K\ C\ c\ Æ\ e\ ÷\ i\ \ f\ g\ h\ ê\ ç\ \\\ ]\ v\ r\ \ o\ p\ l\ k\ m\ ü\ n\ å\ t\ I\ Ù\ s\ u\ /\ M\ t\ \ w\ Ç\ \"\ 4\ Ì\ y\ ©\ :\ §\ z\ {\ I\ }\ ]\ ô\ I\ í\ ~\ \ ]\ e\ |\ Ø\ €\ I\ \ ‚\ H\ Û\ I\ -\ K\ E\ †\ Û\ ˆ\ q\ ‰\ Š\ ‹\ Œ\ \ Ž\ x\ ƒ\ „\ ‡\ \ \ \ ¢\ Î\ Û\ Ø\ 8\ ‘\ ™\ ’\ “\ ”\ –\ —\ œ\ ˜\ ›\ •\ ž\ Ÿ\ ¡\ ¤\ š\ ¥\ £\ ¨\ £\ ¦\ ©\ ª\ «\ ®\ ¯\ ±\ ²\ ¶\ §\ ´\ ¸\ µ\ ¹\ º\ ¼\ ·\ ¾\ »\ ¿\ È\ ½\ À\ Á\ Â\ Ä\ Å\ Æ\ É\ Ê\ Ç\ Ë\ Ì\ Í\ Ï\ Ð\ Ñ\ Æ\ Ò\ Ó\ Ô\ Õ\ Ò\ ×\ Ù\ Ú\ Ü\ Þ\ ß\ à\ á\ À\ ­\ ¬\ ³\ Ã\ °\ ä\ Ö\ Ý\ å\ ô\ \ ñ\ æ\ Ò\ â\ è\ é\ ü\ ê\ ÷\ ë\ ì\ í\ ð\ ò\ õ\ û\ ø\ ö\ ù\ \ ú\ þ\ \ \ \ \ \ \ \ \ \ \ \ \ \ ý\ \ \ \ \ \ À\ \ ú\ \ \ \ !\ \"\ #\ %\ \ (\ )\ *\ ,\ +\ &\ -\ .\ Ä\ /\ ÿ\ ã\ ç\ î\ ó\ ï\ \ $\ '\ :\ 9\ ;\ =\ <\ X\ Y\ Z\ J\ B\ P\ G\ ?\ @\ A\ B\ C\ E\ >\ H\ I\ J\ K\ L\ M\ N\ Q\ S\ R\ U\ V\ [\ W\ \\\ ]\ T\ D\ K\ O\ F\ D\ \ b\ ^\ _\ `\ c\ d\ e\ f\ g\ a\ ‘\ ƒ\ ‡\ p\ ¥\ ¡\ –\ Š\ ‚\ r\ l\ j\ h\ o\ k\ i\ m\ z\ {\ v\ v\ q\ w\ t\ n\ }\ ~\ \ †\ €\ Ž\ v\ ˆ\ ‹\ \ ’\ ”\ —\ ›\ •\ \ œ\ ¢\ ž\ £\ ¦\ ¨\ ¤\ ¬\ v\ §\ ©\ ­\ ª\ s\ ™\ \ Œ\ «\ Ÿ\ ˜\ „\ |\ \ x\ s\ š\ \ “\ ‰\ y\ u\ é\ ³\ µ\ è\ ß\ Ú\ ×\ È\ ¯\ ±\ ¶\ ·\ ¸\ ¹\ »\ ¾\ ¼\ É\ Ê\ Ë\ Ì\ ¤\ Ï\ Í\ Î\ Ð\ Ò\ Ñ\ Ó\ Õ\ Ô\ Ù\ Ö\ v\ Ý\ n\ Ø\ Û\ Ï\ á\ Þ\ â\ ä\ k\ à\ ­\ å\ æ\ ç\ Ï\ v\ ã\ ’\ n\ Ü\ º\ Â\ Ã\ Å\ Æ\ Ç\ ¿\ º\ ±\ ˜\ Á\ v\ ½\ ²\ v\ ®\ ê\ Ä\ À\ ´\ °\ \ \ ô\ \ î\ ï\ Ë\ ð\ ó\ ¹\ v\ ª\ k\ \ ¦\ õ\ ö\ ÷\ ù\ v\ ø\ û\ ­\ ú\ ÿ\ ü\ ý\ \ v\ þ\ v\ \ \ Ï\ ª\ \ \ ó\ \ á\ ò\ á\ z\ ë\ \ \ \ \ ­\ à\ ­\ \ \ \ Û\ ±\ í\ \ à\ \ ñ\ Ã\ í\ ì\ \ À\ \ J\ C\ 2\ %\ B\ 8\ \ ¦\ \ \ \ \"\ v\ $\ |\ ’\ #\ ×\ ˆ\ \ ã\ /\ ¦\ )\ +\ ,\ -\ '\ 0\ 1\ v\ .\ (\ Á\ !\ \ \ ¤\ \ 3\ 6\ Á\ v\ <\ 9\ =\ >\ ?\ D\ E\ k\ K\ æ\ G\ »\ @\ H\ I\ L\ à\ A\ ;\ ý\ Œ\ 7\ \ *\ à\ Æ\ \ F\ ˜\ 4\ :\ 4\ 5\ &\ u\ j\ X\ l\ _\ Z\ ¹\ M\ N\ Œ\ P\ v\ S\ 1\ ¯\ v\ Ñ\ R\ O\ U\ ¿\ V\ Ã\ [\ v\ \\\ v\ Y\ ]\ ^\ à\ a\ k\ f\ á\ `\ q\ v\ d\ e\ g\ »\ á\ ^\ \ i\ ª\ ñ\ n\ p\ •\ k\ t\ v\ q\ o\ ˜\ h\ í\ b\ à\ W\ T\ Q\ c\ m\ À\ s\ “\ r\ ê\ ‰\ ê\ \ |\ ƒ\ ‘\ i\ ‹\ ˆ\ i\ x\ ß\ \ y\ z\ }\ ‚\ {\ \ w\ \ Š\ k\ †\ ‡\ Ñ\ k\ Ú\ v\ \ Ž\ Œ\ v\ ‰\ ¬\ „\ „\ n\ €\ “\ ä\ ’\ \ à\ \ Æ\ q\ ~\ º\ ±\ ™\ ¬\ ­\ —\ ¶\ ¯\ á\ ç\ z\ z\ ò\ ”\ y\ ¹\ •\ ¹\ –\ Ž\ ¡\ Š\ ž\ ±\ š\ ä\ v\ „\ \ ˜\ £\ ¤\ ¬\ ¥\ §\ \ á\ °\ v\ ³\ ´\ µ\ ·\ Ñ\ ì\ ¹\ à\ \ <\ ˜\ ¸\ Ù\ \ ¨\ ¦\ à\ ª\ ®\ ¢\ v\ Ÿ\ œ\ ý\ ©\ ê\ ²\ «\ ›\ ä\ Õ\ É\ á\ ß\ _\ Ò\ z\ \\\ À\ ­\ Â\ Ã\ Ä\ Å\ Ç\ Ê\ Æ\ Ë\ Ï\ ­\ Ì\ Ö\ ×\ Ï\ L\ S\ à\ Ø\ ¬\ v\ v\ Ù\ Ú\ Û\ z\ <\ Þ\ Ü\ Ý\ à\ à\ 7\ â\ ã\ å\ æ\ á\ ì\ ý\ Ñ\ Î\ 6\ Á\ \ ¾\ Ú\ Í\ <\ È\ ç\ w\ Ô\ Ð\ ¼\ »\ Ó\ ê\ ¿\ ½\ \ \ \ ó\ i\ \ ç\ ú\ ì\ ­\ è\ æ\ ç\ v\ Â\ î\ ­\ §\ í\ ¥\ ñ\ ò\ ª\ ð\ ï\ 7\ „\ õ\ ÷\ \ þ\ k\ Ë\ ô\ Œ\ û\ ü\ ý\ 7\ \ \ ¤\ <\ Â\ \ \ Ø\ k\ ™\ \ í\ n\ \ à\ =\ ;\ ÿ\ ø\ ö\ ù\ q\ \ ë\ Œ\ \ é\ é\ ê\ é\ 1\ .\ *\ ·\ &\ ‘\ #\ ü\ â\ \ \ ±\ \ Ø\ Ž\ \ \ á\ Â\ v\ \ \ Ý\ ª\ \ \ \ $\ '\ %\ v\ Œ\ \"\ !\ )\ +\ (\ +\ 0\ ,\ 2\ 3\ 9\ 2\ v\ \ v\ 5\ 6\ \ 7\ 8\ q\ :\ /\ Ù\ Û\ ý\ ³\ à\ „\ \ 4\ \ ´\ u\ \ \ \ J\ D\ ä\ ª\ <\ >\ =\ þ\ ª\ ¹\ ­\ C\ !\ ž\ B\ â\ G\ H\ K\ O\ k\ N\ O\ \ v\ ¬\ \ ­\ Ô\ F\ n\ R\ T\ ã\ P\ I\ v\ E\ ?\ L\ M\ S\ Q\ @\ A\ \ ;\ Z\ U\ W\ X\ B\ Y\ \\\ C\ Y\ ]\ ^\ _\ `\ a\ [\ V\ b\ Š\ ‚\ }\ q\ m\ á\ €\ i\ o\ l\ n\ á\ e\ c\ <\ f\ h\ ‹\ i\ v\ ä\ \ Ø\ s\ p\ ¹\ v\ w\ >\ \"\ =\ v\ ÿ\ \ v\ <\ 7\ z\ Á\ x\ {\ |\ ~\ \ \ »\ y\ z\ ƒ\ ‡\ ‰\ †\ „\ w\ \ ‹\ \ í\ \ u\ r\ j\ „\ d\ g\ f\ º\ ÿ\ t\ Œ\ ˆ\ k\ Q\ ¦\ —\ \ Ë\ ¤\ ›\ v\ š\ Ž\ ’\ ”\ \ ø\ ÿ\ =\ \ œ\ ž\ ¢\ ¡\ Û\ Ÿ\ \ \ v\ £\ 1\ ¥\ ¨\ ©\ \ |\ C\ •\ \ “\ à\ ‘\ £\ r\ ‘\ \ ™\ À\ §\ ˜\ –\ ²\ ª\ «\ ¬\ ­\ ®\ ¯\ °\ ±\ ³\ ý\ |\ ä\ í\ \ É\ Ñ\ Â\ õ\ ´\ º\ ½\ µ\ ·\ »\ ¾\ Ç\ È\ Ê\ Ë\ Ì\ Í\ Î\ Õ\ Ò\ Ï\ ·\ Ó\ Ö\ Û\ ·\ Ø\ Ù\ Ý\ Ú\ ß\ à\ ã\ Ü\ ë\ Ò\ â\ Ð\ Æ\ ®\ ¹\ ¸\ å\ æ\ ç\ ì\ é\ Æ\ ï\ Ü\ è\ ð\ Í\ ò\ ó\ ï\ ø\ Ò\ ô\ ù\ ú\ ü\ û\ þ\ ÿ\ ö\ î\ ê\ á\ »\ Ô\ Ä\ ¿\ Ã\ Ä\ Å\ ¼\ ÷\ ñ\ Á\ Þ\ ×\ ¶\ À\ \ \ )\ \ \ \ \"\ $\ %\ #\ &\ *\ '\ +\ ,\ .\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ !\ \ \ (\ \ \ \ 8\ N\ \ f\ Z\ Æ\ b\ B\ E\ A\ 0\ 2\ à\ 1\ 3\ 5\ 7\ :\ à\ <\ 9\ =\ þ\ >\ C\ F\ G\ J\ H\ I\ K\ þ\ O\ L\ U\ P\ R\ W\ =\ Y\ [\ \\\ à\ ]\ ^\ ·\ å\ a\ e\ Ê\ c\ d\ g\ h\ ð\ ·\ j\ k\ l\ d\ n\ ê\ U\ `\ Ä\ S\ D\ ÿ\ Ü\ _\ A\ V\ Q\ @\ 6\ 4\ ª\ /\ ;\ ®\ m\ i\ M\ X\ ?\ T\ p\ ˆ\ Ž\ y\ ª\ ™\ —\ \ \ t\ q\ w\ v\ ~\ |\ Ö\ „\ ‡\ ‰\ Š\ \ \ “\ Œ\ œ\ ¡\ §\ ª\ §\ ¶\ ª\ ¯\ º\ ¼\ ½\ &\ Â\ ²\ ›\ \ Œ\ \ \ ­\ á\ \ ¤\ ¸\ ¦\ z\ À\ «\ •\ s\ \ Î\ ˆ\ Ä\ x\ ‚\ Ý\ Ì\ Í\ Ð\ Ñ\ Ò\ Ï\ µ\ ¹\ »\ ¿\ ½\ ¢\ Ò\ Ë\ €\ U\ r\ à\ r\ á\ u\ †\ W\ ’\ ·\ ‘\ ”\ –\ ˜\ š\ Ï\ î\ å\ ž\ ¥\ Ÿ\ è\ æ\ t\ ©\ ¨\ ¬\ ®\ °\ ±\ å\ ³\ ´\ ¾\ Á\ Ã\ L\ =\ Æ\ Ç\ É\ Ê\ Ó\ Ô\ Õ\ Ö\ ×\ Ù\ Ú\ Û\ Ü\ Þ\ \ Ë\ ·\ æ\ £\ ß\ è\ ƒ\ â\ Å\ Ø\ Ü\ o\ È\ ã\ {\ }\ ‹\ ò\ ù\ í\ ¶\ ï\ å\ ô\ ú\ û\ ï\ ÿ\ õ\ ñ\ ê\ ì\ ý\ ç\ ø\ ë\ è\ É\ $\ \ .\ \ Î\ (\ A\ Ï\ \ \ þ\ î\ ó\ I\ ð\ P\ h\ ‚\ ä\ ö\ ÷\ ü\ \ \ \ ô\ \ \ \ †\ h\ \ I\ \ \ ·\ Ã\ à\ h\ \ \ \ \ \ \ \ \ Ë\ ¿\ \ \ !\ \"\ #\ %\ &\ ð\ \ '\ ç\ +\ ,\ *\ -\ \ ¾\ W\ Ü\ \ /\ þ\ ö\ Ü\ æ\ æ\ )\ \ \ \ é\ ;\ B\ ú\ e\ Z\ ™\ K\ 9\ 1\ 3\ :\ =\ ?\ Ú\ @\ C\ \ E\ a\ ª\ f\ n\ º\ c\ p\ \ Q\ ›\ L\ U\ I\ 7\ \ “\ S\ W\ ^\ k\ Y\ q\ \\\ H\ í\ v\ j\ [\ O\ 5\ D\ _\ \ g\ Æ\ A\ x\ i\ Ò\ V\ Æ\ A\ 4\ 2\ 8\ <\ æ\ F\ Ê\ ½\ 0\ G\ ù\ k\ M\ N\ P\ R\ \ !\ `\ Ã\ æ\ b\ d\ ·\ l\ h\ ¿\ Ó\ s\ y\ z\ |\ }\ ½\ ~\ !\ \ ¥\ u\ Ë\ r\ t\ Ü\ €\ ô\ \ †\ ½\ J\ ƒ\ ‡\ ˆ\ ¿\ ‰\ \ Š\ ‹\ Œ\ „\ {\ m\ T\ J\ è\ 6\ w\ ‚\ Ž\ w\ \ m\ o\ X\ ]\ >\ ¦\ ¡\ µ\ B\ ž\ ›\ ”\ Å\ ¿\ ®\ \ \ œ\ –\ \ ’\ —\ ™\ ˜\ Ÿ\ £\ ¦\ §\ =\ ™\ Õ\ ¢\ \ š\ ©\ ›\ ¬\ –\ ¨\ «\ ­\ ¯\ °\ ±\ ²\ ¹\ –\ ´\ ·\ ³\ ¼\ ¸\ º\ Ã\ ½\ Æ\ Ç\ É\ Ä\ \ À\ Ê\ Ë\ ¢\ È\ Ì\ »\ ~\ \ ª\ ¥\ “\ Á\ ‘\ Â\ ¾\ ¶\ ¤\ •\ é\ \ ç\ \ ò\ \ 9\ Õ\ À\ “\ ¸\ Ð\ ×\ Ø\ Ú\ \ \ Ü\ Ý\ \ â\ ã\ æ\ è\ ê\ ÷\ Þ\ ð\ ù\ \ ý\ \ #\ ¼\ \ \ \ ì\ à\ Ô\ ú\ ö\ \ \ \ ü\ ÿ\ ô\ Â\ Î\ í\ ˆ\ v\ Ò\ \ ß\ \ ™\ ±\ ¹\ ø\ Æ\ Ù\ Ê\ 2\ Í\ Ñ\ Ó\ Ö\ Þ\ á\ A\ &\ ‡\ ä\ Ë\ í\ ·\ ë\ î\ ï\ ñ\ ó\ \ þ\ õ\ \ \ \ ¨\ \ \ \ ð\ Ü\ \ \ ~\ \ \ \ \"\ °\ !\ ~\ Ç\ ™\ #\ $\ \ \ û\ \ Û\ \ Ï\ \ \ %\ '\ \ ×\ å\ Î\ B\ C\ @\ 7\ )\ *\ +\ ,\ :\ ;\ 5\ Ð\ 9\ (\ ¬\ 0\ 2\ 3\ D\ ?\ \ ¼\ 4\ A\ E\ G\ F\ B\ 6\ /\ -\ .\ 9\ <\ =\ >\ 8\ 1\ {\ j\ j\ ˆ\ \\\ e\ }\ g\ Æ\ z\ o\ c\ Q\ U\ V\ Z\ [\ Y\ \ W\ I\ Ö\ K\ J\ L\ O\ O\ ]\ b\ X\ _\ ^\ a\ f\ Ë\ ®\ i\ U\ G\ k\ h\ l\ G\ m\ Æ\ d\ l\ n\ Ã\ Ï\ p\ r\ ï\ ë\ q\ ¾\ s\ h\ F\ t\ u\ ¥\ Ï\ w\ v\ å\ x\ m\ &\ y\ å\ |\ Ä\ å\ Y\ b\ `\ á\ T\ N\ H\ Y\ M\ d\ R\ {\ S\ Þ\ P\ ¥\ \\\ ‹\ Œ\ €\ ±\ ©\ £\ Ÿ\ 9\ í\ 1\ 5\ \ â\ ™\ ‚\ „\ ‡\ 1\ ˆ\ ‰\ \ \ \ ´\ Š\ ‘\ É\ ½\ ’\ —\ ˜\ ™\ š\ ›\ \ Ì\ 4\ ž\ ¡\ ¢\ \ ¤\ 3\ þ\ ¨\ Ú\ ½\ \ ¯\ õ\ ª\ ÿ\ °\ ³\ ´\ µ\ «\ \ •\ “\ Ž\ ¦\ ¬\ †\ ƒ\ §\ å\ ~\ ­\ ®\ œ\ –\ ”\ È\ \ Ï\ \ j\ Ã\ Ò\ ½\ ä\ ê\ É\ É\ A\ A\ H\ \ ¸\ «\ ¶\ ¾\ ]\ º\ ‰\ !\ V\ õ\ ¿\ À\ Á\ Â\ Ä\ G\ Å\ ï\ Æ\ Ê\ Í\ Î\ \ å\ Ï\ È\ Ð\ Ö\ Ô\ Ù\ Ú\ á\ §\ Ý\ à\ ã\ º\ H\ å\ ²\ ì\ &\ æ\ Õ\ \ “\ ×\ \ \ Ñ\ Ï\ Ì\ ö\ Í\ ‘\ Ö\ L\ Ø\ Û\ ß\ Ü\ ±\ Ó\ ç\ ·\ ë\ Þ\ Ü\ ¼\ \ Ç\ ¹\ Ë\ »\ \ É\ \ í\ Î\ ù\ \ Ê\ @\ ö\ &\ î\ ï\ ð\ ó\ v\ ñ\ ò\ ô\ õ\ ÷\ †\ ô\ û\ ú\ æ\ ·\ \ ·\ y\ ~\ Y\ þ\ ÿ\ Ë\ ½\ õ\ ö\ \ Ë\ æ\ \ ·\ \ \ \ ·\ \ \ Ï\ à\ Þ\ â\ n\ è\ |\ ó\ \ \ ö\ m\ \ \ é\ £\ \ \ \ ¾\ è\ ü\ \ \ í\ ý\ T\ ø\ \ w\ ý\ Þ\ \ '\ \ \ #\ \ \ \ L\ ß\ \ \ Ï\ r\ Æ\ &\ )\ A\ ,\ Ï\ &\ 1\ ï\ 5\ 4\ å\ ò\ /\ !\ \\\ O\ O\ >\ :\ -\ E\ I\ B\ V\ N\ C\ A\ \ *\ Ò\ Z\ §\ \"\ V\ \ $\ .\ 0\ þ\ ¿\ 2\ 3\ 6\ 7\ þ\ Ï\ 8\ \ ;\ d\ <\ Ä\ =\ =\ @\ D\ F\ G\ H\ J\ J\ L\ 6\ G\ Q\ !\ P\ M\ S\ å\ Æ\ U\ n\ T\ X\ Ï\ á\ «\ «\ Y\ R\ A\ á\ I\ W\ (\ K\ M\ \ \ ?\ ´\ V\ +\ !\ 9\ Þ\ %\ \ x\ ~\ h\ €\ {\ o\ 7\ v\ q\ á\ d\ ^\ ]\ \"\ [\ æ\ \\\ _\ à\ `\ e\ ,\ f\ V\ ½\ 2\ g\ i\ e\ G\ k\ þ\ !\ m\ s\ Ï\ p\ ö\ ò\ M\ r\ º\ t\ b\ w\ y\ z\ \ ‰\ ˆ\ t\ }\ \ \ ‚\ ƒ\ „\ ì\ u\ †\ Œ\ Ç\ 2\ ‡\ \ Ž\ \ Š\ “\ ¾\ \ j\ c\ |\ N\ \ ‹\ \ l\ ‘\ n\ }\ a\ b\ ½\ Ò\ Ä\ ²\ Ö\ Â\ º\ ®\ ™\ ¡\ •\ —\ š\ ¡\ ›\ ž\ ¢\ \ â\ ¥\ \ Ó\ ¨\ ¦\ ©\ ª\ \ ƒ\ ¬\ °\ ×\ 2\ ±\ ´\ ¢\ µ\ ¾\ Ã\ \ v\ M\ ¶\ ³\ Å\ Æ\ É\ Ê\ Ì\ Ó\ H\ Ô\ ²\ ×\ Û\ Ù\ Ç\ Ü\ ¿\ Ø\ R\ ­\ Œ\ È\ Í\ Ÿ\ ¸\ ¯\ ·\ Ð\ »\ ¤\ œ\ Ñ\ Á\ \ Õ\ É\ Ã\ ’\ Î\ ™\ º\ £\ ñ\ æ\ ”\ Î\ Ñ\ A\ ä\ ˜\ “\ ”\ ß\ –\ œ\ à\ ·\ G\ w\ â\ µ\ O\ ã\ ·\ ]\ å\ §\ å\ «\ þ\ à\ ¢\ 1\ è\ ¾\ ç\ ê\ é\ Æ\ \ ì\ Ë\ æ\ â\ ]\ ¹\ »\ ¼\ C\ î\ ï\ Ÿ\ ð\ ‰\ ò\ ¬\ Ë\ ó\ ƒ\ Ï\ ÷\ õ\ ×\ ø\ Ò\ ù\ Ú\ Ü\ \ Ý\ ý\ Þ\ X\ ö\ ô\ ú\ J\ û\ è\ á\ í\ Ò\ À\ \ \"\ ü\ ý\ þ\ Ì\ ë\ u\ ÿ\ \ p\ ", ["andrew-appel/simple-gen.djvu"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 19(2), 171-183 (FEBRUARY 1989) \ Simple Generational Garbage Collection and \ Fast Allocation \ ANDREW W. APPEL \ Department of Computer Science, Princeton University, Princeton, NJ 08544, U.S.A. \ SUMMARY \ Generational garbage collection algorithms achieve efficiency because newer records point to \ older records; the only way an older record can point to a newer record is by a store operation \ to a previously created record, and such operations are rare in many languages. A garbage \ collector that concentrates just on recently allocated records can take advantage of this fact. \ Such a garbage collector can be so efficient that the allocation of records costs more than their \ disposal. A scheme for quick record allocation attacks thls bottleneck. Many garbage-collected \ environments do not know when to ask the operating system for more memory. A robust ", ["andrew-appel/simple-gen.pdf"] = "Simple Generational Garbage Collection and Fast Allocation\ Andrew W. Appel\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544\ March 1988\ revised September 1988", ["andrew-appel/simple-gen.ps"] = "Simple Generational Garbage Collection and Fast Allocation\ Andrew W. Appel\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544\ March 1988\ revised September 1988", ["andrew-bernard/tic98.ps"] = "How Generic is a Generic Back End?\ Using MLRISC as a Back End for the TIL\ Compiler ?\ (Preliminary Report)\ Andrew Bernard ?? , Robert Harper, and Peter Lee\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213", ["andrew-birrell/035-Threads.pdf"] = "35\ An Introduction to Programming with Threads\ by Andrew D. Birrell\ January 6, 1989\ digi tal\ Systems Research Center 130 Lytton Avenue Palo Alto, California 94301\ An Introduction to Programming with Threads\ Andrew D. Birrell\ This paper provides an introduction to writing concurrent programs with \"threads\". A threads facility allows you to write programs with multiple simultaneous points of execution, synchronizing through shared memory. The paper describes the basic thread and synchronization primitives, then for each primitive provides a tutorial on how to use it. The tutorial sections provide advice on the best ways to use the primitives, give warnings about what can go wrong and offer hints about how to avoid these pitfalls. The paper is aimed at experienced programmers who want to acquire practical expertise in writing concurrent programs. CR categories and Subject Descriptors: D.1.4 [Programming Techniques]: Concurrent Programming; D.3.3 [Programming Languages]: Language Constructs--Concurrent programming structures; D.4.1 [Operating Systems]: Process Management General Terms: Design, Languages, Performance Additional Key Words and Phrases: Threads, Concurrency, Multi-processing, Synchronization", ["andrew-black/grace-2013.pdf"] = "Seeking Grace: A New Object-Oriented Language for\ Novices\ Andrew P. Black\ Kim B. Bruce\ Michael Homer\ Portland State Univ.\ Pomona College\ Victoria Univ. of Wellington\ black@cs.pdx.edu\ kim@cs.pomona.edu\ mwh@ecs.vuw.ac.nz\ Richard Yannow\ James Noble\ Amy Ruskin\ Victoria Univ. of Wellington\ Pomona College\ Pomona College\ kjx@ecs.vuw.ac.nz\ asr02010@pomona.edu\ rmy02010@mymail.pomona.edu\ Grace is the absence of everything that indicates pain or\ difficulty, hesitation or incongruity.\ William Hazlitt", ["andrew-black/left-hand-equals.pdf"] = "The Left Hand of Equals\ James Noble\ Andrew P. Black\ Kim B. Bruce\ Victoria University of Wellington\ New Zealand\ kjx@ecs.vuw.ac.nz\ Portland State University\ USA\ black@cs.pdx.edu\ Pomona College\ USA\ kim@cs.pomona.edu\ Michael Homer\ Mark S. Miller\ Victoria University of Wellington\ New Zealand\ mwh@ecs.vuw.ac.nz\ Google Inc.\ USA\ erights@google.com", ["andrew-black/refactoringsACM.pdf"] = "Applying Traits to the Smalltalk Collection Classes∗\ Andrew P. Black\ Nathanael Schärli\ Stéphane Ducasse\ OGI School of Science &\ Engineering, Oregon Health and\ Science University, USA\ Software Composition Group\ University of Bern\ Switzerland\ Software Composition Group\ University of Bern\ Switzerland\ black@cse.ogi.edu\ schaerli@iam.unibe.ch\ ducasse@iam.unibe.ch", ["andrew-hume/grep-wars-hume.djvu"] = "'--- AT&T \  Bell Laboratories \ Subj,t: Grep Wars: The Strategic Search Initiative \ Work Program- 311403-0101 -- File- 39199-11 \ TECHNICAL MEMORANDUM \ date: September 29, 1987 \ from: Andrew Hume \ TM: 11276-870904-08TMS \ Introduction \ In the beginning, Ken Thompson wrote the searching tool grep. It selected and printed \ lines from its file arguments that matched a given regular expression. In 1975, just after the \ release of Sixth Edition UNIX, AI Aho decided to put theory into practice, and implemented \ full regular expressions (including alternation and grouping which were missing from grep) \ and wrote egrep over a weekend. Fgrep, specialised for the case of multiple (alternate) literal \ strings, was written in the same weekend. Egrep was about twice as fast as grep for simple \ character searches but was slower for complex search patterns (due to the high cost of build- ", ["andrew-hume/mk.pdf"] = "Mk: a successor to make\ Andrew Hume", ["andrew-johnson/noweb_lj.pdf"] = "Literate Programming using noweb\ Andrew L. Johnson and Brad C. Johnson December 19, 2000\ Introduction\ Let us change our traditional attitude to the construction of programs: Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to humans what we want the computer to do. (Donald E. Knuth, 1984). In essence, this is the purpose of literate programming (LP for short). Such an environment reverses the notion of including documentation, in the form of comments, within the code, to one where the code is embedded within a program's description. In doing so, literate programming facilitates the development and presentation of computer programs that more closely follow the conceptual map from the problem space to the solution space. This, in turn, leads to programs that are easier to debug and maintain. When literate programming, one specifies the program description and the program code in a single source file in the order best suited to human understanding. The program code can be extracted and assembled into a form understandable for the compiler or interpreter by a process called 'tangling'. Documentation is produced by a process of 'weaving' the description and code A into a form ready to be typeset (most often by TEXor L TEX). Many different tools have been created for literate programming over the years and most of the more popular are based, either directly or conceptually, on the WEB system created by D. E. Knuth [cf. 1984. Literate Programming. The Computer Journal (27)2:97-111]. This article focuses on Norman Ramsey's noweb--a simple to use, extensible literate programming tool that is independent of the target programming language.", ["andrew-kennedy/every-bit-counts.pdf"] = "Functional Pearl: Every Bit Counts\ Dimitrios Vytiniotis\ Microsoft Research dimitris@microsoft.com\ Andrew Kennedy\ Microsoft Research akenn@microsoft.com", ["andrew-kennedy/picklers.pdf"] = "JFP 14 (6): 727739, 2004.\ c 2004 Cambridge University Press\ 727\ DOI: 10.1017/S0956796804005209 Printed in the United Kingdom\ FUNCTIONAL PEARL Pickler combinators\ A N D R E W J. K E N N E D Y\ Microsoft Research, 7 J J Thomson Avenue, Cambridge CB3 0FB, UK (e-mail: akenn@microsoft.com)", ["andrew-koenig/vhll.ps"] = "An anecdote about ML type inference\ Andrew Koenig (ark@research.att.com)\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974\ Introduction\ ML strongly supports functional programming; its programmers tend to avoid operations with side effects.\ Thus, for example, instead of mutable arrays, ML programmers usually use lists. These lists behave much\ like those in Lisp, with the added requirement that all elements have the same type. 1 ML lists are not\ themselves mutable, although the individual elements can be of a (uniform) mutable type. In Lisp terms,\ ML lists can optionally support RPLACA but not REPLACD . Although it is possible to define a type in ML\ that would support REPLACD as well, ML programmers usually don't do this unless they need it.\ The Lisp functions CAR and CDR have ML equivalents called hd and tl and ML represents the Lisp CONS", ["andrew-mccallum/event-models.pdf"] = "A Comparison of Event Models for Naive Bayes Text Classification\ Andrew McCallum‡†\ Kamal Nigam†\ mccallum@justresearch.com\ ‡\ Just Research\ 4616 Henry Street\ Pittsburgh, PA 15213\ knigam@cs.cmu.edu", ["andrew-tolmach/jfp95-debugger.pdf"] = "J. Functional Programming 5 (2): 155-200, April 1995 © 1995 Cambridge University Press\ 155\ A Debugger for Standard ML1\ ANDREW TOLMACH\ Department of Computer Science, Portland State University,\ P.O. Box 751, Portland, OR 97207-0751, USA\ email: apt9cs.pdx.edu\ ANDREW W. APPEL\ Department of Computer Science, Princeton University,\ 35 Olden Street, Princeton, NJ 08544-2087, USA\ email: appel9cs.princeton.edu", ["andrew-tolmach/jfp98.pdf"] = "J. Functional Programming 1 (1): 1{000, January 1993 c 1993 Cambridge University Press\ 1\ From ML to Ada: Strongly-typed Language\ Interoperability via Source Translation1\ ANDREW TOLMACH\ Paci c Software Research Center\ Department of Computer Science, Portland State University,\ P.O. Box 751, Portland, OR, 97207-0751, USA\ email: apt@cs.pdx.edu\ DINO P. OLIVA2\ Paci c Software Research Center\ Department of Computer Science and Engineering, Oregon Graduate Institute,\ 20000 N.W. Walker Road, P.O. Box 91000, Portland, OR 97291-1000, USA\ email: oliva@cse.ogi.edu", ["andrew-tolmach/modular_lazy_search_jfp.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ Modular Lazy Search for Constraint Satisfaction\ Problems\ THOMAS NORDIN\ ANDREW TOLMACH\ Paci c Software Research Center\ Oregon Graduate Institute & Portland State University\ (e-mail: nordin@cse.ogi.edu) (e-mail: apt@cs.pdx.edu)", ["andrew-tolmach/pi3.ps.gz"] = "J. Functional Programming 1 (1): 1--000, January 1993 c\ fl 1993 Cambridge University Press 1\ From ML to Ada: Stronglytyped Language\ Interoperability via Source Translation 1\ ANDREW TOLMACH\ Pacific Software Research Center\ Department of Computer Science, Portland State University,\ P.O. Box 751, Portland, OR, 972070751, USA\ email: apt@cs.pdx.edu\ DINO P. OLIVA 2\ Pacific Software Research Center\ Department of Computer Science and Engineering, Oregon Graduate Institute,\ 20000 N.W. Walker Road, P.O. Box 91000, Portland, OR 972911000, USA\ email: oliva@cse.ogi.edu", ["andrew-tolmach/tag-free-gc-as-published.pdf"] = "Tag-free\ Garbage\ Collection\ Using\ Andrew\ Portland\ Type\ Parameters\ Tolmach\ State\ apt~cs\ Explicit\ University\ .pdx.\ edu", ["andrew-tolmach/tag-free-gc.pdf"] = "Tag-free Garbage Collection Using Explicit Type Parameters\ Andrew Tolmach\ Portland State University\ apt@cs.pdx.edu", ["andrew-tolmach/tagfree_gc.ps.gz"] = "Tagfree Garbage Collection Using Explicit Type Parameters\ Andrew Tolmach\ Portland State University\ apt@cs.pdx.edu", ["andrew-tridgell/TR-CS-96-05.ps.gz"] = "TRCS9605\ The rsync algorithm\ Andrew Tridgell and Paul Mackerras\ June 1996\ Joint Computer Science Technical Report Series\ Department of Computer Science\ Faculty of Engineering and Information Technology\ Computer Sciences Laboratory\ Research School of Information Sciences and Engineering\ This technical report series is published jointly by the Department of\ Computer Science, Faculty of Engineering and Information Technology,\ and the Computer Sciences Laboratory, Research School of Information\ Sciences and Engineering, The Australian National University.\ Please direct correspondence regarding this series to:\ Technical Reports\ Department of Computer Science\ Faculty of Engineering and Information Technology\ The Australian National University\ Canberra ACT 0200\ Australia\ or send email to:\ Technical.Reports@cs.anu.edu.au\ A list of technical reports, including some abstracts and copies of some full", ["andrew-tridgell/phd_thesis.ps.gz"] = "Efficient Algorithms for Sorting and\ Synchronization\ Andrew Tridgell\ A thesis submitted for the degree of\ Doctor of Philosophy at\ The Australian National University\ July 1999\ Except where otherwise indicated, this thesis is my own original work.\ Andrew Tridgell\ 4 July 1999\ Till min kara fru, Susan\ Acknowledgments\ The research that has gone into this thesis has been thoroughly enjoyable. That en\ joyment is largely a result of the interaction that I have had with my supervisors, col\ leagues and, in the case of rsync, the people who have tested and used the resulting\ software.\ I feel very privileged to have worked with my supervisors, Richard Brent, Paul\ Mackerras and Brendan McKay. To each of them I owe a great debt of gratitude for\ their patience, inspiration and friendship. Richard, Paul and Brendan have taught", ["andrew-tridgell/rsync.ps.gz"] = "TRCS9605\ The rsync algorithm\ Andrew Tridgell and Paul Mackerras\ June 1996\ Joint Computer Science Technical Report Series\ Department of Computer Science\ Faculty of Engineering and Information Technology\ Computer Sciences Laboratory\ Research School of Information Sciences and Engineering\ This technical report series is published jointly by the Department of\ Computer Science, Faculty of Engineering and Information Technology,\ and the Computer Sciences Laboratory, Research School of Information\ Sciences and Engineering, The Australian National University.\ Please direct correspondence regarding this series to:\ Technical Reports\ Department of Computer Science\ Faculty of Engineering and Information Technology\ The Australian National University\ Canberra ACT 0200\ Australia\ or send email to:\ Technical.Reports@cs.anu.edu.au\ A list of technical reports, including some abstracts and copies of some full", ["andrzej-filinski/RM.ps"] = "Representing Monads \\Lambda\ Andrzej Filinski\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 152133891\ andrzej+@cs.cmu.edu", ["andy-gordon/agendaforprobabilisticprogramming.pdf"] = "An Agenda for Probabilistic Programming:\ Usable, Portable, and Ubiquitous\ Andrew D. Gordon\ Microsoft Research and University of Edinburgh\ January 2013\ The idea of probabilistic programming is that the user writes a probabilistic model for a Bayesian\ inference problem as a short piece of code, while the compiler turns this code into an efficient\ inference routine. Probabilistic programming systems include BUGS, IBAL, BLOG, Church, STAN,\ Infer.NET, and Factorie, amongst others. Application areas include scientific modelling, information\ retrieval, bioinformatics, epidemiology, vision, seismic analysis, semantic web, business intelligence,\ security, human cognition, and more. Probabilistic programming goes beyond the standard\ abstractions of classification and regression, and allows inference based on custom distributions\ definable in code, including recommendation systems, rating systems (as in TrueSkill, for instance),", ["andy-gordon/bayesian-dataflow.pdf"] = "Bayesian Inference Using Data Flow Analysis\ Guillaume Claret\ Sriram K. Rajamani\ Aditya V. Nori\ INRIA, France\ Microsoft Research India\ Microsoft Research India\ guillaume@claret.me\ sriram@microsoft.com\ adityan@microsoft.com\ Andrew D. Gordon\ Johannes Borgström\ Microsoft Research\ Cambridge\ adg@microsoft.com", ["andy-gordon/coinduction.ps"] = "A Tutorial on Coinduction and\ Functional Programming\ Andrew D. Gordon \\Lambda\ University of Cambridge Computer Laboratory,\ New Museums Site, Cambridge CB2 3QG, United Kingdom.\ adg@cl.cam.ac.uk\ To appear in the Proceedings of the 1994 Glasgow Workshop on Func\ tional Programming, September 8--10, 1994, Ayr, Scotland. Springer\ Workshops in Computing, 1995.", ["andy-gordon/measure-transformer-semantics.ESOP11.pdf"] = "Measure Transformer Semantics for\ Bayesian Machine Learning\ Johannes Borgstr¨ m1 , Andrew D. Gordon1 , Michael Greenberg2 ,\ o\ James Margetson1 , and Jurgen Van Gael1\ 1\ 2\ Microsoft Research\ University of Pennsylvania", ["andy-gordon/measure-transformers-full.pdf"] = "Logical Methods in Computer Science\ Vol. 9(3:11)2013, pp. 1–39\ www.lmcs-online.org\ Submitted\ Published\ Jan. 29, 2012\ Sep. 9, 2013\ MEASURE TRANSFORMER SEMANTICS FOR\ BAYESIAN MACHINE LEARNING ∗\ ¨\ JOHANNES BORGSTROM a , ANDREW D. GORDON b , MICHAEL GREENBERG c , JAMES MARGETSON d ,\ AND JURGEN VAN GAEL e\ a\ b,d\ Dept. of Information Technology, Uppsala University, Uppsala, Sweden\ e-mail address: borgstrom@acm.org\ Microsoft Research, Cambridge, UK\ e-mail address: adg@microsoft.com, jfdm1@roundwood.org\ c\ University of Pennsylvania, Philadelphia, PA, USA\ e-mail address: mgree@seas.upenn.edu\ e\ Microsoft FUSE Labs, Cambridge, UK\ e-mail address: jurgen.vangael@gmail.com\ A BSTRACT. The Bayesian approach to machine learning amounts to computing posterior distributions of random variables from a probabilistic model of how the variables are related (that is, a prior\ distribution) and a set of observations of variables. There is a trend in machine learning towards expressing Bayesian models as probabilistic programs. As a foundation for this kind of programming,", ["andy-gordon/model-learner-popl13.pdf"] = "A Model-Learner Pattern for Bayesian Reasoning\ Andrew D. Gordon (Microsoft Research and University of Edinburgh) Mihhail Aizatulin (Open University)\ Johannes Borgstr¨ m (Uppsala University) Guillaume Claret (Microsoft Research)\ o\ Thore Graepel (Microsoft Research) Aditya V. Nori (Microsoft Research)\ Sriram K. Rajamani (Microsoft Research) Claudio Russo (Microsoft Research)", ["andy-gordon/probabilistic-icse.pdf"] = "Probabilistic Programming\ Andrew D. Gordon\ Thomas A. Henzinger\ Aditya V. Nori\ Microsoft Research\ adg@microsoft.com\ IST Austria\ tah@ist.ac.at\ Microsoft Research\ adityan@microsoft.com\ Sriram K. Rajamani\ Microsoft Research\ sriram@microsoft.com", ["andy-gordon/tabular-tr.pdf"] = "Tabular: A Schema-Driven Probabilistic\ Programming Language\ Andrew D. Gordon\ Claudio Russo\ Thore Graepel\ Johannes Borgstr¨ m\ o\ December 2013\ Technical Report\ MSR-TR-2013-118\ Microsoft Research\ 21 Station Road\ Cambridge, CB1 2FB\ United Kingdom\ Nicolas Rolland\ John Guiver\ Publication History\ An abridged version of this report appears in the proceedings of\ POPL 2014, the 41st ACM SIGPLAN-SIGACT Symposium on\ Principles of Programming Languages, held in San Diego, USA,\ January 22–24, 2014.\ Contents\ 1 Introduction\ 1.1 A Schema-Driven Recipe for Probabilistic Modelling\ 1.2 Innovations in the Design of Tabular . . . . . . . .\ 1.3 Technical Contributions and Evaluations . . . . . .\ 1.4 Structure of the Paper . . . . . . . . . . . . . . . .\ 3\ 4\ 5\ 5\ 5\ 2 Fun and the Model-Learner Pattern\ 2.1 Fun, Probabilistic Programming for Factor Graphs\ 2.2 Semi-Observed Models . . . . . . . . . . . . . . .\ 2.3 Databases as Fun Values . . . . . . . . . . . . . .\ 5\ 5\ 6\ 6\ 3 Tabular, By Example\ 3.1 Tabular and the Generative Process for Tables . . .\ 3.2 Distributions with Conjugate Priors . . . . . . . .", ["ankur-agrawal/watermarking.djvu"] = "Audio Watermarking Techniques \ ES157 Speech and Audio Signal Processing \ Final Project Report \ Ankur Agrawal \ Submit date: May 18, 2005 ", ["ann-abdelzaher/CSFacultySummary.pdf"] = "Faculty Perceptions of Teaching in Undergraduate Computer Science Education\ Ann Abdelzaher University of Virginia", ["anton-ertl/efficient.pdf"] = "Journal of Instruction-Level Parallelism 5 (2003) 1-25\ Submitted 07/01; published 11/03\ The Structure and Performance of Efficient Interpreters\ M. Anton Ertl anton@mips.complang.tuwien.ac.at Institut fr Computersprachen, TU Wien, Argentinierstrae 8, A-1040 Wien, Austria u David Gregg\ Department of Computer Science, Trinity College, Dublin 2, Ireland David.Gregg@cs.tcd.ie", ["anton-ertl/stack-vs-regs.pdf"] = "Virtual Machine Showdown: Stack Versus Registers\ Yunhe Shi, David Gregg, Andrew Beatty\ Department of Computer Science University of Dublin, Trinity College Dublin 2, Ireland\ {yshi, David.Gregg, Andrew.Beatty}@cs.tcd.ie\ M. Anton Ertl\ Institut fur Computersprachen TU Wien Argentinierstrae 8 A-1040 Wien, Austria\ anton@complang.tuwien.ac.at\ be interpreted or compiled. The most popular VMs, such as the Java VM, use a virtual stack architecture, rather than the register architecture that dominates in real processors. A long-running question in the design of VMs is whether stack architecture or register architecture can be implemented more efficiently with an interpreter. On the one hand stack architectures allow smaller VM code so less code must be fetched per VM instruction executed. On the other hand, stack machines require more VM instructions for a given computation, each of which requires an expensive (usually unpredictable) indirect branch for VM instruction dispatch. Several authors have discussed the issue [12, 15, 11, 16] and presented small examples where each architecture performs better, but no general conclusions can be drawn without a larger study. The first large-scale quantitative results on this question were presented by Davis et al. [5, 10] who translated Java VM stack code to a corresponding register machine code. A straightforward translation strategy was used, with simple compiler optimizations to eliminate instructions which become unnecessary in register format. The resulting register code required around 35% fewer executed VM instructions to perform the same computation than the stack architecture. However, the resulting register VM code was around 45% larger than the original stack code and resulted in a similar increase in bytecodes fetched. Given the high cost of unpredictable indirect branches, these results strongly suggest that register VMs can be implemented more efficiently than stack VMs using an interpreter. However, Davis et al's work did not include an implementation of the virtual register architecture, so no real running times could be presented. This paper extends the work of Davis et al. in two respects. First, our translation from stack to register code is much more sophisticated. We use a more aggressive copy propagation approach to eliminate almost all of the stack load and store VM instructions. We also optimize constant load instructions, to eliminate common constant loads and move constant loads out of loops. The result is that an average of more than 47% of executed VM instructions are eliminated. The resulting register VM code is roughly 25% larger than the original stack code, compared with 45% for Davis et al. We find that the increased cost of fetching more VM code involves only 1.07 extra real machine loads per VM instruction eliminated. Given that VM dispatches are much more expensive than real machine loads, this indicates strongly that register VM code is likely to be much", ["arvind/memo-408.ps.gz"] = "A TRS Model for a Modern Microprocessor\ Computation Structures Group Memo 408\ June 25, 1998\ Lisa A. Poyneer, James C. Hoe and Arvind\ This paper describes research done at the Laboratory for Computer Science of the\ Massachusetts Institute of Technology. Funding for this work is provided in part by\ the Advanced Research Projects Agency of the Department of Defense under the\ Ft. Huachuca contract DABT6395C0150.\ A TRS Model for a Modern Microprocessor\ Lisa A. Poyneer, James C. Hoe and Arvind\ June 25, 1998\ 1 Background\ The AX instruction set, a minimalist RISC ISA, was described by Xiaowei Shen and Arvind in\ [1] and [2]. Term rewriting system models of AX were created, described and proved equivalent.\ The first model was a singlecycle nonpipelined model called PB . The second model, P S was a\ speculative processor that used register renaming. Please see [2] for complete descriptions of term", ["arvind/memo-419.ps.gz"] = "Using Term Rewriting Systems to Design and Verify\ Processors\ Computation Structures Group Memo 419\ November 1998\ Arvind and Xiaowei Shen\ arvind, xwshen@lcs.mit.edu\ To appear in IEEE Micro Special Issue on ''Modeling and Validation of Micropro\ cessors'', May/June 1999.\ This paper describes research done at the Laboratory for Computer Science of the\ Massachusetts Institute of Technology. Funding for this work is provided in part\ by the Advanced Research Projects Agency of the Department of Defense under\ the Office of Naval Research contract N0001492J1310 and Ft Huachuca contract\ DABT6395C0150.\ Using Term Rewriting Systems to Design and Verify Processors\ Arvind and Xiaowei Shen\ Laboratory for Computer Science\ Massachusetts Institute of Technology\ arvind, xwshen@lcs.mit.edu", ["arvind/memo-421a.ps.gz"] = "Hardware Synthesis from Term Rewriting Systems\ Computation Structures Group Memo 421A\ August 20, 1999\ James C. Hoe and Arvind\ MIT Laboratory for Computer Science\ Cambridge, MA 02139\ fjhoe,arvindg@lcs.mit.edu\ To appear in Proceedings of VLSI'99.\ This paper describes research done at the MIT Laboratory for Computer Science. Funding\ for this work is provided in part by the Defense Advanced Research Projects Agency of the\ Department of Defense under the Ft. Huachuca contract DABT6395C0150 and by the\ Intel Corporation. James C. Hoe is supported by an Intel Foundation Graduate Fellowship.\ Chapter 1\ HARDWARE SYNTHESIS FROM\ TERM REWRITING SYSTEMS\ James C. Hoe and Arvind\ Laboratory for Computer Science\ Massachusetts Institute of Technology\ Cambridge, MA\ {jhoe,arvind}@lcs.mit.edu", ["ashwin-hirschi/lua-light.pdf"] = "focus 1\ Lua can help you become more productive by extending your C/C++ creations with the expressive power and flexibility of a dynamically typed language.\ dynamically typed languages\ Traveling Light, the Lua Way\ Ashwin Hirschi, Reflexis\ F\ ive years ago, our team at Reflexis ran into a little language from Brazil. Lua (pronounced loo-ah) changed the way we work profoundly. It lets us create hybrid solutions that combine the strengths of statically typed software with the flexibility of a dynamically typed environment. In short, with Lua, we get the best of both worlds.\ We've used Lua to create software ranging from small in-house tools, to highly dynamic desktop systems, to a browser-based platform for designing and deploying complex Web applications. Lua extended the range of solutions we offer. But it also helped us drastically reduce the time and effort needed to finish our projects. In this article, I'll share some of our experiences, a few of the lessons we've learned, and talk about changes we've made to our systems and the way we develop solutions. Once you find yourself pondering how to keep paying the rent, several options present themselves. Panicking might be the natural choice. Rethinking your business model is a good alternative (especially if you're bent on surviving or the panicking starts to wear you down). But our situation drove home another lesson as well. It taught us to not waste energy and to make sure we get the most out of the time we spend creating our software. And at the risk of stating the obvious, here are some of the reasons. First, the more easily you can put together an exciting demo, the more interested a possible client will be. Getting prospective customers really interested is good; they'll listen longer to whatever you want to tell them. Second, the less development time you spend on juggling technical details, the more effort you can pour into truly fitting a solution to your customer's needs. A fully satisfied customer is a fine thing to have; they tend to tell their friends. Finally, the faster you can deliver whatever solution you want to develop, the sooner", ["atul-adya/fibers.ps"] = "Cooperative Task Management\ without Manual Stack Management\ or, Eventdriven Programming is Not the Opposite of Threaded Programming\ Atul Adya, Jon Howell, Marvin Theimer, William J. Bolosky, John R. Douceur\ Microsoft Research\ 1 Microsoft Way, Redmond, Washington 98052\ {adya, howell, theimer, bolosky, johndo}@microsoft.com", ["avi-pfeffer/creating-figaro.pdf"] = "Distribution Statement “A” (Approved for Public Release, Distribution Unlimited)\ Creating and Manipulating Probabilistic Programs with Figaro\ Avi Pfeffer\ Charles River Analytics\ apfeffer@cra.com", ["avi-pfeffer/figaro.pdf"] = "Figaro: An Object-Oriented Probabilistic Programming Language\ Avi Pfeffer Charles River Analytics apfeffer@cra.com", ["avi-pfeffer/ibal-journal.pdf"] = "IBAL: An Expressive, Functional Probabilistic Modeling Language\ Avi Pfeffer\ Division of Engineering and Applied Sciences Harvard University", ["avi-pfeffer/lazy-factored-inference.pdf"] = "Lazy Factored Inference for Probabilistic Programming\ Avi Pfeffer, Brian Ruttenberg, Amy Sliva, Michael Howard, Glenn Takata\ Charles River Analytics", ["barbara-liskov/programming-adts.djvu"] = "PROGRAMMING WITH ABSTRACT DATA TYPES \ Barbara Liskov \ .Massachusetts Institute of Technology \ Project MAC \ Cambridge, Massachusetts \ Stephen Zilles \ Cambridge Systems Group \ IBM Systems Development Division \ Cambridge, Massachusetts ", ["barbara-liskov/programming-adts.pdf"] = "PROGRAMMING WITH ABSTRACT DATA TYPES\ Barbara Liskov Massachusetts Institute of Technology Project MAC Cambridge, Massachusetts\ Stephen Zilles Cambridge Systems Group IBM Systems Development Division Cambridge, Massachusetts", ["barbara-liskov/where-clauses.ps.gz"] = "Subtypes vs. Where Clauses:\ Constraining Parametric Polymorphism\ Mark Day\ Lotus Development Corporation\ 1 Rogers Street\ Cambridge, MA 02142\ Mark Day@crd.lotus.com\ Robert Gruber Barbara Liskov Andrew C. Myers\ Laboratory for Computer Science,\ Massachusetts Institute of Technology,\ 545 Technology Square, Cambridge, MA 02139\ fgruber,liskov,andrug@lcs.mit.edu", ["ben-zorn/CU-CS-573-92.ps.gz"] = "The Measured Cost of\ Conservative Garbage Collection\ Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ CUCS57392 April 1992\ \\Xi\ University of Colorado at Boulder\ Technical Report CUCS57392\ Department of Computer Science\ Campus Box 430\ University of Colorado\ Boulder, Colorado 80309\ Copyright c\ fl 1992 by\ Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ The Measured Cost of\ Conservative Garbage Collection \\Lambday\ Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ April 1992", ["ben-zorn/grunwald92customalloc.ps.gz"] = "CustoMalloc:\ Efficient Synthesized Memory Allocators\ Dirk Grunwald Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ CUCS60292 July 1992\ \\Xi\ University of Colorado at Boulder\ Technical Report CUCS60292\ Department of Computer Science\ Campus Box 430\ University of Colorado\ Boulder, Colorado 80309\ Copyright c\ fl 1992 by\ Dirk Grunwald Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ CustoMalloc:\ Efficient Synthesized Memory Allocators \\Lambda\ Dirk Grunwald Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ July 1992", ["ben-zorn/henderson94comparison.ps.gz"] = "A Comparison of ObjectOriented Programming\ in Four Modern Languages\ Robert Henderson Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ CUCS64193 Revised July 1993\ \\Xi\ University of Colorado at Boulder\ Technical Report CUCS64193\ Department of Computer Science\ Campus Box 430\ University of Colorado\ Boulder, Colorado 80309\ Copyright c\ fl 1993 by\ Robert Henderson Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ A Comparison of ObjectOriented Programming\ in Four Modern Languages \\Lambda\ Robert Henderson Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ (303) 4924398\ Revised July 1993", ["ben-zorn/zorn.ps"] = "The Measured Cost of\ Conservative Garbage Collection\ Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ CUCS57392 April 1992\ \\Xi\ University of Colorado at Boulder\ Technical Report CUCS57392\ Department of Computer Science\ Campus Box 430\ University of Colorado\ Boulder, Colorado 80309\ Copyright c\ fl 1992 by\ Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ The Measured Cost of\ Conservative Garbage Collection \\Lambday\ Benjamin Zorn\ Department of Computer Science\ Campus Box #430\ University of Colorado, Boulder 80309--0430\ April 1992", ["benjamin-lerner/seminal_pldi07.pdf"] = "Searching for Type-Error Messages\ Benjamin S. Lerner Matthew Flower Dan Grossman Craig Chambers\ University of Washington {blerner, mflower, djg, chambers}@cs.washington.edu", ["benjamin-pierce/alignment.pdf"] = "Matching Lenses: Alignment and View Update\ Davi M. J. Barbosa Julien Cretin Nate Foster\ Princeton University\ Michael Greenberg\ Benjamin C. Pierce\ ´ Ecole Polytechnique\ University of Pennsylvania", ["benjamin-pierce/attapl.pdf"] = "# 5 D 5 B 5 7 72 5 2 0 # ' # (8EA!CA%@9846431)(&%$\"! \ v xv y p yVyy fWU gp hff p ywvSue tgqi f Y Wx s rp hfgSWXdbTaEXVT f ec ` YWU\ 2 R P2 0H F 7 D S3 Q48\"38IG @8 E\ C\ (&50B659A@ 598 7 046431 0)('&% 72 5 2 $ #\"! \ Y R#\ $ $\ zz Xy W W p {y 8t { eu }yyiT ! u W rWnp xz x W X u \" VU i W W p {y8tgyispV ! u vWn z T r W s SXc W W p {y 8qXVT ! e u WU xafv! b` e e ef a 3 6 Q 7 A 7A C yA}i99bw\"5ABi4bxi}A5EiD@5'iC5iRR4@x4@H 1 # 846433R D E0A 72 5 2 0 5 # f T@ dT XX 5\"d bfV u p eX dw u p u X p fp V{V X f u eW u ~ x RT x p y p b!X u r r p Sy}nyVU U Y W x rx ex e rW r y p yXwUbU Y r S| z X f rW r e x u f f Xz X V{ hVX u p eX i l X fWv Wnp Rl hfgVVXVhf yiT txX z eW Wx f Rx wu p V VX u p eX i X yx kihf vwi c r W f Wpf ynitptgWf Xs srX u p eX qpW yXom X j W v p f en u l jf kihgY e d X X fX u f p eX i X #wfu p U X Y g euW p u ur W Xc X f e a8eydi@Wetyxrxw\"w8vts@qpi@Efbdb` r r gf p u r hg ec a Y \"5BA9XWWAUTRPIGED\"5BA@978542 V SQ2 H F C 76 3 1 # 8 (0 %'# 'B % 7 R# ' ) ( R & #\ $\ #\ \"! \ \ d RT W W bW u wg# i e d uxW ! r W Wpf yitp yqn p TyWe qXVT i f Wn u r d TWU ~ W p XT X W r x p Ir pe Wr r gWf ys wg# d i v p r uxW ~ XT f WdF i d z R wfuf qp p p Tygy p i W z !T wfuf qp p p r p ygWf Xs yyiT ti ex en v p rWnp ssrg5iWgCi@\"T%%f g55ggqrty4gUyqwrb b` rg y ` gf p X rg y ` y ` ec a # bBAx4@b!F EQC xIk\"\"!!w$CbE 5'B78TRx2utsrqi pih Y A F 7 vA A SQ ll x u eW e X y yv p eW XwU y| l 5d dl y u p V W Wr yn `r x 5d l XT f r Wf gyiqW yVc u yw u p ef ps X u p # 5d pf WnpT e f x W dx f f d f p W U @! yw u e y i e y qi XVT 5d x fWn f Wv Wn gyitp r V Xy yW d 5d x tp u p RtX p y yitp u r wU eu wx m 5d W v x un f eWn e R gW uSy Xc 5d ~ fWn Wv WnW eW e e TT gyispQX Xy yXv X ev b}rf X'SWyVc t5d ggf p ` e X gf f r s B f a i@d@cbagxrwf Y!@XqgWVdUr db` Y XY B7UTRvbBAibBAUS T S SQ2 1Q 4RP %'4 A # 430 $ # # ( ' 2 $$ ~ f TX g W 7 x i d TX sp u p wuy W F p u p y H i f E eWn TT u W u x v r e W n H p # p tgWf p v 5qp p w u p y I m i !T W W p {y8 p GW X i d i u E W x WU XT x p X p qXVT i z f r E x y! gW yn gp F y u p { u Y i x v X! w u VSeV ` ti ss}wqwu !DyT! Cb` r eg B a A 5# AC7 A S 9 SQ yxAi\"4b!C EiW9U'@98TR2 8 f @! g W 7 ti ~ Xi r SWe gVX p X W gp yV'XVT z i WUT r v| WU z~ p r W Y WU XT IIr y u p EXVT l i l~ W ux W Y X w u p # p X y (m x i ~ f W ux R y u p # p i ~ m u fW XT yn r W b ef | m u hfgV WW yn r i i ~~ X r U Sue wx ' W W p {y 8t m d i m u ", ["benjamin-pierce/attapl.ps"] = "TOP\ 2003/10/22\ page i\ Advanced Topics in Types and Programming Languages\ TOP\ 2003/10/22\ page ii\ TOP\ 2003/10/22\ page iii\ Advanced Topics in\ Types and Programming Languages\ Benjamin C. Pierce, editor\ The MIT Press\ Cambridge, Massachusetts\ London, England\ TOP\ 2003/10/22\ page iv\ TOP\ 2003/10/22\ page v\ Contents\ Preface 1\ I ML-style Systems 3\ 1 The Essence of ML Type Inference 5\ By Franois Pottier and Didier Rmy\ 1.1 Preliminaries 5\ 1.2 What is ML? 6\ 1.3 Constraints 25\ 1.4 HM(X) 58\ 1.5 A purely constraint-based type system: PCB(X) 72\ 1.6 Constraint generation 79\ 1.7 Type soundness 85\ 1.8 Constraint solving 96\ 1.9 From ML-the-calculus to\ ML-the-programming-language 117\ 1.10 Universal quantication in constraints 141\ 1.11 Rows 155\ II Reasoning About Programs 193\ 2 Logical Relations and a Case Study in Equivalence Checking 195\ By Karl Crary\ 2.1 The Equivalence Problem 196\ 2.2 Untyped Equivalence Checking 197\ 2.3 Type-Driven Equivalence 199\ TOP\ 2003/10/22\ page vi\ vi Draft of October 22, 2003 Contents\ 2.4 An Equivalence Algorithm 200\ 2.5 Completeness: A First Attempt 203", ["benjamin-pierce/choice.ps.gz"] = "Decoding Choice Encodings \\Lambda\ Uwe Nestmann y Benjamin C. Pierce z\ April 1996", ["benjamin-pierce/copc.ps.bz2"] = "Concurrent Objects\ in a Process Calculus\ Benjamin C. Pierce David N. Turner\ Department of Computer Science Department of Computer Science\ University of Edinburgh University of Glasgow\ bcp@dcs.ed.ac.uk dnt@dcs.gla.ac.uk", ["benjamin-pierce/crchandbook.ps.bz2"] = "Foundational Calculi for Programming Languages\ [To appear in the CRC Handbook of Computer Science and Engineering]\ Benjamin C. Pierce \\Lambda\ December 22, 1995\ 1 Introduction\ In the mid 1960s, Landin observed that a complex programming language can be understood\ in terms of a tiny ``core language'' capturing the essential mechanisms of some programming,\ style together with a collection of convenient ``derived forms'' whose behavior is understood by\ translating them into the core (cf. [ Tennent, 1981 ] ). Landin's core language was the lambda\ calculus, a formal system in which all computation is reduced to the basic operations of function\ definition and application. Since the 60s, the lambdacalculus has seen widespread use in the\ specification of programming language features, language design and implementation, and the\ study of type systems. Its importance arises from the fact that it can be viewed simultane", ["benjamin-pierce/lenses-full.pdf"] = "A Language for Bi-Directional Tree Transformations\ Michael B. Greenwald, Jonathan T. Moore, Benjamin C. Pierce, Alan Schmitt, and Nate Foster Technical Report MS-CIS-03-08 Department of Computer and Information Science University of Pennsylvania August 5, 2003 Revised May 15, 2004", ["benjamin-pierce/local.djvu"] = "Local Type Inference \ Benjamin C. Pierce \ Computer Science Department \ Indiana University \ Lindley Hall 215 \ Bloomington, IN 47405, USA \ pierca,cs. indi,a. edu \ David N. Turner \ An Teallach Limited \ Technology Transfer Center \ King's Buildings \ Edinburgh, EH9 3JL, UK \ dutan-teallach. corn \ Abstrac \ We sudy two partial type inference methods for a lan- \ guage combining subtyping and impredicatiYe polymor- \ phism. Both methods are local in the sense that missing \ annotations are recovered usin. g only information from \ adjacent nodes in the syntax tree, wkhout long-disgance \ constraints such as unication variables. One method \ infers type arguments in potymorphic applications us- \ ing a local constraint solver. The other infers anno- \ tations on bound variables in ftmcion. abstractions by \ propagating type constraints downward from enclosing ", ["benjamin-pierce/lti-popl.pdf"] = "Benjamin C. Pierce Computer Science Department Indiana University Lindley Hall 215 Bloomington, IN 47405, USA pierce@cs.indiana.edu\ David N. Turner An TeallachLimited Technology Transfer Center King' Buildings s\ Edinburgh, EH9 33L, UK\ dntQan-teallach. corn", ["benjamin-pierce/lti-toplas.pdf"] = "Local Type Inference\ BENJAMIN C. PIERCE University of Pennsylvania and DAVID N. TURNER An Teallach, Ltd.\ We study two partial type inference methods for a language combining subtyping and impredicative polymorphism. Both methods are local in the sense that missing annotations are recovered using only information from adjacent nodes in the syntax tree, without long-distance constraints such as unification variables. One method infers type arguments in polymorphic applications using a local constraint solver. The other infers annotations on bound variables in function abstractions by propagating type constraints downward from enclosing application nodes. We motivate our design choices by a statistical analysis of the uses of type inference in a sizable body of existing ML code. Categories and Subject Descriptors: D.3.1 [Programming Languages]: Formal Definitions and Theory General Terms: Languages, Theory Additional Key Words and Phrases: Polymorphism, subtyping, type inference", ["benjamin-pierce/modules-icfp.ps.bz2"] = "Advanced\ Module\ Systems\ (A\ Guide\ for\ the\ Perplexed)\ Benjamin\ C.\ Pierce\ University\ of\ Pennsylvania\ Joint\ work\ with\ Robert\ Harper\ (CMU)\ snc\ /\ 1\ Modules:\ the\ old\ is\ new\ again\ 1960s\ --\ 70s\ modules\ key\ technology\ for\ ``programming\ in\ the\ large''\ 80s\ --\ early\ 90s\ objects\ and\ classes\ key\ technology\ for\ ``programming''\ (incorporating\ many\ features\ of\ modules)\ mid90s\ --\ 1\ components\ key\ technology\ for\ ``software\ composition''\ ('\ modules)\ snc\ /\ 2\ Modules:\ the\ old\ is\ new\ again\ 1960s\ --\ 70s\ modules\ key\ technology\ for\ ``programming\ in\ the\ large''\ 80s\ --\ early\ 90s\ objects\ and\ classes\ key\ technology\ for\ ``programming''\ (incorporating\ many\ features\ of\ modules)\ mid90s\ --\ 1\ components\ key\ technology\ for\ ``software\ composition''\ ('\ modules)\ snc\ /\ 2a\ Modules:\ the\ old\ is\ new\ again\ 1960s\ --\ 70s\ modules\ key\ technology\ for\ ``programming\ in\ the\ large''\ 80s\ --\ early\ 90s\ objects\ and\ classes\ key", ["benjamin-pierce/pict-design.ps.bz2"] = "Pict: A Programming Language\ Based on the PiCalculus\ Benjamin C. Pierce David N. Turner\ Indiana University\ CSCI Technical Report #476\ March 19, 1997", ["benjamin-pierce/snc-mobicom.ps.bz2"] = "What is a File Synchronizer?\ S. Balasubramaniam\ Vidam Communications\ sundar@vidam.com\ Benjamin C. Pierce\ University of Pennsylvania\ bcpierce@cis.upenn.edu", ["benjamin-pierce/tapat.ps.bz2"] = "Regular Expression Pattern Matching for XML\ Haruo Hosoya Benjamin Pierce\ Department of Computer and Information Science\ University of Pennsylvania\ fhahosoya,bcpierceg@cis.upenn.edu", ["benjamin-pierce/tinkertype.pdf"] = "TinkerType: A Language for Playing with Formal Systems\ Michael Y. Levin Department of CIS University of Pennsylvania milevin@cis.upenn.edu Benjamin C. Pierce Department of CIS University of Pennsylvania bcpierce@cis.upenn.edu\ November 22, 2005", ["benjamin-pierce/unisonspec.pdf"] = "What's in Unison?\ A Formal Specification and Reference Implementation of a File Synchronizer\ Benjamin C. Pierce University of Pennsylvania Jr^me Vouillon eo CNRS\ Technical Report MS-CIS-03-36 Department of Computer and Information Science University of Pennsylvania February 24, 2004", ["benjamin-pierce/woggles.ps.gz"] = "Woggles from Oz:\ Writing Interactive Fiction\ (Full Version)\ Benjamin C. Pierce \\Lambda\ November 16, 1993\ A summary of this article will appear in the reviews section of Leonardo: Journal\ of the International Society for the Arts, Sciences, and Technology, 1994.\ The term ``interactive fiction'' describes any artifact --- book, theater script, image, auto\ maton, or computer program --- allowing a reader to make choices that determine the un\ folding of a story. An ordinary book or movie is not interactive in this sense: it has a static,\ linear progression of events. On the other hand, movies with alternate endings to be chosen\ by the audience and books where each page can be followed by one of several others are\ longestablished --- if not yet very highly developed --- modes of artistic expression.\ Adventure, a textual computer game developed at MIT in the 1970s, is the patriarch of", ["bernecky.ps"] = "APEX:\ THE APL PARALLEL EXECUTOR\ by\ Robert Bernecky\ A thesis submitted in conformity with the requirements\ for the degree of Master of Science\ Graduate Department of Computer Science\ University of Toronto\ Copyright c\ # 1997 by Robert Bernecky", ["bernhard-westfechtel/CW96a.ps.gz"] = "Version Models for Software Configuration\ Management\ Reidar Conradi, Trondheim \\Lambda\ Bernhard Westfechtel, Aachen y\ Technical Report AIB 9610, RWTH Aachen\ October 25, 1996", ["bernhard-westfechtel/CW97.ps.gz"] = "Towards a Uniform Version Model for\ Software Configuration Management\ Reidar Conradi 1 and Bernhard Westfechtel 2\ 1 Norwegian University of Science and Technology (NTNU)\ N7034 Trondheim, Norway\ conradi@idt.ntnu.no\ 2 Lehrstuhl fur Informatik III, RWTH Aachen\ Ahornstrasse 55, D52074 Aachen\ bernhard@i3.informatik.rwthaachen.de", ["bernhard-westfechtel/SEGRAGRA.ps.gz"] = "Electronic Notes in Theoretical Computer Science 2 (1995)\ URL: http://www.elsevier.nl/locate/entcs/volume2.html 10 pages\ A Programmed Graph Rewriting System\ for Software Process Management\ Peter Heimann, Gregor Joeris, CarlArndt Krapp\ Bernhard Westfechtel\ Lehrstuhl fur Informatik III\ RWTH Aachen\ D52074 Aachen\ [peterjgregorjkrappjbernhard]@i3.informatik.rwthaachen.de", ["bernhard-westfechtel/Wes91a.ps.gz"] = "# ############### ####### ##\ #########\ ### ####### #########\ ######## ###########\ #########\ #### ########## # #\ ###### ########## ## ##########\ ######### ##\ ###### ######\ ########\ ####### ######### ## ######## ######### ##### ########\ #### ### ######## #### ######## ##### ## # ######### #####\ ######## ########## ## ####### ### ###### ##### ## ####\ ##### ## ##### ## ######## ########## ##### ########## ##\ ### #### ### ############ ## # ##### #### ##### ## ## ##\ ########## #### # ############ ################## #####\ ######## ## #### ###### ## ####### # ##################\ ##### #### #### ## ########## ## ######## ######### ####\ ########## ############ ######## ############ ########\ ###### ###### ################ ##### ####### ## #########\ ########## ######### ##### ############ ############ ###\ #### ##### ####### ## ########### ## ##### ############ ####\ ########\ # ############\ ## ### ###### ## ### ############ ## ######## ####### #####\ #### ######### #### ## ############ ############ #####\ #### ############ ############# ###### ###########\ ###### #### #### ####### ######### ###### ## ############\ ## ##### ## ####### ### ########### ## ########## #####\ #### ######## ## ## ######### ## ###### ######### ## #####\ ##### ##### ####### ##### ########### ########## #####\ ######### ### ###### ##########\ ## ### ######## ##### ### ######### ## # ######## ### ###\ ##### ######## ##### ### #### ##### ######## ### ########\ #### ####### ### #### ####### #### #### #### ## ## ### ###\ ###### #### ## ## ##### ##### ############## # ### #####\ #### ## ##### ########## ######### ## ### ## ######### ##\ ##### ### ####### ######### ## ######### ######### ####\ ## ####### # ###### ######### #### ############ ### ##\ ##### ########\ ####### ######### ######## ## #### ############## ###\ ############ ##### # #### ## ######## ###### ##### #####\ ##### ### ####### ## ####### ## ### ## ######### ##### ###\ ####### ######### ## ######### ######## ### ##########\ ####### ###### ## ######### ########### ####### ###\ ##### #### ###### ####### ############### ####### ###\ ########### ### ####### ### #### #### ############ ## ###\ #######\ ### ######## ## # ##### #### ### ## ####### ### #########\ ############# #############\ # ## ### ### ##### ### ##### #### ###### ## ########\ #### ## ###### ## ########## ## ######### ######## #####\ ###### ## #### #### ### #### ### ## ######## #### ###\ ######### ## ##### ### ######### ### ########\ # ## ### ##### ##### ### ##### #### ###### ## ########\ ##### #### ## ###### ## ##### ## # ########## ####### ##\ ###### ## ##### ## ####### # ###### ##### #####\ ###### ## #### #### ### #### ### ## ########### #######\ ########### ##########\ #### ##### ##### #### ####### ## # ##################\ ########### #### ######## ##### ### #### ######### #####\ ## ########## ## #### ######## ## #### #### ######## ###\ ######## ## ####### ### ###### ### ####### ## ### ########\ ### #### ## ####### ## ########### ####### ## ### ########\ ##### ###### ######\ # ## ### ### ##### ##### ### ##### ##### ##### ## ####\ ##### ####\ ## # ### ### ## #### ##### ##### ## # ####\ ### ## ######## ############# ### #### ### ### ######\ ### # ################## ########### ####### ####\ ## ### #### ### ########## ######### ### ########\ ########## #### ########\ # ## ### ##### ##### ##### ### ########## ######## ## #\ ######## ######## #### ### ### ### ##\ ## # ## ####\ ##### ########## ##### ## #### #### ###########\ ##### ########## ### #### ### ###### ############ ####\ ######### ######### ##### ####### ## #### ##########\ ### ### ### ########## ######## ####### # ##### #### ###\ #### ######## #### ## ########### ####### ##### ###\ #### ## ##########\ ## ##### ## #### #### #### ## #### ######### # ##### #####\ ##### ##### ### ### ######### ###########\ # ## ## ########## ## ######### ####### ## ######### ####\ #######\ # ## ######### ### ############ ############ ########\ #### ############ ####### ########## ### ##### ####\ ######## # ###### ##### ## #### ####### #### ####### ##\ ### ############ ###### ## ### ########## #########\ # ## ####### ############ ########## #### ###########\ ####### ## ### ############ ##########\ ############ ## #### #### ######### ## ######### ## ###\ ############ ##### ######### #### ##### #### ## ######\ #### ###### ## ### ################# ####### ###### ###\ ####### ## ####### ########### ## ########### ## ##### #####\ ######## #### ######### #### #### ### ##### ## # ########\ ######### ######## ## ## ######### ######## ## # ########\ ##### ## ######## ### ################# ######### ###\ ##### ######### ##### ### ########## ########## #### ###\ ##### ######### #### ##### ### ############ #########\ #### ########\ ### ######### ## ### ##### ## ######### ## ######## ##\ ######## # ## ####### ### ####### ## ### ##### ## ####### ##\ ## ######## ############ ######## ## ####### ## ## ###\ #### ### ######## ######### ## ####### # ## ##### ## ####\ ######## ## ########### #### ######## ## ####### ## ## ####\ #### ### ######## #### ######## #### ## ######## ## ####\ #### ## ## ######### ### ####### ### ####### ###### ## ###\ #### #########\ # ##########\ ### #### ######### #### ## #### ## # ######## ###### #####\ #### ## ######### ## ########## ################## #####\ ####### #### ######## ####### ### #### ######## ######\ ##### #### ##### ####### ## ######## ######## ###### #####\ ##### ####### ## ######### ### #### ### ####### ## ########\ ########### ####### ######### ## ############## #####\ ##### ### ##### ##### ## ## ### ####### ######### ##\ ##### ###### ##### ## ## #### ## #### # ##### ############\ ## #### ####### ######## ## ### ################## #####\ ########\ ### #### ######### ## #### ##### ### #### ####### ###\ ###### ### ######## #######\ ### ## ########### #######\ # ###### ############ ### ##### ##### ## ######### ##\ ### ########### ## ################## ############\ ######## ### ##### ######## #### ###### ## ### ##### ## ##\ ##### ############ ##### ### ################## ####\ #### ### ####### ########## ##### ####### ####### ### ####\ ######### ########### ## ########## ############ ####\ ############# ###### ### ## ### ####### ##### ########\ ######### ########### ############ #### ####### ## ######\ ###########\ ### ############ ###### ## # ####### ######## ## #######\ ## ##### ## # ########## #### ####### ### ### #####\ ## ##### ## # ###### ####### ### #### ## ###### ########\ ## ########### ## ### ######### ##### # #\ # ########### ########### ##### ###### # ########## ####\ ########### ### ############# # ########### #\ ############ # ########\ # #### ########### ##### ###### #### ########### ####\ ########### ### ##### # ####### # #######\ # ######### ########### ##### ###### ###### ###########\ ####\ ####### ### ############# ### ####### ###\ ### ############ ######### ## # ######## ######## ## ###\ ######## ########### ## ## ######## ###### #### ##### ###\ ####### #### ######## ### ########### ## ######## ######\ #### ## ####### ## # ##### ##### ######## ##### #####\ ### ##### ### ##### ##### ### ##### ########### ####\ ####### ########### ## ## ########## #### ## ######## ## #\ ######### #### ## ### ########## ######### #### # ##### ##\ ####### ### ### ####### #### ######## ## ######## ####\ #### # #### ## ########### ## # #### #### ###### # ### ##\ ##### ## ######### #### ### ###### ### ##### ### ##### ####\ #### ##\ ### ## ######## ### ############# #######\ ####### ############ ###### ### ##### ## ### #### ####\ ###### # ######### ## ########### ## # ######### ####\ ###### # ##### ## ######### #### ### #### ##\ #### ##\ ############# ### ###### ## ########## ########### ##\ ########### ## # ########### #### ##### ### ######## ##\ ########## ## ########### ## ## ########## #### ###### #\ ### ## ##### ####### ### ############# #### ## ## #######\ ####\ ## ##### ## ##### ### ################# ######### ## #\ ######### ### ######## ###### #### ## ######### ####\ ######## ##### ##### ######### ################# #####\ ###### ## #### ###### ## #### #### ## ######### #### #####\ #### ## ########### ## ##### ############# #### # ####### ##\ ########### ## ## #### ##### ######## ### ####### ######\ ##### #### ### ############ ##### ### ######## ###########\ #### ## # ######## ## ## ########### #### ### #### ###\ ##### ###### ## ######## ### ### ## ###### ###### ### ###\ ####### ######## ## ############ ### ##############\ ## ### ######## ## #### ##### ### ##### ####\ ######## #\ #### # ######## ####### ######## ### ######## ######\ ######### ######\ ### ### ## # ############\ ### ###### ######\ ###############\ #######\ ######\ ######\ ########### ########## #############\ #######\ ######\ #############\ ####\ ######\ ######\ ####\ ######\ ######\ ###########\ ###########\ ####\ #### ############## ############# ### ######## #### ###\ ####### ######## ##### ### ######### #### ###### ####\ #### ########### ### ### ############## ## ##############\ #### ######### ### ####\ ######### ## ### ##### ### ########### ## ######## ####\ ##### #### # ####### ########## #### ###### #########\ ##### ## ######## ## #### ######### ######## ### ########\ ###### #### ### ######## ########### ######## ### ######\ ###### ################# ####### ##### ###### ### ####\ ###### ## ###### ### ###### ################# #####\ ##### ######### ## ### ############# ## ### ######## ####\ ### ##### ### ######### ######### ###### ########## ###\ ######## ## ### ########## ################## ########\ ################## ####################### ##########\ ############### ############### ######### ## # #######\ ############# ## # ######### ###### ### #################\ # ############ #######\ ## #### ######## ## ####### # ##### ######### #####\ ###### ############# ####### ## ######### ####### ##\ ### ########## ### ##### ######### ######### ###\ ############ ########### ### ####### ############ ####\ ####### ##\ ######## ### ## ######## ### ########## ##########\ ## ## ######## #### ##\ ######## ### ## ####### ## #######\ ### ### ######### ## # ############# #########\ ### ##########\ #### # ########### ### ##### ######## ######## ####\ ##\ ######## ## ### ########### ######### # # ### # # #### ###\ ######## #### # ##### ######## # ## ## ## ###########\ ##### ######## # # ### # # #### ####### ## ##\ #### # ### ##### #######\ #\ # # # #\ #\ # # # #\ #\ #####\ ##### ######## ### ##### ####### ## # ######### #### ###\ ##### ######### ## ######## #### ### ###### ##########\ ## ###### ###########\ # # ######## # # # ## # ## ## #\ #### ##### # ###### ##### #####\ # # ######## ##\ ## ## ## ############ #### #### ### ###### ########## ##\ ######## #### ### ### ######### ###### ########## ####\ ###### ## ### ### ## ####### ##\ ##### ####### ## ######\ #####\ # # ######## ##\ # # # ######## # # # # # # ######## # # #\ ### ##### ##### # ### ## #### ### ######### ########\ ######\ # #### ######### ## # #### #### #### ###### # # ## # # #\ # # #### ### ####### #############\ # # #### ### ####### ####### ########### #### ##########\ #### ###### ## ######### ##### ## ####### ## ### ####\ ## #######\ ########### ####### ## ### ########### ## ###### #####\ ## ### ######### ###### ########## ## #\ #### # #########\ # ### ########## ## # ### ## # #### #### # # ### # # # ###\ ########### ##### ## # ### ## # ######### ### ### #######\ ##### #### ####### ###### ## ### ##### ## ##### ###\ ########\ ##### ## ### ##### ###### # # ### # # #### ##### #####\ ### ##### #### ## ## ##############\ # ### ###### ########### ####### ## ###### ## #### #####\ ###### ### ##### ####### ########## ## ########### ### ###\ #####\ # ### ###### ########### ####### ## ######## ## ####\ ##### ###### #### ## ## ##############\ ## ### ###### ##### ####### ######### #### ###########\ #### ## ## ######### ### ### ## ### ## #### ## ##### ##\ ##### #### ######## ## #### ######## ### ##############\ ##### ########### ## #### ### ##### ######### ### ###\ #### ## ### ###### ########### ######## #### ############\ ## ####### ####### ## ####### ###### ########## #########\ ######## ### ##### ## ######## ###### ##### ### #########\ ####\ ### # ###### ### ######### ########## # #\ # #### # #### ## ######## ## ## ######## # ###### ###\ ##### ## ##### #######\ # #### ### ##########\ # ### ######### ##### ###### # ######## ######### ###\ #####\ ## ##### ## ##### ### ####### #### #### ######## ####\ ###### ## ########## #### ### ######## ## ####### ###\ ###### ## ############# ## ######### ########### ## ###\ ##### #########\ ### # #\ #### # ######### ######## ##### ###\ ##### #### ######## ### ############# ############ ## ####\ #### ####### ####### #### ######### ## ########## #######\ ##### #\ ###### ########## ##### ############ ### ## ##### #######\ ### ###\ #### ### # ############ ## ### ##### #### ## ###\ ########## ##### ### #### ## ######## ## ##### ## ## ###\ ## ############### ############################### ####\ #####\ #### #### #### ############ #### ## ########### ## ########\ ######## ## ######## #### ####### ### ###################\ ## ######### ## ######### ##########\ #############\ ##### ## ### ##### ######## ## ## ########\ ########## ##### # ##### ##### ### ## ######### ##### ####\ ##### # ####### ######### ## ######### ####### ## #####\ ##### ########## #### ######### ######## ### #########\ ##### ########## ######### ## ####### ## ##### ######\ ##### ### ######## ####### ##### ## ############### ###\ ######## ## ### ############ ### #### ######### # ########\ ## ########\ ############ # ## ####### #####\ ######## ############### ### ### ######## ####### ##\ ### ########### ### ##### ######### ########### ###### ##\ ### ######### ######## ## ######### ########## ## ## ####\ ##### ############\ #### # ######## ############ ## ### ##### ####\ ########\ ###### ##############\ ######### ########## ############ #########\ # # #\ ### ##### #### ######### ## #### ##### ## ## ##########\ #### ## ### ############# ################## ##### #####\ ####### ### ########## ## ##### ### ## ########## ##\ ########\ ##### ########### ########## ##### ### ######\ ### ### ##### ## ######### ####### ### #############\ ##### ######## ########## #####\ ####\ #### # ########## #### ########\ ##### ######## ########## ##### #### ## ## #####\ ### ## #####\ ## ##### ## ###### ##### #### # ### ######## ## ### ###\ ## ##### # ########## #### ######## ##### ### ####\ ######### #### ## # ################## ###### ### # ###\ ######### ############## ########### #################\ ###### #### ## ## ####### ## #### ##### ############ ###\ ######## ## #### ######## ########### ############\ ### ## ### ####### ## ##### ########## ## # ######## ## #####\ #### ##### ######## ############# ########## #####\ #### ####### ################# ####### ## ########## ###\ #### ## ######## ## ##### ### ######## ########### #####\ #### ## ######### ####### ## ## ### #### ## ######## ####\ ########## ### ########### ### ##### ########## ###\ ###### ## ### ########## ######### ## ##### ## ######\ ## ######## ##### ######## ######## ############### ###\ #########\ #####\ ### ######### ## # #\ ######### ## # # #### # ##### ###### #\ ########## ###### # # # ###### # # # ###### # # # ###### # # #\ ########## ###### # # # ###### # # # ###### # # # ########\ #########\ #### # # # #\ ### # # # #\ ### # # # #\ ### # # # #\ #########\ #### # # # #\ ### # # # #\ ### # # # # ########\ #### # # # # # # # # # # # # # # # #\ #### # # # # # # # # # # # # # # # ##\ ######### ########\ ##### ################## ##### ##### #####\ ### ##### ######### ######## #\ ##################\ ################# #### # ########## ####### # # ###\ # # ## ######### ### #### ## ######### ## #### ### #####\ ####### #### ######### ## #### ####### ## ##### ## ## ###\ ########### ####### ######## ############## ##########\ ### #### ## ##### ## ####### ### #########\ ##### ########## ### ########### ##### ###### ###\ ##### ######## #### #### ###### ## ## ######### # ##### ##\ ## ### ##### ######### ### ######### #### ## ######## ## ###\ ##### ######### ######### ## ### #### ######### ###\ ########## ## ##### ## ##### #####\ ### ##### ######### ######## ############## #### ### ###\ #### ##### ## ######## #### ### ###### ## ### ##### ##\ ##### ### ########### ######### ### ###### ## ###########\ #### #### ### ######### ##### ### ### ######### ##\ ##### #\ ######### ## ### ##### ## ######### ## ### ##### ##### ###\ ####### #### ### ######### #######\ ### ##### ####### ### #### ########## ## # # # # # #\ ### ## ## #### ### ##### ## # # ### # ### ###### #### #\ #### ###### ### ######### ## # # # ########## ## #\ ### #### # # ## ######## ## ####### # ######## ###### ##\ ### ##### ### ######### ######### ## #### ##### ### ####\ ### ## ###### ###### # # ## # #\ # #\ # ######### ##### ####### ############# ##########\ #### ##### #### ### ###### #### ##### ## ########## ##\ ##### ## ##### ##### ## # ######### ### ######## ##\ ####### ### ####### ## ## ############# ###### #### ##\ # ######## ###### ## ### #### ######### ### ########\ ## #### ######### ## #### ##### ### #### ### ## ######\ #### ##### ######### ## ###### #### ##\ ## ## ####### ## ##### #### ####### ### #### ## #### ## # ###\ ############# #### ## ################################\ #### ########### ## ####### ### ####### ## ### ########## ##\ ########## ########### ## ######### ### ######## # ##########\ #### #####\ # #### ##### ###### ####### ## #### ########### ## # #### ####\ #### # # ## #### ## # # ### ## ### ### ## # # # ## ### #######\ #### # # ### ######### ## ######## #### ## ## # # ## ### ##\ ### ##### ## ### ######## #### # # # ## #### ##### ## ## ####\ ######## #### ## # ######## ###### ## ### ######## ####\ ######## ## ### #### ######### #### ### #### ### ## ###\ ####### ### ##### ## ##### ### ######## ###### ## ##\ ## ######## ## ##### ###### ########### ### #### ###\ ####### ##### ##### ### ####### ## ########## ##### ###\ ## #### ############# ### ### ## ### ##### ### ######## ####\ ##### ###### ## ### ######### ######### ##### ### #####\ ###### ####### # # #### # # ### # # # # # #### # # # ### ########\ #### ####### ## ###### ## ######## # # # ############# # #\ ### # # ### ###### #### ####### ## # # # ## #### ########## # #\ ### # # ### ####### ###### ########## ##### #### ######\ ##### ####### ## # # ### ######### ### ### ## # # #\ #### # ####### ### ### ######### ## ##### #####\ # #\ # # # #\ ###### # #\ # #\ # # # #\ # #\ ##### ##### ###### #### ##### ##### ######## ##\ #### #\ ####### ### ## ## ####### ## # ######### #### #### ### ####\ #### ### ####### ### ########### ##### ### ## #########\ ## ######## ##### ########## ### ######## ## # #### ####\ #### ## ## #### ### ############ ### #### ### ## ######\ ####### ## ##### ## ######## #### ### ##### ######### ## ###\ ####### ## #### ### ####### ####### ##### ##### #######\ #### ### ## ####### ######### ## ##### ##########\ ### ################## ##### ######### ##### #### ###\ ######### ###########\ # ### ##### ##### ##### #### ############## #######\ ##### ### ############ #### #### ######### ## ### ###\ ####### ## ####### #### ############ ### ########### ##\ ### ####### ##### ## ######### ### ########## #### ###\ ####### ########### ########## ## # ##### #########\ # ### ########### ## ##### ##### ######### ### ####\ ######### ############ #### #### #### #### ########\ ###### ### #### ########## ### ######### ##### ######\ ### ########### ## # #### ######### ### ####### ## ###\ #### ##### ## ######### ########## # #### ######### ##\ ########## ## ######## ### ############ ############\ # ### ##### ##### ## ### ####### ### ################\ ## ########## ###### #### #### ##### ## ####### #######\ ## ########## ##### ###### ### ### ## ######## #########\ ## #### ####### ##### ############# ####### ### ######\ ########## ### ## ######### ####### ######### ##\ ### ########## #########\ #### # ########\ #### ##### ########### ### ########\ #### ## ### ##### ##### ######### ###### ## #### ### ####\ ### ####### ######### ### ########### ######### ######\ #### ## ######## ###### ###### ########## ### ##### ## ####\ ##### ##### ####### ### ########### ### ### #### ## ######\ ##### ##### ### ######## ############ ## ### ########## ###\ ######### ##### ### ########\ # ## ##### ## # #### ##### ### ########### ## ##########\ ##### # ## # # # ## ######## #### ##\ # ## ##### ## # ######### ##### ### #### ########## ## ###\ ######## ###### ##### ## ## ######## #### ## ####### ###\ ######## ## ### #### ###########\ # ## ##### ## ## ########## ##### # ######## ## ######## ##\ ##### # ## ## # # # ### # # ### ######## ###### ## ########\ ######### ######## ###### ###### ############# ###\ ####### ########### ## ########## #### ### ##########\ ## ### ########### #### ############ ## ### ####### ##\ ###### #### ### #### ####### ### ##### #####\ #### # ####### ### ### ########### ## ##### #####\ ## ## ######## ##\ # ###### ##\ # ### ###### # ####### ##### #######\ # #####\ # ###### ## #####\ # ### ##\ # ###### ####\ ######### # #\ # ###### ##\ # ### ###### # ####### ##### #######\ # #####\ # ###### ## ####\ # ### ##\ # ###### ####\ ######### # #\ # ###### ##\ # #### ########## #\ ######## #### #######\ # ### ###### #\ ############\ #####\ # ######\ #####\ # ### ##\ ##### ######## ##\ # ###### ##\ # #### ########## #\ ######## #### #######\ # ### ###### #\ ############\ #####\ # ###### ## ####\ # ### ##\ ###### #########\ ## ### ####### ## ####### ###### ### ### ######### ### ###\ ############ ####### ## ######### ## ######## #####\ ###### ### ######## ##### ## ### ### #### ####### ## #\ ############# ###### ##### ### ##### ######### ###\ ###### ## # #### ## # # ##### ## ######### ######## ##\ ########### ## ### ##### ##### ##### #### ##########\ #### ######## ## ### #### ######## ######## #### #### ###\ ##### ###### #### ### ###### ## ##### ########### #####\ #### ## ###### ## ######## ##### ######### ## ######## ###\ ####### #####\ ######### ##### #### # # #### # # # # # #### # # #####\ #####\ # # ######### # ## ## # ### # # # #\ ## # ## # ####\ ############ # # # ## ##\ ####\ ############ # # # ##\ ###\ ### ######\ #### # #### ##### #########\ ### ##### ######### ######## #\ ## ####### ## ### ##\ ####### ### ######## ###### ##### ## ### ##### ##########\ ###### ### ##### ######## ### ####### ##### ## ## ######\ #### # ##### ## ########## ## ### ### ### ###### ## ##### ## #\ ### # # ##### ### ## # #### ###### ## ##\ ## #### ##### ## ####\ ####### ########## ##### ##### ### ####### ###### ####\ ##### #### ### ####### ## ######### ## ### ##########\ ######### ############# # #\ #### # # # # #\ #### # #\ ##### ####\ # # ######### # ## ## ## # # ### # # #\ #### ######## ## ##\ ########### #\ #######\ # ########## # ####################### # # # ##\ ###\ # ######### # ###################### # # # ##\ ###\ # #### # ################# # # # ## ##\ ###\ ###\ ##########\ ####\ ## #### ##### #########\ ### ########## ##### #### ## ## ######### ###### ##\ ### ##### ## ### ####### ######### ##### ### ## # ## # ######\ ###### # #### ## ########## ######### ## ####### ### ##\ ## #### ## #### ########## ### ## ### ########## ## ######\ ##### ###### ### ####### ## ############ ########### ###\ ###### #############\ ######### ####################\ #### # #\ #### # # # # #\ #### # #\ #####\ ### # #\ ######## #### # # ####### ## # ###### # # ##\ #####\ # ####### ## # ####### ## ####\ # # # ### #### ####### ## # # # #\ ################### ## ###### # # ###\ #### # ###### # # ## # ####### ## ####\ # # ######## # # ### ####### ## ####\ ########### ######### # #\ ################ # # # ####\ # # ### #### ### ###### ### #### ## # # # #\ ################### ## ###### # # ###\ ###\ ###\ ###\ ###\ #####################\ ####\ ### #### ####### ## ###########\ ## ####\ ############ # ##### #### ########## ### ########\ ##### #### ## ### #### ### #### ####### ## # # # #### #######\ ###### ## #### ####### ## # #### #### #### ### ## ### #######\ ### ##### ## ###### ## ######## ####### # ####### ####### ###\ ####### #### ## ## ######## # #### ########### ##### #####\ ## ### ##### #### ####### ## #### ############# #### ###\ ######### ## ####### ## ### ######### ############\ ##### ####### # ####### ##### #### ########## ### ###\ ##### #####\ ######### ###################\ #### # #\ #### # # # # #\ #### # #\ #####\ ### # #\ ########\ #\ ######\ #\ # # # # # # # # #\ #### ####\ # # ############# ########## ## # ### ########\ ##### ## ##### #### # #\ ### # ## # ## ########### ## ##\ # # ## ###### ##\ ###\ # # ## ##### # # ##\ ###\ # # ## ###### ##\ ### # # # # # # # ####\ # # ####### ######## ########### # #\ ######## # # # ## # # #\ #### # # # # # ####\ # # ### ######### ### ######## ## # # # #\ ################### # # # # # # # # #\ #### # # # # # # ####\ # # ######## # ### ######### ### #######\ ## #### ########### ######### # #\ ################ # # # ####\ # # ### #### ### ###### ### #########\ ## # # # #\ ################### # # # # # # # # #\ ###\ ###\ ###\ ###\ ####################\ ####\ ### #### ####### ## ##########\ ## ####\ ##### ##### # ############# ########## ###\ ######## ##### ## ##### #### ##### #### ## #############\ ########## ## # ### # # #### ### #### ##### ####### ####\ ##### ############ ## # ######### ### #### ######## ## # # #\ ## ## ###### #### ## #### ## ######### ## ### #########\ ################ ##### ## ######## ########### ###\ ###### ## ### ####### ######### ######## ## ##### #####\ #### # # #### #### ### #### ######### ######### ### #####\ #### ## ############ ######### ### ########## ##### ####\ ####### ##### ####### ## # #### ####### ########### #####\ ###### ## ### ######### #### # ### ######### ### ####\ ######## ## ### ## ###### ## ######### ######## # #### ###\ ######### ##### ##### ## ### ########## #### ######## ##\ #### #############\ ## ### ### #### ## ######## ### #### ## #### ######### ### ####\ ########\ ######### ##################\ ## #### # # #\ ## ####\ ## #####\ ### # # # # # #\ ## ####\ ## ########\ #### # # # ### ##### ### ######## ##### ## ### #### ##\ ##### ######### # #\ # # # ######## ### #\ ## # ####### # # ###\ #####\ # # #\ ### ####\ # # # # #\ ## # ####\ ###\ #### # ### ##\ ## # ## ####\ # # # # ## # # # ### ### ## # ## # # ### ######## #### # #\ ### ######### ## ######## #### # # #\ ############## # # # ## # # ## #\ ## # ###### # # # # #\ ####\ # # # # ## # # ### ## ### ### ## # # ## # # ###\ ####### #### # # ### ## ### ######## #### # # #\ #\ ## # ###### # # # # #\ ####\ #### # # #\ ###\ #####\ # #\ ## # # ####\ # # # # ## ## ###### ## # # ### # ### ####### ##### #\ ### ######### ## ####### #### # # #\ ## # ####### # # ## ######### # # ## #\ ## # #\ ####\ # # # # ## # ## # # ## ### ### ## # ##\ # # ### ######## #### # # ### ####### ## # # #\ #\ ## # ####### # # #\ ###\ #### # # # # # # ####\ # # ####### ######## ########### # #\ ######## # # # ## # # ##\ # # # ####### # # ## # # # ###### # # # # #\ #### # #\ ## # # #\ #####\ # ### ##\ ## # ## ####\ # # # # ### ## ## ### ######## # # ## # # ##\ # # ### ######## #### # # ###### # # ### #########\ ## ######## #### # # #\ ############ # # # # # # # # ## # # # ###### # # # # #\ ####\ # # # # ## # # ### ## ### ### ## # # ## # # ### #######\ #### # # ### ######### ## ### ######## #### # # #\ # # # ###### # # # # #\ ####\ #### # #\ ## # # ####\ # # # # ## ## ### ### ## # # ### # ### ####### #### # #\ ### ######### ## ####### #### # # #\ ## # ####### # # ## ######### # # ## #\ ## # #\ #### # #\ ## # # ####\ # # # # ####### ## # ### ## # # # ### # # ###### # # ## ###\ # # ### ######## ###### # # #### # # ### ####### ## #\ # #\ #\ ## # ####### # # #\ #### # #\ ## # # ####\ # # # # ## ## ### ### ## # ### # ### ####### #### # #\ ### ######### ## ### ######## #### # # #\ # # # ###### # # # # #\ #### # # # # #### ## ## # # #### ## # # ##\ ######### # # ### # # #### ######## ## ###\ #### ######## #### # # ### # # # ############ # #\ #################\ # # ####\ # # ### #### ### ####### #### # # ##### ##### # #\ ############ # # # # # # # # ##\ #\ ## # ####### # # ## #\ ## # ###### # # # # #\ #### # # ### #### ### ####### #### # # ##### ##### # #\ ############# # # # # # # # # ##\ #\ ## # ####### # # ## #\ ## # ###### # # # # #\ ####\ ###\ ###\ ### ###############\ ####\ ## ##### ####### ## #####\ ### #### ########### #### ## ### ##### ######### ## ###\ ######### ### ####### ##### #####\ ## ## ###### ### ########\ ### ## ##### ## ##### ## ###### #### ###### #### ####\ ##### ###### ## ### #### ##### ## ### ##### ########## ####\ ########## ## ### ## #### ## #### ### ###### ##########\ ###### ## ### ### ##\ ######## ### ####### ##### ## ### #\ ####### ### #### ## ### ##### ######### ######## ## #\ #### ##### ######## #### ### ######## ## # ### # # # ####\ ### ######## ### ###### ############ ######## #######\ ## # # ### #### ####### #### ## ### ######## ########\ #### # # ### #### ######## #### ## # ######## ###### ## ####\ ##### #### ######## ## ### #### ######## #### #########\ ############# ##### ### #### ########## ### ##### ## ###\ ######### ### ## ### #### ## ###### ## ##### ####### ###\ ######### ## ####### ######## ### ########## ######\ ###### ## #### ## ## ####### ## ## ### ##### ####\ ########\ ## #####\ ### ##### ######### ######### ## ####### # #### ### ####\ ### ################# ######### #### ######## ## #### ####\ ##### ## ######## ## ######### ##### ##### #### ####### ##\ ### ## ##### ############# ### ########### ## ######\ #### ### ## ### #### ## ###### ## #### ## ####### ####\ ########## ### ######### ## # ###### #### ### #### ## ##\ #### ### ##### ######### #### ########### ####### ######\ ###### ### ######## ############# #### #### ## ######## ##\ # ####### ####### ### ######### #### ### ##### ## # #######\ ## ######### ### ## ## ######### ######## ## # ########\ ##### ## ########\ ## ####### ###### ##\ ######## # ######## ## ########### ###\ ########### ## ################# ##### ##### ### #####\ ###### ############# ######### ## ### ############# ##\ ### ######## ###### ##### ### ######### ######### #####\ ###### ## ### ########### ## ######## ##### ## ########\ ## #### ######## ###### ## ###### #### ####### #########\ ######## ## ### ##### ######## #### #### ### ########## ##\ ##\ ######## #### ## ### ###\ ######## ### ######### #### ##### ######## ## ### #####\ ## ####### ## ############ ####### ## ###### # ######\ #########\ ######## #### ### ######### ###########\ # #### ########### ## ########## ## ### ######\ # ########### ##### ### ######## ## ### #### ##### ####\ ## ## ######### ######## ### #############\ # ####### ########### #### ### ###### ## #### #####\ ##### ## ########## ## ###### ############\ # ######### ### ####### ########### #### ## ########\ ##### ## ###### ####### # ## ###### ## ## ####### ######\ ##### #### ####### ## ### ############# ###### ### #\ ######### ########## #### ####### ## ### #### ## ### ###\ ####### #######\ ############ ## ###### #### ### ##### ######### ### ####\ #### #### ####### ## ### ####### ##### ### ######## ######\ ######## ## ########## ############# #### ########## ####\ ####### ### ######### ########### ######## #### #### ###\ ######### ############## ### ## ######## ## #### ######\ ## ### ##### ######### ### #### ## ##### #### ########\ ### ############\ ## ######### ### ####### ### ######\ ###### ## ##### ## ### ######### #######\ ###### ## # # #\ ######## ####### #### ##### # ###### ### ####### ###\ ######### # ### ######## ## ### #####\ # # # # # # ## ### #### ## ### ######### #### ## #####\ #### ### #####\ ####### ### # # ## ##### ### #########\ #####\ # # # # # # ### ######### ### ###### #### # ########\ ###### ##\ ### ## ###\ ## ## ############ ### #### ## ###\ ##### ######### ### ######## #### ######## ###### ##\ ##\ #### ###\ #### ####### ## ### ############ ########### ### #######\ ## ### ########## ##### ############ ####### ########\ ####### #### ############# ######## ### ###### ## ### ####\ ## ####### ### ##### ######### ##### ## ##### ### #######\ ## ### ######### ####### ## ### ######### ## ### ###\ ######### ## ### ##### ############ ### ######### ## ###\ ####### ### ####### ### ##### ###### #### ### #######\ ################# ####### ### ####### ########### ## ###\ ### ### ######\ ####### ### # # ### ##### ## ### ############\ ## ### ######### ##### ##### ### ##### ### ########## ##\ ### ##### ###### ##### #### ### #### ## ######### ####\ #### ### ####### ####### #### #### ### #### ###### ###\ ##### ## ## ######## #### # ###### ######### ##### #####\ ##### ############ ####### #### ## ###### #### # ##### ###\ ####### ######## #######\ ### ################# ######### ######### ##### #####\ #### ####### ## ### ########\ ## ####### ##### ## ### #####\ #### ## ####### ### ######## ##\ ###### #\ #### # ### #########\ ###### #####\ # ### ####### ########## ## #####\ ###### ## ## # ### ###\ ##### ##### #### # # # ## # # # ## ### ##### ## ### ###\ ####### ########### ## #### ## #### ##### ###### ### ###\ ## ## ## #### ## ########## ### ####### ### ##### ## #### ###\ ###### ##### ############# ############### ########### #######\ ##### ######## #### ### ## ######## #### ### #### ########\ ## ##### ### ###### ########## #### ########## ## #### ###\ ####### ######\ ####### ###### #### ### ####### ########## ###### ##\ ##### ## ### #### ########### ## ## ## ####### ####\ ##### ## ############# ####### ### ####### ##########\ #### ##### ## #########\ # ########## ### ######### ####### #### ### ####### ###\ ######## ## ######\ ###### # # ## ##### ## ######### ####\ ######### ## # # ### ## ## #### ##### ## ## ### ######## ##\ #### ### ####### ########## ##### ## ### ######## ####\ ######### ########## ### ######### ######## # #####\ ### ##### ######### # ######### ####### ## ### #####\ #### #### ##### ########## ##### ####### #########\ ######## ######### #### ########## ### ## ## ######\ ####\ ####### ############\ ## ##### ## ###### ### ############ ########## ## #####\ # ####### ######## #\ # ### ############ ######### ## #### ######## #### ###\ ######### ##### ### ####### ## ####### ########## #####\ ### ########## ## #### #### ### ####### #### ## #######\ ### ############\ ## #### ####### #### #### ########## ##\ ###### ### ###\ ##### ## ##### ## ###### ### ###### ####### ##\ ####### ########### ## ##### ## #### ## #### ########\ ###### ###### ## ######## ## ## ######## #############\ ## ######## ####### ########### ## # ### ####### ## ###\ ####### ######\ ## ##### ## ### #### ####### ########## # ## # ### ###\ ###### ####### ## ######## #### ### ######## ## ### #####\ ########## ### ######### ##### ### ########## ##\ ##### ##\ ### ####### #### ### ######### ########\ # ### ####### ### ####### ## ##\ # # # # ####### # ######## ###### #### ###########\ # ## # ## ##### #### # ## ##### ## ##\ ### ######## ####### ## ######## #### ### ###### #####\ ### ## ## ####### ### ######## ## ### ######### ###########\ # ### ######## ####### ## ####### ### ### ###### #####\ ### ####### #### ### ######## ######## ## #### ##### ###\ ##### ######### ##### ## ###### ### ####### ######\ ##### ## #### ## ## ##### ## ######### ## #### ## ########\ # ####### ## #######\ # ### ######## ####### ## ### ####### ## ### ####### ###\ ######## ### ## ##### ## #### ############# ### ####\ ### ## ####### # ########## ## ## ### ## ##### ## ######\ ## ### ## ### ######## ############# ### ######### ###\ ##### #### ### ####### ########## ## ##### ## #### ####\ ######### ########## # ####### ## #######\ #### ##\ ####### ###\ ### ############ ##\ ##### ###### # ## #####\ ######### ##\ #### ## ## # # #\ # ###### ########\ # ### ###### ###### # #########\ # ######### ######### # #########\ # ### ###### # ##########\ # #####\ # ## ##### # # ####\ # ###### ## #\ ## ##### ##### ## ####\ ## ###### ## #\ ## ####\ ## ############ ########\ ## ###### ## ##### # ######\ ## ###\ ## ### ####\ ## #####\ ##\ #############\ ########## ########\ #\ ###############\ ### ########\ #####\ #### ## ## ##\ # ######\ #########\ ### ###### ###### # #########\ # ######### ############ # #########\ # #\ ## ##### ##\ # #####\ # ## ######## # # ####\ # ###### #\ ## ##### ##### ## ####\ ## ###### ## #\ ## ####\ ##\ ####### ####### #\ ########\ ## ###\ ## ### ####\ ## #####\ ##\ #############\ ###### ##\ ############ ###############\ ### ########\ ######### ##\ #### ## ## # # #\ # ######\ #########\ ### ###### ###### # #########\ # ######### ############ # #########\ # #\ ## ##### ##\ # #####\ # ## ######## # # ####\ # ###### #\ ## ####\ ##\ ####### ####### #\ ########\ ## ###\ ## ### ####\ ## #####\ ##\ #############\ ###### ##\ ############ ###############\ ### ########\ ####\ #### ## ## ##\ # ###### ########\ # ### ###### ###### # #########\ # ######### ######### # #########\ # ### ###### # ##########\ # #####\ # ## ##### # # ####\ # ###### ## #\ ## ####\ ## ############ ########\ ## ###### ## ##### # ######\ ## ###\ ## ### ####\ ## #####\ ##\ #############\ ########## ########\ #\ ###############\ ### ########\ ######### ## # #\ ######### ## # # #### # ########\ ## ### ### # #\ # # # # # # # #\ # # # # # # # # # #\ # # # # # # # # # # # # # # # # # #\ # # # # # # # # # # # # # # # # # # # # #\ # # # # # # # # # # # # # # # #\ #### ## ######### ## ######## ########\ ### ###### ### ###### ###### #### ### ######### #######\ ## ####### #### ## ## ####### ## ### ####### ## #### ### ####\ ######### #### #### ## #### ### ######### #### ### #####\ ######## ## ####### #### ####### ## ### ####### ###### ###\ ######## ## #### ## ### ####### ##########\ #### #####\ ### ##### ## ####### ## ### ######## ##\ ##### ### ####\ ##### ########### ##### ########\ ### ##### ## ####### #### ## #### ######## ## #### ####\ #### ## ###### ########### ## ####### #### ### ############\ ### ####### ## ######## ### ######## ############ ###\ ##### ####### ########### ##### ############### ##\ ######## ##### ## ####### ## # ########### #### ##\ ##### ## ######## ##### ### ######## ############ ### ###\ ###### ########### ## ### ##### ####### ############ ##\ ####### ### ##\ #\ #### ## ##### ####\ ##### ##### ### #### ##### #### #### #### ## ######## #####\ ######## ### ####### ##### ##### ## ### ### #### ####\ #### #### ### ###### #### ##### ##### ##### ### #####\ ######## ########## ##### ####### ###### ####### #####\ ### ## #### #### ##### ### ### ## ##### ### ###### ## ######\ #### ## # ######## ########### ####### ## ###### ## ### ###\ ####### ##### ### ### ############ ## #### ###### #####\ ##### ### #### ##### ## # #### ### ## ######## ########\ ###### ######## #### ### ### ###### ### ##############\ ##### ############ ####### #### ## ### #### #########\ ### ############ ########### ## ### ##### #######\ ## ### ##### #### ## ### ######### ##### ### # ### ###\ ######## ##### ##### ## ########\ ## #### ### ### ### ##\ ####### #### #### ############ #### ### ##### ##########\ ### ######## ## #### ### ### #### ### ########## ##\ ####### ######## ### ######### ##### #### ## # #########\ ##### #### ### ####### #### ######## ### #### ########\ ####### #### ######## ## #### ###### ### ########## ####\ ######## ######## ## ######## ########### ## ######## ##\ ######## ####### ## ########### ######## ## ######### ##\ ### #### ### ########## ##### ## ### #### #### ######### ##\ ### ## ######### ### ### ##### #### ####### ## ##########\ ##### ###### #### #########\ ## ### #### ## ### ########## ####### ## ######## ######\ ##### ### ### #### ######### ###### ## ### ###########\ ######## ##### ### ## ##### # ### ########## ## #######\ ### ####\ ##### # ## ### ####### ## #### ### ### ## ### ## ####\ ###### ##### ########## ### ### ########## ## ### ########\ ########### ########### ####### #### ##### ## #####\ ##### ## ##### ### #### ########### ####### ## ##### ####\ #### #### ###### ### ## ######## # ########## #### ###\ ##### #### ## ######## # ########## ############ #######\ ####### ########## ##### ##### #### ####### ####### ####\ #### ########## ## ### ####### ### ##### ## ### ## #### ###\ #### ########## #### ## ## ######### ###### ### ########\ ##### ######## #### ## ########## #### ### ####### #######\ ##### ######## ########## ####### #### ##### ## #####\ ###### ################## ########### ####### ## ###\ ######## ##############\ # ##########\ ## #### ######### # ##### ######### #### ### #########\ ###########\ # ## ## ########## ## ######## ######### #######\ ### #\ ###\ ## #### ####\ # ## ## ###################\ # ## ######### ### ############ ########### ### #######\ ############ ##########\ # ## ######## ## ### ############ ####### ## #### #####\ ######## ## ########### ## ##### ############ #### ###\ ###### ## ######## ## #### ### ######## ### ###########\ ## ### ######### ### ## ######## ### #### ## ############\ ## ######## ####### ########### ### ## #########\ ######### ### ######### #### ####### ## ### ###### ##\ ### #########\ # #########\ ########## #### ## ### ############ #####\ #### ### ##### #### ### ##### ############ ### #####\ #### ######## ##\ ###### ## ## ### ######### ### #####\ ########### ## # ##### ## # ############ ###### ##\ ##### ####### ####\ ## ######## ## ############ ### ################# #####\ ## #####\ ###### #### #### ####### ### ######### #########\ # ### ############ ######### ### ## ## ######## ##\ #### ### #\ ##### ########## ### ##### #### ########\ ########## ## ###### #### ########## ## ### ######\ ##### ##########\ # ## ######## ## ############### ########### #####\ ####### #### #######\ ### # ## ## ##### ## ######### ######\ ###### ########## #### ##### ## ### ######## #########\ ###### ###### ### ############# ####### ## ##########\ ######## ########### ## ## ####### #### ######## #### ###\ ### ### ## ## #### ########### ## #### #### ### ######\ ####### ### ####### ## ### ###### #####\ # ### ##### ## ####### ##### ## ####### ## ### ####\ ############## ######### ## ### ##### ######### ###\ ## ## ############\ #########\ ### ###### ## ######## ## ## #### ####### ## ### #####\ ######### ## ####### ### ## ####### ### ############ ###\ ####### ######## ## ### ####### ####### ## #### ###### ####\ ######### ### ######### #### #### ######## #### #####\ #### ####### ## #### ###### ######## ### ##### ###### ##\ ######## ### ### ############## ## ### ############\ ##### #####\ ##\ #### ### ## ###### ## ######### ##### ######### ## ####### #\ ###### # ########### # ######### ####### ######\ ###### ############ ########### ## ### ########\ ###### ######## ## ######## ########### #####\ #########\ ########## #### #### #### #####\ ### ### ## ####### # ## ####### ######## ########### ####\ ############ #### ##\ ## #####\ ###### #\ ### ### #### ######## #### ### # ############# #######\ #### ## ############### ######## ### ########\ ##### ## ########### ######### ### ########\ ####\ ### ######### ##### #####\ ### ### ## ###### # ###### ## ####### #### ########## ## #\ ######## ########### ########### ### ########\ ### ######\ ### ### ## ####### # ######### ############ #### #######\ ############# ########### ############# ###### ###\ ########### ######## ## ######## #############\ ###\ ######## #### ##\ ### ### ## ###### # ########## ### ######### ########### ###\ ##### ###### ############## ## ### #### ####\ ###\ ####### ##### #######\ ### ### #### ##### #### ######### # # #### ######### ###\ ######### ####### ###### #############\ ############## ## ### #### #### #### ####\ ##### #######\ #### ### ######################## # #####################\ ###### ######## ## ######### ### ############ ##\ ########### ######### ### ########\ ##### # ##\ ###### ##### #######\ #### ### ############################## # ##############\ ######### #### # ######## ############# ######## ###\ ## ####### ##### # ########### ## ### #############\ ######## ## ######## ####### ### #############\ ######## #### ####### #######\ ## ###\ ### ### ## #### # ################ ## ### ##### ########\ ########### ## ### ############# ########## ##\ ###### ########### ############ # ##########\ ###\ ### # ## #### ####### #######\ ## ####\ ### ### ### ##### ## ########## # ### ########### #######\ #### ###############\ ### ### #### ###### # ### ############ ####### ########\ ########### ########## ######## ####### #######\ #### ###### #### ##\ ### ### ######## # #################################\ #########\ ##################### ############\ ### ### #### ##### # ### # # ###### ### ####### ########\ ######## #\ ########################### ### #####\ ##### #######\ ### #### ## ########### # ######### ## # ##### ####### ###\ ############################### ############\ ### ######## ######## ###### ####### ###### ####\ ####### ## ##########\ ### #### ## ########### # ######## ####### ## ## ##########\ ######## ########### ############ ### ## #######\ ##### # ########### ## ### ### ############# #####\ #### ## ######## ############# ###########\ ### ######## ########### ######\ ##### ### ####\ ####### #####\ #### ##\ ###\ ## # ## ########### # ######## ####### ## ## ##########\ ######## ########### ############ ##### #######\ ###### ########## ## ##########\ #### ### ####################### # ######## ###########\ ######### #### ########### ##################\ ### ################ ########### ## ### ######\ ### ####### ######### ## ######### ########\ ########### ############# ### ######## #####\ ####### ######\ ##### ###\ ########## #####\ ######\ ### ### ## ###### ## ###### # ###### #### ########## ###\ ### ####### ######## ####### ##### ### #######\ ######### #### ####### ## ##########\ ##### ###\ ########## ###### ##### ###", ["bernhard-westfechtel/Wes94a.ps.gz"] = "Using Programmed Graph Rewriting for the\ Formal Specification of a Configuration\ Management System ?\ Bernhard Westfechtel\ Lehrstuhl fur Informatik III, RWTH Aachen, Ahornstr. 55, D52074 Aachen,\ bernhard@i3.informatik.rwthaachen.de", ["bill-aitken/92-tr-aitken.ps.gz"] = "", ["bill-aitken/matchcomp.ps"] = "SML/NJ Match Compiler Notes\ William Aitken\ 1992\ The match compiler is used to compile pattern matches into lambda code.\ Its input consists of a list of pairs of abstract syntax patterns and lambda\ expressions. It produces a lambda expression that denotes a function. This\ function behaves as if it matches a single argument value against each of the\ input patterns in turn until a match succeeds, makes the bindings required by\ this match, and executes the selected rule's lambda expression in the resulting\ environment.\ The generated lambda expression is constructed to implement a decision tree\ of primitive tests. Various principles guide the production of this lambda expres\ sion. First, no memory access should be performed more than once. Second,\ no test should be perfomed more than once. Third, no unneccesary memory", ["bill-mckeeman/DifferentailTesting.pdf"] = "William M. McKeeman\ Differential Testing for Software\ Differential testing, a form of random testing, is a component of a mature testing technology for large software systems. It complements regression testing based on commercial test suites and tests locally developed during product development and deployment. Differential testing requires that two or more comparable systems be available to the tester. These systems are presented with an exhaustive series of mechanically generated test cases. If (we might say when) the results differ or one of the systems loops indefinitely or crashes, the tester has a candidate for a bug-exposing test. Implementing differential testing is an interesting technical problem. Getting it into use is an even more interesting social challenge. This paper is derived from experience in differential testing of compilers and run-time systems at DIGITAL over the last few years and recently at Compaq. A working prototype for testing C compilers is available on the web.", ["bill-pugh/java.pdf"] = "The Java Memory Model\ Jeremy Manson and William Pugh\ Department of Computer Science University of Maryland, College Park College Park, MD\ {jmanson,\ Sarita V. Adve\ Department of Computer Science University of Illinois at Urbana-Champaign Urbana-Champaign, IL\ pugh}@cs.umd.edu\ sadve@cs.uiuc.edu", ["bill-pugh/jmm2.pdf"] = "(To appear in Concurrency: Practice and Experience)\ The Java Memory Model is Fatally Flawed\ William Pugh Dept. of Computer Science Univ. of Maryland, College Park pugh@cs.umd.edu", ["bill-waite/janus-spec.djvu"] = "The Universal Intermediate Lanuase Janus \ (Draft Definition) \ B.K. Haddon \ W.M. Waite \ Software Engineering Group \ Department of Electrical Engineering \ University of Colorado \ Boulder, Colorado 80309 \ U.S.A. \ SEG-78-3 \ 2 Sept 78 \ Foreword \ This is a completely revised and rewritten report on the universal \ intermediate language Janus, and replaces the earlier \"Preliminary \ Definition of Janus\" (SEG-75-1). In this report, we have incorporated \ the changes arising out of the experience accumulated from using Janus, \ as well as attempting to more clearly explain many of the constructs-- \ particularly where the earlier descriptions have been proven to be \ inadequate. \ Although the grammar (given in Appendix A) is markedly different from \ that previously published, it describes essentially the same language. \ The greater proportion of the changes to the Janus language from that \ described in 1975 are removals of restrictions (e.g. composite values ", ["bill-wulf/dissertation.djvu"] = "", ["bill-wulf/quick-fit.djvu"] = "Quick Fit: \ An Efficient Algorithm for Heap Storage Allocation \ Charles B. Weinstock 1 \ William A. Wulf 2 \ 1. Introduction \ There is an old maxim that only 10% of the code is responsible for 90% of a program's execution time. \ This was driven home to the authors during the development of the Bliss-11 compiler [1]. Early versions ot \ the compiler were very slow, and timing data showed that heap allocation was the culprit. Replacing the \ original allocator with the one described below improved pedormance by nearly an order of magnitude. \ Quick Fit is a storage allocator for use in the run-time support for programming languages. A variety of \ such algorithms are in common use - First Fit, Best Fit, various Buddy Systems, and others (see [2] or \ [3]). Unlike these other allocators, our goal was to allocate storage as quickly as possible; memory ", ["billy-van-koen/eng-method.djvu"] = "", ["billy-van-koen/eng-method.pdf"] = "", ["bob-harper/CMU-CS-10-140.pdf"] = "Introductory Computer Science Education at Carnegie Mellon University: A Deans’ Perspective\ Randal E. Bryant Klaus Sutner Mark J. Stehlik\ August, 2010 CMU-CS-10-140\ School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213", ["bob-harper/hom-popl.ps"] = "A Type System for HigherOrder Modules #\ Derek Dreyer Karl Crary Robert Harper\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213\ {dreyer,crary,rwh}@cs.cmu.edu", ["bob-harper/hom-tr.ps"] = "A Type System for HigherOrder Modules\ (Expanded Version)\ Derek Dreyer Karl Crary Robert Harper\ December 2002\ CMUCS02122R\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213\ This report refines and supersedes the original version published in July 2002 as CMU Technical Report\ CMUCS02122.", ["bob-harper/lfp-signatures.pdf"] = "Signatures for a Network Protocol Stack: A Systems Application of Standard ML\ Edoardo Biagioni Robert Harper Peter Lee Brian G. Milnes", ["bob-harper/lpf-signatures.djvu"] = "Signatures for a Network Protocol Stack: \ A Systems Application of Standard ML* \ Edoardo Biagioni \ Robert Harper \ Peter Lee \ Brian G. Milnes ", ["bob-harper/modular-type-classes.pdf"] = "Modular Type Classes\ Derek Dreyer\ Toyota Technological Institute at Chicago dreyer@tti-c.org\ Robert Harper\ Carnegie Mellon University rwh@cs.cmu.edu\ Manuel M.T. Chakravarty\ University of New South Wales chak@cse.unsw.edu.au", ["bob-harper/popl94.ps"] = "A TypeTheoretic Approach to HigherOrder Modules with Sharing \\Lambda\ Robert Harper y Mark Lillibridge z\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 152133891", ["bob-harper/recursive.ps.gz"] = "What is a Recursive Module? \\Lambda\ Karl Crary\ Carnegie Mellon University\ Robert Harper\ Carnegie Mellon University\ Sidd Puri\ Microsoft Corporation", ["bob-harper/sepcomp.pdf"] = "A Separate Compilation Extension to Standard ML (Working Draft)\ David Swasey Tom Murphy VII Robert Harper\ January 28, 2006 CMU-CS-06-104\ Karl Crary\ School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213", ["bob-harper/tic98.ps"] = "How Generic is a Generic Back End?\ Using MLRISC as a Back End for the TIL\ Compiler ?\ (Preliminary Report)\ Andrew Bernard ?? , Robert Harper, and Peter Lee\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213", ["bob-harper/ttisml.ps"] = "A TypeTheoretic Interpretation of Standard ML \\Lambda\ Robert Harper and Christopher Stone\ frwh,cstoneg@cs.cmu.edu\ School of Computer Science\ Carnegie Mellon University\ 5000 Forbes Avenue\ Pittsburgh, PA 152133891\ 1 Introduction\ It has been nearly twenty years since Robin Milner introduced ML as the metalanguage of the LCF interactive\ theorem prover [5]. His elegant use of abstract types to ensure validity of machinegenerated proofs, combined\ with his innovative and flexible polymorphic type discipline, and supported by his rigorous proof of soundness\ for the language, inspired a large body of research into the type structure of programming languages. 1 As a\ design tool type theory gives substance to informal ideas such as ``orthogonality'' and ``safety'' and provides\ a framework for evaluating and comparing languages. As an implementation tool type theory provides", ["bob-horgan/fault.pdf"] = "Fault Localization using Execution Slices and Data ow Tests \ Hiralal Agrawal, Joseph R. Horgan, Saul London, and W. Eric Wong ffhira, jrh, saul, ewongg@bellcore.comg", ["bob-muller/hutr0692.ps"] = "Lecture Notes on Domain Theory \ Robert Muller\ August 31, 1999", ["bob-sedgewick/fast-strings.pdf"] = "Fast Algorithms for Sorting and Searching Strings\ Jon L. Bentley* Robert Sedgewick#", ["bowen-alpern/jalapeno.pdf"] = "The Jalapeno virtual ~ machine\ by B. Alpern C. R. Attanasio J. J. Barton M. G. Burke P. Cheng J.-D. Choi A. Cocchi S. J. Fink D. Grove M. Hind S. F. Hummel D. Lieber V. Litvinov M. F. Mergen T. Ngo J. R. Russell V. Sarkar M. J. Serrano J. C. Shepherd S. E. Smith V. C. Sreedhar H. Srinivasan J. Whaley\ Jalapeno is a virtual machine for JavaTM servers ~ written in the Java language. To be able to address the requirements of servers (performance and scalability in particular), Jalapeno was designed \"from scratch\" to be as ~ self-sufficient as possible. Jalapeno's unique ~ object model and memory layout allows a hardware null-pointer check as well as fast access to array elements, fields, and methods. Run-time services conventionally provided in native code are implemented primarily in Java. Java threads are multiplexed by virtual processors (implemented as operating system threads). A family of concurrent object allocators and parallel type-accurate garbage collectors is supported. Jalapeno's interoperable compilers ~ enable quasi-preemptive thread switching and precise location of object references. Jalapeno's ~ dynamic optimizing compiler is designed to obtain high quality code for methods that are observed to be frequently executed or computationally intensive.", ["brenda-baker/structuring.djvu"] = "Automatic Structuring of Programs: Properly Structured Programs \ and Their Properties \ Brenda S. Baker \ AT& T Bell Laboratories \ Murray Hill, New Jersey 07974 ", ["brenda-cheang/automated-grading.pdf"] = "Computers & Education 41 (2003) 121–131\ www.elsevier.com/locate/compedu\ On automated grading of programming assignments in an\ academic institution\ Brenda Cheanga,*, Andy Kurniaa, Andrew Limb, Wee-Chong Oonc\ a\ IOPT, SoC Incubation Centre, National University of Singapore, 3 Science Drive 2, Singapore 117543, Singapore\ Department of IEEM, Hong Kong University of Science and Technology Clear Water Bay, Kowloon, Hong Kong\ c\ Department of Computer Science, National University of Singapore 3 Science Drive 2, Singapore 117543, Singapore\ b\ Received 21 June 2002; accepted 28 January 2003", ["brent-yorgey/monoid-pearl.pdf"] = "Monoids: Theme and Variations (Functional Pearl)\ Brent A. Yorgey\ University of Pennsylvania\ byorgey@cis.upenn.edu", ["brent-yorgey/promotion.pdf"] = "Giving Haskell a Promotion\ Brent A. Yorgey\ Stephanie Weirich\ University of Pennsylvania\ {byorgey,sweirich}@cis.upenn.edu\ Julien Cretin\ INRIA\ julien.cretin@inria.fr\ Simon Peyton Jones\ Dimitrios Vytiniotis\ Microsoft Research Cambridge\ {simonpj,dimitris}@microsoft.com\ Jos´ Pedro Magalh˜ es\ e\ a\ Utrecht University\ jpm@cs.uu.nl", ["brent-yorgey/tc.dvi"] = " Typeclassopedia\ Brent Yorgey\ September 2013\ By Brent Yorgey, byorgey@cis.upenn.edu\ Originally published 12 March 2009 in issue 13 of the Monad.Reader. Ported to\ the Haskell wiki in November 2011 by Geheimdienst.\ This is now the oOEcial version of the Typeclassopedia and supersedes the version\ published in the Monad.Reader. Please help update and extend it by editing it\ yourself or by leaving comments, suggestions, and questions on the talk page.", ["brent-yorgey/tc.pdf"] = "Typeclassopedia\ Brent Yorgey\ September 2013\ By Brent Yorgey, byorgey@cis.upenn.edu\ Originally published 12 March 2009 in issue 13 of the Monad.Reader. Ported to the Haskell wiki in November 2011 by\ Geheimdienst.\ This is now the official version of the Typeclassopedia and supersedes the version published in the Monad.Reader.\ Please help update and extend it by editing it yourself or by leaving comments, suggestions, and questions on the talk\ page.", ["bret-victor/MagicInk.pdf"] = "Please email comments to bret worrydream.com. This draft was released March 15, 2006. A couple examples are missing, and a few are out-of-date. I would appreciate any feedback on the content, presentation, or what exactly I should do with this thing I wrote. Firefox and IE cannot print this webpage. If you like reading on paper, please download the PDF.\ Magic Ink\ I N F O R M AT I O N S O F T W A R E A N D T H E G R A P H I C A L I N T E R FA C E\ byBretVictor", ["brian-bershad/fast-mutex.ps"] = "", ["brian-howard/icfp1996.pdf"] = "Inductive, Coinductive, and Pointed Types\ Brian T. Howard Department of Computer and Information Sciences Kansas State University bhoward@cis.ksu.edu", ["brian-kernighan/tcl-exp.ps.gz"] = "Experience with Tcl/Tk for Scientific and Engineering Visualization\ Brian W. Kernighan\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974\ bwk@research.att.com", ["brian-koropoff/gib.pdf"] = "Gib: The Generic, Embeddable, Interactive Programming Language\ Brian Koropoff June 1, 2007\ 1\ CONTENTS\ CONTENTS\ Contents\ 1 Introduction 1.1 Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conception 2.1 Principles . . . . . . . . . . . . . 2.2 Motivation . . . . . . . . . . . . . 2.2.1 Command Line Paradigm 2.2.2 Existing Interfaces . . . . 2.2.3 Scripting Languages . . . 2.3 Intended Applications . . . . . . . 3 3 3 3 4 4 4 4 6 6 7 9 9 10 11 11 12 12 13 13 15 19 19 21 23 24 25 26 27\ 2\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ 3\ Goals and Design 3.1 Interactivity . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Completion . . . . . . . . . . . . . . . . . . 3.2 Semantics . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Runtime Architecture . . . . . . . . . . . . . 3.2.2 Relationship with Interactivity Requirements 3.3 Embedding . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Generality . . . . . . . . . . . . . . . . . . . 3.3.2 Adaptability . . . . . . . . . . . . . . . . . 3.3.3 Pragmatics . . . . . . . . . . . . . . . . . . Applications 4.1 GibShell . . . 4.2 GibShell GTK 4.3 GibForge . . 4.4 GibXml . . . 4.5 GibNgram . . Conclusion Appendices\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ 4\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ 5 6\ 2\ 1 INTRODUCTION\ 1\ Introduction\ 1.1 Abstract\ Gib is a new programming language designed primarily for interactive use that is, as the backend interpreter for a command line interface (CLI). It was envisioned as a generic, reusable component which would serve as a scripting layer and command-based user interface as part of a larger application. Indeed, Gib unlike languages such as C or Python does not constitute a complete programming language or environment by itself. Rather, it acts as the core of a potentially infinite set of domain-specific languages sharing a carefully-honed subset of syntax and semantics, ready to be specialized for the needs of a particular program and environment.", ["brian-milch/ijcai05-blog.pdf"] = "B LOG: Probabilistic Models with Unknown Objects∗\ Brian Milch, Bhaskara Marthi, Stuart Russell, David Sontag, Daniel L. Ong and Andrey Kolobov\ Computer Science Division\ University of California\ Berkeley, CA 94720-1776\ {milch, bhaskara, russell, dsontag, dlong, karaya1}@cs.berkeley.edu", ["bruce-mcadam/ECS-LFCS-97-375.ps.gz"] = "THAT ABOUT WRAPS IT UP\ Using FIX to Handle Errors Without Exceptions,\ and Other Programming Tricks\ BRUCE J. MCADAM \\Lambda\ Technical Report ECS--LFCS--97--375\ Department of Computer Science\ University of Edinburgh\ November 28, 1997", ["bruce-watson/taxonomies.pdf"] = "Taxonomies and Toolkits of Regular Language Algorithms\ Bruce William Watson\ Eindhoven University of Technology Department of Mathematics and Computing Science\ tu e\ Copyright c 1995 by Bruce W. Watson, Eindhoven, The Netherlands. All rights reserved. No part of this publication may be stored in a retrieval system, transmitted, or reproduced, in any form or by any means, including but not limited to photocopy, photograph, magnetic or other record, without prior agreement and written permission of the author.\ Cover design by Nanette Saes.\ CIP-DATA KONINKLIJKE BIBLIOTHEEK, DEN HAAG Watson, Bruce William Taxonomies and toolkits of regular language algorithms / Bruce William Watson. | Eindhoven: Eindhoven University of Technology Thesis Technische Universiteit Eindhoven. | With index, ref. | With summary in Dutch. ISBN 90-386-0396-7 Subject headings: nite automata construction / taxonomies / pattern matching.", ["bruce-weide/intellectual-focus.djvu"] = "Providing Intellectual Focus To CS1/CS2 \ Joe Hollingsworth \ CompUter Science \ Indiana University \ Southeast \ New Albany, IN 47150 \ Timothy J. Long, Bruce W.' Weide, \ Paolo Bucci,, David S. Gibson \ Computer and Information Science \ The Ohio State University \ COlumbus, OH 43210 \ Murali Sitaraman, Steve Edwards \ Computer Science and \ Electrical Engineering \ West Virginia University \ Morgantown, WV 26506 \ ' {Iong,weide,bucci,dgibson}@cis.ohio-state.edu \ jholly@ius.indiana.edu , \ = {murali,edwards} @ cs.wvu.edu ", ["bruce-weide/intellectual-focus.pdf"] = ",`,,, : Prioviding Intellectual Focus To CSl/CS2 -,\ Timothy J. Long, Bruce W.`Weide, Paolo Bucci,. David S. Gibson ,_ Computer and Information Science The dhio State University Columbus, OH 43210 Joe Hollingsworth Computer Science Indiana University Southeast New Albany, IN 47150 Murali Sitaraman, Steve Edwards Computer Science and Electrjcal Engineering West Virginia University Morgantown, WV 26506\ {long,weide,bucci,dgibson}@cis.ohio-state.edu jhollyQius.indiana.edu ' {murali,edwards}@cs.wvu.edu\ -,", ["bruce-weide/teach-software-arch.djvu"] = "Teaching Software Architecture Principles in CS1/CS2 \ Paolo Bucci \ Dept. of Computer and Information \ Science \ The Ohio State University \ Columbus, OH 43210-1277 \ +1-614-292-0066 \ bucci @ cis.ohio-state.ed u \ Timothy J. Long \ Dept. of Computer and Information \ Science \ The Ohio State University \ Columbus, OH 43210-1277 \ +1-614-292-1408 \ long @ cis.ohio-state.edu \ Bruce W. Weide \ Dept. of Computer and Information \ Science \ The Ohio State University \ Columbus, OH 43210-1277 \ +1-614-292-1517 \ weide @ cis.ohio-state.edu \ 1. ABSTRACT \ It is possible to teach architectural-level \ issues as early as CSl/CS2. But the ul- \ timate success of this approach hinges in \ part on the availability of appropriate \ tools to assist students in building the \ right mental models of the development \ and composition of software systems. \ 1.1 Keywords \ Software engineering education and training, software engi- \ neering tools and environments, software architecture ", ["bruce-weide/teach-software-arch.pdf"] = "Teaching Software Architecture\ Paolo Bucci\ Dept. of Computer and Information Science The Ohio State University Columbus, OH 4321 O-l 277 +l -614-292-0066\ Principles\ in CSl/CS2\ Bruce W. Weide\ Timothy J. Long\ Dept. of Computer and Information Science The Ohio State University Columbus, OH 4321 O-l 277 +1-614-292-l 408\ Dept. of Computer and Information Science The Ohio State University Columbus, OH 43210-l 277 +1-614-292-l 517\ bucci @cis.ohio-state.edu\ long@cis.ohio-state.edu\ weide@cis.ohio-state.edu\ 1. ABSTRACT It is possible to teach architectural-level issues as early as CSl/CS2. But the ultimate success of this approach hinges in part on the availability of appropriate tools to assist students in building the right mental models of the development and composition of software systems. 1.1 Keywords\ Software engineering education and training, software engineering tools and environments, software architecture", ["bryan-loyall/CMU-CS-97-123.pdf"] = "Believable Agents: Building Interactive Personalities\ A. Bryan Loyall\ May 1997 CMU-CS-97-123\ School of Computer Science Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213\ Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy.\ Thesis Committee: Joseph Bates Jill Fain Lehman Tom Mitchell Nils Nilsson, Stanford University c 1997 Aaron Bryan Loyall All rights reserved\ This work was supported in part by Fujitsu Laboratories, Mitsubishi Electric Research Laboratories, and Justsystem Corporation. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of the sponsoring organizations or any other parties.\ Keywords: artificial intelligence, believable agents, interactive characters, personality, active language, embodied language and action, situated natural language generation, art, entertainment, Oz", ["bryan-loyall/CMU-CS-97-123.ps"] = "Believable Agents:\ Building Interactive Personalities\ A. Bryan Loyall\ May 1997\ CMUCS97123\ School of Computer Science\ Computer Science Department\ Carnegie Mellon University\ Pittsburgh, PA 15213\ Submitted in partial fulfillment of the requirements\ for the degree of Doctor of Philosophy.\ Thesis Committee:\ Joseph Bates\ Jill Fain Lehman\ Tom Mitchell\ Nils Nilsson, Stanford University\ c\ # 1997 Aaron Bryan Loyall\ All rights reserved\ This work was supported in part by Fujitsu Laboratories, Mitsubishi Electric Research Laboratories, and\ Justsystem Corporation.\ The views and conclusions contained in this document are those of the author and should not be\ interpreted as representing the official policies, either expressed or implied, of the sponsoring organizations\ or any other parties.\ Keywords: artificial intelligence, believable agents, interactive characters, personality,\ active language, embodied language and action, situated natural language generation, art,", ["bryan-loyall/thesis.ps"] = "Believable Agents:\ Building Interactive Personalities\ A. Bryan Loyall\ May 1997\ CMUCS97123\ School of Computer Science\ Computer Science Department\ Carnegie Mellon University\ Pittsburgh, PA 15213\ Submitted in partial fulfillment of the requirements\ for the degree of Doctor of Philosophy.\ Thesis Committee:\ Joseph Bates\ Jill Fain Lehman\ Tom Mitchell\ Nils Nilsson, Stanford University\ c\ fl 1997 Aaron Bryan Loyall\ All rights reserved\ This work was supported in part by Fujitsu Laboratories, Mitsubishi Electric Research Laboratories, and\ Justsystem Corporation.\ The views and conclusions contained in this document are those of the author and should not be\ interpreted as representing the official policies, either expressed or implied, of the sponsoring organizations\ or any other parties.\ Keywords: artificial intelligence, believable agents, interactive characters, personality,\ active language, embodied language and action, situated natural language generation, art,", ["burton-bloom/bloom-filters.djvu"] = "Space/Time Trade-offs in \ Hash Coding with \ Allowable Errors \ BURTON H. BLOOM \ Computer Usage Company, Newton Upper Falls, Mass. \ In this paper trade-offs among certain computational factors \ in hash coding are analyzed. The paradigm problem con- \ sidered is that of testing a series of messages one-by-one \ for membership in a given set of messages. Two new hash- \ coding methods are examined and compared with a par- \ ticular conventional hash-coding method. The computational \ factors considered are the size of the hash area (space), the \ time required to identify a message as a nonmember of the \ given set (reject time), and an allowable error frequency. \ The new methods are intended to reduce the amount of \ space required to contain the hash-coded information from ", ["carla-marceau/spectangle.ps.gz"] = "Specificationbased code generation using\ literate programming tools\ Carla Marceau\ Odyssey Research Associates\ 33 Thornwood Dr.\ Ithaca, NY 14850\ January 18, 2000\ 1 Introduction\ For over forty years, programmers have been writing programs that write programs. The\ usual method of generating code begins with some internal representation of the input\ (for example, a syntax tree) and employs fprintf statements or their equivalent. The\ ``specification'' of what is to be generated is in the programmer's mind. There are several\ disadvantages to this method.\ There is no specification of the code to be generated. A declarative\ specification enables communication between designers and programmers; it\ provides a vehicle to the programmer for articulating his design; and it can be\ inspected for correctness.\ The code must be generated in the order of the target language. The\ grammar of the target language is typically unforgiving about the order of the", ["caroline-tice/thesis.pdf"] = "Non-Transparent Debugging of Optimized Code\ Caroline Mae Tice\ Report No. UCB//CSD-99-1077 November 1999 Computer Science Division (EECS) University of California Berkeley, California 94720\ Non-Transparent Debugging of Optimized Code\ by Caroline Mae Tice\ B.S. (The College of William & Mary, VA) 1987 M.S. (University of California, Berkeley) 1994\ A dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Computer Science in the GRADUATE DIVISION of the UNIVERSITY OF CALIFORNIA, BERKELEY\ Committee in charge:\ Professor Susan L. Graham, Chair Professor Alexander Aiken Professor Alison Gopnik\ Fall 1999\ The dissertation of Caroline Mae Tice is approved:\ Chair\ Date\ Date\ Date\ University of California at Berkeley\ Fall 1999\ Non-Transparent Debugging of Optimized Code\ Copyright Fall 1999 by Caroline Mae Tice\ 1", ["carolyn-ramsey/carolyn.pdf"] = "MEET\ Carolyn Ramsey Catan\ Principal, Business Strategy Development at Philips Research, Briarcliff Manor, NY, US.\ IN TOMORROW'S WORLD, ALL PERVADING NETWORKS WILL CONNECT ELECTRONIC DEVICES WHICH, TODAY, ONLY ALLOW PASSIVE VIEWING AND LISTENING. SELLING A BOX WILL IMPLY MANUFACTURER, NETWORK OPERATOR, CONTENT PROVIDER... RESEARCH INTO HOW TECHNO NICAL RESEARCH TO REALIZE SUCCESSFUL PRODUCTS. THIS IS THE WORK WHICH PEOPLE LIKE\ \"Software and ser vices are going to transfor m our lives\"\ What is your background Carolyn? Do you think Philips Research could use more people with a I studied Japanese, music theory and composition, at Cornell University simply mission like yours? because I loved these subjects. There was great demand for bilingual people in the 1980s, and I quickly found work as a translator. I soon discovered that translation Certainly, but not an unlimited number because not every project can be helped was more mechanical and less creative than I had expected: the people I worked at every phase. Adding people to profor had all the fun! Although I had plenty of my own ideas about business, these did not matter. So, I switched to the business side and went to work for a Japanese jects is important, leveraging their high-tech consulting company in Silicon Valley. My job was to identify skills is crucial. If it were up to me, I potential winners in computer games and license the games would organize a mechanism to ensure for Fujitsu. Also, part of my job was to accompany a tight link between Research and So how did you the Product Divisions. If Philips Japanese journalists touring in Silicon Valley. This end up at Philips Research? was a fabulous opportunity because it allowed in the US were to follow the In the middle of my two years at Stanford Japanese cross-training me to ask questions and share ideas of my own. This is when I fell in love with the I chose a Summer internship with Philips model including job rotacomplexities of the technology business. Research. When the time came to select a job tion letting more high from those on offer, I chose for a career with In 1993 I made the tough decision to potentials spend a couple quit a job I loved to get my MBA at Philips. I had learned a great deal about life in the of months in a PD research lab from my older brother, a computer scihuge benefits could be Stanford Business School. It was incredible to be in Silicon Valley at the dawn of ence professor at Harvard. I knew that only 10 to realized. It is only by the Internet explosion. It cemented my 15 per cent of research projects results in a comworking in a tightly mercial success and I wanted to contribute to belief that software and services were going linked way that we can bringing this percentage up to around begin to understand what to transform our lives and that this was a tremendous challenge for mature businesses. 20%, or at least make the commercial drives a busy PD. Which of successes happen faster. their 11 products keeps people I wanted to be part of it and play a role there.", ["charles-poynton/ColorFAQ.pdf"] = "Frequently Asked Questions about Color\ Charles Poynton www.poynton.com poynton@poynton.com\ This FAQ is intended to clarify aspects of color that are important to color image coding, computer graphics, image processing, video, and the transfer of digital images to print. I assume that you are familiar with intensity, luminance (CIE Y), lightness (CIE L*), and the nonlinear relationship between CRT voltage and intensity (gamma). To learn more about these topics, please read the companion Frequently Asked Questions about Gamma before starting this. This document is available on the Internet from Toronto at I retain copyright to this note. You have permission to use it, but you may not publish it. Table of Contents 1 What is color? 3 2 What is intensity? 3 3 What is luminance? 3 4 What is lightness? 4 5 What is hue? 4 6 What is saturation? 4 7 How is color specified? 4 8 Should I use a color specification system for image data? 5 9 What weighting of red, green and blue corresponds to brightness? 5 10 Can blue be assigned fewer bits than red or green? 6 11 What is \"luma\"? 6 12 What are CIE XYZ components? 7 13 Does my scanner use the CIE spectral curves? 7 14 What are CIE x and y chromaticity coordinates? 7 15 What is white? 8 16 What is color temperature? 8 17 How can I characterize red, green and blue? 9", ["charles-poynton/GammaFAQ.pdf"] = "Frequently Asked Questions about Gamma\ In video, computer graphics and image processing the gamma symbol represents a numerical parameter that describes the nonlinearity of intensity reproduction. Having a good understanding of the theory and practice of gamma will enable you to get good results when you create, process and display pictures. This document is available on the Internet from Toronto at: I retain copyright to this note. You have permission to use it, but you may not publish it. Table of Contents 1 What is intensity? 3 2 What is brightness? 3 3 What is luminance? 3 4 What is lightness? 3 5 What is gamma? 4 6 What is gamma correction? 5 7 Does NTSC use a gamma of 2.2? 5 8 Does PAL use a gamma of 2.8? 6 9 I pulled an image off the net and it looks murky. 6 10 I pulled an image off the net and it looks a little too contrasty. 6 11 What is luma? 7 12 What is contrast ratio? 7 13 How many bits do I need to smoothly shade from black to white? 7 14 How is gamma handled in video, computer graphics, and desktop computing? 8 15 Voltage relates to intensity through a 2.5-power function, but how do RGB code values relate to voltage? 9", ["charles-poynton/Rehabilitation_of_gamma.pdf"] = "The rehabilitation of gamma\ Charles Poynton poynton @ poynton.com www.poynton.com Abstract Gamma characterizes the reproduction of tone scale in an imaging system. Gamma summarizes, in a single numerical parameter, the nonlinear relationship between code value in an 8-bit system, from 0 through 255 and luminance. Nearly all image coding systems are nonlinear, and so involve values of gamma different from unity. Owing to poor understanding of tone scale reproduction, and to misconceptions about nonlinear coding, gamma has acquired a terrible reputation in computer graphics and image processing. In addition, the world-wide web suffers from poor reproduction of grayscale and color images, due to poor handling of nonlinear image coding. This paper aims to make gamma respectable again. Gamma's bad reputation The left-hand column in this table summarizes the allegations that have led to gamma's bad reputation. But the reputation is ill-founded these allegations are false! In the right column, I outline the facts:", ["charles-poynton/YUV_and_luminance_harmful.pdf"] = "Charles Poynton tel +1 416 535 7187 charles @ poynton.com www.poynton.com\ YUV and luminance considered harmful\ This document is an edited version of Appendix A of my book: Poynton, Charles, Digital video and HDTV algorithms and interfaces (San Francisco: Morgan Kaufmann, 2003).\ This is a plea for precise terminology in video. The notation YUV, and the term luminance, are widespread in digital video. In truth, digital video almost never uses Y'UV color difference components, and never directly represents the luminance of color science. The common terms are almost always wrong. This note explains why. I urge video engineers and computer graphics specialists to use the correct terms, almost always Y'CBCR and luma. Cement vs. concrete I'll demonstrate by analogy why it is important to use correct terms. Next time you're waiting in line for a bus, ask the person next to you in line what building material is used to construct a sidewalk. Chances are that person will answer, \"cement.\" The correct answer is concrete. Cement is calcined lime and clay, in the form of a fine, gray powder. Cement is one ingredient of concrete; the other ingredients are sand, gravel, and water. In an everyday situation, you need not be precise about which of these terms are used: If you refer to a bridge as being constructed of \"cement,\" people will know what you mean. Lay people are not confused by the term \"cement. \" Interestingly, experts are not confused . either. If a bridge superintendent yells out to his foreman, \"Get me 500 pounds of cement !\" the foreman understands immediately from context whether the superintendent actually wants concrete. However, if you place an order with a building material supplier for 500 pounds of cement, you will certainly not receive 500 pounds of concrete! Lay people have no trouble with the loose nomenclature, and the experts have little trouble. It is the people in the middle who are liable to become confused by loose nomenclature. Worse still, they are liable to use a term without realizing that it is ambiguous or wrong! True CIE luminance The principles of color science dictate that true CIE luminance denoted Y is formed as a weighted sum of linear (tristimulus) RGB components. If CIE luminance were transmitted in a video system, the system would conform to the Principle of Constant Luminance. But in video we implement an engineering approximation that departs from", ["charlie-mcdowell/p90-mcdowell.pdf"] = "By Charlie McDowell, Linda Werner,\ Heather E. Bullock, and Julian Fernald\ PAIR PROGRAMMING IMPR RETENTION, CONFIDENCE,\ Pair programming produces more proficient, confident programmers--and may help increase female representation in the field.\ I\ n recent years, the growth of extreme programming (XP) has brought considerable attention to collaborative programming. Developed over a 15year period by Kent Beck and his colleagues, Ron Jeffries and Ward Cunningham [1], XP is a computer software development approach that credits much of its success to the use of pair programming by all programmers, regardless of experience [9]. The pair programming dimension of XP requires that teams of two programmers work simultaneously on the same design, algorithm, code, or test. Sitting shoulder to shoulder at one computer, one member of the pair is the \"designated driver,\" actively creating code and controlling the keyboard and mouse. The \"non-driver\" constantly reviews the keyed data in order to identify tactical and strategic deficiencies, including erroneous syntax and logic, misspellings, and implementations that don't map to the design. After a designated period of time, the partners reverse roles. Code produced by only one partner is discarded, or reviewed collaboratively before it is integrated. Women and minorities continue to be", ["chloe-lopez/course-resources.pdf"] = "CS & ECE Systems Course Resources Handbook\ Chloe Lopez Tufts University January 13, 2009\ i\ ii\ Revision: 1.0\ A Formatted for L TEX by MultiMarkdown\ Contents\ Contents 1 2 Introduction Course Directories 2.1 The /g directory . . . . . . . . . . . . . 2.2 /comp and /ee: user-friendly pathnames 2.3 Unix groups . . . . . . . . . . . . . . . . 2.4 File permissions . . . . . . . . . . . . . . 2.5 Windows . . . . . . . . . . . . . . . . . . iii 1 2 2 2 3 4 5 6 6 6 7 8 8 8 8 9 9 9 9 10 10 11 11 11 12 12 12 12 13 13 13\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ 3\ Mailing Lists and Aliases 3.1 Choose between a Mailing List and an Alias . . . . . . . . . . . . . . 3.2 Mailing List Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Archiving prior semesters . . . . . . . . . . . . . . . . . . . . . . . . Moodle 4.1 Accounts . . . . . . . . . . . . 4.2 Roles . . . . . . . . . . . . . . 4.3 Enrollments . . . . . . . . . . 4.4 Organize by topic or week . . 4.5 Resources . . . . . . . . . . . 4.6 Activities . . . . . . . . . . . 4.7 Gradebook . . . . . . . . . . . 4.8 Communicating with students 4.9 Reusing course materials . . .\ 4\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ 5\ Course Evaluations 5.1 Evaluations for CS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Evaluations for ECE . . . . . . . . . . . . . . . . . . . . . . . . . . . provide 6.1 Requesting provide 6.2 prozac . . . . . . . . 6.3 Configuring provide 6.4 How students use it . 6.5 How graders use it . 6.6 Advanced topics . . .\ 6\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . . iii\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ CONTENTS\ iv\ 7\ Web Pages 7.1 Archives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Computer Labs 8.1 EE Labs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2 Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instructional Software 9.1 Unix Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2 Windows Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . How 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 do I . . . ? . . . create a drop box? . . . . . . . . . . . . . . set up web forums and wikis? . . . . . . . . set up an online grade book? . . . . . . . . allow students to submit programming . . . perform automatic grading? . . . . . . . . . distribute files to students? . . . . . . . . . make multimedia content available? . . . . contact students in the course? . . . . . . . support student groups? . . . . . . . .", ["chris-okasaki/IntMap98.ps"] = "Fast Mergeable Integer Maps \ Chris Okasaki y\ Department of Computer Science\ Columbia University\ cdo@cs.columbia.edu\ Andrew Gill\ Semantic Designs\ Austin, TX\ ajgill@semdesigns.com", ["chris-okasaki/breadth-first.pdf"] = "Breadth-First Numbering: Lessons from a Small Exercise in Algorithm Design\ (Functional Pearl)\ Chris Okasaki\ Department of Computer Science Columbia University\ cdo@cs.columbia.edu ABSTRACT\ ׺ \rѹ \r ׺ \ е \ Categories and Subject Descriptors \r \r \r General Terms\ ׸ \ Keywords\ и \ 1. INTRODUCTION\ ׺ ݸ \r ָ \r ȳ \r \r й \ \r Ҹ \r \r \r ָ \r \r \r ݺ \r Ҹ \r \r \r ׺ \r \r ظ Һ \r Ҹ \r \r \r \r\r \r \ \r \r ֺ \ \ ָ \r Һ \r\r ׸ \ \ \r\ \ \r \ Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ICFP'00, Montreal, Canada Copyright 2000 ACM 1-58113-202-6/00/0009 ..5.00\ 2. BREADTH-FIRST TRAVERSAL\ ҹ Ѹ ׺ Ҹ ҹ и \rҹ \r \r ҹ й \ и ׸ \r \ \ \ \ \r Ѹ \r и \rҸ \r ָ ظ ׸ \ \ \ \ \ \ \ ڳ\ \r \r \ \ ׹ ع \r ׺ ֹ \ ڳ \r ׵ ܸ \ ڳ ׵ ڳ ׸ \ Ҹ \r \ \ \r \ \ \ \ ڳ ݸ ص\ \ ڳ \ \ \ ĺ\ \r غ ۸ ڳ \r \ ڳ ڳ ׵ ڳ ڳ ܸ ׵ ڳ \ \ \r \r \r Ҭ \r \r \r ݺ \r \r \r Ҹ ׺ \r \r \r \r \r ̺ \r \r \r \r \r Һ \r\r ĺ \r \r\r \r \r \r ҹ \r ڳ \r \r ׺ ӫ Ѻ \r ڳ \r \r \r Һ\ \r \r \ \ ڳ ڳ ׵ ڳ ܸ ڳ \ ڳ ׵ ص\ \ \ ڳ \ \ \ ׺\ \r Ǵ Ǵҵ ֺ ҹ \r ѹ \r \r \r \r к\ \ \ \ 3. BREADTH-FIRST NUMBERING\ и Ѻ \r غ ׸ \r \r \r \r ܸ \ ѳ \ \ \r \r \ \ \ \r \ \r \ \ ѳ \ س س\ ѳ \ ѳ \r ׵ ѳ ܸ ׵ ճ ѳ ճ ׳ ׳ \ ׸ ׸ ճ ճ \ ڳ ѳ غ\ ѳ ѳ ׵ ׳ ѳ ׳ ѳ ܸ ׵ ׳ ׳ ѳ \ ݸ ص ճ ѳ س ճ س \ \ \ ĺ\ \r غ \r \r ׸ \r \r ׺ \r \r \r \r ָ \r \r ݺ \r ָ \r ظ \r \r \rҹ Թ \r \r \r ׺ \r ҳ \r \r ׵ \r \r \r \r ѳ ֺ Ҹ \r\ ѳ ѳ ׵ ׳ ׳ ѳ ѳ ܸ ׵ ׳ ׳ ѳ \ \r \r \ \ \ \ ѳ ѳ ׵ ѳ ѳ ܸ ׵ ׳ ѳ ׳ ѳ \ \ \ س س \ ص\ \ \ ׺\ \r \r \r ݸ \r \ Ǵҵ \r Ҹ \r \r Ѻ\ \ \r \r \r \r ܸ ѳ ѳ ׵ \r ׵ \r\ \ 4. LEVEL-ORIENTED SOLUTIONS\ \r \r \r \r ص к \rҹ ظ \r غ й \r ׸ \r \r \r ׺ \r й ׺ \r \r \r \r ׺ \r ׸ ׳ \r \r \r Һ ׸ \r и \r \r \r \r ҹ \r и \ \r\r \r е\ \r \r׵\ \r\r \r е г ѳ г ѳ ص\ \ \ \ й \ \ \ \ \r \r ܸ \ ָ \r \r и \r \r ݸ ҹ \r к\ ׵ \r ׵ \r \r \r׵\ ֺ й \r \r и \r й й Ҹ \rظ й е ѹ \r й \r \r \r й \r \r \r \r й \r \r \r \r \r \r \ \ \r \r \r к \r \r \r ܸ \r \r \r ׸ \r \r ܺ ҹ \r к \r \r \r \r \r \r \r ҹ \r \r и Ӻ \r \r и \r \r \r \r Ҹ к \r \r \r \r ׸ \r\r Һ\ Ѻ ӹ \r \r ָ \r\r \r \r ֹ \r \ \ \r ׺ \r \r \r \r \r \r ݸ ҹ ѹ \r \r ӫ \r ҳ ӫ ѹ \ 5. DISCUSSION\ й \r Ҹ \r \ \r \ \r \r \r ׸ \r \r \r \ \r ׺ ӹ \r \r \r \r \r \r ׺\ \r \ \ \ ָ \r \r \r \r Һ \r \r \r \r ׸ \r \r \r \r\r \r \r\r \r \r \r \r \r \r \r \r ӫ Ѹ \r ׸ ѹ \r \r \r ׺ Ҹ \ \ \ \ \ \ \ \ \ \ \ \ \r \ \ \ ׸ \r ׸ Ѻ \r \r \r \r \r Ѹ \rغ й \r ֺ и \r\r \r \r ָ \r \r ׹ ׺\ \r ƹ ָ ָ \r Һ ׸ \r ׸ \r \r ׺ \r \r \r \r ׺ ׸ ĺ ĸ ߾ ֺ \r \r \r Һ \r ׸ ߿ \ APPENDIX A. BREADTH-FIRST NUMBERING WITH LAZY EVALUATION", ["chris-okasaki/hw02.ps"] = "Techniques for Embedding Postfix Languages in Haskell\ Chris Okasaki\ United States Military Academy #\ West Point, New York\ Christopher.Okasaki@usma.edu", ["chris-okasaki/optimal-pq-jfp.pdf"] = "Journal of Functional Programming\ http://journals.cambridge.org/JFP\ Additional services for Journal\ of Functional\ Programming:\ Email alerts: Click here\ Subscriptions: Click here\ Commercial reprints: Click here\ Terms of use : Click here\ Optimal purely functional priority queues\ Gerth Stølting Brodal and Chris Okasaki\ Journal of Functional Programming / Volume 6 / Issue 06 / November 1996, pp 839 - 857\ DOI: 10.1017/S095679680000201X, Published online: 07 November 2008\ Link to this article: http://journals.cambridge.org/abstract_S095679680000201X\ How to cite this article:\ Gerth Stølting Brodal and Chris Okasaki (1996). Optimal purely functional priority\ queues. Journal of Functional Programming, 6, pp 839-857 doi:10.1017/\ S095679680000201X\ Request Permissions : Click here\ Downloaded from http://journals.cambridge.org/JFP, IP address: 130.64.11.153 on 28 Nov 2013\ J. Functional Programming 6 (6): 839-857, November 1996 © 1996 Cambridge University Press\ 839\ Optimal purely functional priority queues", ["chris-okasaki/redblack99.ps"] = "J. Functional Programming 1 (1): 1--000, January 1993 c\ fl 1993 Cambridge University Press 1\ FUNCT I ONAL PEARLS\ RedBlack Trees in a Functional Setting\ CHRIS OKASAKI y\ School of Computer Science, Carnegie Mellon University\ 5000 Forbes Avenue, Pittsburgh, Pennsylvania, USA 15213\ (email: cokasaki@cs.cmu.edu)\ 1 Introduction\ Everybody learns about balanced binary search trees in their introductory com\ puter science classes, but even the stouthearted tremble at the thought of actually\ implementing such a beast. The details surrounding rebalancing are usually just too\ messy. To show that this need not be the case, we present an algorithm for insertion\ into redblack trees (Guibas & Sedgewick, 1978) that any competent programmer\ should be able to implement in fifteen minutes or less.\ 2 RedBlack Trees\ A redblack tree is a binary tree where every node is colored either red or black. In", ["chris-okasaki/views.pdf"] = " u @a8$%TiQda9B%T@&auGt`T@&385$7HG(%T@Ae1C@D3810fa&7%3CT3&(7c%\"X3Cv0 q9\"& g 0 2 F# 2 2 Y 9 0bq\"4 2C 8 0 q! 2 0 F I D49 I 8 & D y I& 2 89 s 2 0 0b q q! A 0\"# F& g I& 0 2 (b 2 Y 2 0 WU SRRP I& 2 F F D 2 0 A (\"4 4 (&##\"! 5T1AfpbehfxwWv0183DG(u@t%eE$3C`ra2%a9@2a87%p9387$B)ihfeda9B3F10ca#`E$3CXVT)5Q)HG(BB$1\"E$3CB$@9387%653210)'%$\ 4zڪgg¨ehehEteEžt ǹ Ƽ tž ateEžtDVhtEm&htotǤ&EֹPvEtv&$t - Ǽ û Ȼ tE&EV!hgehEȺE%PE ֹDtE Ǽ Ƽ Ƽ ż Ȼ eE&DgC&λeEdgâtegª򪹺tgVP滤&hgD$eEEt#ttoR Ƽ ¼ %P Eet&$!ERȿge᪹Ehgh&otмֹDDEh4otg߻hggeeEae& ƻ Ȼ tPhh&oP@hgtt4EVt@VhtehREtegg&4 ¼ ƻ ƹ eChhEhTPvt#tEhte ֻ » ¼ ƹ Ƽ » ɼ Evgeh%tEh@@gDhtesoEggEt%8!t&t&eoXgge&!8hgE ¼ ƻ û ¼ ¼ 4лehgh&hg4D@t4$tt m ehghE#g¤&eEae&XgChoo ڼ Ȼ ¼ Ǽ ¼ #VEDemEt¦eChhEvgä&eeEtaEeodgge&Evhg ¼ ƻ Ȼ 4DeeEXλehghEmgä&e#g4Pt ohEEthv4e ¸ ƹ ƹż Ǽ ƹ ǹ eoCEoh4DeeEtghEEotaDeo&hteh$R &۾4@EdggEg@hɣtg@E&hTDee&XghEt&eo޼gge&t ƻ ¼ ƹ ƹ EeChghEEg$ghtg4D#tm v Ctt&CDEи&&EEGλhhgE ¼ ƹ ƻ Ǽ Ƽ Ǽ D޸EȡhgeaEhE礸hgg¾VtPat&ȤhEEh4DeeE$tEeChghE ƹ Ƽ ¼ » » ż Eg¼ttEg夹tdEP 4tVt&sg¤&e@X&th4tùEtht ۻ û tt&eoggeVEhEhXEhEEP g&ߤ%oohEߤhR@ƾ $Ea&güt hTDee&#g¹Eh$R44E¤tehR#eEtE ǹ ɼ ż ¼ ƹ ¼ Chth&!tgEEhEhDto&e!g¾ghg¦$%E!tCɤC& e eE&DaheEt&ƪh4gE&hg$%E&%taƾmEEedgge&EEhEht Ǽ ż ɿ ƻ ¿ s#osTmE { ~ } | { d x j q { @i f q ~ u r { d m { d } f C rhCfx C|} hfgy&h6qz{Cz~d6f{tq|f ~ q z{x f d kfdq Czy{ CChqu z{dwdq| q t{~ f| ri m{x tgyd zx#ird} t 6Cz{i t~|d Cthdru z{dp hh~{ Cf} hyCCzy{{|f Pjd6p hCzyx{ dddqkfg{C&gy{jj txmddzr zyfdt{hzr| fgqj ~q r Dsqx ky6q fz{wdf rjz|zqtf{|6q ~mgrt| du z{jdfCCtui ht{r f|| dXgyd xdgr{et~rd !zxgyjdd{dn} l{ f r f x ggii Chkfkfc$ zxx c$kCoj xgrdf{ |Cgfu gj{kq ~ zxqhj zxq Rd{ {f g Czx d fc%dqtgrd vuz{%kq dm{r x Xf Chu d{efr Xzy} drr l jj f i fiCh ddc d r f d q d j f f q f { { i i f q n | dhr txd rC{q dz{e {!d6qi x m f {zDx gx Xx6qd{ ew{ hgf{ dC}i dkfzj{dCrq h} ${vd} Cjr kyx g d}vr#gjz{f zddu Cmt tx|f {eC{dw txr dzrCeq{ {gqzymt{rd|z{4a&ExgrgdkfzjdCkqCD$grjd{tdgyo Cky k xdv{gjz{zdd{ Cf {|x }xvzyd djzydr{rgjgfV{zddx u Ckqjmf6qmi{u }hu fkffzx&p6q{ zy{f deu dxw kfddff dmCz{fi u dz{jCxndXl{ !o6igudj dxzhj DvD r { { { q q ~ u { j~ } j t w v@hdffx~| zyd diykgz{hvzxgu j j xz{dzd dCz{f !h{d qx g{hj~ hf46f j{kq Tm{ Emxuhgrkfgdj }gfzxgjCpqjd ChC}} ky|rtf kdjdvgejw hg{ vhvsdr t {q cp{f oDmki{htj kyixfr hgf ecgfq 6f{C r t ddcf dT vi s yxwvup s rhqpi PP&tCEt6h%&4D4Ch gfae65d7cPa`4@XGB4VTRQP1 3b 5Y W 5U S IH GFED6BDC$@876541 5A 7BA 9 32 ) ' \" \" 0(&%$#! ", ["chris-stone/cie-short.pdf"] = "RZ: a Tool for Bringing Constructive and Computable Mathematics Closer to Programming Practice\ Andrej Bauer1 and Christopher A. Stone2\ 1\ Faculty of Mathematics and Physics, University of Ljubljana, Slovenia Andrej.Bauer@fmf.uni-lj.si 2 Computer Science Department, Harvey Mudd College, USA stone@cs.hmc.edu", ["chris-van-wyk/p1000-van_wyk.pdf"] = "Moderated by Christopher J. Van Wyk\ literate programming\ literate programming, Richard Botting wrote to suggest that very different solutions would be proffered by a programmer trained in Michael Jackson's method of program design. I was intrigued enough by his letter to want to find out more about this method and finally settled down to read Jackson's 1975 book, ,Principles of Program Design [4]. The book presents th.e method through a sequence of problems. The second problem, \"Printing Invoices,\" is described as follows: A serial masterfile contains customername and address\ records, arranged in ascending sequence by customer number. Another serial file contains billable item records, arranged in ascending sequence by date within invoice number within customer number. These two files are to be used to print invoices. There may be more than one invoice for a customer, but some customers will have no invoices. Due to punching errors, there may be billable item records for which no customer record exists: these are to be listed on a diagnostic file of messages. [4, p. 71", ["chris-van-wyk/p1051-van_wyk.pdf"] = "Modera ted by Christopher J. Van Wyk\ literate programming\ WEAVINGA LANGUAGE-INDEPENDENT WEB\ In the fall of 1987 I started planning the implementation of a suite of tools for building verified Ada programs [5]. The first tool to be built was a verification condition generator, which was to be formally defined using the typed lambda calculus. I was eager to include the definition with the code so that it would be easy to check the code's correctness. Using WEBwould have made this easy, but, unfortunately, the target programming language was SSL (a language for specifying structure editors), and the only languages for which WEB implementations were available were Pascal and C. Writing a new WEBfrom scratch did not make sense, so I decided to modify Silvio Levy's implementation of WEBin C [3], to get a WEBthat would be written in C, but would read and write SSL code. From my previous experiences modifying WEB,I knew that the most timeconsuming job would be fine-tuning the grammar that WEAVEuses to prettyprint code. I believed I could make debugging that grammar a lot less painful if, instead of trying to make dozens of small modifications by hand, I wrote a simple program, perhaps an AWK script, that would read a description of the grammar and generate C code for WEAVE.That AWK script became SPIDER, a program that turns language descriptions into C code for TANGLE and WEAVE.I have used SPIDER to generate WEBS C, AWK, SSL, Ada, and a couple of other for languages. I will not go into the details of SPIDER; instead, I will try to describe what SPIDER does to accomplish its mission, or how to take the \"essence of WEB\" and make it language-independent. When using WEB,a programmer writes a single source file, foo . web, that holds both code and documentation. TANGLE and WEAVEread that file. TANGLE extracts the code from the WEBfile and rewrites it in a form suitable for compiling. WEAVEpasses the documentation parts to a document formatter (QX), and prettyprints the code parts. The whole process is shown in Figure 1, for C programs written in WEB.The represents files that have to be written by hand. Slant type is used for the names of executable programs. CTANGLE and CWEAVE are the C-language versions of TANGLE and WEAVE,cc is a C compiler, and Id is a loader.", ["chris-van-wyk/p1376-van_wyk.pdf"] = "Modera ted by Christopher 1. Van Wyk\ literate programming\ EXPANDING GENERALIZED REGULAR EXPRESSIONS\ Moderator's Introduction\ to Column 3\ The mail prompted by Column 2 (Communications, December 1987, p. 1000) showed a broad array of opinions about what makes a good solution to a problem. Some readem found Jackson's program too closely tied to the representation of the input data, while others thought that it did not take enough advantage of those same details. I was heartened to hear from readers who preferred my pseudo-code solution, even though it was sketch,y and incomplete. Som'e correspondence suggests that I need to correct a few misimpressions. First, the solutions that appear in this column are in no way certified to be \"the best\" or \"perfec:t\"; they are merely the product of their authors' best attempts to produce literate programs. Second, I am not wed to the idea that what makes a program literate is the interleaving of code and nicely typeset comments; I would be delighted to hear from readers with oi her suggestions about how programs can be written literately-see address information at the end of this column. This column's problem was posed by Mark Kahrs of Rutgers University. Here is a sample string together with the sequence of strings that it abbreviates: sample string: a(8--10) [d-b];sequence: a08d, a08c, a08b, a09d, a09c, a09b, alOd, alOc, alOb.The sequence is derived from a string according to these rules: 1) Constant components (like a) always appear. 2) Numeric components (like ( l-3 )) generate a sequence in the natural order (increasing or decreasing as approp:riate) from the first component to the second", ["chris-van-wyk/p361-van_wyk.pdf"] = "Moderated by Christopher 1. Van Wyk\ literate programming\ PROGRAMMING: AN ASSESSMENT\ explains why the approach was chosen, and sometimes why plausible alternatives were rejected. Such polish makes it pleasant to read a literate program, but it can hardly be considered distinctive of literate programs: authors have polished their programs for careful exposition for years. A less obvious, but ultimately crucial, feature of Knuth's literate programs I would dub their uerisimilitude: the published programs were produced from exactly the same input that was used to prepare the program that the computer executed. Verisimilitude is unique among these three aspects in that it distinguishes a literate program from a program that has merely been highly polished and presented with attention to cosmetic details. Four programs have appeared since July, 1987, when this column was commissioned to explore different approaches to literate programming. All of the programs' authors worked hard to polish their presentations. And all four share with Knuth's literate programs the cosmetic appearance of code interleaved with typeset comments: each achieved this appearance in a different way, but in all cases the production of the version for presentation followed the writing of the working code, and none of the published programs exhibits complete verisimilitude with working code. In June, 1989. Thimbleby served as reviewer, and courteously reminded us of the essential role that verisimilitude plays in a program's being literate. He also went on to suggest that the code and the documentation of a literate program must be produced (not merely presented to the reader) simultaneously, and that a system for literate programming should automatically provide such literary paraphernalia as tables of contents and cross references. Thimbleby's restatement of fundamental marks of literate programs inspires me to resolve that future columns will publish only programs that were produced using a system for literate programming. And that presents a problem. I know of perhaps a half-dozen systems for writing literate programs, each modeled on WEB, perhaps adding or subtracting a few features, or", ["chris-van-wyk/p583-van_wyk.pdf"] = "Moderated Christopher\ by J. Van Wyk\ literate programming\ worth an experiment to see whether interest among readers, authors, and critics would be sustained. With his help, we commissioned Christopher Van Wyk of AT&T Bell Laboratories to be the moderator of a new column on literate programming, inaugurated with this issue. Van Wyk received his Ph.D. from Stanford University in 1980 and has spent the intervening years at Bell Labs working on programming languages for graphics and algorithms for computational As moderator, Van Wyk will pose the problems to be considered, solicit and receive literate programs, obtain critiques, and publish the results within constraints of a magazine-all tasks that will use\ n May and June 1986, Programming Pearls took up literate programming, an approach to programming espoused by Donald Knuth. Knuth's premise is that the best programs are meant for people as well as machines; they are meant to be read as well as run. He built a system, WEB, that scans specially structured technical reports to extract Pascal statements interwoven with the text, forming from them an executable program. Pascal is not essential; WEB can work as well with any other programming language, such as Fortran. A literate program contains not only the needed statements in a programming language, but also a precise problem statement, a summary of the background needed to understand the solution, an evaluation of alternatives, assessments of trade-offs between the runnin time and space, or between run- 1 ning time and programming time, and suggestions on how to modify the program. Program code segments are inserted in the text at points logical to the intellectual development of the algorithm. A literate program pays careful attention to lucidity of presentation and presents all arguments needed to understand why the program will actually work as intended. To emphasize the literary side, the second Pearl included a critique of Knuth's program that evaluated it on these points. The response to both Pearls was strong and positive. Jon Bentley proposed that Communications renularlv devote snace to interesting, literate programs andtheir wellwritten critiques. I agreed that it would be", ["chris-van-wyk/p740-van_wyk.pdf"] = "literate\ Moderated by Christopher 1. V,zn Wyk\ A File Difference Program\ Moderator's Introduction Proponents of literate programming ascribe many characteristics to a literate program: it is meant to be read by people; it is presented in a lucid fashion and in an order dictated by intellectual logic rather than compiler restrict.ions; it includes a summary of the problem and the solution, an evaluation of alternative solutions, and suggestions for modification. Readers may well wonder whether it is necessary to have a specialized system (like WEB) to do literate programming. WEB lets one typeset the solution elegantly, provides a way to define macros with very long names, and does the bookkeeping to provide a table of cross references and an index; are these facilities essential to the enterprise? Donald Lindsay, this month's solver, clearly believes that one can write a literate program using only standard programming technology. Each function in his solution has an informally standardized header that explains i-ts pre- and pcetconditions. Lindsay's comments explain other properties that he finds desirable in a program. Joining the debate, Harold Thimbleby, this month's reviewer, explains h JW using a specialized system changes the process IIf programming. He sees the advantages that such a system provides as essential to writing a literate program.", ["christian-collberg/retargeting.djvu"] = "Reverse Interpretation + Mutation Analysis = Automatic Retargeting \ Christian S. Coilberg \ Department of Computer Science \ The University of Auckland \ Private Bag 92019 \ Auckland, New Zealand. \ coilberg @cs. auckland. ac. nz ", ["christian-collberg/retargeting.ps.gz"] = "Reverse Interpretation + Mutation Analysis = Automatic Retargeting\ Christian S. Collberg\ Department of Computer Science\ The University of Auckland\ Private Bag 92019\ Auckland, New Zealand.\ collberg@cs.auckland.ac.nz", ["christian-lindig/quest.pdf"] = "Random Testing of C Calling Conventions\ Christian Lindig\ Saarland University Department of Computer Science Saarbrucken, Germany \ lindig@cs.uni-sb.de", ["christian-queinnec/training-engine.pdf"] = "Experiment around a training engine\ Anne Brygoo, Totou Durand, Pascale Manoury, Christian Queinnec and\ Michele Soria\ Universite Pierre et Marie Curie (Paris 6), UFR d'informatique, France", ["christine-kraemer/Th3-Watchmen.pdf"] = "chapter three \"i have seen its true face\": apocalypse as unmasking\ Alan Moore's critically acclaimed graphic novel Watchmen, along with Frank Miller's The Dark Knight Returns, was hailed in the late 1980s as the beginning of an era of grim, sophisticated adult comics that would finally allow the comics industry to throw off its image as a producer of disposable, pulp kiddie fare. Provocatively reinterpreting the Golden Age superhero comics of the 1940s, both novels took the superhero out of his traditional four-color world of clear-cut right and wrong into a realistic world of conflicting political ideologies, governmental and societal corruption, and irreconcilable moral dilemmas. Unfortunately, the full flowering of the adult comics industry predicted by comics enthusiasts never quite occurred, and the industry as a whole has limped through the last decade in a sorry state of declining sales and increased marginalization. Though in the 1990s DC Comics's Vertigo line as well as myriad independent artists have attempted to target an older, mixed-gender comics-reading audience, many titles have been marred by the misapprehension that \"adult\" equals a juvenile fascination with gratuitous sex, violence, and vulgarity.1 Though there are jewels in the rough aplenty for the determined comics reader, and certain books such as Neil Gaiman's richly mythological Sandman have even become popular amongst mainstream adolescents and college students, the American comics industry as a whole has sadly failed to become the sophisticated, multi-genred artistic community that the European and Japanese comics industries represent.2", ["christoph-hoffman/equation-interpreter.djvu"] = "Implementation of an Interpreter for Abstract \ Equations \ CHRISTOPH M. HOFFMANN \ Department of Computer Sciences, Purdue University, Wst Lafayette, LV 47907, U.S.4. \ AND \ MICHAEL J. O'DONNELL AND ROBERT I. STRANDH \ Electrical Engineering and Computer Science Department, The Johns Hopkins University, \ Baltimore, MD 21218, U.S.A. \ SUMMARY \ This paper summarizes a project whose goal is the implementation of a useful interpreter for ", ["christoph-hoffmann/equations.djvu"] = "Programming with Equations \ CHRISTOPH M. HOFFMANN and MICHAEL J. O'DONNELL \ Purdue University \ Equations provide a convenient notation for defining many computations, for example, for program- \ ming language interpreters. This paper illustrates the usefulness of equational programs, describes \ the problems involved in implementing equational programs, and investigates practical solutions to \ those problems. The goal of the study is a system to automatically transform a set of equations into \ an efficient program which exactly implements the logical meaning of the equations. This logical \ meaning may be defined in terms of the traditional mathematical interpretation of equations, without \ using advanced computing concepts. t \ Categories and Subject Descriptors: D.3.2 [Programming Languages]: Language Classifications-- \ nonprocedural languages; D.3.4 [Programming Languages]: Processors--interpreters; F.3.1 [Log- \ ics and Meanings of Programs]: Specifying and Verifying and Reasoning about Programs ", ["christoph-hoffmann/pattern-matching.djvu"] = "Pattern Matching in Trees \ CHRISTOPH M. HOFFMANN AND MICHAEL J. O'DONNELL \ Purdue University. West Lafayette, lndtana \ ^BSTg^CT. Tree pattern matching is an lnteresung special problem which occurs as a crucial step m a \ number of programming tasks, for instance, design of interpreters for nonprocedural programming \ languages, automatic implementations of abstract data types, code optamzation ha compilers, symbolic \ computation, context searching in structure editors, and automatic theorem proving. As with the sorting \ problem, the variations in requirements and resources for each application seem to preclude a uniform, \ universal solution to the tree-pattern-matching problem. Instead, a collection of well-analyzed techniques, \ from which specific apphcations may be selected and adapted, should be sought. Five new techniques for \ tree pattern matching are presented, analyzed for time and space complexity, and compared with ", ["christoph-von-praun/static.ps"] = "Static Conflict Analysis for\ MultiThreaded ObjectOriented Programs\ Christoph von Praun and Thomas R. Gross\ Laboratory for Software Technology\ ETH Z \ urich\ 8092 Z \ urich, Switzerland", ["christopher-strachey/continuations.pdf"] = "Higher-Order and Symbolic Computation, 13, 135152, 2000 c 2000 Kluwer Academic Publishers. Manufactured in The Netherlands.\ Continuations: A Mathematical Semantics for Handling Full Jumps\ CHRISTOPHER STRACHEY Reader in Computation at Oxford University, Programming Research Group, 45 Banbury Road, Oxford CHRISTOPHER P. WADSWORTH Independent Consultant cpw@inf.rl.ac.uk", ["christopher-strachey/forward.pdf"] = "Higher-Order and Symbolic Computation, 13, 79, 2000 c 2000 Kluwer Academic Publishers. Manufactured in The Netherlands.\ A Foreword to `Fundamental Concepts in Programming Languages'\ PETER D. MOSSES BRICS & Department of Computer Science, University of Aarhus, Ny Munkegade, B.540, DK-8000 Aarhus C, Denmark pdm@brics.dk\ Christopher Strachey's paper on Fundamental Concepts in Programming Languages is being published here for the first time. Written in the autumn of 1967, it is based on the lectures given by Strachey at an International School in Computer Programming, held in Copenhagen in August 1967. Strachey intended the paper to be published in the proceedings of the School--but the proceedings never materialized, and Strachey's paper has remained an unpublished preprint for more than three decades. It is, however, one of Strachey's most significant and lengthy papers; widely circulated in the original typescript version, it has also been highly influential. Strachey's paper starts with some philosophical remarks about the need to focus on semantic issues in the design of programming languages, and to \"recognise and isolate the central concepts--things analogous to the concepts of continuity and convergence in analysis\". Strachey then proceeds to give a clear and incisive exposition of many of his insights into programming language design and formal semantics, covering the following main topics:", ["christopher-strachey/fundamentals.pdf"] = "Higher-Order and Symbolic Computation, 13, 1149, 2000 c 2000 Kluwer Academic Publishers. Manufactured in The Netherlands.\ Fundamental Concepts in Programming Languages\ CHRISTOPHER STRACHEY Reader in Computation at Oxford University, Programming Research Group, 45 Banbury Road, Oxford, UK", ["christos-papadimitriou/nash-equib.pdf"] = "The Complexity of Computing a Nash Equilibrium\ Constantinos Daskalakis\ Computer Science Division, UC Berkeley\ Paul W. Goldberg\ Dept. of Computer Science, University of Liverpool\ Christos H. Papadimitriou\ Computer Science Division, UC Berkeley\ costis@cs.berkeley.edu\ P.W.Goldberg@liverpool.ac.uk\ christos@cs.berkeley.edu", ["chuck-thacker/tiny-computer.pdf"] = "A Tiny Computer\ Chuck Thacker, MSR 3 September, 2007 Alan Kay recently posed the following problem: \"I'd like to show JHS and HS kids \"the simplest non-tricky architecture\" in which simple gates and flipflops manifest a programmable computer\". Alan posed a couple of other desiderata, primarily that the computer needs to demonstrate fundamental principles, but should be capable of running real programs produced by a compiler. This introduces some tension into the design, since simplicity and performance sometimes are in conflict. This sounded like an interesting challenge, and I have a proposed design. The machine is a Harvard architecture (separate data and instruction memory) RISC. It executes each instruction in two phases correspond to instruction access and register access and ALU transit. Registers are written at the end of the instruction. Figure 1 is a block diagram of the machine.", ["claire-jones/powerdomain.pdf"] = "A Probabilistic Powerdomain of Evaluations\ G. D. Plotkin\ C. Jones\ Department of Computer Science\ University of Edinburgh", ["claire-jones/thesis.ps.gz"] = "Probabilistic Nondeterminism\ Claire Jones\ Doctor of Philosophy\ University of Edinburgh\ August 1989\ (Graduation Date July 1990)", ["claudio-russo/icfp02.pdf"] = "Recursive Structures for Standard ML\ Claudio V. Russo\ Microsoft Research Ltd., St George House, 1 Guildhall Street, Cambridge CB2 3NH\ crusso@microsoft.com", ["clinton-jefferey/execution-monitoring.pdf"] = "SOFTWARE—PRACTICE AND EXPERIENCE, VOL. 24(11), 1025–1049 (NOVEMBER 1994)\ A Framework for Execution Monitoring in\ Icon\ clinton l. jeffery\ Division of MCSS, The University of Texas, San Antonio, TX 78249, U.S.A.\ and\ ralph e. griswold\ Department of Computer Science, The University of Arizona, Tucson, AZ 85721, U.S.A.\ SUMMARY\ Execution monitors are widely used during software development for tasks that require an\ understanding of program behavior, such as debugging and profiling. The Icon programming\ language has been enhanced with a framework that supports execution monitoring. Under the\ enhanced translator and interpreter, neither source modification nor any special compiler command-line option is required in order to monitor an Icon program. Execution monitors are written\ in the source language, instead of the implementation language. Performance, portability, and\ detailed access to the monitored program’s state are achieved using a coroutine model and", ["colin-higgins/EIT_ImprovementsOverCeilidh_Paper.pdf"] = "1\ The CourseMarker CBA System: Improvements over Ceilidh\ COLIN HIGGINS (CORRESPONDING AUTHOR) School of Computer Science and Information Technology, University of Nottingham, Jubilee Campus, Wollaton Road, Nottingham, NG8 1BB UK, United Kingdom. E-mail: cah@cs.nott.ac.uk. Tel:+44 115 951 4213. Fax: +44 115 951 4254.\ TAREK HEGAZY School of Computer Science and Information Technology, University of Nottingham, Jubilee Campus, Wollaton Road, Nottingham, NG8 1BB UK, United Kingdom. E-mail: tmh@cs.nott.ac.uk\ PAVLOS SYMEONIDIS School of Computer Science and Information Technology, University of Nottingham, Jubilee Campus, Wollaton Road, Nottingham, NG8 1BB UK, United Kingdom. E-mail: pxs@cs.nott.ac.uk\ ATHANASIOS TSINTSIFAS School of Computer Science and Information Technology, University of Nottingham, Jubilee Campus, Wollaton Road, Nottingham, NG8 1BB UK, United Kingdom. E-mail: azt@cs.nott.ac.uk\ 2", ["colin-higgins/coursemarker.pdf"] = "", ["colin-percival/thesis.pdf"] = "Matching with Mismatches and Assorted Applications\ `\ Colin Percival\ Wadham College University of Oxford A thesis submitted for the degree of Doctor of Philosophy Hilary 2006\ To the Chemist, the Teacher, and the Composer, The Medic, the Musician, and the Conductor, Without whom this would not have happened; And to the City of Oxford, For reminding me how short three years can be.\ Acknowledgements\ In no particular order, I would like to thank: Graham Percival, for building and repairing computer systems while I’ve been thousands of miles distant; Michael Nottebrock, for asking the innocent question on a public mailing list which first made me consider the problem of delta compression; Robert Muth, for searching through four year old backups to retrieve the “upgrade” corpus used in Table 2.1 and Table 3.1; My supervisors, for allowing me the freedom to wander between topics until I decided to write this thesis, yet being available if I ever wished to discuss anything; Richard Brent, Richard Bird, and Peter Jeavons for reading and commenting on early draft(s) of this work; The Commonwealth Scholarship Commission in the United Kingdom, for funding my years in Oxford; and finally, the dedicatees, who have each helped, in their own way, to keep me sane for the past π years.", ["colin-runciman/canonical-test.pdf"] = "Lazy Generation of Canonical Test Programs\ Jason S. Reich, Matthew Naylor and Colin Runciman\ Department of Computer Science, University of York\ {jason,mfn,colin}@cs.york.ac.uk", ["colin-runciman/haskell-xml-scanned.pdf"] = "Haskell and XML: Generic Combinators or Type-Based Translation?\ Malcolm ‘WaIlace and Colin Runciman University of York, UK", ["colin-runciman/haskell-xml.pdf"] = "Haskell and XML: Generic Combinators or Type-Based Translation?\ Malcolm ‘WaIlace and Colin Runciman University of York, UK", ["colin-runciman/haxml.djvu"] = "Haskell and XML: Generic Combinators or Type-Based Translation? \ Malcolm Wallace and Colin Runciman \ University of York, UK ", ["colin-runciman/icfp96.ps.gz"] = "Lag, drag, void and use\ -- heap profiling and spaceefficient compilation revisited\ Niklas Rojemo and Colin Runciman\ Department of Computer Science, University of York,\ Heslington, York, YO1 5DD, UK\ (email: frojemo,coling@cs.york.ac.uk)", ["colin-runciman/smallcheck.pdf"] = "SmallCheck and Lazy SmallCheck\ automatic exhaustive testing for small values\ Colin Runciman Matthew Naylor Fredrik Lindblad\ Chalmers University of Technology / University of Gothenburg, Sweden fredrik.lindblad@cs.chalmers.se\ University of York, UK {colin,mfn}@cs.york.ac.uk", ["conal-elliott/genuinely-functional-guis.pdf"] = "Genuinely Functional User Interfaces\ Antony Courtney 1,2\ Dept. of Computer Science Yale University New Haven, CT 06520\ Conal Elliott 3\ Microsoft Research One Microsoft Way Redmond, WA 98052", ["conal-elliott/type-class-morphisms-long.pdf"] = "LambdaPix technical report 2009-01, March 2009\ 1\ Denotational design with type class morphisms (extended version)\ DRAFT -- comments please Conal Elliott\ LambdaPix conal@conal.net", ["conor-mcbride/applicative.pdf"] = "JFP 18 (1): 113, 2008.\ c 2007 Cambridge University Press\ 1\ doi:10.1017/S0956796807006326 First published online 16 May 2007 Printed in the United Kingdom\ FUNCTIONAL PEARL Applicative programming with effects\ CONOR MCBRIDE1\ University of Nottingham\ ROSS PATERSON\ City University, London", ["conor-mcbride/dependents-matter.pdf"] = "Why Dependent Types Matter\ Thorsten Altenkirch Conor McBride James McKinna\ The University of St Andrews james.mckinna@st-andrews.ac.uk\ The University of Nottingham {txa,ctm}@cs.nott.ac.uk", ["conor-mcbride/diff.pdf"] = "The Derivative of a Regular Type is its Type of One-Hole Contexts\ Extended Abstract\ Conor McBride", ["conor-mcbride/epigram-notes.pdf"] = "Epigram: Practical Programming with Dependent Types\ Conor McBride\ School of Computer Science and Information Technology University of Nottingham\ 1\ Motivation\ if null xs then tail xs else xs\ Find the type error in the following Haskell expression: You can't, of course: this program is obviously nonsense unless you're a typechecker. The trouble is that only certain computations make sense if the null xs test is True, whilst others make sense if it is False. However, as far as the type system is concerned, the type of the then branch is the type of the else branch is the type of the entire conditional. Statically, the test is irrelevant. Which is odd, because if the test really were irrelevant, we wouldn't do it. Of course, tail [] doesn't go wrong--well-typed programs don't go wrong--so we'd better pick a different word for the way they do go. Abstraction and application, tupling and projection: these provide the `software engineering' superstructure for programs, and our familiar type systems ensure that these operations are used compatibly. However, sooner or later, most programs inspect data and make a choice--at that point our familiar type systems fall silent. They simply can't talk about specific data. All this time, we thought our programming was strongly typed, when it was just our software engineering. In order to do better, we need a static language capable of expressing the significance of particular values in legitimizing some computations rather than others. We should not give up on programming. James McKinna and I designed Epigram [27, 26] to support a way of programming which builds more of the intended meaning of functions and data into their types. Its style draws heavily from the Alf system [13, 21]; its substance from my to Randy Pollack's Lego system [20, 23] Epigram is in its infancy and its implementation is somewhat primitive. We certainly haven't got everything right, nor have we yet implemented the whole design. We hope we've got something right. In these notes, I hope to demonstrate that such nonsense as we have seen above is not inevitable in real life, and that the extra articulacy which dependent types offer is both useful and usable. In doing so, I seek to stretch your imaginations towards what programming can be if we choose to make it so. 1.1 What are Dependent Types?", ["conor-mcbride/epigram-pearl.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ FUNCTIONAL PEARL A type-correct, stack-safe, provably correct, expression compiler in Epigram\ JAMES MCKINNA\ University of St. Andrews (e-mail: james.mckinna@st-andrews.ac.uk)\ JOEL WRIGHT\ University of Nottingham (e-mail: jjw@cs.nott.ac.uk)", ["conor-mcbride/epigram-system.pdf"] = "The Epigram Prototype: a nod and two winks\ Conor McBride April 23, 2005\ 1 Introduction\ I intend this document as a guide to the prototype EPIGRAM system. As things stand, there are still a great many things which need to be done, but the system can now be nursed through some useful small examples, so it seems appropriate to help people play with it.\ 1.1 What you need\ To run EPIGRAM, you will need a compiled binary of the executable, and a suitable version of xemacs. I'm not an expert on xemacs, so I don't know which versions are suitable, but it's not hard to find out if yours is. I'm using 21.1 just now. Epigram is developed under linux, and has been caught working under Windows XP (thanks Paul) and Mac OS X (thanks Michael). We now have a more stable web presence at http://www.durham.ac.uk/CARG/epigram Subscribers to epigram@durham.ac.uk get news of updates and things which do/don't/might one day work. Please do subscribe, and send .epi files, successful or otherwise. To compile EPIGRAM, you will need a reasonably recent version of the Glasgow Haskell Compiler, ghc: I use lots of non-98 language extensions very heavily, so other systems probably won't play. Version 5.02 is certainly sufficiently recent--it's what I use at the moment. 1", ["conor-mcbride/notanum.pdf"] = "I am not a number: I am a free variable\ Conor McBride and James McKinna June 8, 2004", ["conor-mcbride/view-from-left.pdf"] = "v\" \"3)d)v4q\"f)v)qB`)\"`qŨ)ŧof)I qu t u u t t u t u w t w u t u w t - - t w u u u w t w w t u t w u t w 7!@\" hf \"Bq\"f)v)q)\")\"I)\"@) 3 I`)43 r CI)d' ! \ 7@@hii)hm@@i)Es@ Iv 1iH9 mp)@'If7iYivYh$vfqI%v@I7G9ivCid @id@iffYI)ys@%@)3Yv)iv@iIi$vq)EŤ@Y%HvfI\" 1i@i)E IyiYv7i1vYvyi@hYvi$C%I@)EGv9iv @YYI vHI vCfi1h)7@mhv3v7iimiI4i%@I!vI@I@i7i7iv r I\"r@i@)7vv9v IE)7v@%@Ihv@IB%I%@\"Ф\"I%9ymvi%i4oi@hȨf!H %%)d@hI@Iv@7fi@f)C@fd7vhvhYYIIv!@9h% vi4`v@v!4%@)m7vv9or)CfIפ@Yivv% Ӽ Ҧ v@%YYI7v@fI1Io)73'yh sI7@r vIɽih@7Yvd v7%7YIiiv I%@@ 7h%vI%Ui17YiI4%h'3Y%@Ih i I\"@i4v@4%@%iYh'I\"sIvi7 YI@IvC 19%hU@i@9vi4@Ih%IY7ii) hvI@9)E%%@ͻIvi7If7)Cv @r3$@i@)I@)9IdIHiYi$v49I%i%Iv@7)Ei)9ii)f i17i%r@@vCiff19`@Ih%IY7ii)s@v!4%9H%iYhiv@f @\"%frYsiY7iY@%%vI@i)@7IId'I$%`h)%Gv iY@%v@%dvviiII@7@h)EŤ@Y%YE)\"h@YI4ih)99s@!v7v%vvhv!4 %!9v7@@vGI vh%99%74@7iIh@ 1@IYY7ihvoi@Ivv Ii4hviYh@%iY@Ii%)I9f%%!)h%@@%oi@7%h)i) )ii)9 @I@h1%IGH3f777iiv77f7o$i@I7Io %I7v))9Iii )Iq)GihYG1vv@h@i)E!@BI%IhiG@Byi@i%vrv @%rYr@hiY7ivf9iivIIHoifsi)EBIf7@Ih@)rvsi@@y@% ivCi)9ivIG@i%i)HvYhqI$v9Y%vHIY$fY7iiyv@44%@ Iv9)'Ev@YIih%Iivf)E@v)ifv@U Ido ivifv7IIh@rvIhi v%IivsvCfI\" IIv$@YYI7v@$fv@%7f9f@fv@YYI7) I@7v@3hhII@@v)9Ir@3%fUYi%Ii1!v I9@@4%!B qIf x w x z | ~ } w zx !C!q%i!!iI3vCx x w x z | ~ ~ } | { w zx y x !C!q%i!!!I3Iw v ut r q F k ( n l k ( 9msfp1EIo!Bmh7ve F k ( # j g 7E7dEr3E%ihq e ( & F # F & vf37d$C'G3%7 u u x u w x w t u t IyI@Y3HIy)qvHs g bTi T R rqph9g edc fGb aTX V T R $`YWUSQ\ P\ D F F D A 2 ( 8 6 5 2 0 ( & # IHG!ECB)\"37@97443\" 1)'%$\"\"! \ t t i t D$\")Ũv%z5o)4 ͩY`v!4 r7`3!H qq))8 t t u t u t w & 1 74y Gv\" )ΤIfv)e)\"iqq)%eFsv)3$ )$`3! fFft u t & u t t u w t u ) ( w t & u u w u u t w w \"9I )\"7q iv4 II qr47`9'\"q)!4)f y`)\"iq w w Q ( & t w t t u t )q` qivUqo 8 )t\"I8I iU \"@x t u w uw H & u w & & w u G C C C vI)椦 0bP II q$i7q)v)@D qiv g7m \"))m)iq)r u t u t & A w i - - S H w t ew08v08f g ed r0u v08 r0u ug ed f mwk0 e j h m e j h wk0 30\ t t D$\")Ũvm\"Y frI iIq) t 6 - u wtQ ( 67 HB 0 )qBv bq h)I\") G 3 bD\"'g\"9fq\"!qqB)tq))v u t u -i A & H u & u t t w t w \" @I)\"qv!3I@\"B ih7m Bs\"g)%3\"qI)v)qB t u t t w u t w t & u & w w t w u i 3) t v$\" q\" iI0)\"q4$\") FFd `yw u t u t u u w & u t u P t G d d c CC ut u t & A p7 u t ut & IIqv))@D y 8DP 7q)vv@4 e e43 2 4Iq\"v47q)v)vD rqv t S u t u t & (u i77 vgIq\"Φf) @qvI)q qŦ ih q\"i))q ww u t & w P u w u t w w u w t w u t u u u t t u w u w t ))\"!qŦ \"S)\")q\"qiq `mŦ IH I)q) q tw u uw\ Befw0ff8d g e r0u8f r rFu8r mrwhrd e e jj flB8k g ur r00f 3 e f e rd \ e fwF\ 8F\ u t w e t u t t 4`)\"Iq rd mq))Iqy\"\")Ŧ vv) 0 )Ŧ Iq3\"@3 r t w t & G C u t |A u t w t w t ( FFbP 'v)$~)\"IqqfY@` hy7q)!Cv`9y$v` t t & w t w v!4@Iv h)q\" ihyd)3 ii\" YI\"m39t`Y z)i`)q}\" u t t w t u t u w w t w u & u S u t | w I v{qu 7m4v1z)\"\"\"q)d@\"!!d\" qI9G!H ')\"H r x & H y u t t u x w u t u t t t & w efwb0vefvrFu8rrt0rsmrqykpnfl8kwiF h o m e j j h ed f 3 F g\ 8F\ t t w D$\")Ũv\" I`$3\"$7r \"fY)9 0bP \"ge \"ɧiq u t G c C C i w u xA x w )@u\")\"qqsvqDIq\"7q)\"y vŦ `)\"hYq\"fv! u u w t Q ( t w u w t w u t u t w t w w w u u t w t )Ŧ I\"q7\"y ) y4I\"v)Φvi) r t y`qUh8I! \" & & u P u u t x u t u t u dv@b`)\"`qŦ I3` v4`e rwv riuIg) u t u w - p - & u u u w & s ( u & u pi h & w w w u t w q\" I@)t)3)3HsI)\"q H3`9'iqfrq5%iq) q ` m m37)`)q)\"UI@'gq\"q\" UH fq7ŧ4)f r w u & & u u u w t w & H G d c C w xA Y X V T t u t u S w x w Q u u w P ( Fe0bP )3HIa`4WUv9r 3GIIqR7@\"q\"ri8)vI y@Iq))B 0FDP E\"iqGB\"iiqGy@87)\")))0 %3 543 2 t u H w t t u G C E C w A w t 9 & u t 7 6 t w t w u w t w 1 t w w u) ( & w t & u u H)7!Irv))Ŧ IH yIGv73q!3`%0%)I @'G@` ` %#\"! - $ - ", ["cormac-flanagan/atomizer.ps"] = "Atomizer: A Dynamic Atomicity Checker\ For Multithreaded Programs\ Cormac Flanagan Stephen N. Freund\ Department of Computer Science Department of Computer Science\ University of California at Santa Cruz Williams College\ Santa Cruz, CA 95064 Williamstown, MA 01267", ["cormac-flanagan/type-effect.ps"] = "A Type and Effect System for Atomicity\ Cormac Flanagan Shaz Qadeer\ HP Systems Research Center Microsoft Research\ 1501 Page Mill Road One Microsoft Way\ Palo Alto, CA 94304 Redmond, WA 98052", ["craig-chambers/customizaton-self.djvu"] = "Customization: Optimizing Compiler Technology for SELF, a \ Dynamically-Typed Object-Oriented Programming Language* \ Craig Chambers \ David Ungar \ Stanford University ", ["craig-chambers/customizaton-self.pdf"] = "Customization: Optimizing Compiler Technology for SELF, a Dynamically-Typed Object-Oriented Programming Language*\ Craig Chambers David Ungar\ Stanford University", ["craig-chambers/eml.ps"] = "Modular Typechecking for Hierarchically Extensible Datatypes\ and Functions #\ Todd Millstein, Colin Bleckner, and Craig Chambers\ Department of Computer Science and Engineering\ University of Washington\ {todd,colin,chambers}@cs.washington.edu", ["craig-chambers/engines.ps"] = "Frameworks for Intra and Interprocedural Dataflow Analysis\ Craig Chambers, Jeffrey Dean, and David Grove\ Department of Computer Science and Engineering\ University of Washington\ {chambers,grove,jdean}@cs.washington.edu\ Technical Report 961102\ November 1996\ 1\ Frameworks for Intra and Interprocedural Dataflow Analysis Chambers et al.\ Frameworks for Intra and Interprocedural Dataflow Analysis\ Craig Chambers, Jeffrey Dean, * and David Grove\ Department of Computer Science and Engineering\ University of Washington\ {chambers,grove,jdean}@cs.washington.edu\ UW CSE Technical Report 961102", ["craig-chambers/millstein-pldi03-draft.ps"] = "Automatically Proving the Correctness of\ Compiler Optimizations\ Sorin Lerner Todd Millstein Craig Chambers\ Department of Computer Science and Engineering\ University of Washington\ flerns,todd,chambersg@cs.washington.edu", ["craig-chambers/old-customizaton-self.djvu"] = "Customization: Optimizing Compiler Technology for SELF, a \ Dynamically-Typed Object-Oriented Programming Language* \ Craig Chambers \ David Ungar \ Stanford University ", ["craig-chambers/pldi03.ps"] = "Automatically Proving the Correctness of\ Compiler Optimizations\ Sorin Lerner Todd Millstein Craig Chambers\ Department of Computer Science and Engineering\ University of Washington\ flerns,todd,chambersg@cs.washington.edu", ["craig-chambers/popl02-dataflow.ps"] = "Composing Dataflow Analyses and Transformations\ Sorin Lerner David Grove Craig Chambers\ Univ. of Washington IBM T.J. Watson Research Center Univ. of Washington\ lerns@cs.washington.edu groved@us.ibm.com chambers@cs.washington.edu", ["craig-chambers/thesis.ps.gz"] = "The Design and Implementation of the SELF Compiler,\ an Optimizing Compiler for\ ObjectOriented Programming Languages\ A Dissertation\ Submitted to the Department of Computer Science\ and the Committee on Graduate Studies\ of Stanford University\ in Partial Fulfillment of the Requirements\ for the Degree of\ Doctor of Philosophy\ Craig Chambers\ March 13, 1992\ ii\ Copyright by Craig Chambers 1992\ All Rights Reserved\ iii\ I certify that I have read this dissertation and that in my opinion it is fully\ adequate, in scope and quality, as a dissertation for the degree of Doctor\ of Philosophy.\ David Ungar (Principal Advisor)\ I certify that I have read this dissertation and that in my opinion it is fully\ adequate, in scope and quality, as a dissertation for the degree of Doctor\ of Philosophy.\ John Hennessy\ I certify that I have read this dissertation and that in my opinion it is fully", ["craig-chambers/uw-cse-02-11-02.ps"] = "Automatically Proving the Correctness of\ Compiler Optimizations\ Sorin Lerner Todd Millstein Craig Chambers\ Department of Computer Science and Engineering\ University of Washington\ flerns,todd,chambersg@cs.washington.edu\ Technical Report UW-CSE-02-11-02", ["cristian-estan/traffic-flows.pdf"] = "New Directions in Traffic Measurement and Accounting\ Cristian Estan\ Computer Science and Engineering Department University of California, San Diego 9500 Gilman Drive La Jolla, CA 92093-0114\ George Varghese\ Computer Science and Engineering Department University of California, San Diego 9500 Gilman Drive La Jolla, CA 92093-0114\ cestan@cs.ucsd.edu ABSTRACT\ Accurate network traffic measurement is required for accounting, bandwidth provisioning and detecting DoS attacks. These applications see the traffic as a collection of flows they need to measure. As link speeds and the number of flows increase, keeping a counter for each flow is too expensive (using SRAM) or slow (using DRAM). The current state-of-the-art methods (Cisco's sampled NetFlow) which log periodically sampled packets are slow, inaccurate and resource-intensive. Previous work showed that at different granularities a small number of \"heavy hitters\" accounts for a large share of traffic. Our paper introduces a paradigm shift for measurement by concentrating only on large flows -- those above some threshold such as 0.1% of the link capacity. We propose two novel and scalable algorithms for identifying the large flows: sample and hold and multistage filters, which take a constant number of memory references per packet and use a small amount of memory. If M is the available memory, we show analytically that the errors of our new algorithms are proportional to 1/M ; by contrast, the error of an algorithm based on classical sampling is proportional to 1/ M , thus providing much less accuracy for the same amount of memory. We also describe further optimizations such as early removal and conservative update that further improve the accuracy of our algorithms, as measured on real traffic traces, by an order of magnitude. Our schemes allow a new form of accounting called threshold accounting in which only flows above a threshold are charged by usage while the rest are charged a fixed fee. Threshold accounting generalizes usage-based and duration based pricing.", ["cristina-cifuentes/callrecovery.ps.gz"] = "The UQ Retargetable Binary Translator\ Principal Investigators\ Cristina Cifuentes\ Centre for Software Maintenance\ Department of Computer Science and Electrical Engineering\ The University of Queensland\ Norman Ramsey\ Department of Computer Science\ University of Virginia\ Senior research assistant\ Mike van Emmerik\ CSEE UQ\ PhD student\ David Ung\ CSEE UQ\ Honours students\ 1997: Shane Sendall\ CSEE UQ\ Research assistants\ Term 1 99: Doug Simon, Trent Waddington\ Summer 9899: Ian Walters, Shawn Coyle, Trent Waddington\ Summer 9798: Shane Sendall, Doug Simon\ CSEE UQ\ January 29, 1999\ 2", ["cristina-cifuentes/computer00.pdf"] = "COVER FEATURE\ UQBT: Adaptable Binary Translation at Low Cost\ A reusable, component-based binary-translation framework lets engineers quickly and inexpensively migrate existing software from one processor to another. This framework supports various processors, including CISC, RISC, and stack-based machines.\ Cristina Cifuentes\ University of Queensland Sun Microsystems Inc.\ D\ Mike Van Emmerik\ University of Queensland\ evelopments in the semiconductor industry have made possible smaller and faster processors for general-purpose computing, portable devices, multipurpose appliances, and system-on-chip designs. Binary translation offers a quick, inexpensive way to migrate software from one processor to another. Although binary-translation techniques are still in their infancy compared to their compiler counterparts, engineers have been using them for 15 years. Just as engineers build compilers partly on the basis of specifications, we are developing the University of Queensland Binary Translator (UQBT) on the basis of machine specifications and properties of machines and operating systems. This static binary-translation framework supports various processors, including complex-instruction-set computers (CISC), reducedinstruction-set computers (RISC), and stack-based machines. In this article, we describe the UQBT framework and discuss our observations while using it to instantiate six different translators across Sun Sparc, Intel Pentium, and Java virtual-machine architectures.", ["cristina-cifuentes/scp01.ps.gz"] = "Recovery of Jump Table Case Statements\ from Binary Code ?\ Cristina Cifuentes ?? and Mike Van Emmerik\ Department of Computer Science and Electrical Engineering\ The University of Queensland\ Brisbane Qld 4072\ Australia\ fcristina,emmerikg@csee.uq.edu.au", ["cristina-cifuentes/switch-proof.pdf"] = "SCICO 639\ pp: 1-18 (col.fig.: nil)\ PROD. TYPE: COM\ ED: Ramesh PAGN: Usha.K -- SCAN: Shobha\ Science of Computer Programming 000 (2001) 000000\ 1\ www.elsevier.nl/locate/scico\ Recovery of jump table case statements from binary code\ 3 5\ Cristina Cifuentes ;1 , Mike Van Emmerik\ Department of Computer Science and Electrical Engineering, The University of Queensland, Brisbane Qld 4072, Australia", ["cristina-cifuentes/wcre99.ps.gz"] = "The Design of a Resourceable and Retargetable Binary Translator \\Lambda\ Cristina Cifuentes Mike Van Emmerik Norman Ramsey y\ Department of Computer Science Department of Computer Science\ and Electrical Engineering University of Virginia\ University of Queensland Charlottesville VA 22903\ Brisbane QLD 4072 USA\ Australia\ fcristina,emmerikg@csee.uq.edu.au nr@cs.virginia.edu", ["curtis-cook/typo.pdf"] = "ALPHABETS & LANGUAGES\ Edgar H. Sibley Panel Editor\ There is disagreement about the role and importance of typographic style (source code formatting and commenting) in program comprehension. Results from experiments and opinions in programming style books are mixed. This article presents principles of typographic style consistent and compatible with the results of program comprehension studies. Four experiments demonstrate that the typographic style principles embodied in the book format significantly aid program comprehension and reduce maintenance effort.\ Typographic Style is More than Cosmetic\ Paul W. Oman and Curtis R. Cook\ Program comprehension plays an important role in many programming tasks. For example, about one half of a maintenance programmer's time is spent studying the source code and related documentation. Maintenance programmers cite understanding the intent and style of another programmer's code as the major difficulty in making a change [4]. Unfortunately, in many instances the only reliable description of a program is the source code itself. The contribution of typographic style (source code of the program is formatting) to the unclerstandability not clear. Ledgard and Tauer [7] believe that code \"should speak for itself\" and that code formatting is \"not window dressing, but a visible display of the meaning\" of the program. On the other hand, in their classic book on programming style, Kernighan and Plauger [5] state that \"if the code is clear and simple to begin with, formatting details are of secondary importance.\" They illustrate each of their style rules by describing the shortcomings of an example code segment, rewriting the example in a better style, and drawing the general rule from the specific case. It is interesting to note that virtually all of their rewritten versions contain implicit changes in typographic style. Experimental studies of typographic factors have also been inconclusive. For example, most programmers believe that programs with indentation are easier to comprehend than programs without indentation. Shneiderman and McKay [15], however, found no significant differences between subjects who were asked to locate and correct an error in the indented and unindented versions of the same program. Also, Love [9] tested the impact of indentation and control flow complexity on program comprehension and found no significant differences between indented and unindented code. A later experiment by Miara et al. [lo], however, showed", ["dagstuhl/00451.ps.gz"] = "Eective Implementation of Object-Oriented\ Programming Languages\ Dagstuhl-Seminar-Report: 00451\ 05.11.2000-10.11.2000\ Organized by\ Uwe A-mann, Linkping University\ Laurie Hendren, McGill University\ Barbara Ryder, Rutgers University (on sabbatical\ leave 2000-2001 at IBM T.J. Watson Research Center)\ Frank Tip, IBM T.J. Watson Research Center\ Editor: Barbara G. Ryder, Uwe A-mann\ Contents\ 1 Introduction 1\ 2 Programme 3\ 2.1 Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . 3\ 2.2 Compilers and Java Virtual Machines . . . . . . . . . . . . . . . 6\ 2.3 Programming Language Design . . . . . . . . . . . . . . . . . . . 9\ 2.4 Callgraph Construction, Analysis, and Optimization . . . . . . . 11\ 2.5 Demos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\ 1 Introduction\ Motivation\ Object-oriented languages are becoming increasingly popular for the develop-\ ment of software systems of all kinds, ranging from small web-based applications\ to large server-side applications. Modern object-oriented languages such as Java\ contain features such as exception handling, dynamic binding, extensive control", ["dale-parson/corba99dbg.pdf"] = "Lucent CORBA Seminar 1999 Distributed Debugging API for ORBs and Services Request for Proposal, test/99-08-02 September 28, 1999\ Dale Parson, Distinguished Member of Technical Staff Bell Labs, Microelectronics Division dparson@lucent.com\ D. Parson, Lucent Technologies, 9/28/99\ Lucent CORBA 1999: Distributed Debugging API\ p. 1\ uC\ DSP\ Communicating threads, tasks or processes on heterogeneous processors, languages and operating systems.\ Process on a workstation O.S. communicates with an embedded processor, maybe no O.S.\ Communicating processes in simulated or even mixed simulated real multiprocessors.\ PROBLEM: Debug two or more processes together (in OS' or embedded processors, or simulations). s,\ D. Parson, Lucent Technologies, 9/28/99\ Lucent CORBA 1999: Distributed Debugging API\ p. 2\ Operating System Object contains one or more Virtual Processors as Sequential Threads registers memory flags page table breakpoints profile registers memory flags page table breakpoints profile registers memory flags page table breakpoints profile registers memory flags page table breakpoints profile", ["dale-parson/corba99dbg.ps.gz"] = "D. Parson, Lucent Technologies, 9/28/99 Lucent CORBA 1999: Distributed Debugging API p. 1\ Lucent CORBA Seminar 1999\ Distributed Debugging API for ORBs and Services\ Request for Proposal, test/990802\ September 28, 1999\ Dale Parson, Distinguished Member of Technical Staff\ Bell Labs, Microelectronics Division\ dparson@lucent.com\ D. Parson, Lucent Technologies, 9/28/99 Lucent CORBA 1999: Distributed Debugging API p. 2\ Communicating\ threads, tasks or\ processes on\ Process on a\ workstation O.S.\ communicates with an\ embedded processor,\ maybe no O.S.\ uC DSP\ Communicating\ processes in\ simulated or even\ mixed simulated \ real multiprocessors.\ PROBLEM: Debug two or more processes together\ (in OS's, or embedded processors, or simulations).\ heterogeneous\ processors,\ languages and\ operating systems.\ D. Parson, Lucent Technologies, 9/28/99 Lucent CORBA 1999: Distributed Debugging API p. 3\ HIERARCHY: Persistent virtual processor servers (O.S.,\ hardware interface card or simulator) provide access to\ multiple Virtual Processors..", ["dale-parson/dsl99lux.pdf"] = "Using Java Reflection to Automate Extension Language Parsing\ Dale Parson (dparson@lucent.com) Bell Laboratories, Lucent Technologies Abstract\ An extension language is an interpreted programming language designed to be embedded in a domain-specific framework. The addition of domain-specific primitive operations to an embedded extension language transforms that vanilla extension language into a domain-specific language. The LUxWORKS processor simulator and debugger from Lucent uses Tcl as its extension language. After an overview of extension language embedding and LUxWORKS experience, this paper looks at using Java reflection and related mechanisms to solve three limitations in extension language - domain framework interaction. The three limitations are gradual accumulation of ad hoc interface code connecting an extension language to a domain framework, over-coupling of a domain framework to a specific extension language, and inefficient command interpretation. Java reflection consists of a set of programming interfaces through which a software module in a Java system can discover the structure of classes, methods and their associations in the system. Java reflection and a naming convention for primitive domain operations eliminate ad hoc interface code by supporting recursive inspection of a domain command interface and translation of extension language objects into domain objects. Java reflection, name-based dynamic class loading, and a language-neutral extension language abstraction eliminate language over-coupling by transforming the specific extension language into a runtime parameter. Java reflection and command objects eliminate inefficiency by bypassing the extension language interpreter for stereotyped commands. Overall, Java reflection helps to eliminate these limitations by supporting reorganization and elimination of handwritten code, and by streamlining interpretation. designing, building and maintaining LUxWORKS has led to this current research project within Bell Labs. Section 3 examines some limitations that have surfaced in the original, C++-based implementation of LUxWORKS. Section 4 follows through by eliminating these limitations, using a combination of Java reflection, Java dynamic class loading, a language-neutral extension language abstraction, and a set of naming conventions. Section 5 looks at related extension language-Java efforts. Section 5 also summarizes.", ["dale-parson/dsl99lux.ps.gz"] = "Using Java Reflection to Automate Extension Language Parsing\ Dale Parson (dparson@lucent.com)\ Bell Laboratories, Lucent Technologies", ["dale-parson/dsl99talk.pdf"] = "Using Java Reflection to Automate Extension Language Parsing 2nd Conference on Domain-Specific Languages Dale Parson Bell Laboratories / Lucent Technologies dparson@lucent.com\ D. Parson, Lucent Technologies, 8/3/99\ 2nd Conference on Domain-Specific Languages\ p. 1\ Domain framework - extension language system\ User interface or program invoke return Extension language eval (text expression) apply (function, args) language primitives library classes & functions apply Domain framework domain primitives\ domain classes & functions\ Framework adds domain-specific primitives to extension language instruction set Extension environment adds interpreted language capability to domain-specific framework Users extend the system by writing domainoriented extension functions and auxiliary tools\ D. Parson, Lucent Technologies, 8/3/99 2nd Conference on Domain-Specific Languages p. 2\ Tcl - Luxdbg embedded system debugger\ User interface or programmed Tcl commands invoke return Tcl Tcl_Eval (expression) TclExecuteByteCode language primitives library functions apply luxdbg domain primitives processor management processor access processor control processor IO processor hardware & simulation functions", ["dale-parson/dsl99talk.ps.gz"] = "D. Parson, Lucent Technologies, 8/3/99 2nd Conference on DomainSpecific Languages p. 1\ Using Java Reflection to Automate\ Extension Language Parsing\ 2nd Conference on DomainSpecific Languages\ Dale Parson\ Bell Laboratories / Lucent Technologies\ dparson@lucent.com\ D. Parson, Lucent Technologies, 8/3/99 2nd Conference on DomainSpecific Languages p. 2\ Domain framework extension language system\ . Framework adds domainspecific primitives to\ extension language instruction set\ . Extension environment adds interpreted language\ capability to domainspecific framework\ . Users extend the system by writing domain\ oriented extension functions and auxiliary tools\ User interface Extension language Domain framework\ eval (text expression)\ language primitives\ library classes\ apply (function, args)\ or program\ invoke\ return\ domain primitives\ domain classes\ & functions\ apply\ & functions\ D. Parson, Lucent Technologies, 8/3/99 2nd Conference on DomainSpecific Languages p. 3", ["dale-parson/luxsim99.pdf"] = "A Framework for Simulating Heterogeneous Virtual Processors\ Dale Parson Lucent Technologies Allentown, Pa. 18103 dparson@lucent.com Paul Beatty Lucent Technologies Allentown, Pa. 18103 pebeatty@lucent.com John Glossner Lucent Technologies Allentown, Pa. 18103 glossner@lucent.com Bryan Schlieder Lucent Technologies Allentown, Pa. 18103 bryanschlieder@lucent.com", ["dale-parson/luxsim99.ps.gz"] = "", ["dale-parson/sim99talk.pdf"] = "A Framework for Simulating Heterogeneous Virtual Processors 32nd Annual Simulation Symposium, System Simulation session April 12, 1999\ Dale Parson, Paul Beatty, John Glossner and Bryan Schlieder Bell Labs Innovations for Lucent Technologies dparson@lucent.com\ D. Parson, Lucent Technologies, 4/12/99\ 32nd Annual Simulation Symposium\ p. 1\ Design Patterns Generate Behavior across Media The question is whether it is possible to write down rules or patterns for architecture--and software and art--so that ordinary people can follow the rules or patterns and, by the nature of the patterns and using only the abilities of ordinary people, beauty is generated. If this happens, then the rules or patterns are generative, which is a rare quality. -- Richard Gabriel, Patterns of Software LUxWORKS luxdbg simulator / debugger applies three design patterns across system layers: Build and extend abstract virtual processors. Build reflective entities. Build a covariant extensible system.", ["dale-parson/sim99talk.ps.gz"] = "D. Parson, Lucent Technologies, 4/12/99 32nd Annual Simulation Symposium p. 1\ A Framework for Simulating Heterogeneous Virtual Processors\ 32nd Annual Simulation Symposium, System Simulation session\ April 12, 1999\ Dale Parson, Paul Beatty, John Glossner and Bryan Schlieder\ Bell Labs Innovations for Lucent Technologies\ dparson@lucent.com\ D. Parson, Lucent Technologies, 4/12/99 32nd Annual Simulation Symposium p. 2\ Design Patterns Generate Behavior across Media\ The question is whether it is possible to write down rules or\ patterns for architecture---and software and art---so that\ ordinary people can follow the rules or patterns and, by the\ nature of the patterns and using only the abilities of ordinary\ people, beauty is generated. If this happens, then the rules or\ patterns are generative, which is a rare quality.\ --- Richard Gabriel, Patterns of Software\ LUxWORKS luxdbg simulator / debugger applies three design patterns across", ["dan-friedman/cons-not-evaluate.djvu"] = "256 \ User-Defined Data Types \ list_of_lists case of y.tl \ NIL: join(cons(y.hd.car,y.hd.cdr),y.tl) \ join: join(m erge(cons(y.hd.car,y.hd.cdr),hd(y.tl)), \ p a i,'_ m e rg e(t l(y.t I)))) \ SIMPLIFIES TO: \ I' TRUE \ PROOF OF ,5 RELATIVE TO THE ASSERTIONS: ,7 \ The sample theorems proved in this paper are typical of the theorems which \ can be proved using our verifier with a reasonable amount of programmer \ guidance. Among the theorems we have proved using' our verifier are: the total \ correctness of a program implementing a unification algorithm (assuming all \ variables have been renamed), the equivalence of an iterative algorithm (using a \ stack) and a simple recursire algorithm for counting the leaves of a binary tree, \ the total correctness of an extended version (including assignment) of the \ McCarthy-Painter compiler for arithmetic expressions [McCarthy and Painter \ 1957], and the total correctness of a very simple set of data base managemen ", ["dan-friedman/cons-not-evaluate.pdf"] = "", ["dan-friedman/old-cons-not-evaluate.djvu"] = "", ["dan-grossman/analogy_oopsla07.pdf"] = "The Transactional Memory / Garbage Collection Analogy\ Dan Grossman\ University of Washington djg@cs.washington.edu", ["dan-grossman/coordinated.pdf"] = "Types for Describing Coordinated Data Structures\ Michael F. Ringenburg miker@cs.washington.edu Dan Grossman djg@cs.washington.edu\ Dept. of Computer Science & Engineering University of Washington, Seattle, WA 98195", ["dan-grossman/gib.pdf"] = "Gib: The Generic, Embeddable, Interactive Programming Language\ Brian Koropoff June 1, 2007\ 1\ CONTENTS\ CONTENTS\ Contents\ 1 Introduction 1.1 Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conception 2.1 Principles . . . . . . . . . . . . . 2.2 Motivation . . . . . . . . . . . . . 2.2.1 Command Line Paradigm 2.2.2 Existing Interfaces . . . . 2.2.3 Scripting Languages . . . 2.3 Intended Applications . . . . . . . 3 3 3 3 4 4 4 4 6 6 7 9 9 10 11 11 12 12 13 13 15 19 19 21 23 24 25 26 27\ 2\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ . . . . . .\ 3\ Goals and Design 3.1 Interactivity . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Completion . . . . . . . . . . . . . . . . . . 3.2 Semantics . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Runtime Architecture . . . . . . . . . . . . . 3.2.2 Relationship with Interactivity Requirements 3.3 Embedding . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Generality . . . . . . . . . . . . . . . . . . . 3.3.2 Adaptability . . . . . . . . . . . . . . . . . 3.3.3 Pragmatics . . . . . . . . . . . . . . . . . . Applications 4.1 GibShell . . . 4.2 GibShell GTK 4.3 GibForge . . 4.4 GibXml . . . 4.5 GibNgram . . Conclusion Appendices\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ . . . . . . . . .\ 4\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ . . . . .\ 5 6\ 2\ 1 INTRODUCTION\ 1\ Introduction\ 1.1 Abstract\ Gib is a new programming language designed primarily for interactive use that is, as the backend interpreter for a command line interface (CLI). It was envisioned as a generic, reusable component which would serve as a scripting layer and command-based user interface as part of a larger application. Indeed, Gib unlike languages such as C or Python does not constitute a complete programming language or environment by itself. Rather, it acts as the core of a potentially infinite set of domain-specific languages sharing a carefully-honed subset of syntax and semantics, ready to be specialized for the needs of a particular program and environment.", ["dan-wang/dsl97.ps.gz"] = "The Zephyr Abstract Syntax Description Language\ Daniel C. Wang Andrew W. Appel Jeff L. Korn\ Christopher S. Serra\ Department of Computer Science, Princeton University, Princeton, NJ, 08544\ fdanwang,appel,jlkg@cs.princeton.edu, csserra@cs.wisc.edu", ["dan-wang/ugc.ps.gz"] = "Untrusted Garbage Collectors\ (Extended Abstract)\ Daniel C. Wang Andrew W. Appel\ Department of Computer Science\ Princeton University\ Princeton, NJ 08544 USA\ July 17, 2000", ["daniel-damian/icfp2000.ps.gz"] = "Syntactic Accidents in Program Analysis:\ on the Impact of the CPS Transformation #\ Daniel Damian and Olivier Danvy\ BRICS, + Department of Computer Science, University of Aarhus\ Ny Munkegade, Building 540, DK8000 Aarhus C, Denmark\ {damian,danvy}@brics.dk", ["daniel-friedman/TR44.djvu"] = "256 \ User-Defined Data Types \ list_of_lists case of y.ti \ NIL: join(cons(y.hd.car,y.hd.cdr),y.ti) \ join: joi,(m erge(cons(y.hd.car,y.hd.cdr),hd(y.ti)), \ pair merge(ti(y.ti)))) \ SIMPLIFIES TO: \ I- TRUE \ PROOF OF +5 RELATIVE TO THE ASSERTIONS: +7 \ The sample theorems proved in this paper are typical of the theorems which \ cast be proved using our verifier with a reasonable amount of programmer \ guidance. Among the theorems we have proved using our verifier are: the total \ correctness of a program implementing a unification algorithm (assuming all \ varmbles have bee,t renamed), the equivalence of an iterative algorithm (using a \ stack) and a simple recursive algorithm for counting the leaves of a binary tree, \ the total correcmess of an extended version (including assignment) of the \ McCarthy-Painter compiler for arithmetic expressions [McCarthy and Painter ", ["daniel-jackson/alloy-journal.ps.gz"] = "1\ #####: # # ## # #\ Daniel Jackson\ MIT Laboratory for Computer Science\ dnj@lcs.mit.edu\ #\ Alloy is a lightweight, precise and tractable notation for object modelling. It attempts to\ combine the practicality of UML's static structure notation with the rigour of Z, and to be\ expressive enough for most object modelling problems while remaining amenable to auto\ matic analysis.\ Alloy is a textual notation, of which a subset is also expressible graphically. It has a simple\ setbased semantics, and a type system that, by treating scalars as singleton sets, sidesteps\ the problem of undefined expressions, and allows relations and functions to be treated\ uniformly. It also has a novel mutability construct.\ This paper explains what object modelling is, and shows how Alloy can be applied to\ three problems of rather different flavours. It defines the entire language, by translation to a", ["daniel-jackson/old-relational-specs-bdds.djvu"] = "Checking Relational Specifications With Binary Decision Diagrams \ Craig A. Damon, Daniel Jackson and Somesh Jha \ School of Computer Science \ Carnegie Mellon University \ I can't get no satisfaction \ 'CauseItryandItryandItryandItry \ --Mick Jagger & Keith Richards, 1965 ", ["daniel-jackson/relational-specs-bdds.djvu"] = "Checking Relational Specifications With Binary Decision Diagrams \ Craig A. Damon, Daniel Jackson and Somesh Jha \ School of Computer Science \ Carnegie Mellon University \ I can't get no satisfaction \ 'Cause I try and I try and I try and I try \ --Mick Jagger & Keith Richards, 1965 ", ["daniel-jackson/relational-specs-bdds.pdf"] = "Checking Relational Specifications With Binary Decision Diagrams\ Craig A. Damon, Daniel Jackson and Somesh Jha\ School of Computer Science\ Carnegie Mellon University\ I can't get no satisfaction\ 'Cause I try and I try and I try and I try\ --Mick Jagger & Keith Richards, 1965", ["darius-blasband/these.ps.gz"] = "Beta\ version\ Automatic analysis of ancient languages\ Darius Blasband\ darius@phidani.be\ First release : September 23, 1996\ Version : 1.06\ Last modification : January 2, 2000\ Printing Date : January 2, 2000\ Beta\ version\ ii\ Beta\ version\ Contents\ 1 Introduction 1\ 1.1 Previous work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4\ 1.2 A word about bibliography . . . . . . . . . . . . . . . . . . . . . . . 5\ 1.3 A word about engineering . . . . . . . . . . . . . . . . . . . . . . . 5\ 1.4 A word about formal specification . . . . . . . . . . . . . . . . . . . 7\ 1.5 A word about implementation . . . . . . . . . . . . . . . . . . . . . 7\ 1.6 A word about literate programming . . . . . . . . . . . . . . . . . . 8\ 1.7 A word about me . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11\ 2 Lexical models 13\ 2.1 Shortcomings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\ 2.1.1 PL/1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\ 2.1.2 FORTRAN . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\ 2.1.3 COBOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\ 2.1.4 COOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\ 2.2 Implementation notes . . . . . . . . . . . . . . . . . . . . . . . . . . 27\ 3 lexyt user guide 29\ 3.1 First steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29\ 3.2 Structure of the input file . . . . . . . . . . . . . . . . . . . . . . . . 30\ 3.2.1 Structure of a lexical definition . . . . . . . . . . . . . . . . . 30\ 3.2.1.1 Regular expressions . . . . . . . . . . . . . . . . . 31\ 3.2.1.2 Character classes . . . . . . . . . . . . . . . . . . 32\ 3.2.1.3 Escaping special characters . . . . . . . . . . . . . 32\ 3.2.1.4 Expanding variables . . . . . . . . . . . . . . . . . 32\ 3.2.2 Available metacommands . . . . . . . . . . . . . . . . . . . 33\ 3.2.2.1 $VAR . . . . . . . . . . . . . . . . . . . . . . . . 33\ 3.2.2.2 $IGNORECASE and $NOIGNORECASE . . . . . 33\ 3.2.2.3 $BACKTRACKLEVEL . . . . . . . . . . . . . . . 34\ 3.2.2.4 $CLASS . . . . . . . . . . . . . . . . . . . . . . . 34\ 3.2.2.5 $EXCLUDE . . . . . . . . . . . . . . . . . . . . . 35\ 3.3 Capturing comments . . . . . . . . . . . . . . . . . . . . . . . . . . 36\ 3.4 Commandline options . . . . . . . . . . . . . . . . . . . . . . . . . 36\ iii\ Beta\ version\ iv CONTENTS\ 4 lexyt source code 41\ 4.1 The internal structure of lexyt . . . . . . . . . . . . . . . . . . . . 42", ["dave-wortman/concurrent-compiler.pdf"] = "A Concurrent\ Compiler\ David\ B. Wortman,\ Michael\ Computer\ D. Junkin”\ Systems\ University\ 6 Kings\ Toronto,\ for Modula-2+\ Research\ Institute\ of Toronto\ College\ Ontario,\ Road\ Canada M5S\ wortman@csri.", ["david-august/liberty.pdf"] = "Microarchitectural Exploration with Liberty\ Manish Vachharajani Neil Vachharajani David A. Penry Jason A. Blome David I. August\ Departments of Computer Science and Electrical Engineering Princeton University\ {manishv, nvachhar, dpenry, blome, august}@cs.princeton.edu", ["david-august/pldi.pdf"] = "A Component Composition and Customization Language for the Liberty Simulation Environment", ["david-bacon/Bacon01Kava.ps.gz"] = "Proceedings of the Joint ACM Java Grande/ISCOPE Conference, Stanford, California, June, 2001\ Kava: A Java Dialect with a Uniform Object Model\ for Lightweight Classes\ David F. Bacon\ IBM T.J. Watson Research Center", ["david-bacon/opt-survey.pdf"] = "Compiler\ Transformations\ SUSAN\ for High-Performance\ Computing\ DAVID F. BACON,\ Computer\ L. GRAHAM,\ of California,\ AND OLIVER J. SHARP\ Berkeley, California 94720\ Sc~ence Diviszon,\ Unwersbty\ In the number analysis and\ last\ three have\ decades been\ a large executed and\ number Most by the data-flow and\ of compiler optimization program parallel that rely using techniques.\ transformations for uniprocessors transformations In contrast, on tracking important maximize the\ for optimizing reduce based optimization parallelism properties program are to of the for on the\ programs\ implemented.\ of instructions of scalar\ quantities superscalar, with\ high-performance memory using survey arrays This loop\ vector, analysis.\ processors\ locality\ transformations overview and purpose\ dependence\ is a comprehensive techniques for both sequential the\ of the\ high-level\ restructuring Transformations covered determine to improve a reference optimizing most", ["david-bacon/thin.ps"] = "Thin Locks: Featherweight Synchronization for Java\ David F. Bacon Ravi Konuru Chet Murthy Mauricio Serrano\ IBM T.J. Watson Research Center", ["david-bradlee/thesis.pdf"] = "8 7 4 2& ( $# @983& # 65310)'& %\" ! \ # 8 \" 8 \" & @!8 3@V 8 y@W 8 # 5Q h 8 @ ! S !@8 u w @8 R w 2 x \ T8 v u s T e@3 Xt2 # V r\ R & 8 $ !! S \ 2 p Y T 3 !2T # qg e@8 $ 2 i !37 fg 3 \" T hY 8 Y WW # 8 # V 2 7 7 @ Y @8 b7W Y !a`8 UV4@7 #8 & !#8 32 'f& e8T @2 8 X8 R 8VQd 82c ! @8bTY UT3& S T \ 8 7 4 2& ( $# @983& # 65310)'& %\" R\ ! ( ! ! & ( B 3 ' B (9 % 3 2 & ) (' & % ! 445QPIH7G'F7EDCA@\"87'654\"10$\"$$#\" \ u r 8h\"2 # & 8 2 T T V& @8 @8 R 72 # a`9 \"d8 ! ! v r S w X 7 R T # R 7# PT W # ! !e@8 \"@8 UT @ 8 77 # W \" T 8 2 T T T T 2 2 d8 @ 8 7# !97 Id8 ! 8 9 # 8 # HH! T UT7 # & V FUT ) 6v FS w r 8hG H @8 W 8 $ ! W T V 2 T T u r Y 2 8 7 7 !V R TT # h Y A@8 UT @8 4 F@8 $ @8 W 8 $ ! W 2 # a`3 T # X'&7 83 e@8 T @ 8 9 @& # 3B T T E 2 2 T T D 7 8 $ @8 29A # !X W # 2 u d8 @ 8 # 5& # )& 2 # # @8 & 2 # 68 !V V t& 2 # @ F@8T @8 UT @ 8 !2 T2 2 V T 2 7 7 2 T 8 T C& 7V 9 d8 ! # 8 7 # ! 8 9 # & 2 # d @ 8 # t # @!@ ! @@8 '@8 R # @8 ! d # d8 $ 2 T V Y V T 8 T 2 8 2 8 8 & 2 8 2 2 8 T 8 T 2 282 @! W 1 ! ) v r S w 2 # @8 @@8Td87 # d8T # ! ' ! d 8 # 3@ 8 92 r 7h22 # & & 8 u 8 8& T T 8 T 8 @8 @8 R 7 9 T7 & 2 # d8T # ! ' ! 8 # @8 2 !2 d& 86@ 8 # TT # \"! 2 # ! @8 @8 R T 8 T8 T T h 8 8& 97 2 # a` T d8 & ! v FS w 1 r w @8 ! 3'D& # 3B 28 $ @8 29A # !X W # 2 Qu d8T # ! ' 2 T V r T 8 Y 7 T2 2 V T 8 T ! d 8 # @8 2 # v r S w @& 8 7 8 $ & # ! !23& 7V 923 # 9 77 # @ 8 UT @8 )& 2 # !92 & ! T 8 82 2 7V 8 2 @@8 '@8 R 3 # @8 ! ! 3& 2 # Y d @8 # T # @!@0! @8 ! d 8 # W @! W V T 2 2 8 2 2 8 2 7 T 8 2 8 2 8 8 & 8 T 282 & 8! ) u 67 !7 8 2 8 666 7# 3 66w r 8h3! 3'Y & 8 V 3 @@8 R 8 %# e # @!@ & 2 T 8 59 55577 0 5554 0 8 T 2 28 $ T 8 28 8 2 # 1!9 T i u # W # @!@& @! 2!7 # e @8 W 8 #d 8 ! & ! Q V 0 2 2 Y 2 2 8 2 8 8 8 2 T 2 V c 2 7 V 8 T 2 T 2 T2 2 # # # #!2 7# ! d& !2 # W # d& 7V 92 W 8 XT # @!@ & 87 R # @3 # 8 V 2 T8 8 T8 T 828 8 8 8 2 0 8 T T 282 9 # 1! d8TV UT3& @! W A ` ! ) u e@! W @8 ! d8UT! W # @8TUT3T ) T 8 T28 2 8 T 2 & u d2 # 2 T T 27V 8 (Y 5U ! & ! T 3 & 2 # 2 # 77 # @8 U @ 8 @@8 '@8 R # @ 8 9 ! 3%U7 S u e@8 W 8 #d 8 2 V T 2 T 2 8 2 2 8 T T 2 V c 7V 8 !92 & ! T 2 # V W @87 W r w 987 R # @ # @ 8 # Y 3 # $!2 7# 9! d& !2 # W ! $ # V 2 T 8 8 V 2 T8 8 87 # 2 &u 1 r Y ! T 8 T 2 # @8 @8 3& 8 # # d!V TUT 3 # @!@3 ! 2 !28Vd8 %!2 & ! T 2 T8 2 828 8& 7 T 7V 8 2 V 2 3 87 8Q! W Y & 8 aYQ8 R V W UT T # ! W 8 T $@987 W ! 1 r w !\"d@87 W T 2 T 8& T T # 8T ! u 8! e 9!V 7 # !V t& 2 # !2 7 8 9 8 !8 !V R d8 ! 8 @!$d8T V 2 @8 Y8 '& $ ! T T 2 2 2 Y 8 T T 28Vc 2 T 8 T1 r w A@8 !X W @T 3 & 8 & 8 6T # 2 !2 eT d8 ! & !9 7 8 @8 8 w u d8 ! 8 @!#c T V 8 2 V T 2 V T T 8 2 2 T 28V 8 T 2 !9 # W 2 # W ' $ ! 1 r 08 V # 8 R 97 & ! # W 2 @ 8 V T 2 8 2 8& T T 2 8 8T 8 2 # & 8 # T !T $ T V 2 & 8 TV Y 8 %# T1 r e@8 !X W @ T8 V 2 8 W 5e3 # @!@ ! 87 R # @ # @8 w 2 T 7 Y T 8 28 8& 8 88 !2@@!92 !2 vQ& 2 # 8 @8 r @8 !X W b @8 W # @8 \" 2 V Y 2 T u T TT Y 8 A@8 vXs 2 # V r 3d8 b h @8 W W 3UT $ @8 !V r ! b e@8 # 6 8 Y 2 T 8 7 2& ( $# @83& # 64 130)'& %\" R !(! & ( B !445QP3IH7'GF7E'DBCA@\"87'654\"10$\"$$#\" (9 % 3 2 & ) (' & % ! R # T HS 2 p Y T 3 !2T # qg e@8 $ 2 i\ D E 3E\ 7E 9E E E\ )\ D D D D D D\ E8E8\ EE 4E\ D\ 7E\ 4\ E E\ 4 4\ 4 4\ A\ E E\ 8\ 7 9\ 9E DE\ &\ 0\ EE EE EE EE 0 !\ E4 44 54 7\ \ 0 G\ 0\ EE 4E E\ 42\ E 8 5 D\ \ B\ 0 E\ \ 4 4 4\ 0 0\ 2\ 7 E\ 59 66 56565662 77 5554 66\ \ 4\ D D 4\ D\ &\ E 4\ \ \ $\ )\ \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 7 8 \"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"&\"H\" !2 V & ! r 7 # W 8 u9 \"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"%\"$\"T T 7 & 2 # dT8T T 7# 98u \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\" T X1& # # x 7 2 uD \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"%$GX1& # # x 7 # !7 V V V r uE \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%$$FT7 \" W 8 7 S !2 & !&8 r u4 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\" \" \" V$\" ! \" r &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%\"$$!%2\" $& &$ \" $\" 2 ( VS \" 28T ! @8 !u # \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$ \" \" \" \" u \"&$$%$$%$$&$%$$&$$%$$%$$&$D%2\" $\" &#\" $ \" $77\" %S $@\" $8\" %\" UT $8@\" $w &8$37\" $T\" %\" ! # W uWu A2uXruV X \"\"&$$%$$%$$&$%$$&$$%$$%$$&C\" 32\" \" # \" \" 77 \" S \" @\" 8 \" UT \" @8 w \" 837T 2 9 # A2X u \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$$%$ \" B2 # 77 S 8 @8 8 T & @8 w A2uX \"&\"$\"$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%@\" 8 !\" V\" \" V\" r # @! 8 @20( 8&! uX \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$$%$8 $&\" 32 8 87 8 8 r 8&! 98uX 8 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"7\" # @!@20( # @!@20( !u X \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"\" \" ! \" !T8 !2 ! #T uD uX \"&$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$'32 V 2 uE uX \"&\" \" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" &\"$\"$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$6\"7 \"8 !T& 8 W ! 2 V w u4 uX \"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$%$& $$%$$ %$ 528 # 7# 8 \" u X u \"\"&$$%$$%$$&$%$$&$$%$$%$$&$38 # $V!2 # ! 29! dT8 \" !2 # v 32 # uX \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"\" \"\" \" \"\" X\" \"\" \" &\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$$%$$&$8 # $V\"!2 \" # \" ! 8 # 3& 8 W @\"088 \" 2 \"!&& 2 # & 2 2 ! X \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" T \"&$$%$$%$$&$%$$&$$%$\"$%W $8\" $&r\" $32$\" % \" $V\" &\" $2$%$2\" $\" %#\" $!$@2\"8@\" &($ 2p & # 8 7# 8 w @8 !Xu # T 8 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$$%$$&$$%\" 7 7 8 2 uE \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\" \" ! \" \" \" %\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$$\"%$$&\" 8 7# 3 u4 \"%$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&1$8\"dT %V $\" $8\" &$ \"\" \" S & !2 7 w8 r h7h @8 !u # \"%\" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$&029 # 2 # 32 8 # @8T UT \" $u \"\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$)dT T 8 2@ 8 # # r dT8 2T $ 2 # 8 @!!V8 @2 08 ( 8 !& S $u$u \"\"%$$&$$%$$&$%$$%$$&$$%$$&$$\"%$!%2\" $$& &!$$%2\" $\" $&V\" (228 7 R #V !@& 8 2# @8 w @8 !$u # %\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\" \" \" 7 \" \" 8 \" \" r \" \" \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" V \"%$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&$$%$$%'dT987 R # bY UT ! \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&$$%$$#dT8 !$V bY UT !\ ! \ \ $\ 9 55577 0 66662 0 D\ \ 0 G\ &\ \ 5554 0 66\ \ 0 \ EE 68 4\ 5554 0 666\ 30 \ !\ 4\ D 4 D 4 E4 5 64 9\ \ 7 7 7\ 7\ 0\ D\ 9 9 4\ B\ E\ 4 4 4 4 4 4\ D\ 7 7 7 7 7\ \ 4\ 0\ 4 67\ 9 9\ 9 9 9 )\ \ 9 9\ 769 9 969 D 9 E9 4 69 9 9\ \ 9\ 0\ 4\ B\ 0 \ 5\ D D D D\ 9\ )\ &$$%$$&$$%$%$$&$$%$$&$$\" 9! d8 \" !2 # \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 2 T 8 7# 3 3& @8 ! S 2 w r 7h 4 3& @8 ! S 2 &$$@87 R W 8TT S r 8h ! 8 # 8Y@8 2 2! dT8 \" !2 # \"\"\"\" 8 8 2 w r 8h S 3& @8 ! S &$$%$$&$$%$%$$&$$%$$&$$%$\" !9 d8 \" !2 # \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 2 T 8 2 2 &$$%$$&$$%$%$$&$$%$$&$$%$$%$&$$%$$&$$%$$%$$&\" ! # 7 R 4 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &$$%$$&$$%$%$$&$$%$$&$$%$$%$&$$%$$&$$\" 3 8 \" 8 !V!X X \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" TT 2 V V uu \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$$&$@9 7V @8 ! # \"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"\" \" \" W \"8 \"X \" r 2 2T !2& h S X &$$%$$%$$&$%$$&$$%$$%$$&$$%$&\" d8 !V 8 S r w 5 3 !!V r uE \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" T Y \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" T \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"\" 8 \" 2 \" # \" W 8Y@8 h & 2 # @8 r W 8 X r u4 88 &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$$2\"T &\" $\" 32dT8 \" # !7V8 2#$ v # @8 !u # \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$\"$\"%\"\" \" ! \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$$&$$%\" # W W V r 2 u \" &$$%$$%$$&$%$$&$$%$$%$$&$$(9 # W ! t ! g 8 v u9 2 \"&$$%$$%$$&$%$$&$$%$$%$$&$$%$T\" &$$%$$%$$\" &8 $ 8 & p & 8 7# 8 u w u2 \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" 2 \" \" \" \" \" \" \" \" \" \"Y \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%B @ 8 # ! & # ! uD 2 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"\" \" @\" \"8 # \" \" r \" 32\" # @2 !@28 ( ! 98u uuu2 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 2 2 ! &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%( @ 8 # ! # @8 uE 2 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"\" 2\" \" # \" 2 # @8 r @8 T @8 w u4 u2 22 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"$\" @87 r @8 r @8 T @8 w u u2 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%$$&$$%$$%\"$$&$$%$&$$%$\" eTV dT8 w & 2 # eT@28 W @8 ! v u2 88 &$$%$$%$$&$($\" $@\" \" $\" $r\" %2$\" $#\" %@\" !@2$&$!$%\"\"& $&eT8V\"T\" $8@\" $% $ \" $%#8\"@2 \" $!\" $& &2\" $eT\" @8 r@8 7 U T !@& !8 @w 8 2 @8 !u 2 # \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"% \" 8$\" 0\" ( \" \" \" \" \"# 88 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&$$%$$%$$&$$%\" # W W V r uD 25 22 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&$$%$$8 %$$&$\" $%$$\" eT98VdT8 w uE \"\" \" \" \" \" \" \" \" \" \" \" \" \" 7 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$$%$&C8 29 # @!@28 ( 8h & v r S w uE u4 V 2 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"\" \" \"!2\" \"7 & \" ! r TT # @8 Q& 8 # @8 2 8 h u4 u4 \"\"&\"\"$\"\"$\"\"%\"\"$\"\"$\"\"%\"\"$\"\"$\"\"&\"\"$\"\"%\"\"$\"$\"&\"$\"$\"%\"$\"\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$)dT!\" 82 \" @87 V & # !8 r \"r 2TT # # @ T!8 @20( u8 8!u4& u4 \" \" \" \" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$ %$$&$$%$$&$%$!%\"\" 2 $$!&\"8&\"V\"7 $r \" $2%9\" $\" $V&\" $2$%&\" $#2\" %$2\" $\" & #\" $\" $%$$UT\" 8\"@ &@\" $\" w !2W 8 7 # R @ 8 F2h ! @8 !u # T 77 S 8 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$\" # @8 @28 W 8 !8VT # 8 uX8 u \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&\" 7 & ! @8 8 @8 ! # \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&$$\" %\" & # 97 3 p X8 8 \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" (%$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&$$%\" # W W V r u 88(\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"\"%\"$ (%$$&$$%$$&$%$$%$$&$$%$$&$$%!%!\" 2 $\" 2 2$#7 \" V &!$\"\" & 8 $\" r \" 7 # !7 2 !W78 V 8 & !8 bY Y r !722# 37 #V & 7V !#8 W $8 rv u2 u7 u \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\" \"\ D 7D 59 66 1 )\ $\ 5 64\ 4664 5 5 64 55 664\ 8 %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&\" # \" # w \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" # \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" V V %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&$$\" !X ! %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&$3!X ! \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" \" \" V V V V %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%\" !X ! 8 W # r \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%$$ &V\" $\" \" V !X 7 ! 28 %$$&$$%$$&$%$$%$$&$$%$$&$$%\" 2!9 dT8 \" !2 # 7 7 8 2 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 8\ 59 0 66\ ! 3& @8 ! S 2 59 6 7 E 6v u 5557 6667 4 6v u 5 54 656w 6v u v 3& @8 ! S 2 \" 3& @8 ! S 2 \ $\ $\ D 5 3 E5 4 65 5 P \ \ 9 4\ D\ A\ \ \ 9 9 9\ ) \ 59 6\ 0 G\ 59 66\ 59 ! 6\ # \ 0 0\ \ D D D D\ 59 66\ \ 4\ 9 CD ED E E\ 59 6\ 0 0\ 59 667\ \ 5E 4 4\ 7 4\ )\ \ \ 9 64 D 4 D 4 4\ &\ )\ E4\ \ ) ) ) 0\ 0\ # $\ 7\ &$$%$$&$$%$%\" TT # 7h 3 # 2 # @8\"@8 UT @ 8 b 8 A8 ! b # W W V r \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" \" \" \" \" \" T 2 8 T TT YY 88 YY &$$%$$&$$%$%$$&$$%\" v r S w @ @8\"@8 UT @ 8 b 8 A8 ! b # W W V r &$$%$$&$$%$%$$&$$%$$\" r 7h @ @8\"@8 UT @ 8 b 8 A8 ! b # W W V r &$$%$$&$$%$%$$&$$0 TT # 7h @ @8\"@8 UT @ 8 b 8 A8 ! b # W W V r \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" \" T 88 TT TT YY 88 YY \"v w 2\" (& \"\" \"\"\"\" r 2($AT\"$$\"$%#\"%$ \"$$77\"$%#\"%$@\"$8$\"$UT&\"&@$%$v\"$$&w$$2 %#\"%$8\"$37$\"$%T\"%$2\"$\"$9\" &#\" $\"12x% $r\" \" @87 R7 2V & !8 T # TR!V # 5FTrvY S Y ! 8!8 7 #V & ! Y8 8 T @2W 988 @7 9 8 8YW@8# 7 2 vS T 2(\"&\" \" \" \" \" 9 \" \" \" \" $%\" $&$$\" \" \" \" \" \" $\" \" \" \"8 \"F\"S \" \" & \" 2 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 2(&$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$$\" 8 !V V T v r S w \"\"\"\"\"\"\"\"\"\"\"\" # 8 &$$%$$%$$&$%\"$$&!$\"\" 2 $%!$\"8&\"V\"7 $Q\"T\" 2 X T ! & & V# &T 22 # dTX&8T & # 8 7 8 ! 2 28 & @2 8 # @ 8 & 77 26@8 5UTY dT 8@87 V & !988 7 T W # v \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\" \" \" \" \" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" 87 \"&\"$\"$%$$%$$&$%$$&$\"\" \" @\" 87 \" \" W \" TT # h Y 7 2 # # ! 8 R & 8 !#& !! T V 8& E82 88 &$$%$$%$$&$%$$&$$%$$%$$ \"\" \" 7 # !8 ## # & iT 32h 7# 7 !&88 TT bY 7# &8 2 #$ T @2328 W 98# 7 v \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$ \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" 8 T 7 85 84 &$$%$$%$$&$%$$&$$%$$\"%$$&!$$V\"8@2\" $8dc\" %$&3\" $\" $W %8\" $ \" 8 @8! 8 7 W # W7 8 098& 87 ` 3W & # v \"&\"$\"$%$$%$$&$%$$&$$%$$\" \" \" \" \" \" \" 2 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$&$\"$ %$92&7\" $$)$& $#\" %$\" 7 !88 7 3W'Y # 8T 8 32 # VW W 8T 2 ! \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\" \" \" ! \" 8 \" %\" ! \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" 8 \" & 8 \"&\"$\"$%$$%$$&$%$$&$$%$$%$$\" dT8 @2! 8 $Vdc8T 7 # # W 8 2 dT8 @208 # 2 @8 7 S \"&\"$\"$%$$%$$&$%$$&$$%$$%$$&$\"\" \" \"8 \" @2!\"8 $V\" dc \" T8 \" 7 \" \" W 8 8 3 8 ! W 7 9V 8 7 S \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" 7 \"\" \"\"7 \"\" &$$%$$%$$&$%$$&$$%$\" 9V W 2 !2 # 7 Y ! d& 7 # \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$$%$$&$$%$&$$%$$%\" 9372 & # & !T 2 8 & ! r $ # ## $ # 23 \"&$$%$\"$%$32\"T $\" &$V\" %\" 2$&$$W\" %92\" $\" $ %!$92\" $\" & $$&\"\" %$!& $$8@\" %@\" $$\"\"8 2 %$$6&\" Y\"\" dT8 ( S \" 8 983&7 7 W # v \"\"\"\"\" &\"$\"$\"%\"$\" \" \" T$\" \"8 \" \" \" \" \" 2 \" &&\" \" \" \" \" # \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" # \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\"%\"\" &\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"\" 8 !dT V98 7 R V# @T !8 @# !W8 @28#2 8@ 8 !& h \" 22 \"%$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$%@8\" $8\" $& \" $2 @! 8 8 W @8# 8 v \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$ \" \"8 # \" R TTV 7 ! \"%$$&$$%$$&$%$$%$$&$$%$$&$$%$%\"\" \" \" \" !\"8 \" !2 8 W Y W 7 # S \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$%\" & h 87 8 W r \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&$$\" T 22 # W '7Y8T 2 # 7 ! 7V ( %\" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \"%$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&\" 29 !UVY 8 # dT08 W # v \"%$$&$$%$$&$%$$%$$&$$%$\" !2 # 7 # V 9 T @8 5@87 W h \"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$$&$$%$%$$&$$%\" \" pT 2 # V T 2 h 8 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"\" \" T %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$\"28 ! V V7# T 8 & 2h 9# \ D\ D 2 u E 2 u 4 2 u 2 u 9 98uD uu9 99 uE 9 u4 9 u 9 E 8 u D 4 u D 3 u D 5 u D u D A2uu7 DDD 98uu9 D uD D uE D u4 D u D 4 XE u u XE 5 XE u XE u 7X u 2 XEE u X u 89D XEEE u X u E XE u 4 XE u XE u\ 1 \ $\ D\ E $ 4 5\ \ \ \ 3 3\ G G G\ \ 3 \ \ 5 5 5\ P\ \ 7 65 9 65\ \ \ D 2 u Eu $ 2 4 2 u u 2 5 2 u 2 u 7 9\ \ P\ \ 2 uu22 8 uu22\ \"\"\"\"\"\"\"\"\"\"\" &$$%$$%$$&$\" TT # h @8 $ v r S w g8T # 8 2 8 2 # W 8Y@8 T Y \"\"\"\"\"\"\"\"\"\"\"\"\"\" %$$&$$%$$&$%$#TT # @8 $ r 8h g8T # 8 2 8 2 # W 8Y@8 T h Y r \"\"\"\"\" %$$&$\" v FS w @8 7# & # 7 !37 @ @8\"@8 T @ 8 b 8 A8 2 2 8 TT Y \" \" \" \" \" \" \" \" %$$&$$% r 8h @8 7# & # 7 !37 @ @8\"@8 T @ 8 b 8 A8 2 2 8 TT Y \"\"\"\" %$$&\" TT # 7h @8 7# & # 7 !37 @ @8\"@8 T @ 8 b 8 A8 T 2 2 8 TT Y %$$&$$%$$&$%$$%$$\" v r S w @ 8 7# 3 # @8 b 8 A8 2 2 Y \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" 2 \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$$%$\"$&T$T\" w \" # Tr 7h7h# # @2@2 8 8 7# 7# 3232\"T ## @@88 bYbY 88 AA88 \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\" \" 8 %$$&$$%$$&$%$$%\" v r r S 7h 22 # 22 # @@88\"@@88 T T @@ 8 8 bYbY 88 AA88 \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"\" \" T\ \ 8! 8! 8! 8! 8! 8! 8! 8! 8! 8 ! \ Yb Yb Yb Yb Yb Yb Yb Yb Yb Y b\ # W WVr # W WVr # W WVr # W WVr # W WVr # W WVr # W WVr # W WVr # W WVr # W W V r\ \ 95 64 5554 66\ 5! u\ 5554 666\ A\ 0\ \ \ 7 7 9\ 0 0 0 0\ 98u\ 7\ uD uE u4 u\ 7 7 7 7\ C\ 7\ '\ C\ \ \ D\ E 4 5\ \ '\ 7\ \ \ 7 7 9 7 9 7 4 7 7 7 7\ \ \ 4 2 u 3 2 u 5 2 u 2 u 7 2 u A29 u2 98uuu22 D 2 E 2 u 4 2 u 2 u\ \ G\ \ u2 u9 u8 uD uE u4 u uE u4 u\ 9 9 9 9 9 9 9 4 4 4\ 0\ 5 67 7 7 69 4 5\ '\ 59 6\ 5557 6667\ \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &$$%$$&$$%$%$$&$$%$$&$$%$$%$&$$%$$&$$\" # # & # w w & 8 # @!@ 3 &$$%$$&$$%$%$$&$$%$$&$$%$$%$&$$%$$\" ! \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" 8& 828 2 3 # b 8 W 3!V ! 8 & 8 # W d8 7 # V # g # & 2 # 8 W !V ! 8 7 # V S Y 28 T Y 28 \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" 7` 828 8& 2 3 &$$%$$&$$%$%$$&$$%$$&$$%$$%$&$8!b ! 3 # @!@! 3 # # # 2 &$$%$$%$$&$%$$&$$%$$%$$&$$%\"$T\" 8 $uUT2 @8 # FTTW 3'8 2!8&Y @ 8 !09 8 8 ! W #VdTT8 & 87 !W8 28 X TW #T W32327 ## \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\" &$$%$$%$$&$%$$&$$%$$%$$&$$\"%\" # \"\"\"\"\"\"\"\"\"\"\"\"\"\"\" 3 &$$%$$%$$&$%$$&\" V 8 0 8 W # # 8 2 V 8 $\" !# @T T & @ ! & 2 & 2 & @ 8 W ! !!F! Y 8 \" dT\" 8 \" @\" 8 \" # \" T \" 2\" 9\" \"# @\" !@2\" 8\" \"8 !\"& \" & 2 # dT@8 T @8q@# 8 UT @ #8 TT # 2 # 2 # # 3 !92 # W bY 8 v 2 &$$%$$%$$&$%$$& $\"$%!$#V\"\" # T \" !# @$V8 T #0@38& T @8 W !!#8 2& 62 #T 2 # & 2 # & W @8! W ! ! 7 !bY2 FV !8 8 vY \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\" # #8 E8 &dT$8\" 7# $@\" %\" &8 # $\" 7 $T\" !%2\" 2$9\" 7 $\" &@\" $@2%8\" $2\"T $!&\"8 &#\" $\" & $2\" 2 %#\" $323\"$\" !%8\" 92$\" $2\" #&W$\" T$%\"T\" !2$ \" # &$@\" \"W 8 T#TdT @8 t\"@82TT @8 T T # @@@!888 @28T T @ @8 U8 T8 !@& & 8 2 # bYbY dT8 88 @2vv8 \" \"! \" 8\" d@ \"@ T8 @8 UT @ 8 & 2 # 3 # 2 # !2 # W T # @8 # Q # @!@ & b 8 v &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$$&$$%\" d8 @8 7# \" T 8 \" \" T \" \" \" \" \" \" \" \" \" \" T \"2 \" \" \" \" \" \" \" 8 \" \" \" \" \" T \" \" \" \" \" \" \" \" T \" 2 \" \" \" 8 \" 2 8 \" \" 8 TY 2 & # 7 !7 # 8 # 2 # !2 # W T # @ 8 Q@8Q@8 UT @8 b 8 v 2 T2 8 T TT Y # # \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" T &$$%$$%$$&$%$$\" d@ \"@8@8 T @ 8 T # 9 # 2 # @8@ 8 UT @ 8 b 8 v \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$&$T$8\" \" T dT@8T \"@8T @8 T T @ 8 T2T dT 8 @2 8 7# 2T @8 YbY 8 v &$$%$$%\" v FS w 2 9 # 2 # !2 # W @8 ! T # @ \"@8@ 8 UT @ 8 b 8 v \"\" \" \" \" \" \" \" r T TT 88 8 T 8 TT TT Y \"&\"\" \" \" r \" 8h\" \" & 2 \" # \" TT\" # \" \" \" 7h\" \" 2\" 9\" \"# \"2 \" # \" \" !2 # W @88 ! TT # # @8 # \"@8@ 8 UT @# 8 bY# !8 !v \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"%\"$\" &$$%$$%$$&$%$$&$$%$$%$\"$&98dT\" $ \" \" @2 dT8 8 7# @2298 7# # @& 8 7 & @78 3!! rr && 22 # & @387 !22 ! \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" &$$%$$%$$&$%$$&$$%$$%$$&$$%$&$$%$$%$$&$$%\" TT # T h @8 $ v r S w & 2 # r 7h b6!$ 3 W # !2 !2 # !$ 5! 6@8 $ !& @8 \"3 # @8 $ S Y TV V Y8 V 8 T 8 \"\"\"\"\"\"\"\"\"\"\"\"\" 8 Y # h $ r w # V %$$&$$%$$&$%\" !$ UT) ! 3'fTT # @8 $ v FS w & 2 # r 8h g !& @8 r \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%$\" V !$V 2 88! 3'YYfTT TT hh@8 v rrFS & 2 r 8h YgY !VV& 8@88 r \"\"\"\"\"\"\"\"\"\"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\" ! #V 8 8Y@# 8 h 8! 3'YfTT ## T h@8 $$ v rFS ww & 2 ## r 8h gY !V& @88 r 2)%$$&$$%$$&$\" !#V @8 T ! ! 3'fTT # T @8 $ v FS w & 2 # r 8h gY !& @88 r \"\"%$$&$$%$$\"&$%#V$\" $\" %8\" $\" $W &@\" 8$$\" $%!$\"8 $3&'\" fTT dT98 T7 h @!8 2 37 v F r S @ 8 UT& 2@ 8 r gY8h 2gY UT!# V & @8W 8 r %\"$\"$\"&\"$\"$\"%\"$\"$\" \" \" ! \" \" \" \" Y\" \"\"\"\"\"\"\"\" \"%$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&$\" d8 @ 8 7# 7 \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" \" T 2 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$\"&\" dTdT9898 @2@2 8 8 7# 7# w\ 5554 66\ 1 \ \ 7E4 E4 9E4 E4\ \ 0 A$\ 4 4 4 4 4 4 7 67 7 67 7 67 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 7 67 7 67 7 67\ S S S S S S\ S S S\ '\ \"\ 0 %$\ \ '\ \ 0 A$\ DE4 E6E 4 4E4 E4 5E4 4 64 74 664 4 64 4 64\ '\ \ \ 0 %8\ S S S S S S S S S S S S S S S S S S\ S S S\ '\ \ 0 A$\ \ 94 664\ '\ \"\ 0 %$\ D4 64\ '\ 4 E 64 44 664 4 64 4 4 4 4 4 4 4 4 4\ \ 0 %$\ \ 08 \ \" \"\ 54 664\ '\ \ 0 %$\ 7 9\ '\ \ D\ E $4 4 5\ \"\ \" \ 5 64 5 64\ 75 664\ 59 6\ r \" \" \" \" \" \" \" \" \" \" \" \" T 8 2 \"&$$%$$&$$%$%\" !$V 2 & 2 # UT) '8Y @8 h ! Y # # & # v rFS w ! T \"&$$%$$%$$&$%\"\" !$V @8 T # & 2 # 8 W @8 $ ! !h8 8 Y # # & # v FS w ! T \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" T 8 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%$\" T T !$V 2 # & 2 # UT# ) 8 8Y@8 !F8! Y ## ## & ## r 8h !! T \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%$T\" \" !$V @38# T & 2 8 W @88 $ ! # # Y # & # T r 8h ! T \"&$$%$$%$$&$(!$V 2 # & 2 # T 8 8Y@8 !h 8! 'Y # # & # 6TT # h ! T \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\" \" T$ \" \" \" \" \" \" \" 8 \" $ \" \"! \" \" Y &$$%$$%$$&\"$%!$$V\" &3\" $$38@\" %T $$%&\" $2\" $8&\" $$@W\" %$&$$%'\" $\" # & # & 6# T T v FSTr w h ! T T \"\"\"\"\"\"\"\"\" \" ! \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \"\"\"\"\"\"\"\"\"\"\"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"&\"$\"$\" \" \"$\"%\"$\"$\"&\"$\"$\"%\"$\"&\"$\"$\" \" &$$%$$%$$&$%$$&$$%\"%$\"$$%$$&$$% $&$h $8 \"%$$#\" \" # & # # # 6& TT # # rT 8hh !! Y TT \"\"\"\"\"\"\"\"\"\"\"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\" T !$V 302 # & 2 # UT# ) '88Y@8 !F! Y ## ## & ## v r S ww YT 2 &$$%$$%$$&$%\"\" \" \"T !$V @8 T & 2 # 8 W @8 $ !h8 8 Y # & # # v r S YT \"\"\"\"\"\"\"\"\"\"\"\" \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$$T T !#V 2 0&# 2 UT# ) 8 8Y@8 !F8! Y # # & # r 7h YT 8 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$%$\" !$V @8 # T & 2 8 W @8 $ ! Y & r 7h T !h 8 # # # # Y \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"\" T T !$V 2 # & 2 UT# ) 8 8Y@8 F8! 'Y # # & # 6TT # T h YT \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"B!$V @38 T & 2 8 W @8 $ !h 8 'Y & 6TT T h T \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\" &$$%$$%$$&$%\"$\" !!#VTT $V @8 2 T 0&# 2 # & 2 #UT# ) 8 W @8 8Y8 @8$ !F!h8! !33''YY ## ## # && # ## # vv rr SS ww TT \"\"\"\"\"\"\"\"\"\"\"\"\"\" 8 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$ &$$%$$%$$&$%$$\"\" !!$VTT $V 3 0@ 8 2 T # & 2 & 2 UT# )8 W @'88Y8 @8$ !F! # # Y Y # # # && # # rr 8h8h TT 8 \" \" \" \" \" \" \" \" \" \" \" T # h 8 \"&\"$\"$\"%\"$\"$\"%\"$\"$\"&\"$\" !#V 2 & 2 UT) 8 8Y@8 F! Y & 6TT T h T # 2 &\"$\"$\"%$$%$$&$\"\" \" \"T !\" $V \" \" @\" 8\" T \" 0\"# \" & \" 2 # \" 8 \" \" \"W @\"8 \" $ ! \" !\"8 \" \" Y # # # #& # 6TT # T w h T \" \"\"\"\"\"\"\" \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"\" # & # # v r S R T 8 \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$&$$\" & r 7h R T %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$\" # # & # v FS w T \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"\" \" \" # # & # 6TT # Tr h R T %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%\" # # & # r 8h T %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&\" # # & # 6TT # h T \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" \" \" T r \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$\" # # & # v FS w T %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%\" # # & # r 8h T \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&\" # # & # 6TT # h T \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \"\" \" \" \" \" \" \" # # T # 2 %$$&$$%$$&$%$$%$$&$$%$$&$$%$%$$&$$%$$&\"$\" # # & & # \"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"%\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"$\"$\"%\"$\"%\"$\"$\"&\"$\"$\"%\"$\"$\"&\"\ 5557 6667\ 7\ Eu 6E 5! 4 E 5! u u !E 5! 5 E 5! u 4 5! u 7u 64 5 2 4 5!! u 5 u 869D444 5!!! u 5 u E 4 5! u 4u 64 5! 4 5! u 5u 64 5! 5! u u 5 297 5!! u 5 u 8D 5!!! u 5 u Eu $ 5! 4 5! u 3 5! u 5 5! u 5! u u 5 A27 5!! u 95 u 985!! u D u5! E u5! u 5! 4\ u W 8 X\"@8 !X W # UT # # T 2 # u 3 # 0 !V S T T V ! 2 2 @8 Y # & 8 W # 2 UT 9 # @8 TUT3UT 7 # @8 UT # W 8 XF # @!@ ! ! ) d@8 !X W # T 68 x 2 & 2 T T 828 8& 8 u V # u $# 88 4'& %\" !!@!2 W UT UT ) X& @8 'Y @! 8 W 8 ! 2 T # 7 # '&$ # F!V S e@8 !X W T 2 8 V& 7V 2 0 2 T V !23B 2 # @8 R @8 Y S # e # Y8 # # # & 8T T # !T 7 !V '&7 77 # TW # T # 1 8 W u T 8 8 2 8 ! W Y 8 aY 7 W 2 8 @8d8 ! 8 $ UVY @& # T # $@8T # ! # $ ! # 0 8 !V # # 8 0 2T T 7 8 2 2 2 u d !!8VT 7 # W V W 8 W 8 $ # & 2 # 68 W d!8VTUT) # W ! & 2 # # @!@ ! Td87!$ & 8 TV UT3& @98V ! r R 4 T8 2 2 828 8& T 2V T 278 ud b # 8& ! T B 87 R 8 W & 8 # 92 d! s '& %\" IB3 P8 W B # b 7T 8 $ 87 & 2 # 8 @8T R # Y T 0 7 V 8 T8 2 $# u Y 2 Y T $ TV V Y T 0 b d8 %# 87 $ @8 W 2 @8 $ 'g )1 # UT $ @8 !8VT & 2 # & @8 'Y 8 $ !!8VT # T # e @8 R w B # 0 2 T u d8 9 $ # 8 @8 \"@8 !X W A3!2 2 8 # # T 2 T V 2 $ 8 W !2 # !$ @8 & 2 # e2 # W W @8 UT 7 ! 772 X& @8 Y $& @8 W 8 @@8 R 77 # 8 %# # C r V 2 T 7 2 T 2 TV 2 28 2 # V r & 2 # @98 7 w # @8 R w 8@ 8 5 r $ @8 @8 $ v !!2 # $ w 2 XR w A8 \"@8 ! # ) @98V ! r R 64 T p 82 T R s 2 7 8 u8 4 & W '&7 V R & 8 7 ! 8 2 T ! e@8 0 77 4 d # ! 8 7# 4 & '8Y 87 S & 2 # # 6$8 UT @!8 !#!@8 8 ! TV & # W d87 # )& 2 # u8T u 8 V2 8 T $ 2 7$ # u ! YV 77 # b W @& 2 # !92 8 %!2d8 @ 8 92 W # ! 8 # & # ! & # W 8 %# 77 # @8 R 7# 987 S 2 Y T T V 8 8 & 2 # 3e@& 2 S # !A@8 77 4 W \" @8 @8 h ! 7 # @8 R # 7 5 ! 3& 64 R w # C! ) 2 T8 2 T 0 2 # V p v 8 8 8 w2 V 8 ) 7 & 2 # # ! &# & # w 2 # 7$ V r 2 $ 8 # \"# & @ 8 # w @ 7& 'T 0( 77 ! d87 # 92 ! 2 7$ # 4 T $# 8 V # r 8 %\" $@ w e@8 7$ S T # f 7 # ( u A # @8 ! @8 $ Y 8 W 9 $! 8 W # T ! 2 T 2 x T 8 8 8T V 8 & 2 # 8 8 W # T ! R 8 # T & # 2 # W T # !3 7 R # h '& %\" !2 @8 $ 92 & 8 d8 @8 2 8 8 2 $# u 8 T T # & 2 # 8 W T # '& 2 # W & 8V UT3& 7 @8 !@8 1 # h '& %\" u # @8T UT3& UT b6e # & 8 8 $ 8 8 TT 7 & $# 2 Y T T # ! ) & @8 H& 2 # # !2 r # W V d # w d @8 W & 87 ! # 8 $ @8d& e @& V T H9 77 '8b @8 R W 2 S 2p T8 u 2 8 2 T8 T 28 YY V u TW # @6$9 # & !$ 77 # & 2 # TV 28 TV 2 2V !2 # 8 8 @8 5@8 !X W @8 77 8 8 UT6 Y 6 # C r & 8 ) & 2 # d8TT 7# T # W ! # W & 8 2 # $ & # UT 2 2 T V 2 T 8 8 W \"!V !2 !X '#$@3 % 77 !eT d'8b !0@98 77 92 i W & 987 !2 # 7 '&# V Y8 4 T T Y 8 2 8 8 7V $ u # @8d8 ! a`@8 T 7 R X A ` W 8 %# & 2 # 8 @8 \"@8 !X W !2!8 2 # @8 R T # W ! # W b 2 2 T 2 VT 2 T V 7 8Y & VT W & 8 # @87 8 @ # 7# 8 !V T @ & 2 i u d87 V ! 6 !8Ve!X 08 W & 8 92 & 2 # T # W ! # W 8 8 T 7 Y 8 8 T V T 8 2 d8 @8 2 !23!& V R W # $6@987 # r u F UT # b$ @8 W 7 ! r d8 3!! @8 R & p 0 T & T V p 2 x 2 T u2 d @8 W # @& ! b'& A!$6eUT@8 H@8 !X W R # # & 2 # 8 8 Y 8 T V T 2 T V 2 T 28 V T A @& Q& 2 # e d'g ! ! W # 9 # !V W W e@8 5 # @8 W $ @8 @8 67 R 8 # & ' $ ! T TT 8Y 2 2 2 T T Y 2 2 2 2 8 8& T # 3%!2@@!92 !2 Q& 2 # 8 @98 r @8 !X W b6 @8 W # @8 \" ! b e@8 # ! $@8 # 4 !$ ! A2 # 8 s 88 v 2 V Y 2 8 Y 2 T 8 V u8 $@ 8 W W W !# & & !$ 987 @! r V 8 2 V 8 V 8 @!2 @8 p & 2 # $ 8 ! A2 # Qu e@8 W W UV97 ! & '& $ ! & 2 # 9 # @8 TUT3UT & # 8 @& 2 r # ! x T2 7Y 8 8 2 & 8 u W ! 8 $ 8 # 8 & 2 # UT7 # ` 8 t!2 A58 W & 8 7 ! T # !T 8 W !T UT 2 # # Y UT $ & # W @@8 R T 8 `8& 8 8 8 72 28 T # 2 # V r u @8 W 3 # !$ @8 & 2 # 7 R 8 $ 3 2 UT !$ ! # 8d 8 UT 8 # T & 8 7 ! T # & 2 # T 2 8 V 2 T V T 8 T d8 $ 8 e@8 8A@8 $ 3!2 W # 8 W & 8 ! W ! T # 8 u e # aY7 # # & 2 # 8 $ f'3UT $ & # W @@8 R T # T T & 8 8 xT8 `Y 28 @8 R w u W # 8 @ @!@%687 R # # # & 8 W '8 $ # %e@3 v 2 # V r & 2 # !@8 @8 R w AUT $ & # 6 0 8 828 Y T8 T 2 x T \ r\ )\ v0 tv ( \" v ! 1 p\ S\ \ u XA2 # d83& @8 W 8 $ 3 ! ) d9$P # T TT 7 2 2 # u Vc & 8 d!8V@8 $ !!$@8 T Y# T 2 F 08 W & 7 8 %# & $ &!T 3!$! 7 S $8 $ 3 !!8VT 97 8 @8 W & 2 # T8 T 82 8 T ` 8 $ 7V 8 V u 7 72 28 !2 $ %! T @@8 R T # !q 77 # b u 9 # @8 TUT3& UT & # 8 b ! @8 $ 8 T # ! r u 3 e@8 $ 3& 7 # T 8T Y T 0 2 Y 2 8 2 T & '& $ ! T # ! r d @& V F 8 # & # & !UT W Y# UT b 8 @87 # ! Y e 7 @8 W !# & 8 # 8 T # 8 8 u 28 T V 8 Y 8 T 8& V $ T 8 2 ! r u 3!!V @8 2 & 2 # 8UT @!8 & & @!2 A V W 2 # !$ W ! 92 8 W & # & T # ! r 7u7 8 %# 0 V 8 8 88 Y T 2V 8 8 8 87 R # @8 & 2 # # W ! 0 # @! W ! & ! 2 # 8 T # ! r 7u7 ! 1 8 # & # & @ 8 # '&$ # T 2 8 8 82 8 8 8 T V 2 7V 2V 8 T !$ ! T # 8 $ W !92 77 T # 22 ! $987 R # 7V # $ 2 @@8 R T # 6'8 Y & W G1 # ( ! #u 28 & 2 # u T8 2 !23& 2 # e@& !V & 2 # !2 # !# @8 @8 $ @@8 R 8 $ # 3G1 # ( # \"& 2 # 82 Xe@ 8 # T 6'8aY 0 V 2 28 & 8 0 v T2 # u F 3 2 @8 W 3 $ @8 !2 2 # 87 # & '& $ ! 6!$ # ! r w & 2 # # q e@! R 0 u 9 8 3& 7 # V 8 77 8 2 2 2 2 8 8V s T8 T2 $ 8 2 W !8Ve!X 8 W & # !$ @8 & 2 # 8T # R 7 # W 8 987 R # T # & '& $ ! X # 7 # 8 %# @! ) u 2 # 87 8 T V 8 V 2 2 8 T 8 d& # & 2 # & 8V # 8 $ # 8 W 2 & 8 77 2 6@83& # 64 77 @8 0 & 2 # 87 & S e @8 # 0 T8 8 T T 8 7 8 T2 \ 2 @8 @8 a3& 8 # 1 r w Y d!8VTUT) # @!@ & ! UT T # ! W 8 7 # ! YV 2 aYT ! b 8V # 64 T T8 2 828 8 8 22 8YT8 u 1 r w W & !$ Y e@8@ 8 UT @ 8 @ 7# ! 8 V 7 8 $ 8 A8 T T 2 2 V T T 8 8 T # Td8 ! T # 77 # @8 UT @8 7 # R 7 b W Y 8 W UT 8 W 87 8 W Td8 @ # W 8 W T 82 2 Y T T Y b 9 # ! 8V # 8 R & 2 # e@8 UT @ 8 2 !& 8 R V W # !X W 8 V # 8 R 93!& # 2 !2 & ! T 8T T 8 2 T 2 V T 2 & u 7V 8 2 V 2) 9 87 8T ! W 'Y & 8 'aY T 8 R V W UT T # ! W 8 T $@987 W ! 68 A8 @! ) u @87 W T 2 8& T # 8 Y 8 8 ! e !H7 # !V & 2 # !92 7 8 8 !& 2 # # !9 # @8 3 W @8 W 8 W T T 2V 2 2 Y 8 T 8 82 72 T2 T 2 7 T 1 r w e@8 !X W @T 3 & 8 & 8 T # 2 !33 W W Ad8 ! & ! 7 8 @8 8 w T V 8 2 V T 2 V 2 7 2 T TT 8 2 2 u # 77 # @8 T @ 8 '& 8 !& 8 ! 2 8 V 7 # R 97 W 8Y@8 !& 3& d T8 # 8 W T 2 @& 2 # !92 & ! C9 V 92 8 ! & $ e # @!@ & 2 T 7V 8 T 2 T 2 7V T 8 28 8 8d! ) u 987 8T ! !2 # W 2 @ 8 # )& 8 # UT!T & 8 # 7 # H # 9 # a` 8 T !2 # W & 8V T8 2 8& Y T2 8 T # # T 8 28 8& 2 e # @!@! 2 # W ! 3e 8 ! # '8Y @! & 2 # UT 7 # 8 8 T T V 8 2 # W 3 # @8 3 W W W ! @8 W 8 W 1 r 8 2 r Gu$E 7 2 S 6667 7 8 2 P! & 2 # U 9 4 4 S S 69 E T2 2 T 8 2 7 T U @& !29 927 7 5 8 8 '&8 & 2 T D @28 @8 5 a3& 0 P4 ! F 7 \" TRS 8 U S Q v \" ! T # 8VT d8 !V 8 # r 2@8 !X W @8t V 2 8 W 8 T V T2 T 7 $88 Y2 t 87 8T ! & 8V 'Y 8 %# & # & T 7# ! 2 & 8 7 8 $ A # @!@3 & 87 R # @ # @8 w 8& 2 T 8 8& T 8 28 8 8 u e 8 ! 8 # bH@! 6 # W !3 @987 W T Y T 8 T2 28 2 8 8 2 @& @8 @& 929B@ # 3 # 7V # $ 8 !V # '87 # !V 8 9 # T # 8VXT T # @! 3 3'Y d8 !$d 8 2 # W d@8 'Y 8 Y T 8 T V T V T8 Y 8 68 A8 @! @& 2 # A8 b Y W V W 92 W # & 8 ! ! 8 R & & d87 R # @8 aY6687 R T UT V& 8 T 2 T 8 # W 2 # W 8 T \"87 R # @3 # @ 8 S $9 #c e # @!@! 9 7 # #c 9 V 0987 R # 8 R & @!2 T 8 u 7 V T 8 28 8& V T2 88 T YV T e@8 !V # 2 # W T d8 ! # W 6A Y# 8d! !$@! @3 ) 4& 8 a` # W 8 # d8 @8 @8 a3& ! 6d8 7 W Y# 7 T T8 8 8 u 2 T 2 8 T 28 T2 @@8 '@8 R 3 2 UT3& 7 # !V 8 # 2 # a` T 8 R 2 # 8 @! 7 W # H Td8 ! # 92 @8 $ 8 @1 ) 2 8 Y T 2 & u$! 9 7 # #1 8 # @!@ V W @87 W A%68 @8 W 68 ! 8 # !2 # 'Y 68 A8 @! ) $8 2 # W 8Y@8 8& Vc 828 T T V 8 Y 8 u 9 8 $ 8 # ! # $!2 # 7 R W 8T T # b 858 $ @ 8 8 ! R ! 3!$!@8 7# T 8 !V 8 # 8& 8 V 7 Y TV T2 8 V2 8 8 !2 # & 8 3 8 R V W # 8 # bT b 8 W 7V $ ! @& 8 r u T W 8 T T ! & # !!V e@8V T YY 8 2 8 8 T T V !92 & 2 68 $ ! W d!2 8 2 # W 8Y@8 Td8 ! $ e ! u 3T # 8 7 # @8 $ 8T Y 2 # W 8 # T8V 2 T T T 2 # # #w ## # #6# ## \ 6\ !\ # $\ \ P6\ ! \ \ 6\ B\ %\ !\ 3\ A\ ! !\ # 6\ $!\ !\ %\ !\ !\ !\ \ T 8 28 8& e @!@ ! 87 R @ @8 d@ !2 'Y ! d 8 @!@ 0 $ !2 W @3 !2 b 8 u8 8 8& T 828 T 8 8 8Y 2 T8 ! d& # !92 $ R 77 # # W !V # & 3!2 # 8 R 2 # # ! UT 3 # @!@ ! 7! P4)$ 4%24)( '! S 8 82 828 8& D 1 ' 1 u A!V 7 # ! YV T 2 2 2 & 2 # d!2 7 8 T @3 # ! d8 V 7 @8 8 8 W # ! !2 ! ! R 8 @! ! T 7# & !2 7 8 9 '& %# T8 8 8 T T 2 8& V& 8 8 8 $ T2 V 2 !92 # W d!2 # # 8 E5& 73 2A I 2B!43$EA4'I B&H& 2 # 8 !& 8 ! 8 @8 2 # @8 $ T 8 T8 % 9# & 19 1 3 V 2 T 8 e@8 T @ 8 !2 # W d8 # W 8 & 8 # @!@ @87 W & 2 # d87 R # # $ @8V # W 65!432\"$! B7 )7 T 828 T T T # ! & 1 # ) (' 1G 230% '! 7 F)E 7! C # # # 8 8 8 # D %8 7!& 7V 2 UT7 8 W 2 @#!@28 8 & 8 $u3 $V!2 7# @8T !88 # 32W !#8 8 !2! ) % W bY7) 8 1$TdT8 ! ! 2&B!43$1\" (#A!@dT & 7V 2 29 @!@28 & 6du@ T8 2 V 2 T !92% @8 ! 3 (%86982& V !%42'4)1 8 # # #V92 !2 W 7# # 8 # 3!& 8 W @2@887 # 2$ $V2 dc# 8 77 92 # T 2 # W W '87YT2 # # eT !X W !# $V ! 8 # $V6&!5! 243217# 0)('7 8 $&$ 8973$#\"! # T eT!3W X'V !8 Y @2 8 @ 987 @2!8 W & 2 #S T \ A\ \ 7V 8 7 Y T V 7V 8& T 7 7 !2 & ! T V A8 77 # 8 !V! # '&$ 7 ! W UT ) u e@8 98V W & 2 # d8 TT # R d8V R d! 7# d # T T T T T8 T8 77 # d& 7V 2 # !2 # W @ # ! b7 ! W 7 8 $ 8977 # T W V 8 T ! g & @0@! ! S T8 8 8 8 Y 8& 8 Y 28 8 8 u 8 28 & !2 @ # @8 @! \"& 8 a`3! W 8 R V W # T T V T d8 !& 8 ! 6d87 R # 7 # 93!& # !29$d 8 68 W ! T T # R ! 8 # W d8 ! # 8 H8d! ) u A@8 UT @8 b 2 & Vc 8 8 7 T V Y T8 T Y T TT e # 6d8 @ # & @!0! 6d8T # R 7 # 3! A!3$@! @3 9 92@8 ! ! & 2 # @8 W 8V 882 8 T T 2 228 8 T2 V T V& T2 8 2 28 2 8& ! @& @8 @08 # # d8 @ 8 7# T # 8Vd8 !V # Y8 & 8 # W 8 W H8 %# 1 r w 2 # W 33!& # T2 TT 7 T$ T 2 & 2 \"4& 8 ` 3& W 8 R V W 2 9 # W 3'2)!2 & ! & 2 # # a` 8 T 987 8T ! ! R $3 # @!@ u T Y 7V 8 T 2 8& 8 828 8 8 8 & ! @ # @ 8 ) u e # W 3'H89V W 2 !@ UT 2 # W 2 # UT # 2 # $ & # UT3& ! ) d@8 8VT T Y7 7 8 Y 8 8 u2 UT UT r w 8 TW # 3!! 4& # B YB # T UT687 R # 0! !2 !2 # # UT # !! # UT b 3 # 2 # $ & # 7 u 8 Y 8 8 u 828 8 ! ) d # @!@ & 87 R # @ # @ 8 ! # a` 8 T 987 8T & !2 # !23 & $ ! 33!& # 8 8 2 8 8 2 & $ 8 # w4 #2 R# W S \" # ! # u 927 68 7 # & !8 8 8 3& 2 # 77'& @V 8 R dT 8 7$ & 82T fUT!9287 @R # !@8 8 & 8 7 78V & 8!T8 T8 & 8 @8 'T S u 3V2 T 2V 2 # 8 #Y G( 2 # W ! 2Y V6 2 Y T 8V 8 !$ d8 & 2 # @8 7# # @8 3 !2 # TT # R !2 & ! Q V 2 8 $ & 87 R # # !& # @! T V T 2 2 7V 8 T 2 T & 28 & 2 # 9 87 8T ! W 8Y@8 03 # @!@ & 87 R # @ # @ 8 !2 UT8 2 # 8V UT !! @8 W 8 TW S 2 8& 828 8 8 T & 7 u 828 8& d # @!@! 87 R # @ # @8 # 2 3 # W '92 !92 & ! T !23& 7V 2 d! # !! # 7 # @8 $ 8T 8 # 8 @! ) 8 2 Y 7V 8 T8 8\ $3 ) B @ 1 7 $ 53 1 ) & $ \" 'FEDCA2986!42'0%('%#! \ u W 8 XT 87 R # @3 # @ 8 # b 7 R # b !! e R !e@8 W @8 8 7 # ! 8 # T 8 Y ` 8 T 8T2 V & 2 # UT # W @8 # T ! & 987 R # @8 Ce # @!@ ! !2 !23'&7 V R b 7 Y# ! ) $8 2 # W T2 8 2 T 8 28 8& 8 Y 8u Y B3'8@8 69 # # $ 7 # ! 8 # g0 8 A8 ! 0 8 # 9d8 $ 2 T 2 V Y 8 T 2 3 # 3& 8 V UT7 # 8 $ # Pu d T8 # ! ' 2 0T T 8 28 2 2 ! @@8 '@8 R 9 # !V W W b @8 @ & @8 @8 a3& # e@8d8 !@ 8 b # 8 d98 @ 8 # T # @!@ Y 8 8 2 T2 T Y T 2 828 $ 7V 8 2 8 8 & @8 ! & 8 # W 8 %# C%!92 & ! T 9 V 92 & 2 # 2 # 9 77 # @8 UT @ 8 @@8 @8 R # @8 2 ! T 28 2 8 $ 8 !2 W # 8 ) u d8 !V 8 9 # 8 d! g # # $ 8 $ `C @8 $ & 2 # d8 !V 8 # r w 87 R 7# # %# T T8 Y T2 T 9 77 # @8 W W @8 ! e # @!@! & 8 V 8 $ # 666 7 TR # '86 8 # W & ) u W 8 XQ 8 Y T 8 28 8& T2 Y T2 8 TT2 # @!@ ! 97 R # @ # @ 8 65\"2) ! 8 # 8 9 # 77 # @8 T @ 8 8 2 8 8 & 8 8 & !3 ' 8 2 & 2 # !2 & ! Q V 2 W 'Y 7V 8 T 2 T T8V 2 d!#Uc! 8 9 A # @!@3 ! r 87 R # @ # @ 8 b 8 @98@8 !8 ! & @987 R UT 9 # @!@ & T 828 8& 8 Y 2 8 2 2 828 8 r w 87 R # @ # @8 # !! # 0 u d8 UT d!$c 8d! g 77 # @8 '2 # ! # UT UT d! 0 8 T T2 T8V T8 Y T8 T8 !2 & ! T 2 & 2 # # 77 # @8 UT @8 7 V 8 2 V T 2 w 28 @@8 @8 R # Td8 ! # !V W W UT @8 @& # $ # @!@ & r # 2 G D T 82 2 2 8 8 828 8 # @!@& @8 C& 2 # @8 $ 0 A!@8 R 2 # '& $ ! 2 8 28 8 2 `8 2 8 d8 & & 2 # # @!@ & 8 $ 8 A8 2 # 2 & 8 W '7Y2 # 8 R # a` 8 T # 2 # CE T 828 8 T 2 Y W I7 # # ! # 2 & 8 a` 8 T 8 R 3 # @!@3 ! b e 8 T # 2 # W ! 2 # 4 2 828 8& Y T 8 87 R # g ! & 2 # 87 TR # '8Y # @!@ & r w 87 R # @ # @8 7 1 ` 2 828 8 8 T 2 828 8 # @!@ & r w b A 8 T # !26 77 'Y ! 8 # d8 $ 2 T 9 # @8 TUT3& UT b 7 # ! ) YT 8 T 2 Y 8 u # @8 @& T2 28 2 8 2 Y A@8 @& b 3!V !0! # @8 $ e@8 U @ 8 X& @!2 @& ! F! V # 8 R $2 # a3 5U ! & ! T 2 8 8 8 7 T T T 8 8 87 V 8 T 8 8T ` 2 T T 2 7 V 8 2 V 2 & 2 # # 77 # @8 T @8 @@8 '@8 R # @8 2 ! @& # 8 2 \"d2 # 3 W Td87 UT 2 # 9 77 # T 2 28 2 8 T u T @8 UT @ 8 & 2 # 9 87 8T ! @@8 '@8 R # @8 2 ! 698 W Q7 8 $ 7# 8 UT 3 87 8T ! r w 8 2 T 2 8& 28 2 8 7 T 2 8& 2 @& 8 r u e ! 8 !$d 8 & 2 # d @ 8 7# # @8 3 !93& 7V 32 # W '9 ! & ! W 8 !! # T 2 V T T 8 2 2 2 2 Y 2 2 7 V 8 T T V V W 9 # a` 8 T !2 # W ! $@87 W r w 87 R # @ # @ 8 # 'q$e ! u 1 r Y 8! 2 # T2 8 8 8 Y T T T \ 4\ e DI Q h t B Q HI D s Q hd u Q B e V ` B D e V QIt V FI F e h HI X B V U D QI xt D Q V X X h s Q H s ` QI D h s V V e Q HI D B X V F YS8g4pa20pfep4da40R822p288aSY4PE0y220Y086P8208(8P20\"6PH d H X V i b h Q V U D eI b eIt Vtt B X B F t V Vt Q HI D s h X D e QI 1 #) 7 1 e X H e e V s H X FI Q h Q xt D Q V X X h s Q H s ` QI D h s V V V i xtt B ` V E6W8f80R20222S\"pa2a20pY0Y822@4\"YP0Y80S8GSY0Y8pa8208G6y224wqSt ut h H s D B U D e Q HI D s h X D e QI d H X V i b h Q V U D H D e X Vd V X vPE460E8a20pY0Y82r4Eqpf8G80g0f0%0c4\"aPY8W0TSR2P6GE4C2@29&486420(&%\" b B X ` H X F V U D QI D QI H F B D B A #) 1)) 7 7 5 ) 1 3 1) ' $ # ! \ \ \ dT # !! @@8 '@8 R # !V W W !2 %! & ! Q 9! T 8 8 2 8 2 2 2 7 V 8 T 2 V T 2 & 8 W 3'8Y@8 UT 2 # 77 # @8 UT @ 8 7 # R 97 2 TT # t& 8 77 # @ 8 # T 8 TW # 1 Th 7 ! H9 77 H! & 7V d @8 # T 2 Y 8 8 2 T8 8 u 7V 8 T 2 ! ) !2 & ! Q V 25& 2 # # 9 77 # @8 UT @ 8 @@8 @8 R 3 # !V W W b@8 @& & 2 # b @1 T 2 28 2 2 Y 8 8 Y 8& 2 # $ 2 ! A@'8A 8 % ! 20)4'I 2B!4320)$! $! R! (A! ) u d98 @ 8 # T 3 # @!@3& @8 ! b 8 2 # W 'Y 8 T Y 1 1 & 1 ' & % #! 8 T 2 828 8 8 Y 8 B@8 ! 0 8 # W dT # ! '0! T8 8 @@8 @8 R & & @!2 3 # !V W W b @8 !! !2 W @8 @& ) 28 8 88 2 2 Y 2 8 8 8 8 WW R T8 d! 7V # $ 8d! b 2 # W !2 V # @& T8 # 8 2 8 R # W $! EG '! (! G 20% '! !d!V7 # $ 8 7$ 7 #@!2 # V TW T8 Y T '9 ' 1 3 T 8 $u 8 T V T 2 8 & 8 77 T7 T 8 Yb @8 R W 2 ! # 77 # @8 UT @ 8 d& 8 8 ! !2 & ! T @! p 4& 8 ! # 7@8 $ !2 8 R W 'Y T d8 ! 8 V 8 2 T8 7V 8 28 u 8 T2 T ! e@8 $ 8 ! d8 # 3 W 8 Td8 !!02 & @8 @& 2 @ 8 UT @ 8 7 # T !8 W # F! !29 TT # R 2 T 8 8 2 8 T 8 2 T 2 8 d8 ! @8 W 3!2 # # 8 T $@8& ! T 2 ! W # W 9 $A ` & 8 W 'Y @8 T 3 # 77 # @ 8 UT @ 8 # 7V 8 2 V T 8 7 T 2 Ya 68 W # 8 !! $! @98 !2 !2 ! ! d8 W @8 W 5$@! ! e2 # d8 W e ` UT 7 u8& 2 8 V& T T 8 8 2 T T 2 T T T 8T # !0@8 $ ! $ ! 3 @ 8 b d8T # ! ! b 7T # ! 8V # 4 u d8 @8 @8 A 8 W 8 W 8 & 8 8 2 2 Y T 8 Y 8 T 8 T 2Y V Te@ 8 UT @ 8 d8V # 77 # @8 T @8 7TW 8 77 # # 7 8 $ 897A 2 9 8 e@8 UT @ 8 d8Q!2 & ! T TT 2 2 V T 7 T T T V 7V 8 2 9 V 2 u @! ! b e@8 W 8 #d 8 ! b 2 # ! 8T # ! # 8 697 8 # # @ T8 !2 & ! T T 8 8 Y T2 Vc 8 Y 2 7V 8 2 V 2 & 2 # 2 # 9 77 # @8 UT @8 7 # R 7 W 8Y@8 T W 8 XT r w Td8 !!4 e@87 W 2 # 0 T T T 2 V Y T 8u7 # @8 8 2 # W 8Y@8 T # r w # @ 7 # 8 e@85d987 R # @8 & 2 # 3 UT & 2 8 T T V T 2 T2 8 2 T8& 9 d07 # !V 8 9 # !92 # W 2 7 R 8 @8 # 8 e 8 9 # @8 !X W d8 $ d T8 # ! ' 8d! R T V T T T8 8H@8 T @ 8 d # 2 # W 7 8 $ 8 A8 # @98 7 W S u X1 # # !2 7 8 '& %# !2 & ! T V 2 TV T8 T& 8 $ 7V 8 2 T & 2 # d8 @8 @8 A 8 W 8 W 8 & 8 # 77 # @8 UT @ 8 W 3'8Y@8 6e@87 W 7 8 ATd8 ! r w T 2Y V 2 T 2 T T \ \ & 3 67 $ !3 '$ 5 \ \ B E95\ \ \ \ 59 u T 7# T # 66 7 ! 26d!2 # W 983& 2 # 2 # & 2 # @8& ! Q V 2 7 # $c # d& 7V 2 T 8 T8 7 7V 8 T 2 T V T8 # W 8 XT # @!@3 ! 87 R # @ # @ 8 e ` ! T 9 # 0 d@ # !92 !@8 77 # 7 8 W 8 !2 # T 828 8& 8 T 8 2 u8 2 8 T8 !23 # W d!2 7 8 2 !2 # & 8 2 # $ & # 7 !T # & 2 # 987 @8 V 2 ' !8VT UT 2 # 7 8 T2 T 8 59 66 5554 7 8 2 2 ! $T # 2 @8 @8 3& 2 # 7# TW 8 W 8 # # d!2 # W r w 7 # 93& # 1 8 # 66w 2 5557 8 ! & 2 # 6667 ! ) u ( 7 2 S 6 7 7 8 2 \"! & 2 # (2 7 2 S 66w r 7h 0 ! U H7 0 S 66667 7# 8 U 59 8 U # 5 T 58 5 4 8 7 5557 6 2! Y e # @!@ ! 8 & ! 08 T 8 2 8 8 & V 7 V GYd8 @ 8Vt& 8V @@8 R T # u # @8 3 87 V W & 2 # 7 TT T T 28 T 2 7 T 2 2 2 Y 7 7 A!V 7 # !V 68V W 2 # # 1 r w T d8 !9!13'Y 77 # ` 8 T & ! d& T # 9 # 0 2 T T 2V 82 T8 2 u 3 # 9 77 # @8 UT @ 8 7 # R 7 )& 2 # !2 & ! Q 239 87 8T & 2 7V 8 T 2 V T 2 8 T8 d& V7 2 # # @!@ & # X 7& V R # 0 !9 d& UT W !! u d!2 7 8 @! W 'Y 7 8 3& 828 8 T 2 2 T8 T8 8 & 8 F8 R 2 # # 8! 87 @8 $ 8 8 2 # $ & # !2 0 # d!2 7 8 9 !23& V7 2d8 !V # '8Y !2 # W Y T 2 & T8 T 8 & 8 # W 2 # W 7 ! W 2 # u 1 r w b !2 # & # R # !!8VT e V !#!@8 d'& $ ! @ 7 8& T Y 8 T T2 V2 T8 8 8T 6V T # 6U6 # #!2 7# 9! d! ) u e@8 W 8 9$d 8 ! & ! T e & 2 # T W 8@8 # @8 ! 8 T 8 V 2 T 8 & 8 T 2 V c 2 7 V 8 T Y 2 8 !7 # 3 V 2 # 8 e UT 7 # 3! d0!2 # W # e V @8 @87 W ! 3 # 0 2 2 T T 2 T8& 8 T T2 8 2 p u d8 W 8 !8 ' 8d! @@8 '@8 R 2 d8 7 W 8 T T # @!@ ! 87 R # @ # @8 # 0 ! ) T T8 28 T 828 8& 8 2 8 u d8 7$ 8T W ! A 8 # ! R !@8 8 68 2 9V 3& T 8 T 8 7 8 R '&$ 9 @& 8 7 # @ T 3 # a` 8 T !2 # W ! 8 2 43!& # 2 $8 2 # @8 2 # W & 2 # 9 # @8 W 7V 8& 2 8 8 T2 & u 2 2 2 $ 7V 828 8 8 8 W !2 # W 7 # @ # g 77 # & 7V 2 8 %# '&$ 3 # @!@ & ! !V R 2 # W 2 77 8& Y 8 Y E\ $22 @8 ! V# 6T 2 u 2& 2 UT# 2# W # !77 8 # @gYUT8 AT @8V87 dT8 @2@8 8! @8 eTR@228dT98 !# & !22 V # W dTW8 @ 8 # # FT7 !#8 bYeT @8 7 # 8 W dT 8 R dT& %W 98!7 2R 7 !&V !!88 T 8 8 Td!2 7!$ u d98 @ 8 # T # @!@! @8 ! ! d 8 # W 9 @8 ! # u # @8 @8 W 8 !8VT # 8 W 8 V T 2 828 8& 8 8 T 2 & 2 # & # 3B ! !23& 7V 2 e@8 W @8 8 ! R & 8V 37 !! @8 W ! d8 $ )6@8 ! # u # 0 7 8 T2 8 T & 8 T 8 2 3& 8 W 8Y@8 @@8 R 8 %# # e@8 W @8 8 ! d8TV T 3& 2 9 # @8 TUT3& UT b # & 8T ! 8 ) 28 $ T2 8 T T Y 2 u 8 TT $8 @! & 8 V UT3& UT7 # UT # 8d 8 T 7V 8 2 !2 & ! T 9 V 92 $9 $ 8 h u Td! 2 8 3 b T g ! & 2 # T W 37 # !2 & ! F7 # 3 W 8 ! T TV T8 Y Y 7V 8 T 8 T2T e @8 d8 ! & 2 # 87 7 @8 $ 8 8 2 # $ & # !2 & # 6d!2 7 8 9 d!2 7 8 9 & 8 2 # $ & # 7 !8 'Y 2 T8 T8 7 T 7V 8 T % 9#! '! 1 T V d8& ! Q 68B& 73 6A G 7 0)2P ! @d8 & 92 u e@8& ! T 3 2 # 0 ! R & W 8 T 7V 8 2 V T 2 8 87 TX!! @8 W & 2 # d8 !V T # # 0! 6d8 R d& D @8 ! # 6u # 8d 8 @87 W 87 R # @ # @ 8 $ $ 8 ! & T V & 8 T T8 T 8 TV 2 8 V 2 T8 8 !7 # 6 # #!2 7# 9! d& !2 # W T # 0 d!2 7!$ UT7 # @8 ! # UT ) d # 77 # @8 T @ 8 ! & 2 # #2 T8 V u 8 987 8T ! ! 6 # $!2 7# 8 # 3& 8 W @8 2)& 2 # & @0 Y ! $ # @!@ 3 # @!@ ! ! W 8 XT 8& 8 8 V 28 2 8 828 828 8& 8 T 2 # 0 ! g e @!3 W # W ! d8 R d& G@8 ! # u d8 T # 2 3'& !2 # W 7 # '& $ 3& 2)& 2 # 8 Y T 282 8 T T8 E T T 8 V Td8 ! T !2 7 8 9 d8 @8 7# # @8 68 ! T & 2 # @ T @8F@8 UT @ 8 & 7V 2 8d! ) u # @!@ V V 8 T 2 2 V V 8 T 8 T8 2 828 8 & 8 # # d8 !V # '8Y 7 # !V 8 9 # r w @8 7 # Q! d!2 7 !$ 4 @8 ! # u W 8 XT 3 # 3! T 2 T 8 T8 V T 2 08 T T8 d8 R d& & 2 # d!V UT !2 & ! T 2 87 R # @ # @8 6d8V UT3& # @8UT3& UT b # 6e H! ) T8 T 7V 8 2 V T 8 T TT 2 T Y T ` 8\ \ $ !3 E 5 3 $ \ $ 5 4 & & 3 3\ \ \ \ \ \ u $8 2 # W 8Y@8 !8 $ 8 # )& & @!6e@8 UT @ 8 g0@8 R W ! & 8 88 2 T Y V2 8 8 & 8 97 2 # a` t2 # & 2 # # # $ 7 # !V 8 # 77 # @8 $ d8& ! T @8 !8VT 8 & ! d8 @ 8 # T V 2 T T2 T 7V 8 V T 2 828 8& # @!@ ! & 8 # UT!3F! # !5e8Vd8 ! ) u d98 @ 8 # T 3 # @!@3& @8 @8 a3& @8 ! T 8 T T 7 T 8 T 2 828 8 2 8 8 Y 2 8 ! b6 8 ! 92 77 # d8 @ 8 7# & # 97 g e@8F ' & 2 # d8 @8 7# 9 # @8 2 !2 # b e@8 F ' T 2 Y T T T 2 2 Y T T 7 8 !2 W # 8 & 2 # # 2 # 3@8 UT @8 & 8 # & 2 # C R 92 64 9 W 'Y e@8 T @ 8 g @8 R W 2 T2 T 7T T Y V 8 ! # $ A @8 W @8 !8 ! ) u d8 @ 8 7# & # 7 & 2 # # @8 & 2 # # 2 # & 2 # @ T @8T @ 8 UT @ 8 T 2 8 T 2 2 2 8 6@ 8 # T 3 # @!@3 & b 8 2 # W 3'8@8 r w 8 A8 ! !9 W # 8 # 0 & V 8 %# 2 8 2 8 8 Y Y 2 8 8 2 2 8T $ u A@! 2 # 8 ! 8 9 # @87 W @8 !8VT T8 V # 8 & ! 3 A8 2 # 2 # # $ 7 # !V 8 9 # @8 W @8 !8 e@! d& 8 77 # 2 # # UT V T2 2 T8 2 T8 UT7 UT X7 # 2 # & 2 # !92 !b ! & 8 V @! C W 8 T @87 W 87 R # @ # @ 8 # b A A!@8 R ! b!2 T 7` T 28 T 8 Y T `8 2 8 Y 8\ & 3 ) 3 @1 '$ 5 4 !3 (& 6$ \" '421 2\ \ \ u T W # ! @ # 6'Y @8 !8VUT 3@ 8 # T & 8 # @8 2 8 7 T 7! d8 @ 8 7# !93 e@ 8 UT @ 8 g @8 R W 2 77 # TW # d8 !V 8 # 3!Td87 ! @8 $ 8 u d8 !V 8 T 2 2 7 T Y V T 2 T 8 T 8 # W T W # ! W 3'Y @9 8T U @ 8 # T 8 # 3& 8 W @8 )! ) u A@8 U @8 ! dV T 2 T 2 8 V T 2 8 T T 8 T 8T 7 2@8 8 # & 8 # @!@ # Td8 !2 UT # !V W W b 7 8 $ 987 8 W F # !T e8Vd8 ! ) 8 828 T 8 2 2 Y T T7T 8 u$8& ! T & 8 # @!@ 7@!$d8T R V \"! d8 ! # 77 # e9 g 8 A8 ! 'aY 2 # #c # 7V 8 828 28Vc T 8 2 T 2 T Y 8 V Td8 # W d8 # 77 # ! !2 $ R # 9 77 # @ 8 UT @8 6! 9 @d 8 # !V W W @98& ! T TT 8 8 T 2 7V 8 2 9 V 92! 22 v r S w & 8 77 # @& 8 97 8 $ & # 3@ 8 # T & 8 # @8 2 7 # CE T8 8 & 2 # 7W @8 UT @ 8 7 # 7 # 2 &8 & ! T V W & 2 # 2 # 77 # @ 8 UT @8 8 3'A8 R & $ 92 T @98& ! T 7V 8 T Y 8 7V 8 8 ! 32 r 8h & 8 77 # 9 # !V W W g @8 @ 8 # 3& 8 W @8 2 2 # 3@ 8 # T # 4 2 2 Y 8 8& \ D\ u 8 3& 8 !! YV T 2 V Y 2 TT b V UT3& # 2d& V7 @8 ! # 6 u d8 ! # Y8 r w $9 # $ d83& 2 # # 0 ! d!2 W # 8 T8 2 T V TV T7 2 T8 UT7 # u ! d& !2 # W ! b W & 2 # @ Q& 2 # W 8 XF! b & @8 Q& 2 # @ F! T2 T8 8 8Y2 T 8T TT8 Y 8 T 8 T8 2 # # 6e @8 d8 ! u # d 8 # V7 # $ 8 7 @8 ! # 6 d& 7V 2 9 # @8 TUT3& UT b # 1 ! ) &T 2 T 2 0T T8 2 Y & 8 7u 77 8 T # & !2 W # 8 8 # d8 @ 8 7# & # 7 & 2 # # @8 3 !23& 7V 2 e 8 T # 7 # ! 8 9 # @! 8 T 2 2 T V 8 u $@ 8 # T # @!@ & 8Ve@8 $ 8 ! T & 2 # @ 5@8T @8 T @ 8 b 8 2 # W 8Y@8 8 A8 ! d8d8 T # 2 8 28 8 T T V V 8 T Y 2 8 T TT T\ 8\ 9\ T e3 T7 7# & 2 V 2 u 2 # R ! 0!26 77 'Y e3 T7 7# & 8 3 W ! T # # V 2 2 # R 8 T2 T 8 T 8 82 2 T # UT 20)GD \" #!7) S u d! 2 # R & 7# & # $ X1 # # 7 '& %# 0! W 8 # d8 !V 8 9 # r w $ & ' #! T8 88 T& 2 T $987 8 W # F! V R # R 8 ! 8 #d 8 R 9 # @8 @@8 2 2 # & 2 # 3 # @8 92 T 0u T8 2 T 8 Vc 2 8 2 !2 # # aY 68 W # b68 !V 8 # 98!@8 UT @8 & 8 # T # 3 !V @ 2 # 1 # # 7 # !V V T S $8 T 7 8 Y 7` 2 & u 8 8 Y T 7 ! !2!V !8 8 A8 R d8 @8 W !& # ! 87 Cd87 4 3' 77 # T 77 T d8 !! @! !d87 UT & 8 T Y T 8 28 T E @ 8 7# !& # ! Y dV d8 ! b08 T # R & 6H9 77 Y !& # 2 !2 # # T 8 W # 8 & # # # # & S 2 & 8 u 7 T 8 Y 8 & 7 u 26@ # ! @'8Y & # 8 UT i 1 ! @! \"2 ! 3!2 2 V T 8 8 h 8 28 2 UT d8 !& # @3 # 2 # R ! aY 2 2 # R # R & 8V # UT 0#2I8 !7 4'1 2\" # C'E TT & 8 8 2 V T T ')) &! 7 8 8 W # ! 8 !$d8 8 W # ! & @!2 3 V 2 ' @! e!V @ 0#2G8 7 0)E49$EA4'I # 4 T 8 2 V T T 8 88 T2 T 28 T ')) ' 19 1 & 8 @ W !2 T # )& 2 # @8 3! g 9 # !X W ! )& 2 # @8 3! g & # 7 ! @! 9 8 87 8 Y 2 V 8 8 Y 8 8 $ 8 8V # 8 R 687 R 7# # %# @ !2 UT & 2 # @8 !X!2T V 22 # @! A!V @ 60#2G8 4)22# # T V #2 T 28 T ')) 1) X1 # # ! 7 8 g d8 @8 ! 8 # 8 @! ) T& 8 2 Y T 8 8 u $8 2 # W 8Y@8 !92 T # 8 & 8 d7 ! # W 8 T # &X& # # ! 7 8 X1 # # ! 7 8 ' %# T 8 8 2 T 8 2 T & 8 2 & $ !2 & ! T V 2 W 8Y@8 7V 8 2 T @87 W ! \" 77 # @8 ! 1 ! ) $ W 8 W 2)& 8 # 8 # A8Vd 8 8 # 3& 8 W @ 8 92 @! @! b 8 T & 8 u 7 T 7 T 8 8 Y @& @8 @& 2 & 2 # X& 2 # @8 T # & 8V 8 # e@8 T @ 8 b !@& @8 @& 2 UT 9 Td8 !!8 2 # 8 !X W 28 2 8 T T T Y 28 2 8 2 T V 8 @!$d8 V 2 ! 8V # 8 R T T ! & 8 # @!@ ! # W 8 $ # @!2 2 # !#! 28Vc T 2 T8T 8& 828 8 2 8 V 2 987 8T ! W Y & 8 # # @8\"8 R # 77 # @8 UT @8 77 # @! @ @3 # d98 @8 3 !0 ' e 5! ) 8& T 2 8 8 28 T T ` 8 u $8 W 87 W # 2 !& 8 # e9!V 2 T 2 7 # ! YV & 2 # d3 # Q!2 7 8 !23& V7 2 A @8 W 8 $d8 8 !$d8 T 3 V 2 # \"C'E 22 T8 T 8 T 2 Vc V T #2 T v u $ W 8 W d8 @ # 9 2 TT T 2 V T 8 3 T & 2 # & # 7 30 e@8 UT @ 8 8 # X& 2 # @8 9 V 92 2 !2 # & 2 # i ! S 4 72 T T 2 T u82 $! a` 8 T # d8 #d 8 2 !2 987 R # !2 # @8 2 8 # e@8 UT @8 8 !X T Vc 2 V T 8 T T V 7 # @!@06d@8@8 UT @8 8 !X!7 # @!@3 8 # # @8T # @8T @8 UT @ 8 8 W # 1! @! 8 8V # 828 ( u T T V 828 T 8 8 T T2 2 B@8 6 9 ! # e@8 U @ 8 !X 7 # @!@ f # @8 ! d8 !& # & 2 # @@8 2 1 2 T T 8T V 8 2 8 8T V T 2 2 T T & 8 U 5 55 H5h x7 S 7 dT8 !V 8 9 5 # 5 5 4 r w !2 W # 7 # 8 # dT8 @8 ! 7 # @8 $ 8 r 59 u 66 7 7 8 2 & 2 # 6662 7# A 66w r 7h G! !923& 7V 23d8 ! 8 # a` 8 T 0 08 T V Yb d8 ! # '8Y 87 R # !2 d8V UT3& & 2 # # @!@ ! 8 # # 8! 7 # V # 6d8 !V # '8y r w T V T TT 2 828 8& T 7 T Y 7 # d!2 7 !$ @8 ! # UT ) d@87 W ! & 8 !8 8 # e!7 # 9 !UVY & 2 # d!92 7 8 T8 V u 8 T T 2V 2 2 T8 26 U 67 r h S 5 r w T # 2 !2 9 W W d8 !V 8 # @8 !X W UT # 8d8 UT b V Y ! ) 4 T 72 T V 2 T YT 8\ 8\ \ \ \ u $8 UT7 Y# aY 5 6! U 33& ! Y 6@8 U @8 8d8 0! 6e@ T8 & 2 # d! 7V # $ '6d 8 # W 93& A B@T 8 V T 2 2 8 T 7 VT 8 T T8 T 2 2 2 8 5554 8 T2 ! ) u V 2 33& A3 B@8T & 2 # V 2 77 # 7 # 93& T # UT7 # 66w ! ) 4& 8 !V 8 8 T 2 2 2 T2 T 2 2 8 u T # 7 # UT 37 Q 7# & ! 2 V 2 ! !@87 W ! R & 87 !` 8 R V W # 9 T7 7# & ! 8 $ # T 88 2 T 8 8 7 T 8 82 4 T W V & 2 # d! 2 # R 77 S dV d8 0! d 8 # W 2 # R 7 # 33& # 6 @ 8 7# 87 2# @8 Y # i 5 ! T8 u7T8 T 2 2 2 h8 2 T 7 T @8\" T V d 8 2 # 987 R ! ) u X& 2 # @8 @8 UT @8 ' 3 # 9 V 92 8 # W 2 !2 # ! ) 8 T 8 T2 T 8 u @@ 2 # d87 aY 2 # R & 2 # 8 # W # R & 8 H9 77 # R 8VT # 9 92 d8 $d8 8B@87 8 TT Y T2 V T T Vc A 9 TV ) @@H # # @8 U @ 8 # 8 # W u 8 T 2 T T T #R # # W 8 T # ' # V 2 2 # R & 2 # 8 # W ! GD & 2 # ! ! ) u d& 3& 3 !2 T # 66w ! ) 8 T2 T &2 V 2 6 D 8 2 T T& 8 2 8 2 h2 @! ! X& h 2 5 5 @58 8 4 02 @8 8 8 UT @ 8 u8 4& & $ ! UT7 # 8 # e@ T8 @8 UT @ 8 i \"& 2 # i 1 ! @@8 '@8 R 8 $ W 3 V 2 $8 3 T & # 97 3 V 2 ' 8 #d 8 d! 7V # $ 92 !2 # 3 UT 8 ! T2 T u T2 T Vc T8 2 987 R $ \" d@87 W ! R & 87 !68 R V W $ T7 7# ! R & 8 77 T & # 7 ! ) u (5 43 20)(&%$ # V u 8 7` T 8& 82 Y 8 1 ' ! T 8 & \" U ! W ! T d8 !& # 3 ! ) u 3 8 T & 2 # & # 97 77 # T W 3'8@8 i 5 ! ) 2 T & 7 2 8 T 2 V T 2 Y h 8 u d87 7 # 3!& # fe!V & !2 7 8 A!2 8 # # @8T 8Q # 8 T 2 & Y T 2 8 2 TV 8'& $ 3& & 2 # 9V u d87 8 W '0 Y i ! S 2 !2 # ! 8 9 # @8 02 !92 # 770T 8 TV T2 77 S u Td8 ! 2 !2 # ! R & 83& 2 # & 2 # & @ 3 8 8 # V 2 2 !2 # 7 ! T 8 7 8 2 T2 T u e@ 8 UT @ 8 ! & 2 # F! 8Vd 8 ! & @8T & 2 # X& 2 # @8 @8 UT @8 0!X!92 ' # T x8 7T 8 2 T V 8 # 8 '& $ 3& & 2 # 9V u X& 2 # @8 @ 8 UT @ 8 @8 ! & 2 # @8 8 # 3& 8 W W ! & 2 # X& 2 # @8 @ 8 UT @ 8 8 7 7 0 T 8 82 T ' @! 08 $ # V 2 i ! S @@8 2 77 S $'& $ 3& & 2 # 9V W @@8 2 T W 8Y@8 !47 # !UVY 8 8 T2 T 8 u8 7 7 8 2V 2 2 & !2 7 8 9 A!2 S $87 ! 'Y # T i ! S ! 86'& $ 3& & 2 # 9V W !@8 8 # @8 @@8 2 8 2 u 82 8 8 TV8 7 7 T2 8 77 S $87 @8 & !8VT T T V 2 !! !2 7 8 3 V 2 # T 8 # 2 # 3 i 1 66w ! ) u 8 2 T 82 8 2 T 8 T 2 h 5554 8 u e@8 T @ 8 @@8 2 ! ! & 2 # x W 68 $ W T 8 8 Y & '& $ ! 8 # V 2 ! & 2 # x & 8 77 # e@8 UT @8 7 # 8 T ! 2 eV d8 ! 8 # '& $ 3& & 2 # 8 T2 T T 8 T7T 8 78 D 9V W @@8 2 u 5 & 8 C1 # UT 5 @8 UT @ 8 @@8 2 ! ) u e@8 T @ 8 2 !2 # R 9 @@8 ! T 7 7 8 & 8 8 T 28 & 2 # e@8 UT @ 8 @@8 2 4 E b eUT 3 # 8!4@8 T @ 8 T # T # $2 7 2 S 8 !V 8 9 # 6664 w r 8h 0 ! ) T 8 Y T T 2 7` 7 U # 555 8\ \ u 9 # @8 92 !2 # R 9 & 2 # 4 E & 2 # # @8 3 @@8 2 9 R 4 E W 8Y@8 77 S u 2 # @8T UT3& UT T2 D T2 8 2 d983& V\"! 2 & 858! 7T & W 8 # # d8 !V 8 # ! TV UT3& T8 @8 ! !!2 ! ) T T8 TV T Y 8 T 8 T T2 8 8 8 u 7V T& d!V @ & $ X1 # # 7 # ! Q& 2 # # # & 8 @! &!2 W @8 @& V V T 8 8 8 UT @ & V W @8& ! T ! ) $87 @8 & !V TUT 3 V 2 b @8 R W 2 ! CE 8 T2 T 7V 8 8 u 8 T2 TY V8 $ T V T Y u X& # # 7 # ! V T '& %# 8 V 8 !$d 8 b # @@PV W @8V T V 88 T 7 8 C& ! T V 6! ) u e9!V 3!V !8 0! # & ! 7 8 A!2 8e@8 $ & !9 7 8 4 2 T 2 8 T 2 2 8 2 2 8 2 2 T VT 8 2 u e # @8 T @ 8 & 2 # A@8\"@8 T @ 8 8V W 83& 2 # V W # 9 77 # @8 UT @8 ! ) $8!` T T T 7 7 7 T 8 u7 @8 UT @ 8 & 8 # T # 8VA@8 $ 9 # 2 !2 # & 2 # @@8 2 2 F8!f@8 UT @ 8 # 1 T T T 2 8 7 T 7` d& # @!@ ! 2 T8 828 8& 2 $ 8 T 8 8 %# @! e 8 A8 ! & 2 # W 8 T T # @!@ ! r w 87 R # @ # @ 8 # R & 8 @'& 8 R V W 828 8& 8 8 T2 T # d8 !V R # 2 # $ 87 8 8 W H 8 # !92 77 'H! ) u e!I7 # ! YV & 2 # d!2 7 8 0! 1 r w #@& 2 # T T Y 8 T 2V 2 2 T8 8 T Y 8!` @8 T @ 8 ! !$@8Q V 2 ! d8UT ! W !2 # W @ 8 # ! b 98 $ T $3 # @!@ & ! ) 7 8 T 2 T8T 8 8 Y # 828 8 8 u 8 7V 8 $8 @! & 8& ! T 8 R 2 # V 2 V A8V !2 aY 6!2 T2 T 7 Y T T e3 T7 8d! 7 !H V W @87 W ! ) u @ # 2 # R ! 8 A8 R !V R 2 # R ! @8 Y # & !8VT UT 8 # T T8 7 ` T 8 8 8 Y 8 8\ 7\ 7 \" \ 9 \ u 3 # @8 8d! b d8T # V # A& 8 # T 2 T8 Y T 7 Y8 T2 V T T ` 26 aY r u @8 UT @8 # 2 X'&7 8 f R 8 # & 2 # # !$ # 987 8@8T 9 92 '&7 8 f 4 8 T 2 V T ` uT ed8 R 7 3 D 4 6 @! 8 & 8 @8 @'8A 8 8 R ! g@ F! T 87 # F! ! W @8 UT @ 8 & 2 8 2 Y 8 Y 8 T 8 T 8 8& 8 & 87 # F!! 4& & @8 !8 6 @@HUT @8 W 8 # UT3& 9 R 9 ! ) e60' 1 7 $ ! $G@ 8 UT @ 8 & 2 T u 8 2 8 2 7 8 u ) G 8 5557 & 87 # T & 2 # $ ! $2 B(5 3 0)(&%$ # ! (d! W !92 Td8 !& # @8 ! T # 6667 ! ) 1 ' T8& T & 8 8 u T 7 8 2 dd8 ! !V # # & & 2 # ! d!! T8 8 2 @8 $ UT i ! S ! ) d!V # # ! & 2 # i ! S @@8 2 ! i ! ! @@8 '@8 R !V @ 2 # V R # R 8 8 u 2 & 8 8 8 h 8 28 T 8 2 2 2 2 & u T8 8 2 8 7 7 @8 T @ 8 ! 'Y @8 6 77 # 93!& S $ 9! d!3 !! 9V W 2 !92 # @! & 2 # 28 9! d!! 9V W @@8 2 d8 $ 8 W ! T 9! S $97 # !2 7 8 9V W ! 6e8 # T8 8 7 7 8 T 8 u 8 8 7 7 8 T 9V W @@8 2 2 # & 2 # !& # 2 # 6V W # 3 # T i %7 # 2 ! H& @8 2 # 3 # @8 @8 ! ) 7 7 8 & 7 7 8 h! `8 Y 2 2 T2 8 u X& 2 # @8 3 @8 UT @ 8 @8 ! # 3 # @8 # !H!@8 8 T 8 8 T2 2V T 2 9 9 9 !9 # 77 S 4& !9 7 8 7 8 @9 W 8 # 3 # @8 @! 3 77 # # d8 !& # A ! V T 2 2 2 u 8 2 87 T 2 8 8 T & T ` 8 2 d 8 # @8 '& $ \" u d # T 7 # 2 ` & 2 # 7 # 92!7 # 3!& # 8 # 5d!2 7 8 ' ! ) u # @8 6 92 T8 T8 2 & T T8 8 T2 !2 # @! 3 77 # & 2 # '& $ 3@@8 2 d83& 2 # 6!2 7 8 9 !& # # T E # & 2 # 6V W @@8 2 & 2 # 8 8 & 8 T 7 8 & 8 7 7 8 2 !2 # T W 8Y@8 6!2 7 8 9 9V W # T 2# d!2 7 8 9 ' 26 T i G! ) 8 7 7 8 D T8 7 T h!8 u $ # @8 W 8 W 8 T T ! d8Td8 @ # & 2 # # V 7 # Td8 !& # T W 8Y@8 !2 7 8 9!V # # & 3 # T E S u i 1! 8V '& $ 3& T2 7 T & 8 2 8 h!8 T 8 & 2 # 9V W @@8 2 2u X& 2 # @8 3 @8 ! # # @8 i ! S 77 S $987 ! Y 3 # T i ! S ! 8V 7 7 8 T 8 8 T2 u 82 8 8T 8 6 & $ 3& & 2 # 9V W !@8 8 3 # @8 @3@ 8 9! 77 S $! 7 8 9 3 # T &# T # i 1! ) 7 7 T 2 8 2 u 8 2 2 V T 2 8 D h8 u 5 & 8 & 1 # UT 5 @ 8 UT @8 w u A # @8 T @ 8 8HA # 9 UT 8 ! 87 R $ \" u d!V7 # $ 2 !2 # & 2 # @@8 2 T TV T 2 V T8 8 7 R 3'Y & 8 F 8 # # e@ 8 UT @ 8 8 !X 7 # @!@3 4 &T # U 67 3 0 S 8 !V 8 # 6667 7# 0 ! ) TV T T V 8 28 E 5557 8\ C\ DD FE\ 5 55\ \"\ \ u $ u 4 87 R # ) 2 2 !F 8 # d8 @8 # ! u i 2! R & 83& 2 # UT7 # 8 # e # & 2 # @@8 2 @@8 '@8 R 3 e@8 $ $'& $ 3& T T2 h!8 7 T 8 28 T 2 T 2 u8 & 2 # V W !23& V7 2% # @8 3 2 !2 # UT 8 ! 87 R $& & 2 # 987 !2 e !!8VT i ! ! ) 7 7 T2 2 V TT h 8\ # B4 ! #! $ 8'4 #@ 1 ! #! $ ('1 #! $ 8'7 #! )4 #! $1 # $ ('!0 #! ) ('% #! $%\ Vt i h H u S8P 2u I DBH wp I 2u Vt i h H u t h 288a Wb DBH 4p Wb th DBH wp uu 8PB D QI S% 2u I D QI t h 2f Wb D4BHp 046GPs VXB F b H DBH 4p Pw2t uBH D QI 2f Pw2t uBH Q HI D s h X D e P20p0Y08Q\ u e@8 UT @ 8 @@8 2 ! T 8 8 9V W @@8 2 34 $ g 7 7 8 u Y\ # R 8Vd8 ! 8 $ W V 2 7 # 3!& # 2 # 8 #d8 '& $ 3& & 2 # 7T 8 2 T 2 & Vc 8 $ T2 @8 7# # 8 %# 2 H! T !2 9 # @8 Qu u 4 87 R # ) 2 \ C B2 & B2 A 9 & 6 35 2 32 & & & #e ts x ! xs QVD $qSV(s\"pY4B\ 7 # 33& !6! ) 4& ! @'8Y T 3 V 2 @ 3 # 2 # R ! 7 !V 77T # H!2 7 8 9 ! @3 # UT 2 # R 2 2 2V 8 u 8 2 T8 8 2 T 8 8 28 8 ! Y u @ # 6!2 UT 2 # R ! Y & 8 !V !8 UT 3 T7 7# & # !$! 2 # R # \"$ 77 'Y 7 8 # 3& 8 W W 28 8 72 8 8 V T # V 2 2 S u @ # UT 2 # R ! aY) & 8 !V !8 UT # 03 T7 7# & # & 2 # T7 7# & 2 T 28 8 72 8 8 8 # !$! T W 'D 2 8 W d! 2 # R 7 # 3& u 3 # @8 8 # W 2 !92 # R & 2 # V Y T8 2 2 T2 T2 # @8 3 i ! S @3@ 8 92 R @8HUT) %$9 R ! 33& ! 8Hd! 2 # R 7 # 33& 0 8 T 8& 2 2 8 TV T8 2 2 T u 3 2 8 \"3 & # 6@! R & 83!2 UT !2 7 8 & # 97 ! ! !2 7 8 & # 97 # d8V T2 V T T 7 8 TV 8 88 TT 59 & 2 # ! # ! d8T T # R # & # 2 !2 # & !2 7 8 9 # e 3 !!8VT 7T # 66 7 ! ) u d! W R 8 8T 7 8 T 8 T8& Yb e@8 $ @8 W 8 296 !V # 8V # W d8 T & 2 # X& # 7 2 !2 # 3!& # 2 2d@8 W Y ! T 2 T 2 T T T 2 & u 8 72 8V # W 8 \"@@8 2 2 # $@8 $ 8 x u $ $ & 2 # 5 43 0)(8%$ # ! & V7 2 d! W T T 8 ! 1 ' 8 T8& T & T !92 Td8 !& S u e@ 8 UT @ 8 2 !2 # & 2 # @@8 2 R Xd8 T & 2 # X& # 97 T W 8Y@8 !V i 5 ! ) 8 YT T 2 h 8 u $987 # 8 3 9 92 W 8 W i ! S 2 # @! @ 22 VT 8 8 & !8VT UT 8 R 2 # 9 V 92 i ! 2 S u # @8 ! T W 3'8Y@8 6d8 9V W & 2 # e # R 8V1b 8 @!#d8T # 8 2 Th 2 8 T 7 7 T T Y 28Vc & 2 # 7 # ! 8 # V 2 '& $ 3& !2 T 8 @! ) $V W @3@ 8 92 & 2 # 3 # @8 2 !2 # 77 # 2 T 8 8 u 7 7 8 T2 T W 8Y@8 i ! ) u X& 2 # @8 @8 ! 3 # # @8 i ! S 77 S $ & $ 3& & 2 # 9V W !@8 6987 ! h!8 T 8 8 T2 u8 7 7 8 8 2 59 2 # @8 6@@8 2! 77 # T W 'Y @8 i ! S @3@ 8 92 ! ) $!2 7 8 9 3 V 2 # T &# T # 6 7 ! ) T2 8 8 8 u8 2 T8 D 8 u 5 & 8 C& # 8 # & 2 # 5 e@8 UT @ 8 2 !2 # ! & 2 # 5 @ 8 UT @ 8 T 8 D @@8 2 ! ) u T 8 ! 87 R $0 Y e # )!& @8 $ 8 R 9 2)& 8Td8 @ # 8 R 2 # A@8 UT @8 92 !92 # 8 8 2 V& T & 2 T T 8 T ! ) u e@ 8 UT @8 2 !2 # 9 R 4 \" ' C & 2 # e@8 UT @8 @@8 2 4 T # ( 7 2 S 667 67 8 2 ! ) E T 8 E U 59 8\ \ uY X8 b & # 8 2 9 UT @ 8 # 5!& # ! @! !6 W 8 W & 8 3 UT !& # 92 T 2 7 & 8 28 T & !2 # 9 UT 8 ! 87 R #& # b 8Vd 8 ! aY 68 W # 8 !! $! 7V # $ # d8 W 8V # 3 V 2 ! 2 V Y 7 T 8 7 u8 T T2 2 T8 2 T 2 8 2 8 T & @8 @& @ 8 7# ! d8T # 8 W T 2 Pu d8 @ 8 7# & # 5& 2 # # @8 3 6667 ! d8 $ u4 4 87 R # ) T 2 7 2 5557 8 T u 8 8 T 4& 8 !V !X # 7 # UT 97 F! 2 V 2 ! 3 T7 T8 2 T 8 7# 0! 8 %# 6d! 2 # R & 7# 8 \" u T W 3'Y & 7# & A!2 & 2 # & 7# & R 8 %# d! 2 # 64 $ 8 # !3 !! # 8& 82 $ T8 8 8 8 2 8 8 $ T8 u aY d! 2 # R & 2 # A R 93& ! ed 8 V 2 3& A A 2 # R # @! ) d@ 8 UT @ 8 8 !X T8 T 2 2 8 TT 2 T 2 2 2 28 u T V 7 # @!@ 3 # 2 d& ! 92 A R 93& e@8T 3 V 2 8 # W ! 2 # R 77 # 93& ) 828 2 T8 8 T 2 2 T 2 T 8 2 2\ # tihH ! I BSV8Pu42u #DBH ! I $wp8'42u #D ! I )SQ%I42u # tihH !th @2V88au1Wb #DB H ! t h $4p('1Wb #D ! t h $2QfI1Wb #DBH ! u u $wp8'78PB #$4Bp('00V46GPs DH! XBF bH #DBH ! uB )4p('%Pw2Ht #)4p('%Pw2Ht DBH ! uB #D ! uB $2QfI%Pw2Ht", ["david-carta/fast-standard-random.djvu"] = "PRACNIQUE \ Edgar H. Sibley \ Panel Editor \ Although superficially time-consuming, on 32-bit computers the minimal- \ standard random number generator can be implemented with surprising \ economy. \ Two Fast Implementations of \ the “Minimal Standard” \ Random Number Generator \ David G. Carta \ Park and Miller [Z] described a number of portable \ high-level language implementations \ called the “Mini- \ mal Standard” random number generator. These imple- \ mentations are based on the multiplicative linear con- \ gruential form: \ s,+~ = as,mod(Z3’ \ - \ 1) \ (11 \ where the currently used multiplier a is 16,807, and the \ authors project they may switch to a = 48,271 or a = \ 69,621 in the future. \ This article presents, in generic form, two implemen- \ tations at the machine-language level that can be of use \ when large quantities of random numbers are required \ and speed of generation is an important issue. This is ", ["david-detlefs/pldi98-stack-live.ps.gz"] = "Garbage Collection and Local Variable TypePrecision and Liveness\ in Java TM Virtual Machines\ Ole Agesen and David Detlefs\ Sun Microsystems Laboratories\ 2 Elizabeth Drive\ Chelmsford, MA 01824, USA\ ole.agesen@sun.com, david.detlefs@sun.com\ J. Eliot B. Moss\ Department of Computer Science\ University of Massachusetts\ Amherst, MA 010034610, USA\ moss@cs.umass.edu", ["david-detlefs/pldi98.ps.gz"] = "Garbage Collection and Local Variable TypePrecision and Liveness\ in Java TM Virtual Machines\ Ole Agesen and David Detlefs\ Sun Microsystems Laboratories\ 2 Elizabeth Drive\ Chelmsford, MA 01824, USA\ ole.agesen@sun.com, david.detlefs@sun.com\ J. Eliot B. Moss\ Department of Computer Science\ University of Massachusetts\ Amherst, MA 010034610, USA\ moss@cs.umass.edu", ["david-garlan/connection.djvu"] = "A Formal Basis for Architectural \ Connection \ ROBERT ALLEN and DAVID GARLAN \ Carnegie'Mellon University \ As software systems become more complex, the overall system structure--or software archi- \ tecture--becomes a central design problem. An important step toward an engineering disci- \ pline of software is a formal basis for describing and analyzing these designs. In this article \ we present a formal approach to one aspect of architectural design: the interactions among \ components. The key idea is to define architectural connectors as explicit semantic entities. \ These are specified as a collection of protocols that characterize each of the participant roles in \ an interaction and how these roles interact. We illustrate how this scheme can be used to \ define a variety of common architectural connectors. We further provide a formal semantics \ and show how this leads to a system in which architectural compatibility can be checked in a ", ["david-gifford/bridge-design.pdf"] = "R. L ,+/o!. 5\ V C PI& 4 Bwers\ .CKING END ~JGE GIRDER\ L /\ DEAD END TOWER 45;`5Uru\",. mEed Brnrn\ Engineers have been designing bridges and other complex structures for millennia. Civil engineering is one of the most classical of the engineering disciplines-it has well-developed designs, procedures, and tools at its disposal. Bridges rarely fall down. In contrast, computer systems design is one of the least classical of the engineering disciplines, and its products are often poorly understood, unmanageably complex, and unreliable. Though some computer systems are more complex than even the largest bridges, there is a wealth of experience and insight in the older discipline that can be of use to computer systems designers, particularly in such areas as specification, standardization, and reliability. There is also the opportunity, in the consideration of two kinds of design, to learn something about design in general. In November 1985, case-study editors Alfred Spector and David Gifford spoke with Gerard F. Fox, a partner in the consulting engineering firm of Howard, Needles, Tammen, and Bergendoff (HNTB). Fox has been a structural engineer specializing in the design of bridges for 38 years. He is also an adjunct professor at Columbia University, where he teaches a course on bridge design. HNTB has designed many bridges and approximately half the toll roads in the United States. Fox has been involved in the design of many important bridges, including the Delaware Memorial Bridge, the Rio Niteroi bridge in Rio de Janeiro, and the Penang Bridge in Malaysia. He is currently working on the Dame Point Bridge, now under construction in Jacksonville, Florida, which is to be the longest concrete cable-stayed bridge in the United States. The analogy between bridge design and computer systems design is implicit in the interview; the editors' conclusion provides a more explicit summary and analysis of many of the major issues that were discussed.", ["david-goldberg/floating.pdf"] = "What Every Computer Scientist Floating-Point Arithmetic\ DAVID GOLDBERG\ Xerox Palo\ Should\ Know About\ Alto\ Research\ Center,\ 3333 Coyote Hill\ Road,\ Palo\ Alto,\ CalLfornLa\ 94304\ Floating-point arithmetic is considered an esotoric subject by many people. This is rather surprising, because floating-point is ubiquitous in computer systems: Almost every language has a floating-point datatype; computers from PCs to supercomputers have floating-point accelerators; most compilers will be called upon to compile floating-point algorithms from time to time; and virtually every operating system must respond to floating-point exceptions such as overflow This paper presents a tutorial on the aspects of floating-point that have a direct impact on designers of computer systems. It begins with background on floating-point representation and rounding error, continues with a discussion of the IEEE floating-point standard, and concludes with examples of how computer system builders can better support floating point, Categories and Subject Descriptors: (Primary) C.0 [Computer Systems Organization]: Languages]: General instruction set design; D.3.4 [Programming G. 1.0 [Numerical Analysis]: General--computer Processors --compders, optirruzatzon; arithmetic, error analysis, numerzcal algorithms (Secondary) D. 2.1 [Software languages; D, 3.1 [Programming Engineering]: Requirements/Specifications Languages]: Formal Definitions and Theory --semantZcs D ,4.1 [Operating Systems]: Process Management--synchronization General Terms: Algorithms, Design, Languages", ["david-gregg/case-for-virtual-regs.pdf"] = "Science of Computer Programming 57 (2005) 319–338\ www.elsevier.com/locate/scico\ The case for virtual register machines✩\ David Gregga,∗, Andrew Beattya, Kevin Caseya, Brian Davisa,\ Andy Nisbetb\ a Department of Computer Science, Trinity College Dublin, Dublin 2, Ireland\ b Department of Computing and Mathematics, Manchester Metropolitan University, Manchester M15GD, UK\ Received 10 December 2003; received in revised form 8 July 2004; accepted 9 August 2004\ Available online 12 May 2005", ["david-gregg/dynamic-interpretation.pdf"] = "Dynamic Interpretation for Dynamic Scripting Languages\ Kevin Williams ∗\ Jason McCandless∗\ David Gregg\ Trinity College Dublin\ { kwilliam, mccandjm, dgregg } @ cs.tcd.ie", ["david-hanson/early-asdl.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper., 29(5), 417435 (1999)\ Early Experience with ASDL in lcc\ DAVID R. HANSON Microsoft Research, 1 Microsoft Way, Redmond, WA 98052 USA (email: drh@microsoft.com)\ SUMMARY The Abstract Syntax Description Language (ASDL) is a language for specifying the tree data structures often found in compiler intermediate representations. The ASDL generator reads an ASDL specification and generates code to construct, read and write instances of the trees specified. Using ASDL permits a compiler to be decomposed into semi-independent components that communicate by reading and writing trees. Each component can be written in a different language, because the ASDL generator can emit code in several languages, and the files written by ASDL-generated code are machine- and language-independent. ASDL is part of the National Compiler Infrastructure project, which seeks to reduce dramatically the overhead of computer systems research by making it much easier to build high-quality compilers. This paper describes dividing lcc, a widely used retargetable C compiler, into two components that communicate via trees defined in ASDL. As the first use of ASDL in a `real' compiler, this experience reveals much about the effort required to retrofit an existing compiler to use ASDL, the overheads involved, and the strengths and weaknesses of ASDL itself and, secondarily, of lcc. Copyright 1999 John Wiley & Sons, Ltd.", ["david-hanson/hanson95machineindependent.ps.gz"] = "A MachineIndependent Debugger\ David R. Hanson and Mukund Raghavachari\ Research Report CSTR50095\ November 9, 1995", ["david-hanson/iburg.pdf"] = "Appeared in ACM Letters on Programming Languages and Systems 1, 3 (Sep. 1992), 213-226.\ Engineering a Simple, Efficient Code Generator Generator\ CHRISTOPHER W. FRASER AT&T Bell Laboratories and DAVID R. HANSON Princeton University and TODD A. PROEBSTING The University of Arizona\ Many code generator generators use tree pattern matching and dynamic programming. This note describes a simple program that generates matchers that are fast, compact, and easy to understand. It is simpler than common alternatives: 200700 lines of Icon or 950 lines of C versus 3000 lines of C for Twig and 5000 for burg. Its matchers run up to 25 times faster than Twig's. They are necessarily slower than burg's BURS (bottom-up rewrite system) matchers but they are more flexible and still practical. Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors -- code generation, compilers, translator writing systems and compiler generators General terms: Languages Additional Key Words and Phrases: code generation, code generator generator, dynamic programming, tree pattern matching, Icon programming language", ["david-hanson/iburg.ps.gz"] = "Appeared in ACM Letters on Programming Languages and Systems 1, 3 (Sep. 1992), 213226.\ Engineering a Simple, E#cient Code Generator\ Generator\ CHRISTOPHER W. FRASER\ AT&T Bell Laboratories\ and\ DAVID R. HANSON\ Princeton University\ and\ TODD A. PROEBSTING\ The University of Arizona\ Many code generator generators use tree pattern matching and dynamic programming. This\ note describes a simple program that generates matchers that are fast, compact, and easy to\ understand. It is simpler than common alternatives: 200--700 lines of Icon or 950 lines of C versus\ 3000 lines of C for Twig and 5000 for burg. Its matchers run up to 25 times faster than Twig's.\ They are necessarily slower than burg's BURS (bottomup rewrite system) matchers but they are\ more flexible and still practical.\ Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors --- code", ["david-hanson/lcc-asdl.ps.gz"] = "Early Experience with ASDL in lcc\ David R. Hanson\ Microsoft Research\ drh@microsoft.com\ September 1998\ Technical Report\ MSRTR9850\ Microsoft Research\ Microsoft Corporation\ One Microsoft Way\ Redmond, WA 98052\ http://www.research.microsoft.com", ["david-hanson/lcsc.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2004; 34:12111224 Published online 12 July 2004 in Wiley InterScience (www.interscience.wiley.com). DOI: 10.1002/spe.610\ A research C# compiler\ David R. Hanson, and Todd A. Proebsting\ Microsoft Research, 1 Microsoft Way, Redmond, WA 98052, U.S.A.\ SUMMARY C# is the new flagship language in the Microsoft .NET platform. C# is an attractive vehicle for language design research not only because it shares many characteristics with Java, the current language of choice for such research, but also because it is likely to see wide use. Language research needs a large investment in infrastructure, even for relatively small studies. This paper describes a new C# compiler designed specifically to provide that infrastructure. The overall design is deceptively simple. The parser is generated automatically from a possibly ambiguous grammar, accepts C# source, perhaps with new features, and produces an abstract syntax tree, or AST. Subsequent phases--dubbed visitors--traverse the AST, perhaps modifying it, annotating it or emitting output, and pass it along to the next visitor. Visitors are specified entirely at compilation time and are loaded dynamically as needed. There is no fixed set of visitors, and visitors are completely unconstrained. Some visitors perform traditional compilation phases, but the more interesting ones do code analysis, emit non-traditional data such as XML, and display data structures for debugging. Indeed, most usage to date has been for tools, not for language design experiments. Such experiments use source-to-source transformations or extend existing visitors to handle new language features. These approaches are illustrated by adding a statement that switches on a type instead of a value, which can be implemented in a few hundred lines. The compiler also exemplifies the value of dynamic loading and of type reflection. Copyright c 2004 John Wiley & Sons, Ltd.", ["david-hanson/msr-tr-99-4.pdf"] = "A Machine-Independent Debugger--Revisited\ David R. Hanson Microsoft Research\ drh@microsoft.com\ January 1999 Technical Report MSR-TR-99-4", ["david-hovel/prolog-windows-nt.djvu"] = "Using Prolog in Windows NT Network \ Configuration \ David Hovel \ Microsoft Research \ Microsoft Corporation ", ["david-jackson/semi-automated.pdf"] = "A Semi-Automated Approach to Online Assessment\ David Jackson\ Dept. of Computer Science\ University of Liverpool\ Chadwick Building, Peach Street\ Liverpool L69 7ZF\ United Kingdom\ d.jackson@csc.liv.ac.uk", ["david-kay/automated-grading.pdf"] = "Automated\ Grading Assistance\ For Student Programs\ David G. Kay\ Department of Information\ Peter Isaacson\ Department of Mathematical\ Sciences\ University of Northern Colorado\ Greeley, CO 80639\ isaacson@dijkstra. UnivNorthCo.edu\ and\ Computer Science\ University of California\ Irvine, California\ 92717\ kay@ic.s,uci.edu\ Kenneth\ Terry\ Scott\ Department\ of Mathematical\ Sciences\ University of Northern Colorado\ Greeley, CO 80639\ tscott@dijkstra. UnivNorthCo\ .edu\ Overview\ Students are ill-served when grading\ fails to detect errors in their solutions to programming assignments; they will assume that their development process was adequate when in fact it was\ not. Yet assignments even in introductory\ courses\ can be too complex to evaluate thoroughly by conventional, manual means.\ Some instructors have used various sofiware tools to\ assist in the task of evaluating student programming\ assignments. The ability to collect students’ work", ["david-keppel/fast-portable-threads.ps"] = "Tools and Techniques for Building Fast Portable Threads Packages\ David Keppel\ University of Washington\ Technical Report UWCSE 930506", ["david-koes/alloc_compare.pdf"] = "A Comparison of Allocators\ David Koes dkoes@cs.cmu.edu March 11, 2006\ In this document we compare the graphcoloring based allocator and the local/global noniterative default allocator of version 3.4.3 of the GNU compiler gcc.\ Performance improvement of graph allocator\ 15.00%\ Percent Code Size Improvement of Graph Allocator\ 4.00% 2.00% 0.00% -2.00% -4.00% -6.00% -8.00% -10.00% -12.00% -14.00% -16.00% 175.vpr 197.parser 252.eon* 177.mesa 173.applu* 183.equake 171.swim* 188.ammp 164.gzip 254.gap 181.mcf 186.crafty 300.twolf 256.bzip2 179.art 168.wupwise* 200.sixtrack* 255.vortex 172.mgrid* 301.apsi* 253.perl Average\ 10.00%\ 5.00%\ 0.00%\ SPECint\ -5.00%\ SPECfp\ *68k and PPC results omitted for C++ and Fortran benchmarks\ x86\ 68k\ PPC\ -10.00%\ Figure 2: Code size improvement of the graph allocator compared to the default allocator. The code was compiled with the flags -Os. Only the size of the resulting .text section is measured.\ 175.vpr 183.equake 181.mcf 197.parser 168.wupwise 200.sixtrack 300.twolf 255.vortex 256.bzip2 171.swim 172.mgrid 177.mesa 254.gap 188.ammp 164.gzip 173.applu 179.art 301.apsi", ["david-korn/winnt.ps"] = "Porting UNIX* to Windows NT\ David G. Korn (dgk@research.att.com)\ AT&T Laboratories\ Murray Hill, N. J. 07974", ["david-lebling/zork.pdf"] = "SPECIAL FEATURE\ /\ t ~~Zork:\ A Computerized Fantasy\ Simulation Game\ P. David Lebling\ Marc S. Blank\ Timothy A. Anderson\ *\ MIT Laboratory for Computer Science\ Is magic real? Do swords glow if the enemy is nearby?\ In the demonic world of Zork, a simulated universe entices\ the player into a new form of problem solving.\ .OUJI#i l I lIE W\ I~w~4 a O\"* .\ ...\ Beyond this nondescript kitchen, above and below\ the surface of the earth, lie scores of rooms, some coni~~~. <., ~~~~~taining traps, some containing puzzles. Hundreds of\ ||objectsare scattered throughout this maze, some val|| |\ *bgwblteh9tw l U~\ uable treasures, some magical tools. The little white\ \" I I I the forest clearing is the entrance to Zork, a\ in\ Ihouse\ game developed by the authors. Zork is one example\ of a new type of game: the Computerized Fantasy\ Simulation game.", ["david-mackay/intro-to-monte-carlo.pdf"] = "& 6  4 ñ ò óø ô ð øí ð î\ 7%35d‡ïvVeù‡eÝû\ ¢ ó ò óø îíí\ 3ƒïvô 0 ïùƒó 0 rX—ÝÕ¸'Ý'¡ïAVXveÝÕ½—d¡ñ 0 vXïv”XXgù‘V§X½rVvV½XÕXï‡C½vgvXXVÝva‡ó 0\ ð ó ô ñ û î¢ î û   îí ÿ þ ð ñ ý î û î õ ÷ 2 ø ô ñø ô ð ô ñ òø î ¤ ð ñ ú î 1ø ô ð ò û î ôí ð î õ ô õ ôø ÷ ñ ô ñ ð û ô ò\ ñø õ ( &    ñø ò óø ô ú ¨ø û ô ñø ü \" ôøíø ¨ ð ¨ ó û ÿ î ñ ó õ ÷\ ïa—)'%$ïYVïv½©XvX#ïùù!d!ÝCX”d— ƒïv”eùƒ“Ýiùv'‘ffiïv½©XvXï¢'ð\ ò óø ô ð øí ð î û îí ¤ òø ñ ð ñø    ò óø ô ú ¨ø û ô ñø ü\ þ ó û¢ îí ÿ þ ð ñ ð ¦ î ñ ò î ñ ¤ òø ÷ óíí ó¢ î õ ô òø   îí ÿ þ ð ñ ý ü û ó ÷ î õ ô î ñ ú ííø ÷ ö ô ð õ ô î ô ó ò î ñ ð îí ì\ Vݘ£ïAVXed§X½ÕXg¥ù—ƒïù‡‚£dvùe¡ïAVXvŸÝƒ—A½viX½{ùù—¬r”dvrX”diX”eï{Xë\ Å Â\ eÁ\ ê Å ÐÁ ã Å ÐÁ Ú Ð é è æ å ä Å ÐÁ ãá ß\ ¢£vr‡£±Ÿe’¤çr‡Cvr±âàÞ\ ~Œ |  z ¯ ~  ‡\ ˜69{¢iqXˆ\ ¢ †q‡˜w‡}6…{‚weV}‡x˜w{€ex˜w6v”}'a~{€6†{…)x6†q‡˜w‡}¢y6†{ݑd‹6q˜‡d”¢¢°S¢m‡d‚‡ƒ¢ƒ} Πܑ  £—Í\ … ˆ ˆ ‡ x † ‡w } z } y ~ | ¯ ~ ~ } z w } x ~ ‡\ Û\   © • –\ Ø ª £v¤6³ƒ6{\ Å ÐÁ Ú † ‡w } …\ Ø ×\ ‘‡Ò\ Ö Ô Ó ÒÑ Ð Ï x ~Œ |  z x ~ } z  ~ † ~ ² ‡ Î\ aՇ˜ram¢˜69”‹‡d‡a6a9gƒ} ¥Ê\ ‘  £—Í\   © • –\ µw  } xw € ¹ }wŒw  z  ‡  | † ~ ·w ² z  ‡ \ Ùe”‡˜{e˜˜˜69{qe{¨a9˜9g(6e’ˆ\ ª Ya˜6qe{|\ x  ~Œ  ‡ \ ² †\ 6‚w ® ³˜9X‹6”£do”9°Aqm6qm9˜9‡ƒee9e{66”¢Y˜e9e)ƒ9q1‘d'Y‚dg6eu\ ‡ŒŒ ‡ˆ ~ v } ˆ ‡ v } ‡   ‡ ~ † ‡ ~ ·Œ ‡ x ‡ } ~  z x € ‡ v } ~  ‡Œ  z Š ~ } † ‡ ‰ ˆ ‡ x w z ~ v\ ™\ §  ‰¥• ” ¼• Yž\ Ì  ž\ ©\ ‘  C¥£“\   © • –\ \ —¦ £\ Ë\ ¥Ê\ ª 99’aeYa6{9£¤6’z ¢ 9’9aea‡˜d{‚¢9¢˜6{169z\ Å É Ã Ã Â Á  ~ † † z u € †\ Å É Ã Ã Â Á  ~ }Œ z vŒ ~ ² ~w | È € †\ † ‡ x €  z v y Ç x »Œ Æ Å Ä Ã Ã Â Á Œ z ~ À ‡ } € ~ } y ~ w € xw  ~ € z ~  ~ v\ q‡{Q9{t˜w d¢ ’‚³w ¢¢ 999eF­ae)ƒ¢ƒ¢¢e‚{r³¿a{dae'6”} ¢ ¢¢6aeaXVe¥dr‡˜˜Œ\ x ~ y † ~  ~ˆ ~  ˆ ‡ } xw\ ŒŒ …ˆ z € † z xˆ ‡ ‡  | € † z x  ~  ‡ ~ v\ ˜6’…69IXd6e{–6’IYaQq¢6”} ¢ {q6V¢Y¤˜e9e‡’q1Ad¦³˜dV¢{'q‡ «\ x € ‡ v } ~  ‡Œ  z Š ~ } † ‡ ‰ ˆ ‡ xŒw z } ~ € \ ª {q˜q{a{¨‚dz ® q{69ƒ¾6‚¢6b¢ee6±'{66”¢Y6‚w\  … ‡w · z v ~  »Œ\  ‡ € † z  ² †w y … € ~   ‡ˆ x € ‡ v } ~  ² †\ µ € …Œ y † x € ‡ v } ~  € ~ y † z · € z ˆ ‡ † ‡w x x … y xw € z v }\ 66‚¢6‚w ¢ {q6V¢Y…¢¢69½{dD­1q˜‡‡6a‡˜{o1”˜w ® ¢{6‚¢6q¢‹a‡69{¢Y6eu\ x ~ € …Œ y † ‡ y  ~ } | z v y ~ v\ ª\ € ~ } † ~ x ~  | xw x € ‡ v } ~  ‡Œ  z Š ~ } † ‡ ‰ †w z v y · ‡ »  z ‰ ˆ ‡ ¹ ² ‡Œ ‡ †w   ~ } ~ v\ ¢‡’a‡¢e{³o{q6”¢º˜e9e‡’q1¼‚d{¢…dd‡9…gdº’9˜96‚Y‡a‡6”}\ ¢ ¢°¸Qa‡¢{a¢°9{){q6V¢Y6”'a‡Xˆ {ª ˜¢{q£da˜6{9‡q¨V³w ® ¢6aeaXˆ\ € ~ w  y x ~ € † ~ ~  ~ · z v x € ‡ v } ~  ~ v }  ~ } ¶ xŒ ~ € ‡  Œ z yw v | z  ² v }\ ~ y † ~  ~\ µ †w †w ~ xw  z x z v y … x x  ~Œ  ‡  | Œ z † ‡w x † ~ w € ´ v ²w v  ‡ˆ Œ … ˆ ~ x … ~  ‡ } € ~ } y ~ | ¯\ ’‚‚eƒ³Q9Ddot6”'Ya˜6qQ{£d{q˜‡6aY‚{q’6³6r6±°6’V‡6g{Y‡¨¢‡¢¢{{¢~\ ® € ‡ v } ~  v y z ~  « ª ¡   “\ š ž\ xw € ‡ v } ~  ~ v }  ~ v } ~\ ˜q6”¢6”'a6”¢6v ® ‡6a‡˜{g~ 6¢ q6V¢Yt­aA6‡ ¬£—› v£…‘ ¢ož C¨\ x x … y xw €\ © ©\ š ž\ ¢ ¡   “\ š ž  œ › š\ € †\ 69z ¢ ‘• dq ‘ ž —C¥– q '6”} C¥› v£…‘ ¢¤› ‰ d{¢¢ – £—› C”‘ ƒŸd‘—¢™\ § ¦ ™\   • “ • ™\ ~ v ¢ ¡   “\ • ™ œ  ¤\ ˜ – • “ ‘  x € ‡ v } ~  ‡Œ  z Š ~ } † ‡ ‰ ˆ ‡ ~ y † ~ … „ ~ x z x ~ w  y x ~ €  ~ } | z v y xw v\ —C”’D{q6”¢Ž˜e9‹–‡’q1d1¢6a6S¢ƒ…1¢{‚ea‡¢{oa‡69{¢˜6eu\ s 7 @ t s q p\ CAgAdrA@\ ˆW9’q9`vno”XvsbCmˆimd¨ige¢qƒV¢9Ax\ c € ‚ s\ € HU ` „\ l k j h f x w H ‚ €s T y W R\ w € c ™ H— ‚ s €\ d9RD¦pa˜69`v99R–ip”9XU’“’‡q‘V‰9ba9Ax\ • w T c R T c y R  h rs € ` H † R\ ˆ9pXUs¢r‡THavsbC„…qƒ€V¢W9A'wV¢vtrqhifge'baYXV9SQIG\ † `\ H ‚ s T y\ R x r us p\ d c U ` H WU T R P H\ E @ B 7 @ 8 4 4 4\ FDCA9'7 65 )3\ 2 © § 0 £ #\ 1¦)(!'¨$\"!¨¦¤¢ \ § & ¥ %  # £ ¡ §\ § £ ¡ §   £   © § ¥ £ ¡\ Å †\ ’¦Á\ ê Å Ð\ ¢£vÁ t e91çß\ Ú Ð é è æ\ w\ } † z } x † ‡ y ² †w CwŒ z   ‡ † ~ v\ 9’”‡6q¢¨6‚¢…˜do‡q66”} ® 66)96Ÿ{˜³­a³6{eg~ ® ­{”)˜eƒe¥„6eu\ ‡ † » } ‡ † ‡ € ¹ŒŒ z yw | ¹ }\ } z v } xw } x   ~ v\ ª ¢˜‡˜6aŸ‚{g‡ ® eQ9IQa6e)ƒ£vÚ 6e’i¢˜69V‚d”66‡e˜6aŸ‚{—d‡a6a’‚w\ x ~w }Œ … y Ew €\ } ~  z ~  ~ v u  Å ÐÁ\  ‡  ˆ x ~Œ |  z x †w z }  ‡ ‡ } }Œ … y Ew € Œ z  ~ † ~ ² †\ }w xw ¹\ ˜D˜Y’v § # a˜6qe{)’³’‡Ÿ˜˜‡dai96)~ ® 9aY’v d¢ £±Á t I‡­{¸­½¢Y9a‹~ ® v€\ \  ~Œ  ‡  | ~ ·Œ ‡ x ¹Œw x z ~ } ‡ †\ † z y ¹ ® Å Ð\ Ú ~ } z …Œ z · ~ † z y\ ˆ\ Å x\ 6yÁ\ ê w u Å Ð\ mAv£vÁ t çr£vÚ\ Ú ß Å ÐÁ\ } z v } v y … x Å ÐÁ t Ú † ‡w } y † …ˆ z ~ } z …Œ z · ~ † z\ ­{”¨t6V'£v9fq˜‡¢6{’‡d{‚dd¢¨9ay\ ® xw } z v } r } † z } x † ‡ y ~ ·w } z ywŒ |w }Œ …  z †w v }\ ~ ‘¢ ³g­{”bs99V‡6q¢9˜‡da˜˜6‚‡˜6Yº‚6”˜w ® ‡gƒda˜gdz ¢ ¢‡­{¸­½¢°…9ay\ ‡ } } x z ~Œ }\ € ~ } z …Œ z · ~ ~  † z\ ¢ £vÚ ¢ ¢˜69”x ® ‡b)ƒV³w ® ~ ® ¢³6v ® qeݦ“˜‡6a{i6”Cd{”A{”‡db˜˜w ® ~ §\ Å ÐÁ\ x ~Œ |  z\ z  € ‡ } v x\ v yw\  ‡  ˆ ¹ }w x † ~ € ~ v } } z v } ~  … x x z ŒŒ\ p 3 t @ R i ge c 8 b t ` X WS V T 8 @ q q S E R Q 4 I4\ qADi¨Bhfd'G—aY¦)UDdYݤrPaI\ ª ‡dae’6a‡±­)˜i£v1q˜‡6{‚e”ƒ³{€ a9˜9²\ ¹ x z ~ } ‡ † † ~ }ˆ ‡ xw Å ÐÁ Ú † ‡w } … w  } xw\ † ~ ·w\ z qe݋¢³6o9”’a{6a{a{6‚6¸6‚dV6 Bª {66”¢Y³Q9e‡’q1'qXg¢˜‡˜6ab\  ‡  ˆ x ~Œ |  z x } † ~ € † ~ | ~ € †w ² †w †w z } H x € ‡ v } ~  ‡Œ  z Š ~ } † ‡ ‰  ‡ˆ x ~w }Œ … y\ µ ˆw €  ~ v } ‡ ~ x … z y † z\ vï{‹a6”9o‡69a9ay “˜˜d{q˜‡6a¸{”q˜6Id{V} ¢ a’¢~ ® 6v ¢ aƒd‚…6¥G˜˜w ® ~ §\ ¹ }wŒ z † ‡w x † ~ w € v ²w v } z v\  ~ ·\ ‡\  ~ } zŒ € †  ŒŒ\ ª\ ¹Œw  ‡ } y z ˆ xw } z\ ˜³Qq‡¢dÝe˜‡d”x ‡d‚‡‡¢o‡}\ Þ ~ } z w } x ~ ‡\ ~¢ŸF”eÔ Q˜Ñ a‹¢˜69”'’a{6a{a{6‚¦a¢D{mz ­z ® ±Cdrd{”'°aoA³w ¢ —d‡\ y E … x Ó Ò Ð Ï x ~Œ |  z x } † ~ € † ~ | ~ € †w † ~ C ‡ €\ x\ ~ˆ x z } z v } ~  ¹ z  }\ Ð ˆ\ Ö\ ¹ }wŒ z † ‡w x † ~ w € ~ v } ˆ ‡ x x ~Œ €  z ² ~  ‡\ e˜³­{q˜‡6aY‚{'6”¥di‡¢˜{e9q¢Q6È ª \" ! dA¢69²  Þ de¢69‚e9de6”} ¢ ‡˜¢¢e{|\ x z x ~ ‡\ ˆ ‡ ~ y † zw  z · ~ v\ ~ xw y ~ \ š ž  œ\ ž  ¦ 3\ ¡  š • ž ›\  ¦ 3\ ™ ›\ ›\ ~  ‡\ {‘u Ë §  £…‘ ¢1dbš “ –—d™ B• ¢™   —› ‰ ‘¬ ’£§ ¥d™ 4• b¬ § b “  § › \   “\ ‘\ ž –A@Û 8› ‚ {—¨e6¢{š ’ ¢{ ‰½– š  ¢b› •\  ™\  ¦\ —d™ 4• 2bš – 19bš ¥¦ £\ ¡ œ\ 0 œ œ\ \  9 9 5\ • ™ š 0 7  5  ™\ ‘ ™ ž\ • \ 3\ ª {66”¢Y¨³Q9e‡’q1£dm¢˜‡ea{6e{)’9”eq°‚g6”rd6q‹³m˜6eu\ x € ‡ v } ~  ‡Œ  z Š ~ } † ‡ ‰ ˆ ‡ x ~w }  ~ | ‡  | } † z }  ‡ | w ~ v } ˆ ‡ ~ † ‡ xw xw v\ Å Ä\ ’XÁ\ ê & eº)£vrXaCvŸe’è\ Å Þ ( Å ÐÁ ãÁ Å ÐÁ Ú Ð é\ æ\ ß & $\ Ö\ ¢ Ad¦¢69‚e9½¦6”e˜m'%ea6v {¢ #dY‡daea¢{C˜˜w ®  Þ\ 㠈 ‡ ~ y † zw  z · ~ v } xw & $ ~  ~ ® \" ! x z ~ x z ~  y ~ € ŒŒ\ ˆ ‡ ~ y † zw  z · ~ v\ d¢6’¸Q9½g6”} ¢ ¢‡daea6‚w  ¢˜6’”x ­'a{Y{66”'dz ¢ ‡˜Œ 6ª I˜w  Þ d¨q˜‡}\ x ~ x z ~  y †\ x ~Œ |  z ˆ ‡  ~   … † ~ v } x\ ‡ x ¶ Þ x\ ˆ ‡ † ‡w\ Ø ×\ ¿QÒ\ Ö Ô ‡˜Ñ ameq‡¢¢’g6”} Ù¨˜e9a˜'Š\ Ó Ò Ð Ï x  ‡ } y ~ · ~ v ˆw ¹Œ  z ~Œ\ µ z } y ~ | ¯ ~ ~ v } † ~ v } Å ÐÁ\ ”¢¢{{¢g6”¨a6”i£±Ú 6e’o¢‡dƒa6a9)Q9z\  ‡ ˆ € ~ } z  ~ † ~ ² ~ \ Ò\ Å  Á\ ê Ó Ò ÐÁ\ ¢Å ‡˜Ñ vrã\ \ \ Â\ å \ ¼Þ\ Ø ×\ ¿‡Ò\  ‡ } z w } x ~ ~ v } ~ ·w ² ‡\ qƒd‚‡‡¢g6”¦9˜9Y‡}\ Ö Ô ‡³Ñ ¢˜6|\ Ó Ò Ð Ï x ~Œ\ µ  z\ ¦’”x q{69ƒI6”¨6‚‡69 a˜6qQ{¤6q¢¢‡g6”g9˜9ƒ¨9a)~ ® a6”} ¢ ˜¢9˜9‡x\  ‡ € † z  ~ v } ² †w x … ¹\  ~Œ  ‡  | € † ‡ y ~ x ~ v } ~ ·Œ ‡ x † z y\ † ~ v\ }w € ~ ·Œ ‡\ ~ · z v\ 9{g~ ® Ù)‡6’a¢{ ¢ q6‚³6o9”v!a˜6qQ{D‡e¥6”6e‡d‡V9a¢6q¢—˜˜w ® ~ §\ ˆw ~ x … z y ~\ Å ² †wŒ |  z xÁ  ~Œ  ‡  | } x   ~ v } † ‡ ~ } z  } † ~ y † ‡ y ŒŒ\ ª ‡˜dg¢¢d{”¦‡¢ea‡˜{‹a{˜‡6q¢e¢Y‚‡¢q‡x\ ‡ xŒ z x ~ y z | x ~ } ~  y xw €  ~ €w x † ‡ y x ~ w } ~  ‡\ ŒŒ\ ˜³w ® ~ ® 6{ ¢ ‡’a6q{6¢rdae ”˜w ® q‡¢¢9id{q˜‡6aY‚{q´ ’˜w gd{”}\ } …\   x } † ~ † ‡ |  ‡ y Œ z ~\ v }\  ‡ } y ~ · Œ z † ‡w x † ~ w €\ © † z x\ Ð } z v\ § z } z € € ~ ·  ~ x  ‡ ~  ‡\ ~  … x x z ¹ŒŒ z  ~ † ~ ² ŒŒ\ Y{”‡d¼˜˜d‡a6a9m˜³w ® ~ ¨ª Vdb¼¢9ea‡66ŸY6‡x a9˜9Yea‡¢Y’‡9{Ÿù¦¢{6Y\ † ~ ·w ² x  ~ } ~  z  z | x¥ Œ ~ € ‡\ z ˆ\ ­‡ e˜˜˜69{qe{¨q˜ea‡‡’{…6”} ¢ ³6o9S¢oqXˆ\ ¹ }wŒw  z  ‡  |  ‡w  ~ } x ‡ | ~ v\ ~Œ |  z ¯ ~  ‡\ £ ² †wŒŒ ~ € ‡\ ¤6‚˜³¢{6Y ”db€ ‚¼6‚‡˜e9z\ z } z\ †w ² †w xw \ † ‡w } … w  } xw € Œ z † ‡w }w € † ‡ y z  ‡ x yw x ¹ v | Œ z yw } xw } z } x  ‡  ˆ † ‡w } … w  } xw € z ~  } v ²w\ q˜‡6{‚e”ƒ³{¬d{q˜‡˜{6q¢‹£6A¢˜‡69{{da˜‡‡˜‡dV‡ç6e’q˜‡6{‚e”ƒ³{‹e{A’q˜Y\ ¢ ¡ ž ›\ i¢™  ‘b § 6b¡ – ¢™ 6”C˜da£˜˜w ® ~ ® ¢˜6v 6¢ £v1q˜‡6{‚eV‡˜{¤e˜³˜69{6e{6eu\ ™ \ š ~ v } ŒŒ z y ŒŒ\ v yw ® Å ÐÁ Ú † ‡w } … w  } xw € ¹ }wŒw  z  ‡  | ~ v\ E @ B 7 @ 8 4 74 4\ —'CAYd'ùq5 m3\  \ ¤ òø ô ú ÿ þ\ ¥ùvdaiVó 0\ €ƒ(\ %!\ & \ '!\ \" ¨\ \"\ òø ü î ô ú ¨ø û ô ñø ü \"í þ û ó¢ø ò ú î û\ ù¦eX½©XvXï¢gi݇‚©aC݃ð 5d‡ð ë ¢ÝÕ½Fa'\ x ü ò x îûî õ ÷ 2\ ü îô ðû î ò î\ eX”ÝÕ½ÕV¤ 9¨ ‡ð 0\ î\ ò\ ò ðø ñ ñ ú ð s î ô ðø û ð 1ø ò\ ƒïvX½ƒCtX”ïXƒ‡aú ð\ \"\ x€\ 8‚p\ þ óû\ ”ݘ¢\ u % ë U9v¡”ó 0\ y x w uñ\ r\ %\"\ ¤ óí\ §ï’\ îí ÿ þ ð\ ïAVXñ\ ¢ ¢d{”16”Ydçe˜³­{q˜‡6aY‚{…6”} ”˜w ® ˜daƒ¤˜¤¢6{€ ® 6v 6’z ¢ e{b¢¢6e{|\ ~ y z | x ~ v } ˆ ‡ ¹ }wŒ z † ‡w x † ~ w € ~ v\ v }\ ~Œ z y x }w x ~ ‡\ ‡\ € †\ ~  … € ~ y ‡ \ xw v } ˆ ‡ } x ‡ y ~ v } xw } z\ ˜6”)dY‡9¢6V˜d{v ® 6… ª ‡˜6 q{69‡I­Ÿ¢e{6‡¼qº¢ƒd{Ÿ{66”¢Y\ } e x }w\  ‡ € † z  ˆ ‡ ~ y  … ‡ x z † ‡ € ~ x z  x € ‡ v } ~\ x … ‡w  z · ² †w x … Ôf h Ï † ‡w } … w  } xw € ¹ }wŒw  z  ‡  | ~ v\ 6q˜e9dg6¸ƒ6)X#8¨6³ƒ6{¸Q”‡˜{Y“˜˜˜69{qe{e6”} qeÝi˜69”x a6”¦9aA~ ® 69z\  ‡  ˆ ~Œ |  z † ~ v } † z y\ € †\ Å T\ ’pÁ\ w\ Au t\ Å i\ ’pÁ\ t\ f h\ f q¥Wh\ h ß f\ f\ \ ß\ € †\ 69z\ w\ ® f } †w ‡ | v y z ~ } z Åf \ ~‡6{q¢o9am~ ’¢ W ’¸’{¨tda'di±W¦Á t çß tf c‡­{¸­½¢m~ ® vUa˜6qe{e˜6”}\ } … |  ‡ y † z y\ Ú\ h ~ } z …Œ z · ~\ ˆ€   ~Œ  ‡  | xw v\ g Å   ~  … ² Á Ô f x } †w ‡ | € ~ y z | x ¹Œ   ‡ ˆw † … ˆ ‡ } ~ x z  ~ ·\ ~9˜9‡g~ ® ˜6q¢y ® ‡ ¦ª {aQ{qb ¾Õ# Ï ‡9‚9°–¢¢d{V³‡qXï6{Ade¢ƒ'a9d‡\ ·Œ ‡ x\ €Œ … ‡\ † ‡w } … w  } xw € ¹ }wŒw  z  ‡  | ~ } ~  y xw € ~ v\ q˜‡6{‚e”ƒ³{Ye˜˜³6’{qe{)‡¢Qa‡˜{A6”} qeÝr¢˜69V‘qX‹”d69Y ˜69‚e’½'6”}\  ‡  ˆ x ~Œ |  z x  ‡ˆ » x z € † z\ ~Œ  zw  z · ~ v\ ®\ ~¢P‡¢ea‡˜{€ ˜6q¢~ ‘¢ a˜6qQ{a˜6‚‡¨Y¢9˜¢‡e{qo9˜9¤¿u ª ˜w qQ’ˆ ¢³6o9”x\ Cw } ~  y xw\ €Œ … ‡ y\  ~Œ  ‡  |  ~Œ | w x z x ~ ·Œ ~ x  … ‡ ~ ·w ² ‡\ }\  ‡  x ~Œ |  z\ ® ‡bo9ae~ ® 9aY'96e¢q{id{”'6… Uª 9aYe{qb 1q˜‡¢6{Ýi³6VD’³6¨9am~ §\ z  € † z y\ † z ~  } ‡ † x ~ ‡ € } z v } } e Å z  ~  … ² Á † ‡w } y † … ˆ xw v } } ‡Œ | † z y\ Å É\ ’XÁ\ ê Å b Y b Á `  Y X V  T Qê Q\ ¢¼9dc( ºaU8WDUS{R( & qx {R¦¥x °!PS¢~\ Å ê Q ( Á ê QI | ¯\ ß Å \ rb¦Á t Ú\ ~  ~\ Qa6v ® Aƒb¦Á t çib¦¤e˜‡6a{g6”\"qQ’‹¢˜69”x ® ‡bY‡} ”˜w ®\ w u Å \ Ú ß Å Á Ú ¹ }w x † ~ € ~ v }  ‡ ˆ x ~Œ |  z\ z  € ‡ v x\ ~ ® d{”Y6‚9do݀ ª ˜6’S¢id{q˜‡6aY‚{qV6qo³6o¸ƒ¨z qQ’‹e9”ƒg6¢—H\ } z v } ~ †w ² z \ ~Œ |  z ¯ ~ Œ z † ‡w x † ~ w € ´ ~ † ‡ ~Œ | w x\  ‡ ˆ }  z } x x … } ~\ & ª q˜‡6{‚eV‡˜{¨9‚‡‡69z Æ 6”¦³6o9S¢iqXˆ ¢ ¢˜69”x ® ‡b€\ † ‡w } … w  } xw € † zw x x …\ ~ v } ~Œ |  z ¯ ~  ‡\ x ~Œ |  z\ z \ ‡ } ¹ x z ~ xw }w v yw\ ƒ–ƒdaY³¦˜…¢˜6v ® qQ’Y¢˜‡˜‡6a{‹d{q˜‡6aY‚{q’q˜6v ® ±¾º˜6qe9¨ea6eu\  ‡ ˆ x ~w }w x † ~ € Œ z † ‡w x † ~ w € ´ v ²w\ ~ˆ z ¹Œ † ‡ ~  z ~  ~ v\ ª ¢¢d{”rd{q˜‡6a¸{6’q˜6¤‚¤˜˜d‚¢¢{”¢~ ¢ 6q6‚96a˜³­{tYC³˜‡ƒe˜'£vÚ qe݈\ x ~ y z | x Œ z † ‡w x † ~ w € ´ v ²w v †w ¹ŒŒ zw y ~ | x\ ~ † ‡ ² †w ² † ~ŒŒ z v y z ŒŒw } x xw Å ÐÁ\  ‡ \ x ~Œ |  z x ² †\ ¢˜69”¦6¸w ® ƒbF­‡ a˜6qQ{I6”} ¢ w ® 6q˜{e~ ® Ùa9¢~ ¢ d{”'˜6q¢¢‡m6eu\ z  € ˆ\  ~Œ  ‡  | ~ v\ ‡ † » €w €\ ˆw † ~ ·\ } z v } xw € † ‡ y ~ x ~ v\ D ò øô ú øûô ø ü îôî ø ü ø õô þ ó ñ í ÿ þ ðñ ÷ðû ü óô ÷ó C & F 4 ñô øó\ Gƒïóv½©¨XvXïñ¢iX“Ýû 0 ïñƒ£ïñv¼”ݘû¢ “ïîi”X‡Ý¢'X¤ƒ£76 GE£Xaùò‡9ÿ\ ü ð ÿ ñ \"í þ û ó¢ø ò ú ¢ ó ô î ñ î ô î ñø ü ð ô ð ü î ô ð úí ð 1 î\ eî 0 ½vei݃¸©a93beXCXeÝû 0 ïƒrbV)eXV½ùƒ‡¡6 !   ƒïvô 0 ³¢ ½—(  ¨ \" ïv½Õa—ïavô ”ݘ¢\ ò óø ò ú î õ\  D ôø ñ ò î ü ñø õ\ þ óû\ ñ îí ÿ þ ð ñ ÷ ð û ü ó ô ÷ ó C B @ 7 0 (\ eïaiVX‡Ý¢iX‡£1& %A98( 63 \"  2 154! 2 1)'V%¨# !! ‡ïvô 0 a˜¢ d—(  ‚ ¨¦¤\ 0 ( 3 0 (& ÿ $ î \"   ò óø ò ú î õ ð     © §¥\ -2\ 0\ 2\ Å \ {XÁ\ -4\ 4\ Å z\ ’XÁ\ 0\ -4\ -2\ 0\ 2\ 4\ 0\ 2.5\ 2.5\ 2\ 2\ 1.5\ 1.5\ 1\ 1\ 0.5\ 0.5\ P*(x)\ 3\ P*(x)\ 3\ q 3 b R s ¡ 8 b t @ 7 ¡ s\ D'qG—£à4V 'C…¢AW U8\ b\ Ä\ Å   QÁ\ Â\ ê\ Ö\ w\ Å ‡˜Ñ v9fÚ\ Ó Ò ÐÁ t\ Å ‡˜Ñ vrã\ Ó Ò ÐÁ\ Ø ×\ ¿‡Ò\ Ö\ \ ß \ ¼Þ\ ¹  Å ÐÁ Ú Å ÐÁ ã\ ’ACv‡£vrŸÐ é ‘@à‡do¸ƒ‡¢69z\ è 9 ß Þ ~ } z w } x ~ € †\ Y Ó\ Å ‡˜ÒÑ\ Å Â Â\ a9QÁ\ Ø ×\ ¿‡Ò\ Ð\ vÁ t Ú\ Ö\ \ Ö\ ß\ w\ Ö\ ¹  € ~ † ~\ ’–¢6¥ {€ ¢\ w ~ y … € ‡  } †\ ¢6bqeV9‚w\ €Œ … ‡ y\ ˜6q¢g~ ® a6eu ª ‡’¸’{‡96Ved'£vÁ t ¤6‚‡d{‚dd¢¤69¢­{”g‡d”ƒg6”} qe݈\ † ~ v\ x } †w ‡ | ~ x ‡ v } } z Å Ð\ Ú ² †w } z …Œ z · ~ € † z ~ y z | x ~ } z } x ~ v\  ‡ \ 8 Ø ×\ ‘‡Ò\ p— W T c s\ ˜YV9td b`\ z  € ¹  Å Å ÐÁ 㠆 ‡w } y † … ˆ z ˆ ‡ † ‡w } z\ Ö Ô ‡³Ñ ag¢˜69”\"q{6’‡6¸w ® ƒb9i‡£vrq˜‡¢6{Ýmrd6³ƒd”}\ Ó Ò Ð Ï x ~Œ |  z x  ‡ € † z  ² †\ µ y ~ | ¯ ~ ~ v } ² †w } z w } x ~Á  ~Œ  ‡ \ V¢{{¢Y6”6‚‡d‚‡ƒ¢va˜6qe{| 6q¢¢‡Y6”9˜9ƒŸ‡6‚qeVga{˜‡6q¢g’q˜Y\ € † ‡ y ~ x ~ v } ~ ·Œ ‡ x ‡ } ² †w ¹  }  ~ €w x † ‡ y } v ²w\ ® ~ y z | x ~ } z } x ~ v } †w Ð † ‡w } z y ‡Œ ¹  ~ · ~ }w xw · } ‡ † † z y\ ~ {¢ ¢d{Vg‡d”‡g6V‚1q˜‡da6˜ŸQa9¢)˜‡˜6e96{9ag~ ® d{”¢¢QqdŸ6‚6az g\ } z v } € ~ ~  ² z ² †w ·\ X WS V\ q¦'T\ 8 @\ Ddq\ 8 t b\ A'4` S W 7’5aI\ 6 4 44\ ª 99’aeÁ\ Å É Ã Ã Â\ † ‡ xŒ\ q‡˜˜w § 6’Ÿ{qQA&d¦‡6‡ ® 6”’…¢¢6a{˜q¢idYae9¨te’a‡¢eg9˜‡¢d¨9£˜˜‡‡x\ € † z | | ‡  3 ˆ ‡ » \ ~ v } ¹  € ~ y † ~ €w · ~ x z z ~  z v y  z ~ x ~  ~ ·w } y z † z ŒŒw }\ x w u Å Ð\ ˜w Av£vÁ t çrCvq˜‡6{‚e”ƒ³{'6”} qeÝC¢˜69”m6‚‡d‡a6a’bdm”d”i6”r6{\ Ú ß Å ÐÁ Ú † ‡w } … w  } xw € ~ v\  ‡  ˆ x ~Œ |  z x ² †w } z  ~ † ~ ² ˆ ‡ » x z } ~ v } } …\ ¢ Y‚‡e6q˜'—qXg6{6e9a¢°£d{¦t˜6v ® ¢{6Ye˜6‚‡'£˜9¢{6Yg6‚‡Xq6eu\ ~ w } ² † ‡Œ z  ‡ˆ € † … ‡  z † ~ ~  x z v v yw\ Œ ~ € ‡  ~Œ | w x z xw Œ ~ € ‡  ² †w x€ ~ v\ ª 6q˜‡d{‚d½¢~ q˜‡¢6{݈ ¢2¡ Ø  \ x † ‡w } z …Œ z ·\ † ‡w } y † … ¡ ¡\ ~{³66‡ ® ¢Q¸6{¢egY‚‡ia‡6{q¢‹6”} ¢ i¢‡d”ƒ—9md¨q˜‡¢6{’i³6V)‡­{¸­½¢~\  €Œ …\ € ~ w … „ ~  ~ w }  ~ } … |  ‡ y ~ v\ Ð x ~ } z } x —— R } z † ‡w } y † … ˆ xw v } ~ } z …Œ z ·\ ‡ } v x\ ƒ¨”˜w ® ~ ® Ù'6… e ª Ÿ’9'qX¨¢‡d{‚d½¢˜˜{daem³g£v1q˜‡¢6{Ý’ea6ag6eu\ ˆw }\ Ð ¹ † z  ‡ˆ € ~ } z …Œ z · ~ ¹Œw € z ~  xw Å ÐÁ  † ‡w } y † … ˆ ¹ ²  ~ † ~ ~ v\ Å Q Â\ 9QÁ\ ê 0\ ¤  \ (\ )\ ' \ \ \ #\  \ %\ # &\ $\ ¨#\  \ \ ! ( ß Å ÐÁ\ \"6£Cv\ Â\ € † z Ô Â Ï `\ 69dY ¤P %ea6v ®\  ~  ~\ Å Ã\ ’XÁ\  Å ÐÁ   ( | ¯\ £vh{¢~\ ß Å Ð\ C£vÁ t Ú\ ‡ } Œ z † ‡w }  ‡ | ‡  | xw † ‡w } … w  } xw € ¹ }wŒw  z  ‡  | ~ x ‡\ ‡¿d{q˜‡eq°qe{)˜q˜‡6{‚e”ƒ³{e³˜˜69{qQ{‡96v ® Å   9a¦69q¢rYï'˜¢b\ à à  x † z  ‡ ~ © Á Å¥ €Œ ~\ · ‡ »  z ‰§  ‡ ¥ ~ †w v y z  † † z  C }Œ\ ddƒ9…ï¨qbD6‚6¢d{9oav˜9‡ e ¨qvD¢{6Y6¸ƒX€ 9AdA’aYq­‡’U¤¦Uz\ §  ‡Á Œ ~ € ‡  ² †w x\ † z ˆ ‡ } † ~  ² z ˆ Q Ä ¥ Q Ä\ ¢\ ~Œ |  z ¯ ~  ‡\ ˜69{¢'qXˆ ¢ 6‚6”¦UQ i­1q˜‡¢¢˜˜9¢Yg³'¢‡­”‡x ¢¢¡ Ø   ”˜w ® a‡ƒq‡¦6† H\ x †w | x Q Q  ˆ ‡ † ‡w } y ~ŒŒ ‡ y z xw x ~ } z } ¡ ¡\ v }\  ~ } x ¹ x ~\ ª ‡ea’³6{Y6”‚m¢˜¢³ƒe9{Ad'a{Y{66”Cd'a~ ® {|\ ~ x  ~ ·w † … ~ v } †w x ~Œ yw }  z | ˆ ‡  ~   … † ~ v } ˆ ‡ \ ‡\ v }  … ‡ˆ ~ v } ‡ } Œ z … „\ ”Q{q±‹6”Y‡¬d{S¢~ ¢ 966³6‚eƒq6‘³˜‡ƒe˜Ad{”ia°{6Yz ¢ ¢¢¡ Ø   {³66‡ ® t Ú\ ~ ² … v ¹Œ w   ‡ v ŒŒw } x xw } z v }  ~   … †\ ~  €Œ …\ ¡ ¡\ ˆdg6q˜‡d{‚dd¢Ad‹a{Y{qY6”} ¢ ¢6‚d½Y‡¢eaƒ³{Y‡ ® 6q‡˜6qŸ  ’a6q°q¢y\ ‡ x † ‡w } z …Œ z · ~ ˆ ‡  ~   … † ~ v\ x ~ …Œ z · ~ } ~  y xw €\ } » ‡ ‡ } ¹Œ † ‡\ } † ~ † ‡ |  ‡\ v y z ~ ˆw † ~ £ t Ú ˆ ‡ x † ‡w } z …Œ z · ~ ˆ ‡  ~   … † ~Œ  z †w ² z w † … †\ tda—Ùa’· ¤ª f¥d'6q˜‡d{‚dd¢bdCa{Y{6I˜69{‚9­‚6{’z ¢ ¢¢¡ Ø U† {˜6q‡ ®\ Q ~  €Œ …\ ¡ ¡\ x‡’¸’{da°Y{qà6‚{6q°”¢e‡q¢6V¼a6”} ¢ ”UQ  ß\ } †w ‡ | ˆ ‡  ~   … † ² †w € † ‡ | x ~   ‡ y ~ v } † ~ v\ ¹ z x Q Q\ © ¢ 6q˜‡6aY‚{€\ x † ‡w x † ~ w\ ©\ € z\ d{v aƒ‡qƒm{qD±€ ª q˜‡6aY‚{Y6q‚g‡’¸’{º¢¢d{V–˜Yƒq±Ù6{¨U† Q9ea6”}\  ~ } x ¹ x  … ‡ ˆ\ † ‡w x † ~ w € ~ † ‡ †w x } †w ‡ | € ~ y z | x ¹Œ   ‡ˆw † … Q ~  z ~  ~ v\   ~  … ²\ a…e{qb ݀ ª ¢d{V6”¼‚¨9‚9°Žea’¢Ÿ˜‡˜6…‡¨9{¤~ ® ‡’pÁ q˜‡­{S¢vÁ w\ †\ ~ y z | x ~ v } †w } †w ‡ | ¹  ~ · ~ }w xw · ‡ } ~ · z v\ Å Å i\ † ‡w } z … „ ~\ ~ } … |  ‡\ ‡6{q¢y ‘u ª w 6‚‡­{¸­½¢­Ÿ‡’¢d‚‡˜6‚16”} q¤‡­‡”’a¢6q¢6¤¢—R ©\ ‡\ ² †w } z …Œ z · ~ ˆ ‡ } x ‡ y Œ zw }w †w ~ v\ † ‡ ~ } z  } † ~ y † ‡ y x … } ~ H\ E @ B 7 @ 8 4 74 4\ —'CAYd'ùq5 m3\ x\ ® ~ } z …Œ z · ~ ‡ } ¹ x z ~ xw Å Ð\ ŒŒ\ ˜³w ® ~ ’¢ ‡d{‚d½¢gƒ‡dai˜‘£±Á t ¿Ù¦a9¢'˜6aŸ‚{A˜¼Aƒ£vÁ t çr£±q˜‡6{\ Ú ˆw † ~ · ~ }Œ … y Ew € xw w u Å Ð\ Ú ß Å ÐÁ Ú † ‡w } …\ µw  } xw € Œ z † ‡w x † ~ w € ´ v ²w v z  ‡  x ~Œ |  z x ² †\ Ùe”‡˜{'d{q˜‡6a¸{6’q˜6¤!6e’ˆ ¢˜69”6¸w ® ƒbd{”¼¢6V³˜69V‡¢¤6‚6az g\ z  € } z v } € ~ v xwŒ  z } x ~ ² †w ·\ Q\ ¡ S 3¿¡ U’1aI\ 2t 2 b 4 4\ ª 6’V‡6Y{Ÿƒ¤˜¢d‚˜6{I˜w\ Œ …ˆ ~ x … ~  ‡ } ¹Œ ~ »wŒ † … x\ ² †wŒ |  z\ 6‚˜69”x ‡qXÙ6{… ¢ ‡qXï6{Y˜³­{”¢d£96A˜—CvYq˜‡6{‚e”‡˜{A6V¥Ùw ¢ Ya˜6qe{|\   ‡ ˆw †\   ‡ ˆw † … ¹ŒŒ z … } y z } ‡ † xw Å Ð Á Ú † ‡w } … w  } xw € ~ v } ˆ x  ~Œ  ‡ \ Œd{6³ƒ6aY‚{q’q˜6‡’Y¼‚¼6† Cª ¢P‡Y‡¢{6YIdY˜¢{qº6‚‡X€ ­…{6”‡¨6”}\ z † ‡w x † ~ w € ´ v ²w v } x ‡  †w € ¶ ~ Cw x } x ~ € ‡  ˆ ‡ xŒ ~ € ‡  ² †w x ˆ ‡ ¹ € … } x ~ v\  ‡ˆ x x ~Œ ~ x … ¹Œ  ~ } } … xw ² †wŒ |  z\ 6±Yƒ¢³¢ƒ6Ž˜ea‡ƒ6Ÿ˜…6‚³6o9”x ‡6±Ù6{6q‹u ª ‡ea9˜6{¤6”} ‚¢˜¢˜‡e’{Id‡\   ‡ˆw † … x … v\ ~ x  ~ ·w † … ~ v\ †w x ~Œ yw }  z | ˆ\  ~   … † ~ v } ˆ ‡ ~  z … „ x ~ v } ¹Œ v ² … ‡  xw xw v\ a{Y{6D6”bdie9{{‡A6V˜6q6qeA˜C˜6eu ª\ ©  ‡ˆ v yw\ ¨qXg¢˜6v ®\ Å † Â\ 9#QÁ\ &\ '\ (é\  \ ß &\ ' é\ {é\  \ Q  } … ‡  z xw Q Q Q Â\ ¡ )0Ø D66{9r˜'UUâß\ ¥  \ &\  ~ €  ˆ ‡ xw ~ y † ‡ } ~ x Œ z yw | ¹\ a{e6‡ dm˜g¢6qe¢‡¿da˜6Se}\ ~ v } }w v ‡ } ¹Œ | w x € ~ w … „ ~  x ~Œ |  z x ˆ ‡  ~   … † ~ v\ 6”g˜6¤‡1³6o¸ƒ…¢e‚6S¢Q¢³6o9”D­ma{Y{q6”} q˜‡6{‚e”ƒ³{1e˜˜³6’{qe{|\ † ‡w } … w  } xw € ¹ }wŒw  z  ‡ \ x˜6”¦q‡ Cª ‡˜6   U¤³666qe˜D¢{6Yº6‚‡’€ ’Id…’qe”’a¨6”ŸQ{”d‡a°a‡}\ w v }  « x }w\ u © ¹Œ v ² … ‡  xw Œ ~ € ‡  ² †w x\ † z ˆ ‡ ¹ | ‡  } † ~ ~ v } ~  … } z  ~ |  ~\ ¶ ~ x z v\ x˜6”Y} rª ‡d{{| ¢ea{eqƒ³{””ƒ‡d{{à¢ea{e6‡ 9z qeÝY‡˜¢Y)¢{6Y¼6¸ƒX€\ w v }\ € ~  ~ €  ‡ xw € z ‡ } ~ x z v | € ~  ~ € \ †\  ‡  ˆ x }Œ ~  Œ ~ € ‡  ² †w x\ ~ v\ 6”} t˜6v ® d¤Q{”d‡a°a‡eda˜‡˜ea¨6”Yd¼¢6”¢e{Vd‡a{oa‡‡d‚{¢Y‡aƒ9‚w\ v yw\ } z ~  … } z  ~ |  ~ } Œ z yw }w  y ~ v } x z v y … x x ~  … } z  ~ |  ~ } ~ } zw € ~   ~ } †\ ~e’”6‚‡ƒ¢ea‡’¸oeqYº˜69ƒa{³ƒ6q'Š ª ‡¢ea‡’‚gdaeqedg96¨e9¢Q{”d‡a°a‡}", ["david-malan/cs50.pdf"] = "Reinventing CS50\ Harvard University School of Engineering and Applied Sciences Cambridge, Massachusetts, USA\ David J. Malan\ malan@post.harvard.edu", ["david-malan/virtual-hours.pdf"] = "Virtualizing Office Hours in CS 50\ School of Engineering and Applied Sciences Harvard University Cambridge, Massachusetts, USA\ David J. Malan\ malan@post.harvard.edu", ["david-parnas/criteria.pdf"] = "Programming Techniques\ R. Morris Editor\ On the Criteria To Be Used in Decomposing Systems into Modules\ D.L. Parnas Carnegie-Mellon University\ This paper discusses modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time. The effectiveness of a \"modularization\" is dependent upon the criteria used in dividing the system into modules. A system design problem is presented and both a conventional and unconventional decomposition are described. It is shown that the unconventional decompositions have distinct advantages for the goals outlined. The criteria used in arriving at the decompositions are discussed. The unconventional decomposition, if implemented with the conventional assumption that a module consists of one or more subroutines, will be less efficient in most cases. An alternative approach to implementation which does not have this effect is sketched. Key Words and Phrases: software, modules, modularity, software engineering, KWIC index, software design CR Categories: 4.0", ["david-parnas/extension.pdf"] = "_~ZS_ZG~X_m_G_SO~I_~A~OR ZASE OF__.ZXTZWSXO.\ A~D CONIRACTION\ D a v i d L. P a r n a s\ D e p a r t m e n t of C o m p u t e r S c i e n c e U n i v e r s i t y of Ncrth C a r o l i n a at C h a p e l\ Hill\ ABSTRAC~\ D e s i g n i n g s o f t w a r e to be e x t e n s i n l e and easily contracted is discussed as a s p e c i a l came of design for change. A number of ways that extension and c o n t r a c t i o n proble m~ manifest t heasel yes in c u r r e n t s o f t w a r e are e x p l a i n e d . Four s t e p s in the d e s i g n of software that is more flexible are t~hen d i s c u s s e d . The most c r i t i c a l step is the desigu of a soft wa re structure calle d the \" useS\" relation. Some criteria for design decisions are g i v e n and i l i u s t r a t e d using a small example. It i s shown that the identification of min_imai s u b s e t s and m i n i m a l e x t e n s i o n s can lean to software that can be tailored to the n e e d s o f a b r o a d v a r i e t y of users.\ After s t u d y i n g a n u m b e r of s u c h s y s t e m s , I have i d e n t i f i e d some s i m p l e c o n c e p t s t h a t c a n h e l p p r o g r a m m e r s to d e i g n s o f t w a r e so that s u b ~ t s and extens~ion are m o ~ e e a s i l y obtained. The~ concepts are simple if you think about software in the way s u g g e s t e d by t.his limper. Programmers do not c o m m o n l y do so.\ XI.\ SOFTWARE\ AS A FAMILY\ OF\ PROGRA85.\ I.\ '\ IN T R O D U C T I O N .\ W h e n we were f i r s t t a u g h t how to program, we were g i v e n a s p e c i f i c problem and told to write one program to do that job. Later we c o m p a r e d our program to o t h e r s , c o n s i d e r i n g suc~ i s s u e s as space ann time utilization, but still a s s u m i n g that we were p r o d u c i n g a s i n g l e product. Even t h e most recent literature on programming methodology is written on that basis. D i j k s t r a ' s \" D i s c i p l i n e of P r o g r a m m i n g \" [ I ] uses p ~ e d i c a t e t r a n s f o r m e r s to s p e c A f y t h e task to be p e r f o r m e d by the ~ r o g r a m to be written. The use of the d e f i n i t e a r t i c l e i m p l i e s that there is a unique prohle.m to be solved and but one program to write. T o d a y , the software designea should be aware that he is not d e s i g n i n g a s i n g l e program but a family of programs. As discussed in an e a r l i e r paper ~2], we c o n s i d e r a set of ~ r o g r a m s to he a p ~ o N r ~ f a m i l y i they h a v e so much in common that it p a y s to study their common aspects before looking at the aspects that d i f f e r e n t i a t e them. T h i s rather p r a g m a t i c definition d~s not tell us what pays, but it d~s explain the motivation for designing program families. We want to e x p l o i t the c o m m o n a l i t i e s , share code, and reduce m a i n t e n a n c e costs. Some of the ways that program fami ly may below: (I} T h e y may run c o n f i g ura tions. on the members of a differ are l i s t e d", ["david-parnas/fake-it.pdf"] = "A RATIONAL DESIGN PROCESS: HOW AND WHY TO FAKE IT David L. Parnas Computer Science Department University of Victoria, Victoria BC V8W 2Y2 Canada and Computer Science and Systems Branch Naval Research Laboratory Washington DC 20375 USA and Paul C. Clements Computer Science and Systems Branch Naval Research Laboratory Washington DC 20375 USA\ I. THE SEARCH FOR THE PHILOSOPHER'S STONE: WHY DO WE WANT A RATIONAL DESIGN PROCESS? A perfectly rational person is one who always has a good reason for what he does. Each step taken can be shown to be the best way to get to a well defined goal. Most of us like to think of ourselves as rational professionals. However, to many observers, the usual process of designing software appears quite irrational. Programmers start without a clear statement of desired behavior and implementation constraints. They make a long sequence of design decisions with no clear statement of why they do things the way they do. Their rationale is rarely explained. Many of us are not satisfied with such a design process. That is why there is research in software design, programming methods, structured programming and related topics. Ideally, we would like to derive our programs from a statement of requirements in the same sense that theorems are derived from axioms in a published proof. All of the methodologies that can be considered \"top down\" are the result of our desire to have a rational, systematic way of designing software. This paper brings a message with both bad news and good news. The bad news is that, in our opinion, we will never find the philosopher's stone. We will never find a process that allows us to design software in a perfectly rational way. The good news is that we can fake it. We can present our system to others as if we had been rational designers and it pays to pretend do so during development and maintenance. II. WHY WILL A SOFTWARE DESIGN \"PROCESS\" ALWAYS BE AN IDEALISATION? We will never see a software project that proceeds in the \"rational\" way. Some of the reasons are listed below: (1) In most cases the people who commission the building of a software system do not know exactly what they want and are unable to tell us all that they know. (2) Even if we knew the requirements, there are many other facts that we need to know to design the software. Many of the details only become known to us as we progress in the implementation. Some of the things that we learn invalidate our design and we must backtrack. Because we try to minimize lost work, the resulting design may be one that would not result from a rational design process.", ["david-parnas/numbers-game.pdf"] = "Viewpoint\ David Lorge Parnas\ Counting papers slows the rate of scientific progress.\ s a senior researcher, I am saddened to see funding agencies, department heads, deans, and promotion committees encouraging younger researchers to do shallow research. As a reader of what should be serious scientific journals, I am annoyed to see the computer science literature being polluted by more and more papers of less and less scientific value. As one who has often served as an editor or referee, I am offended by discussions that imply that the journal is there to serve the authors rather than the readers. Other readers of scientific journals should be similarly outraged and demand change. The cause of all of these manifestations is the widespread policy of measuring researchers by the number of papers they publish, rather than by the correctness, importance, real novelty, or relevance of their contributions. The widespread practice of counting publications without reading and judging them is fundamentally flawed for a number of reasons:", ["david-patterson/science-2005.pdf"] = "EDITORIAL\ An Endless Frontier Postponed\ N\ ext month, U.S. scientists Vinton G. Cerf and Robert E. Kahn will receive computing's highest prize, the A. M. Turing Award, from the Association for Computing Machinery. Their Transmission Control Protocol (TCP), created in 1973, became the language of the Internet. Twenty years later, the Mosaic Web browser gave the Internet its public face. TCP and Mosaic illustrate the nature of computer science research, combining a quest for fundamental understanding with considerations of use. They also illustrate the essential role of government-sponsored university-based research in producing the ideas and people that drive innovation in information technology (IT). Recent changes in the U.S. funding landscape have put this innovation pipeline at risk. The Defense Advanced Research Projects Agency (DARPA) funded TCP. The shock of the Soviet satellite Sputnik in 1957 led to the creation of the agency, which was charged with preventing future technological surprises. From its inception, DARPA funded long-term nonclassified IT research in academia, even during several wars, to leverage all the best minds. Much of this research was dual-use, with the results ultimately advancing military systems and spurring the IT industry. U.S. IT research grew largely under DARPA and the National Science Foundation (NSF). NSF relied on peer review, whereas DARPA bet on vision and reputation, complementary approaches that served the nation well. Over the past 4 decades, the resulting research has laid the foundation for the modern microprocessor, the Internet, the graphical user interface, and single-user workstations. It has also launched new fields such as computational science. Virtually every aspect of IT that we rely on today bears the stamp of federally sponsored research. A 2003 National Academies study provided 19 examples where such work ultimately led to billion-dollar industries, an economic benefit that reaffirms science advisor Vannevar Bush's 1945 vision in Science: The Endless Frontier. However, in the past 3 years, DARPA funding for IT research at universities has dropped by nearly half. Policy changes at the agency, including increased classification of research programs, increased restrictions on the participation of noncitizens, and \"go/no-go\" reviews applied to research at 12- to 18-month intervals, discourage participation by university researchers and signal a shift from pushing the leading edge to \"bridging the gap\" between fundamental research and deployable technologies. In essence, NSF is now relied on to support the long-term research needed to advance the IT field. Other agencies have not stepped in. The Defense Science Board noted in a recent look at microchip research at the Department of Defense (DOD): \"[DARPA's] withdrawal has created a vacuum . . . The problem, for DOD, the IT industry, and the nation as a whole, is that no effective leadership structure has been substituted.\" The Department of Homeland Security, according to a recent report from the President's Information Technology Advisory Committee, spends less than 2% of its Science and Technology budget on cybersecurity, and only a small fraction of that on research. NASA is downsizing computational science, and IT research budgets at the Department of Energy and the National Institutes of Health are slated for cuts in the president's fiscal year 2006 budget. These changes, combined with the growth of the discipline, have placed a significant burden on NSF, which is now showing the strain. Last year, NSF supported 86% of federal obligations for fundamental research in IT at academic institutions. The funding rate for competitive awards in the IT sector fell to 16%, the lowest of any directorate. Such low success rates are harmful to the discipline and, ultimately, to the nation.* At a time when global competitors are gaining the capacity and commitment to challenge U.S. high-tech leadership, this changed landscape threatens to derail the extraordinarily productive interplay of academia, government, and industry in IT. Given the importance of IT in enabling the new economy and in opening new areas of scientific discovery, we simply cannot afford to cede leadership. Where will the next generation of groundbreaking innovations in IT arise? Where will the Turing Awardees 30 years hence reside? Given current trends, the answers to both questions will likely be, \"not in the United States.\"", ["david-pollard/ConditioningAsDisintegration.pdf"] = "287\ Statistica Neerlandica (1997) Vol. 51, nr. 3, pp. 287±317\ Conditioning as disintegration\ J. T. Chang and D. Pollard*\ Statistics Department, Yale University, Box 208290 Yale Station,\ New Haven, CT 06520, USA\ Conditional probability distributions seem to have a bad reputation\ when it comes to rigorous treatment of conditioning. Technical arguments are published as manipulations of Radon±Nikodym derivatives,\ although we all secretly perform heuristic calculations using elementary\ de®nitions of conditional probabilities. In print, measurability and\ averaging properties substitute for intuitive ideas about random\ variables behaving like constants given particular conditioning information.\ One way to engage in rigorous, guilt-free manipulation of conditional\ distributions is to treat them as disintegrating measuresÐfamilies of\ probability measures concentrating on the level sets of a conditioning\ statistic. In this paper we present a little theory and a range of\ examplesÐfrom EM algorithms and the Neyman factorization, through", ["david-roundy/darcs_print.pdf"] = "Darcs 2.1.0.1 (2.1.0.1 + 114 patches)\ Darcs\ David Roundy\ April 22, 2009\ 2\ Contents\ 1 Introduction\ 1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ 1.2 Switching from CVS . . . . . . . . . . . . . . . . . . . . . . . . .\ 1.3 Switching from arch . . . . . . . . . . . . . . . . . . . . . . . . .\ 7\ 9\ 11\ 12\ 2 Building darcs\ 2.1 Prerequisites . . . . . . . . . . . .\ 2.2 Building on Mac OS X . . . . . . .\ 2.3 Building on Microsoft Windows . .\ 2.4 Building from tarball . . . . . . . .\ 2.5 Building darcs from the repository\ 2.6 Submitting patches to darcs . . . .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ 15\ 15\ 16\ 16\ 16\ 17\ 18\ 3 Getting started\ 3.1 Creating your repository . . . . . . . . . . . . .\ 3.2 Making changes . . . . . . . . . . . . . . . . . .\ 3.3 Making your repository visible to others . . . .\ 3.4 Getting changes made to another repository . .\ 3.5 Moving patches from one repository to another\ 3.5.1 All pulls . . . . . . . . . . . . . . . . . .\ 3.5.2 Send and apply manually . . . . . . . .\ 3.5.3 Push . . . . . . . . . . . . . . . . . . . .\ 3.5.4 Push —apply-as . . . . . . . . . . . . .\ 3.5.5 Sending signed patches by email . . . .\ 3.6 Reducing disk space usage . . . . . . . . . . . .\ 3.6.1 Linking between repositories . . . . . .\ 3.6.2 Alternate formats for the pristine tree .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ 19\ 19\ 20\ 20\ 21\ 21\ 21\ 21\ 22\ 22\ 23\ 26\ 26\ 26\ 4 Configuring darcs\ 4.1 prefs . . . . . . . . . . . .\ 4.2 Environment variables . .\ 4.3 General-purpose variables\ 4.4 Remote repositories . . .\ 4.5 Highlighted output . . . .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ 29\ 29\ 33\ 33\ 34\ 36\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ 3\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ .\ 4\ CONTENTS\ 4.6\ Character escaping and non-ASCII character encodings . . . . .", ["david-roundy/theory-patches-2009.pdf"] = "Darcs 2.1.0.1 (2.1.0.1 + 114 patches)\ Darcs\ David Roundy\ April 22, 2009\ Appendix A\ Theory of patches\ A.1\ Background\ I think a little background on the author is in order. I am a physicist, and\ think like a physicist. The proofs and theorems given here are what I would call\ “physicist” proofs and theorems, which is to say that while the proofs may not\ be rigorous, they are practical, and the theorems are intended to give physical\ insight. It would be great to have a mathematician work on this to give patch\ theory better formalized foundations.\ From the beginning of this theory, which originated as the result of a series\ of email discussions with Tom Lord, I have looked at patches as being analogous\ to the operators of quantum mechanics. I include in this appendix footnotes\ explaining the theory of patches in terms of the theory of quantum mechanics. I", ["david-roundy/tp.pdf"] = "Theory of patches\ 27\ captures\ 13 Nov\ 04 - 23\ Jul 11\ SEP JAN JUL\ Close\ 23\ Help\ 2007 2009 2011\ Next: DarcsRepo format Up: Darcs User Manual Previous: Darcs commands Contents\ Subsections\ • Background\ • Introduction\ • Applying patches\ ♦ Hunk patches\ ♦ Token replace patches\ • Patch relationships\ • Commuting patches\ ♦ Composite patches\ ◊ Merge\ ♦ How merges are actually performed\ • Conflicts\ • Patch string formatting\ ♦ Merger patches\ ♦ Named patches\ Theory of patches\ Background\ I think a little background on the author is in order. I am a physicist, and think like a physicist. The proofs and theorems\ given here are what I would call ``physicist'' proofs and theorems, which is to say that while the proofs may not be rigorous,\ they are practical, and the theorems are intended to give physical insight. It would be great to have a mathematician work on", ["david-salomon/asl.pdf"] = "Contents\ Preface Introduction A Short History of Assemblers and Loaders Types of Assemblers and Loaders 1 Basic Principles\ 1.1 Assembler Operation 1.1.1 The source line 13 13 20 24 28 30\ xi 1 7 11 13\ 1.2 The Two-Pass Assembler 1.3 The One-Pass Assembler\ 1.4 Absolute and Relocatable Object Files 1.4.1 Relocation bits 29 1.4.2 One-pass, relocatable object files 1.4.3 The task of relocating 31 1.5 Two Historical Notes 32 1.5.1 Early relocation 32 1.5.2 One-and-a-half pass assemblers 1.6 Forcing Upper 33 1.6.1 Relocating packed instructions\ 32 34\ vi Contents\ 1.7 Absolute and Relocatable Address Expressions 1.7.1 Summary 36 1.8 Local Labels 36 1.8.1 The LC as a local symbol 38 1.9 Multiple Location Counters 39 1.9.1 The USE directive 39 1.9.2 COMMON blocks 41 1.10 Literals 43 1.10.1 The literal table 43 1.10.2 Examples 44 1.11 Attributes of Symbols 45 1.12 Assembly-Time Errors 46 1.13 Review Questions and Projects 49 1.13.1 Project 11 50 1.13.2 Project 12 52 1.13.3 Project 13 53 1.13.4 Project 14 54\ 35\ 2 The Symbol Table\ 2.1 2.2 2.3 2.4 2.5 A Linear Array 60 A Sorted Array 60 Buckets with Linked Lists 61 A Binary Search Tree 62 A Hash Table 63 2.5.1 Closed hashing 63 2.5.2 Open hashing 65 2.6 Review Questions and Projects 2.6.1 Project 21 66 2.6.2 Project 22 66 2.6.3 Project 23 67", ["david-schmidt/dataflow.djvu"] = "Data Flow Analysis is Model Checking of Abstract Interpretations \ David A. Schmidt \ Computing and Information Sciences Department \ Kansas State University ", ["david-schmidt/dataflow.pdf"] = "", ["david-schmidt/old-dataflow.djvu"] = "", ["david-spiegelhalter/bugs-critique.pdf"] = "STATISTICS IN MEDICINE\ Statist. Med. 2009; 28:3049–3067\ Published online 24 July 2009 in Wiley InterScience\ (www.interscience.wiley.com) DOI: 10.1002/sim.3680\ The BUGS project: Evolution, critique and future directions\ David Lunn1,∗, † , David Spiegelhalter1 , Andrew Thomas2 and Nicky Best3\ 1 Medical\ Research Council Biostatistics Unit, Institute of Public Health, University Forvie Site, Robinson Way,\ Cambridge CB2 0SR, U.K.\ 2 School of Mathematics and Statistics, Mathematical Institute, North Haugh, St. Andrews, Fife KY16 9SS, U.K.\ 3 Department of Epidemiology and Public Health, Imperial College London, St. Mary’s Campus, Norfolk Place,\ London W2 1PG, U.K.\ SUMMARY\ BUGS is a software package for Bayesian inference using Gibbs sampling. The software has been instrumental in raising awareness of Bayesian modelling among both academic and commercial communities\ internationally, and has enjoyed considerable success over its 20-year life span. Despite this, the software", ["david-spiegelhalter/bugs.pdf"] = "A Language and Program for Complex Bayesian Modelling\ Author(s): W. R. Gilks, A. Thomas and D. J. Spiegelhalter\ Source: Journal of the Royal Statistical Society. Series D (The Statistician), Vol. 43, No. 1, Special\ Issue: Conference on Practical Bayesian Statistics, 1992 (3) (1994), pp. 169-177\ Published by: Wiley for the Royal Statistical Society\ Stable URL: http://www.jstor.org/stable/2348941\ Accessed: 19-08-2014 17:40 UTC\ Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at\ http://www.jstor.org/page/info/about/policies/terms.jsp\ JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of content\ in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms of scholarship.", ["david-turner/am.ps.gz"] = "Chapter 7\ An abstract machine for\ ߭calculus\ If the ߭calculus could be implemented efficiently, it would clearly serve as a\ flexible intermediate language for compilers of concurrent languages (in view of\ the diverse highlevel constructs which have been shown to be encodable in the\ ߭calculus). For example, the ߭calculus can encode higherorder communication\ (the communication of processes along channels) [San93a, San93b], structured\ datatypes [Mil91a], mutable data, concurrent objects [Wal91], and even the \ calculus [Mil90]. We now describe an abstract machine for the ߭calculus which\ is simple and yet realistic. In fact, in Chapters 8 and 9 we present a compilation\ of ߭calculus to C which is directly based on the abstract machine presented here.\ We are primarily interested in an abstract machine which is suitable for im\ plementation on a uniprocessor, where concurrent execution is simulated by in", ["david-turner/elegance.djvu"] = "The Semanti Elegance of Applicative Languages \ D. A. Turner \ University of Kent at Canterbury \ In what does the alleged superiority of \ applicative languages consist? In the \ last analysis the answer must be in terms \ of the reduction in the time required to \ produce a correct program to solve a given \ problem. On reflection I decided that \ the best way to demonstrate this would be \ to take some reasonably non-trivial \ problem and show how, by proceeding within \ a certain kind of applicative language \ framework it was possible to develop a \ working solution with a fraction of the \ effort that would have been necessary in \ a conventional imperative language. The \ particular problem I have chosen also \ brings out a number of general points of \ interest which I shall discuss briefly \ afterwards. \ Before proceeding it will be necessary \ for me to quickly outline the language ", ["david-turner/thesis.ps.gz"] = "The Polymorphic Picalculus:\ Theory and Implementation\ David N. Turner\ Ph. D.\ University of Edinburgh\ 1995", ["david-ungar/selfPower.pdf"] = "To be published in: LISP AND SYMBOLIC COMPUTATION: An International Journal, 4, 3, 1991 1991 Kluwer Academic Publishers - Manufactured in The Netherlands\ SELF: The Power of Simplicity*\ DAVID UNGAR\ (ungar@self.stanford.edu)\ Computer Systems Laboratory, Stanford University, Stanford, California 94305 RANDALL B. SMITH (rsmith@parc.xerox.com)\ Xerox Palo Alto Research Center, Palo Alto, California 94304", ["david-wakeling/jfp93.ps"] = "Heap Profiling of Lazy Functional Programs\ Colin Runciman and David Wakeling\ University of York \\Lambda", ["david-whalley/merge.ps"] = "Branch Elimination by Condition Merging\ WILLIAM KREAHLING*, DAVID WHALLEY*, MARK BAILEY*+,\ XIN YUAN*, GANGRYUNG UH#, AND ROBERT VAN ENGELEN*\ *Computer Science Department, Florida State University, Tallahassee, FL 323064530; email: whalley@cs.fsu.edu\ +Computer Science Department, Hamilton College, Clinton, NY 13323; email: mbailey@hamilton.edu\ #Agere Systems, 1247. S. Cedar Crest Blvd., Allentown, PA 181036209; email: uh@agere.com", ["davide-ancona/zucca.ps"] = "", ["dawson-engler/derive-usenix01.pdf"] = "Ê Ú Ö× ¹ Ò\ Ò\ Ö Ò\ ÁÒ×ØÖÙ Ø ÓÒ\ Ò Ð Ö\ Ò Ó\ Ò ×\ Ó Ñ Ö\ Û Ð×ÓÒ\ ×ØÖ Ø\ ÍÒ Ú Ö× ØÝ Ó ÍØ\ ׺ÙØ\ Ï Ð×ÓÒ\ º À×\ º\ Ù\ Ò Ð Ö\ ËØ Ò ÓÖ ÍÒ Ú Ö× ØÝ\ Û×ÓÒ Êº\ ×к×Ø Ò ÓÖ º\ Ù\ ÍÒ Ú Ö× ØÝ Ó ÍØ\ ׺ÙØ º\ Ù\ Ò ÖÝ ØÓÓÐ× ×Ù × × ×× Ñ Ð Ö׸ Ù×ع Ò¹Ø Ñ Óѹ Ô Ð Ö׸ Ò Ü ÙØ Ð Ó Ö ÛÖ Ø Ö× Ò ØÓ Ú Ò ÜÔÐ Ø Ö ÔÖ × ÒØ Ø ÓÒ Ó ÓÛ Ñ Ò Ò×ØÖÙ ¹ Ø ÓÒ× Ö Ò Ó º ÍÒ ÓÖØÙÒ Ø Ðݸ ÛÖ Ø Ò Ò Ó Ò × ÓÖ Ò ÒØ Ö Ò×ØÖÙ Ø ÓÒ × Ø Ý Ò × ÓØ Ø ÓÙ× Ò ÖÖÓÖ¹ÔÖÓÒ º Ï ×Ö Ö Ú ¸ ØÓÓÐ Ø Ø ÜØÖ Ø× Ø¹Ð Ú Ð Ò×ØÖÙ Ø ÓÒ Ò Ó Ò Ò ÓÖÑ Ø ÓÒ ÖÓÑ ×× Ñ Ð Ö׺ Ì Ù× Ö ÔÖÓÚ × Ö Ú Û Ø ×× Ñ ÐÝ¹Ð Ú Ð Ò ÓÖÑ Ø ÓÒ ÓÙØ Ú Ö ÓÙ× Ò×ØÖÙ ¹ Ø ÓÒ׺ Ö Ú ÙØÓÑ Ø ÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö× Ø Ò Ó Ò × ÓÖ Ø Ó× Ò×ØÖÙ Ø ÓÒ× ÖÓÑ Ò ×× Ñ Ð Ö Ý Ò Ø Ô ÖÑÙØ Ø ÓÒ× Ó Ò×ØÖÙ Ø ÓÒ× Ò Ò¹ ÐÝÞ Ò Ø Ö ×ÙÐØ Ò Ñ Ò Ó º Ö Ú ×ÓÐÚ × Ø ÒØ Ö ÅÁÈ˸ ËÈ Ê ¸ ÐÔ ¸ Ò ÈÓÛ ÖÈ Ò¹ ×ØÖÙ Ø ÓÒ × Ø׸ Ò ÐÑÓ×Ø ÐÐ Ó Ø ÊÅ Ò Ü Ò×ØÖÙ Ø ÓÒ × Ø׺ ÁØ× ÓÙØÔÙØ ÓÒ× ×Ø× Ó Ð Ö Ø ÓÒ× Ø Ø Ò Ù× Ý Ò ÖÝ ØÓÓÐ׺ ÌÓ ÑÓÒ×ØÖ Ø Ø ÙØ Ð ØÝ Ó Ö Ú ¸ Û Ú Ù ÐØ Ó Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø Ø × Ö Ú ³× ÓÙØÔÙØ Ò ÔÖÓ Ù × Ñ ÖÓ× ÓÖ Ó Ñ ×× ÓÒ¸ Û Û Ú Ø Ò Ù× ØÓ Ö ÛÖ Ø Â Ú ÂÁÌ Ò º\ ½ ÁÒØÖÓ Ù Ø ÓÒ\ Ò ÖÝ ØÓÓÐ× ×Ù × ×× Ñ Ð Ö׸ Ù Ö׸ × ×¹ × Ñ Ð Ö׸ ÝÒ Ñ Ó Ò Ö Ø ÓÒ ×Ý×Ø Ñ× ¿¸ ¸ ½¼¸ ½ ¸ ½ ¸ Ù×ع Ò¹Ø Ñ ÓÑÔ Ð Ö× ¸ ¸ ½¾ ¸ Ò Ü ÙØ Ð Ó Ö ÛÖ Ø Ö× ½ ¸ ¾½¸ ¾ Ò ØÓ ÓÒ¹ Ø Ò Ö ÔÖ × ÒØ Ø ÓÒ Ó ÓÛ Ñ Ò Ò×ØÖÙ Ø ÓÒ× Ö Ò Ó º ÓÖ Ü ÑÔÐ ¸ ÂÁÌ Ò × ØÓ ÒÓÛ Ø Ø Ø Ü Ò×ØÖÙ Ø ÓÒ Ð ± ܸ ± Ü ÓÖÖ ×ÔÓÒ × ØÓ Ø Ø× ¼Ü¼½ ´ ÓÖÑ Ý ØÛ × ÇÊ Ó Ø Ð ÓÔ Ó ¼Ü¼½ ¼ Û Ø ¼Ü ÓÖ Ø ± Ü Ö ÙÑ ÒØ Ò ¼Ü¿ ÓÖ Ø ± Ü Ö ÙÑ Òصº ÍÒ ÓÖØÙÒ Ø Ðݸ ×Ô Ý Ò Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × Û Ø ÙÖÖ ÒØ ØÓÓÐ× Ö ÕÙ Ö × ÐÓÓ Ò ÙÔ Ò Ø Ð Ò Ø Ó«× Ø׸ × Þ ×¸ Ò Ú ÐÙ × Ó Ñ ÒÝ Ò×ØÖÙ Ø ÓÒ ¬ Р׺ ÍÒ×ÙÖÔÖ ×¹ Ò Ðݸ Ø × ÔÖÓ ×× × ÓØ ÖÖÓÖ¹ÔÖÓÒ Ò Ø ÓÙ׸ ×Ô ÐÐÝ ÓÖ ÁË Ñ Ò × ×Ù ×Ø Ü º ÙÖÖ ÒØÐݸ ×Ý×Ø Ñ Ù Ð Ö× ÑÙ×Ø ØÖ Ò× Ö Ò¹\ × ÓÖØ Ú Ö× ÓÒ Ó Ø × Ô Ô Ö Ø ÔÖÓ Ø ÓÒÐÝ Ò × Ó × Ö Ø Ø Æ\ ¹\ ÅÇ\ Ö Ú\ ×ÓÐÚ Ö\ ÔÔ\ Ö º\ Ò Ø\ ¾¼¼¼ ÛÓÖ × ÓÔ\ ×ØÖÙ Ø ÓÒ Ò Ó Ò × ÖÓÑ Ò Ö Ø ØÙÖ Ö Ö Ò Ñ Ò٠к Ï Ú Ù ÐØ ØÓÓÐ ÐÐ Ö Ú Ø Ø ÐÑÒ Ø ×Ø Ò ØÓ ×Ô Ý Ñ ÒÝ Ó Ø Ø¹Ð Ú Ð Ø Ð× Ó Ò×ØÖÙ Ø ÓÒ Ð ÝÓÙغ Ì Ù× Ö ×ÙÔÔÐ × ¹ Ö Ú ÛØ Ò ×× Ñ ÐÝ¹Ð Ú Ð × Ö ÔØ ÓÒ Ó Ò Ò¹ ×ØÖÙ Ø ÓÒ × Ø Ò×ØÖÙ Ø ÓÒ Ò Ñ × Ò ÓÔ Ö Ò ØÝÔ × ´Ö ×Ø Ö׸ ÑÑ Ø ×¸ ÓÖ Ð Ð×µº Ö Ú ÓÙØÔÙØ× × Ö ÔØ ÓÒ Ó ÓÛ Ò×ØÖÙ Ø ÓÒ × Ò Ó ¸ Û × ÚÒ ÒØ ÓÖÑ Ó ×ØÖÙ ØÙÖ Ð Ö ¹ Ø ÓÒ׺ Ì Ù× Ö Ó × ÒÓØ ×Ô Ý Ò ÖÝ¹Ð Ú Ð Ø Ð× ×Ù × ÓÔ Ö Ò Û Ø ×¸ ÓÔ Ö Ò Ó«× Ø׸ ÓÔ Ó Ú Ð¹ ٠׸ Ò Ö ×Ø Ö Ú ÐÙ Ò Ó Ò ×º × Ö ×ÙÐظ Ø ÔÓØ ÒØ Ð ÓÖ Ñ ××Ô ¬ Ø ÓÒ Ý Ø Ù× Ö × Ð ×× Ø Ò Ø Ø Û Ø ÓØ Ö ØÓÓÐ׺ Ö Ú × × ÓÒ × ÑÔÐ Ó × ÖÚ Ø ÓÒ Ú ÖØÙ¹ ÐÐÝ ÐÐ Ö Ø ØÙÖ × ÓÖ Û ÔÖÓ Ö ÑÑ Ö Ò × Ò ÖÝ Ò Ó Ò × Û ÐÐ ÐÖ Ý Ú ÔÖÓ Ö Ñ× ´ ×× Ñ¹ Ð Ö×µ Ø Ø ÓÒØ Ò Ø × Ò ÓÖÑ Ø ÓÒº Ì Ö ÓÖ ¸ Û × ÓÙÐ Ð ØÓ ÜØÖ Ø Ø Ò ÓÖÑ Ø ÓÒ ÖÓÑ Ø ×× Ñ Ð Ö¸ Û × Û Ø Ö Ú Ó ×º Ø Ð Ú Ð¸ Ö Ú Ó × ×Ó Ý Ò Ô ÖÑÙØ Ø ÓÒ× Ó Ò×ØÖÙ Ø ÓÒ ØÓ Ø ×Ý×Ø Ñ³× ×× Ñ Ð Ö¸ Ò Ó¹ Ò ÕÙ Ø ÓÒ ×ÓÐÚ Ò ÓÒ Ø ×× Ñ Ð Ö³× ÓÙØÔÙØ ØÓ Ø ÖÑ Ò ÓÛ Ø Ò×ØÖÙ Ø ÓÒ × Ò Ó ´ Ø× ÓÔ¹ Ó Ò Ø× ÓÔ Ö Ò Ò Ó Ò ×µº Ì Ö Ú ÑÔÐ ¹ Ñ ÒØ Ø ÓÒ ×ÓÐÚ × Ø ÒØ Ö ÅÁÈ˸ ËÈ Ê ¸ ÐÔ ¸ Ò ÈÓÛ ÖÈ Ò×ØÖÙ Ø ÓÒ × Ø׺ ÁØ Ò Ð × ÑÓ×Ø Ó Ø ÊÅ Ò Ü Ò×ØÖÙ Ø ÓÒ × Ø× Ø Ó × ÒÓØ Ý Ø Ò Ð ×ÓÑ Ò×ØÖÙ Ø ÓÒ׸ ×Ù × Ø Ó× Û Ø ÒÓÒ¹ ÓÒØ ÒÙÓÙ× ¬ Р׺ Ö Ú ÔÖÓ Ù × Ø ×ØÖÙ ØÙÖ Ð Ö Ø ÓÒ× Ø Ø ×Ö ÓÛ Ò Ò×ØÖÙ Ø ÓÒ × Ø × Ò Ó º ÁØ ÛÓÙÐ ÒÓØ Æ ÙÐØ ØÓ ÔÖÓ Ù Ð Ö Ø ÓÒ× Ò ÓØ Ö Ð Ò Ù ×º Ì × Ð Ö Ø ÓÒ× Ò Ù× Ý ØÓÓÐ× Ø Ø ÒØ ÖÔÖ Ø ÓÖ Ñ Ò ÔÙÐ Ø Ò Ö ×º × Ò Ü ÑÔÐ ¸ Û Ú Ù ÐØ Ó Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø Ø × Ø Ö Ú Ö× ¹ Ò Ò Ö Ð Ö Ø ÓÒ× Ò Ò Ö¹ Ø × Ñ ÖÓ× ÓÖ ×Ø Ó Ñ ×× ÓÒº ÌÓ ÑÓÒ¹ ×ØÖ Ø Ø ÙØ Ð ØÝ Ó Ø × ØÓÓÐ׸ Û Ú Ö ÛÖ ØØ Ò Ã « ³× ¾ ÂÁÌ ÓÑÔ Ð Ö ØÓ Ù× Ø × Ñ ÖÓ׺ Í× Ò ÓÙÖ ÙØÓÑ Ø ÐÐÝ Ò Ö Ø Ó Ñ ØØ Ö× Ö Ù Ø ×Þ Ó Ø Ã « Ò × Ö ÔØ ÓÒ Ý ¼±º ÇÒ × ÒÓØ ¸ Ö Ú Ò Ú Û × Ò ×¹ × Ñ Ð Ö Ø ×Ø Öº Ù× Ó ÓÛ Ø Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ׸ Ø Ò ÕÙ ÐÝ ¬Ò « Ö Ò × ØÛ Ò\ Û Ø Ò Ö Ø ØÙÖ Ñ ÒÙ Ð × Ý׸ Ò Û Ø Ò ×¹ × Ñ Ð Ö ØÙ ÐÐÝ ÑÔÐ Ñ ÒØ׺ ÁÒ Ë Ø ÓÒ ¾ Û × Ù×× Ö Ð Ø ÛÓÖ ÓÐÐ Ö ³× ÓÑÔ Ð Ö¹Ö Ú Ö× ¹ Ò Ò Ö Ò ×Ý×Ø Ñ Ò Ø Æ Û Â Ö× Ý Å Ò ¹ Ó ÌÓÓРغ Ë Ø ÓÒ ¿ × Ö × ÓÙÖ ××ÙÑÔØ ÓÒ× ÓÙØ Ò×ØÖÙ Ø ÓÒ × Ø Ò Ó Ò ×¸ Ò ÜÔÐ Ò× ÓÛ Ö Ú ÛÓÖ ×º Ë Ø ÓÒ × Ù×× × Ø Ó Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø Û Ú Ù ÐØ ÓÒ ØÓÔ Ó Ö Ú º Ë Ø ÓÒ ×ÙÑÑ Ö Þ × ÓÙÖ ÓÒ ÐÙ× ÓÒ× Ò × Ö × ÓÙÖ ÙØÙÖ ÛÓÖ º ÔÔ Ò Ü Ú× ÓÑÔÐ Ø ÒÔÙØ ×Ô ¬ Ø ÓÒ Ó Ø ÅÁÈË Ò×ØÖÙ Ø ÓÒ × Ø ÓÖ Ö Ú º\ ¾ Ê Ð Ø ÏÓÖ\ Ì\ ÑÓ×Ø ÑÔÓÖØ ÒØ ÔÖ ÒØ ØÓ Ö Ú × ÓÐй Ö ³× ÛÓÖ ÓÒ Ö Ú Ö× ¹ Ò Ò Ö Ò ÓÑÔ Ð Ö× ½ º ÓÐÐ Ö ³× ×Ý×Ø Ñ Ó × Ö Ú Ö× ÒØ ÖÔÖ Ø Ø ÓÒ ØÓ Ò Ö Û Ø ×× Ñ ÐÝ Ò×ØÖÙ Ø ÓÒ× × ÓÙÐ Ù× ØÓ ÑÔÐ Ñ ÒØ ¹Ð Ú Ð Ð Ò Ù º ÁØ ÖÙÒ× Ô × Ó ÑÙØ Ø ×× Ñ ÐÝ Ó ØÓ × ÓÛ Ø × Ñ ÒØ × Ó Ø Ò×ØÖÙ Ø ÓÒ× Ò ×º À × ÛÓÖ × Ñ Ø ÙÐ ¹ Ò ÙØÓÑ Ø ÐÐÝ Ö Ø Ö Ø Ò ÓÑÔ Ð Ö׸ Û Ö Ø × Ö ÔØ ÓÒ× Ó Ø × Ñ ÒØ × Ó ×× Ñ ÐÝ Ò×ØÖÙ ¹ Ø ÓÒ× Ö Ù× ØÓ ÙØÓÑ Ø ÐÐÝ Ö Ø Ö Ø Ø ¹Ò Ò Ö ØÓÖ º Ö Ú × ÓÑÔÐ Ñ ÒØ ÖÝ ØÓ ÓÐÐ Ö ³× ÛÓÖ º Ö Ú ÓÑÔÙØ × Ò ÓÖÑ Ø ÓÒ Ø Ø Ò Ù× ØÓ ÝÔ ×× Ø ×× Ñ Ð Ö¸ Û × ÑÔÓÖØ ÒØ ÓÖ Ù Ð ¹ Ò ÂÁÌ× Ò Ò ÖÝ Ñ Ò ÔÙÐ Ø ÓÒ ØÓÓÐ׺ Ö Ú Ö ×× × × ÑÔÐ Ö ÔÖÓ Ð Ñ ÓÑ Ò Ø Ò ÓÐÐ Ö ³× ×Ý×Ø Ñ¸ × Ò Ø Ö Ú Ö× ¹ Ò Ò Ö× ×ÝÒØ Ü ØÖ Ò×¹ ÓÖÑ Ø ÓÒ Ò ÒÓØ × Ñ ÒØ ØÖ Ò× ÓÖÑ Ø ÓÒº ÇÒ Ø ÓØ Ö Ò ¸ ÓÙÖ ÔÖÓ Ð Ñ ÓÑ Ò × ÑÙ ÑÓÖ ØÖ Ø Ð Ø Ø × ÓÒ Ø ÓÖ Ö Ó Ñ ÒÙØ × ØÓ ÓÙÖ× ÓÖ Ö Ú ØÓ Ö Ú Ö× ¹ Ò Ò Ö Ò Ò×ØÖÙ Ø ÓÒ × Ø³× Ò Ó Ò ¸ Û Ö × ÓÐÐ Ö ³× ×Ý×Ø Ñ Ø × Ý× ØÓ Ö Ú Ö× ¹ Ò Ò Ö Ò Ò×ØÖÙ Ø ÓÒ × Ø³× × Ñ ÒØ ×º Ì ÛÓÖ Û Ó× Ó Ð× ÑÓ×Ø ÐÓ× ÐÝ Ñ Ø Ö Ú × Ø Æ Û Â Ö× Ý Å Ò ¹ Ó ÌÓÓÐ Ø ´ÆÂ̵ ¾¼ º Ì ÆÂÌ ÙØÓÑ Ø ÐÐÝ Ò Ö Ø × ÖÓÙØ Ò × ØÓ Ñ Ò Ô¹ ÙÐ Ø Ñ Ò ¹ Ó ÖÓÑ Ù× Ö ×Ô ¬ Ø ÓÒ× ÛÖ ØØ Ò Ò Ð Ò Ù ÐÐ ËÄ º ËÄ ×Ô ¬ Ø ÓÒ× Ö Ü Ø × Ö ÔØ ÓÒ× Ó Ò×ØÖÙ Ø ÓÒ Ð ÝÓÙظ ÛÖ ØØ Ò Ø × Ú Ö Ð Ð Ú Ð× Ó ×ØÖ Ø ÓÒº Ø Ø ÐÓÛ ×Ø Ð Ú Ð Ó × Ö ÔØ ÓÒ¸ ËÄ ¬ Ð × Ö Ù× ØÓ × Ö Ò¹ ×ØÖÙ Ø ÓÒ Ø¬ Р׺ ÓÖ Ü ÑÔÐ ¸ Ø × Ö ÔØ ÓÒ Ó Ø ËÈ Ê Ò×ØÖÙ Ø ÓÒ ¬ Ð × Ò ËÄ Ö × × Óй ÐÓÛ× ½\ Ò×Ø ¼ ¿½ ÓÔ ¿¼ ¿½ ×Ô¿¼ ÓÔ¾ ¾¾ ¾ ÑѾ¾ ¼ ¾½ ¾ ×Ô¾¾ ¼ ¾½ ÓÔ¿ ½ ¾ Ö×½ × ½¾ Ö×¾ ¼ × Ñѽ¿ ¼\ Ö Ú\ ¬ Ø ÓÒ Ò ÆÂÌ ×Ô ¬ Ø ÓÒ׺ Í× Ö× Ó Ò ÓÒÐÝ ÛÓÖÖÝ ÓÙØ Ò ÒØ Ö Ø Ø × Ø Ø Ð Ú Ð Ó ×× Ñ ÐÝ Ð Ò Ù ´Ø Ð Ú Ð Ø Û ÆÂÌ³× ÓÒ×ØÖÙ ØÓÖ× Ö ÛÖ ØØ Òµº Ê ÑÓÚ Ò ×Ù ÜØÖ Ð Ú Ð× Ó Ø Ð Ð Ñ Ò Ø × ×ÓÑ ÔÓØ ÒØ Ð ×ÓÙÖ × Ó ×Ô ¬ Ø ÓÒ ÖÖÓÖº Ì ÙØ ÓÖ× Ó ÆÂÌ Ù× Ø ×× Ñ Ð Ö ØÓ Ó Ø ×ع Ò Ó ×Ô ¬ Ò Ó Ò × ¸ Ý ÓÓ× Ò Ö Ò ÓÑ Ú ÐÙ × ÖÓÑ Û Ø Ò Ø ×Ô Ó Ò Ó Ò ×º Ï ØÙÖÒ Ø ÔÖÓ ×× ÖÓÙÒ Ò Ù× Ø ×× Ñ Ð Ö ØÓ Ö Ú Ò Ó Ò ×º Ù× Ù× Ö Ó ÆÂÌ ×Ô ¬ × Ø Ú Ö ¹ ÓÙ× Ð ×× × Ó Ò Ó Ò ×¸ Ø ÆÂÌ ×Ô ¬ Ø ÓÒ Ø ×Ø Ö Ó × ÒÓØ Ò ØÓ × Ö × ÑÙ Ó Ø ÒÓ Ò ×Ô × Ö Ú Ó ×º ÆÂÌ ×ÙÔÔÓÖØ× × Ú Ö Ð ØÙÖ × Ø Ø Ö Ú Ó × ÒÓظ ×Ù × ×ÙÔÔÓÖØ ÓÖ Ö ÐÓ Ø ÓÒº ÓÖ Ø Ö Ø× ×Ù × ÂÁÌ׸ Û Ö ÓÙÖ ÔÖ Ñ ÖÝ ÒØ Ö ×ظ Ö ÐÓ Ø ÓÒ × ÒÓØ Ò ××Ù º × ÒÓØ Ö Ü ÑÔÐ ¸ ÆÂÌ Ò Ò Ð ×ÝÒØ Ø ×× Ñ ÐÝ Ò×ØÖÙ Ø ÓÒ× Ð ÒÐݺ Ì ÙÖÖ ÒØ ÑÔÐ Ñ ÒØ Ø ÓÒ Ó Ö Ú Ó × ÒÓØ Ý Ø Ò Ð Óѹ ÔÐ Ü ×ÝÒØ Ø Ò×ØÖÙ Ø ÓÒ× Û ÐÐ ÓÛ Ú Ö¸ Û ÓÙÐ × ÐÝ Ð Ý Ö ØÓÓÐ Ø Ø × Ö ×ÝÒØ Ø Ò×ØÖÙ ¹ Ö Ú º Ø ÓÒ× ÓÒ ØÓÔ Ó\ Ö Ú ¿ ÁÑÔÐ Ñ ÒØ Ø ÓÒ\ Ó ×Ô\ Ö Ú Ø × ¹Ð Ú Ð × Ö ÔØ ÓÒ Ó Ò Ò×ØÖÙ ¹ Ø ÓÒ × Ø Ò Ò ×× Ñ Ð Ö¸ Ò ÒÖ Ø× Ö ¬Ð × Ø Ø × Ö Ø Ò×ØÖÙ Ø ÓÒ × Øº ÙÖ ½ ÐÐÙ×¹ ØÖ Ø × Ø ØÓÓÐ Ò ÓÖ Ö Ú º × ×Ö Ò Ë Ø ÓÒ ¿º½ Ø ×ÓÐÚ Ö × × Ö Ò Ë Ø ÓÒ ¿º¾ Ò Ø Ó Ñ ØØ Ö Ò Ö ØÓÖ × × Ö ÒË ¹ Ø ÓÒ º Ö Ú ÜØÖ Ø× Ø ÒÓ Ò Ó Ò×ØÖÙ Ø ÓÒ Ý × ÑÔÐ Ò ×Ñ ÐÐ ÒÙÑ Ö Ó ÔÓ×× Ð ÒÔÙØ × Ø׺ Ï ××ÙÑ Ò×ØÖÙ Ø ÓÒ Ø × ¬Ü ÒÙÑ Ö Ó ¬ Ð × × ÓÔ Ö Ò ×º Ï ××ÙÑ Ø Ø ¬ Ð × Ú Ø Ö ØÝÔ × Ö ×Ø Ö׸ ÑÑ Ø ×¸ Ò Ð Ð×» ÙÑÔ Ø Ö¹ Ø׺ Ê ×Ø Ö× Ö ´Ù×Ù ÐÐÝ ×Ñ Ðе × Ø Ó Ø ÜØÙ Ð Ò Ñ × ÑÑ Ø × Ö ÒØ Ö Ú ÐÙ × Ø Ø Ò Ö Ò ÓÚ Ö Ð Ö × Ø Ó ÔÓ×× Ð Ø × ´ º º¸ ÓÒ Ø Ü ¸ ×ÓÑ Ò×ØÖÙ Ø ÓÒ Ø × Ú Ö Ð ¿¾¹ Ø ÑÑ Ø ×µ Ò Ð ¹ Ð× Ö ×ÝÑ ÓÐ Ò×ØÖÙ Ø ÓÒ Ö ×× ×º Ì × ×¹ ×ÙÑÔØ ÓÒ× Ö ×ÙÆ ÒØ ØÓ × Ö Ø Ò×ØÖÙ Ø ÓÒ × Ø× ÓÖ Û Û Ú ÛÖ ØØ Ò ×Ô ¬ Ø ÓÒ× ´Û ÓÚ Ö Û Ö Ò Ó ÑÓ ÖÒ ÁË ×µº Ï Ñ Ø ÓÐÐÓÛ Ò ××ÙÑÔØ ÓÒ× ÓÙØ Ò×ØÖÙ ¹ Ø ÓÒ Ò Ó Ò ×\ ¼ ¾ Ö ¾ ÓÒ ½ ½ ½¾ ÓÔ\ ¾ ¾ ¾ ¾ ½¿ ½¿ ½¿\ ½º\ ÓÙÐ\ Ù×\ ØÓ Ð Ñ Ò Ø Ø\ ¬Ð ÐÚÐ\ ×× Ñ ÐÝ Ò Ó Ò × Ö ×Ø Ø Ð ×× ØÖ Ò× ÓÖÑ ¹ Ø ÓÒ׺ Ì Ø ×¸ Ô ÖØ ÙÐ Ö Ò×ØÖÙ Ø ÓÒ ÐÛ Ý× × Ø × Ñ Ò Ó Ò º ÁÒ Ø ÓÒ¸ ×× Ñ¹ Ð Ò ØÛÓ ÓÖÖ Ø Ò×ØÖÙ Ø ÓÒ× ØÓ Ø Ö Ú × Ø × Ñ Ö ×ÙÐØ× × ÓÒ Ø Ò Ø Ò Ø Ö ×ÙÐØ× Ó ×¹\ binary rewriter disassembler\ instruction description\ idc\ DERIVE solver\ encoding description\ code emitter generator\ system assembler\ debugger\ ÙÖ ½\ Ò Ü ÑÔÐ ØÓÓÐ\ Ò Ø Ø Ù× ×\ Ö Ú\ ºÏ\ Ú\ Ù ÐØ Ø\ ØÓÓÐ× Ø Ø Ö Ò ÓÙ Ð\ ÓÜ ×º\ × Ñ Ð Ò Ø Ñ × Ô Ö Ø Ðݺ ÌÓ × Ø × Ý Ø × ×¹ ×ÙÑÔØ ÓÒ¸ ×× Ñ Ð Ö× ÑÙ×Ø ÔÖ Ú ÒØ ÖÓÑ Ò ¸ Ö ÑÓÚ Ò ¸ ÓÖ Ö ÓÖ Ö Ò Ò×ØÖÙ Ø ÓÒ× Ò Ò Ö Ð¸ Ø Ù× Ö ÑÙ×Ø ÔÖÓÚ Ö Ú ÛØ Ø ÔÔÖÓÔÖ Ø ×× Ñ ÐÝ Ö Ø Ú ×º Ì × ××ÙÑÔ¹ Ø ÓÒ Ð Ø× Ù× Ø ØÓ Ø Ö Ø ×× Ñ ÐÝ Ó Ñ ÒÝ Ò×ØÖÙ Ø ÓÒ× ÒØÓ ÓÒ ¬Ð ¸ Û Ö Ù × ×ÓÐÚ Ò ØÑ Ý Ð Ö ÓÒ×Ø Òغ ÓÖ Ü ÑÔÐ ¸ ÓÒ ÓÙÖ Ñ Ò ´ ٠йÔÖÓ ××ÓÖ ¼¼ ÅÀÞ È ÒØ ÙÑ ÁÁÁµ¸ Û Ò ×× Ñ Ð ¾¼¼¼ Ò×ØÖÙ Ø ÓÒ× Ò Ù×Ø ÓÙØ ØÛ × ÑÙ Ø Ñ × Û Ò ×× Ñ Ð ÓÒ Ò×ØÖÙ Ø ÓÒ ÔÖÓ ×× Ö Ø ÓÒ Ò ¬Ð Á»Ç ÓÑ Ò Ø Ø Ó×Ø Ó ×× Ñ Ðݺ ¾º Ï ××ÙÑ Ø Ø Ø Ú Ð ØÝ Ò Ò Ó Ò Ó Ú ÐÙ Ò ¬ Ð Ó × ÒÓØ Ô Ò ÓÒ Ø Ú ÐÙ Ó ÒÝ ÓØ Ö ¬ Ð º Ï Ò Ø Ù× ÓÑÔÙØ ¬ Ð ³× Ò Ó Ò Ý ÒÙÑ Ö Ø Ò Ú ÖÝ Ð Ð Ú ÐÙ ÓÖ Ø Û Ð ÓÐ Ò ÐÐ ÓØ Ö ¬ Ð × ÓÒ×Ø Òغ Ì × ××ÙÑÔØ ÓÒ ÐÐÓÛ× Ù× ØÓ ×ÓÐÚ ÓÖ ¬Ð ×Ô ¹ Ö Ø Ðݺ ËÓÑ Ò×ØÖÙ Ø ÓÒ× Ò ÖØ Ò Ò×ØÖÙ Ø ÓÒ × Ø× ´×Ù ×Ø Êŵ Ó ÒÓØ × Ø × Ý Ø × ×¹ ×ÙÑÔØ ÓÒ¸ Ò Û × Ö Ú ÑÙ×Ø Ó ÑÓÖ ÜÔ Ò× Ú × Ö º ¿º Ì ¬ Ð ÓÖ Ò Ò¹ Ø ÑÑ Ø Û Ó× Ø × × Ø × Ò Ô Ò ÒØ Ó Ø ÐÓÛ Ø× Ó Ø Ñ¹ Ñ Ø º Ì Ø ×¸ ÓÒ×Ø ÒØ× ØÛ Ò ¾Ò ½ Ò Ò   ½ Ò ÐÐ ¾ ÒÓ Ò Ø × Ñ Ò×ØÖÙ Ø ÓÒ ¬ Ð º Ì × ××ÙÑÔØ ÓÒ Ð Ø× Ù× ×ÓÐÚ ÓÖ ÑÑ ¹ Ø ¬ Ð × ÑÓÖ ÕÙ ÐÝ ÓØ ÖÛ × ¸ ÓÙÖ ×ÓÐÚ Ö ÛÓÙÐ Ú ØÓ ÒÙÑ Ö Ø ÐÐ Ð Ð ÓÔ Ö Ò Ú Ð¹ ٠׺ º ÁÑÑ Ø× Ö ÒÓ Û Ø × ÑÔÐ ØÖ Ò×¹ ÓÖÑ Ø ÓÒ׺ Ë ÑÔÐ Ñ Ò× Ø Ø Ò ÑÑ ¹ Ø ³× Ú ÐÙ Ò Ú Ð Ò ÓÖ ØÖ Ð Ò Þ ÖÓ× Ö ¹ ÑÓÚ ¸ ÓÒ×Ø ÒØ× ×Ù ØÖ Ø ÖÓÑ Ø¸ ÓÖ Ð Ò\ ÓÒ Ø× ´ ÓÖ × Ò ÜØ Ò× ÓÒµº Á Ö Ú Ø Ø× ÓÑÔÐ Ü ØÖ Ò× ÓÖÑ Ø ÓÒ Ø Ø Ø Ò¹ ÒÓØ Ö ÔÖ × ÒØ ´×Ù ×Ø × Ð ØÓÖ Ò Ü Ñ ÑÓÖÝ Ò×ØÖÙ Ø ÓÒ׸ Û × ÒÓ ×Ø ÐÓ Ö Ø Ñ Ó Ø × Ð ØÓÖµ¸ Ø ÑÑ Ø ÐÝ ×ØÓÔ× Ò Ø ÐÐ× Ø Ù× Ö¸ Û Ó Ò ÔÖÓÚ ¹ Ö Ú ÛØ Ø ØÖ Ò× ÓÖÑ Ø ÓÒ ÜÔÐ ØÐݺ ÇÙÖ ÑÔÐ Ñ ÒØ Ø ÓÒ ÙÖÖ ÒØÐÝ Ñ × Ø ××ÙÑÔ¹ Ø ÓÒ Ø Ø Ò Ø Ú ÑÑ Ø× Ö ÒÓ Ù×¹ Ò ØÛÓ×¹ ÓÑÔÐ Ñ ÒØ Ø × ××ÙÑÔØ ÓÒ ÓÙÐ Ò ÖÐÝ × Ðݺ\ ¿º½ ËÔ Ý Ò ÁÒ×ØÖÙ Ø ÓÒ×\ Ì ÖÓÒØ Ò ØÓ Ö Ú ¸ ¸ ØÖ Ò×Ð Ø × ×× Ñ Ðݹ Ð Ú Ð Ò×ØÖÙ Ø ÓÒ × Ø × Ö ÔØ ÓÒ× ÒØÓ Ø ÒØ ÖÑ ¹ Ø ÓÖÑ Ø Ø Ö Ú Ù× ×º × ÓÙØ ¼¼ Ð Ò × Ó Ð Ü Ò Ý Ó º Í× Ö× × Ö Ò×ØÖÙ Ø ÓÒ× ÛØ Ý ¹Ð × Ö ÔØ ÓÒ Ø Ø ÓÒØ Ò× Ð ×Ø Ó Ò×ØÖÙ Ø ÓÒ× ØÓ Ò Ö Ø Ò ÓÖÑ Ø × Ö ÔØ ÓÒ Ø Ø × Ö ×Ø ×× Ñ ÐÝ ×ÝÒØ Ü Ò Ø ÓÔ Ö Ò ØÝÔ ×º ÆÓØ Ø Ø Ø ÓÖÑ Ø× Ö ÖÓÙÔ Ý ×× Ñ¹ ÐÝ ×ÝÒØ Ü¸ ÒÓØ Ý Ò Ó Ò Ð ×× Û Ð Ú Ø Ø Ø ÓÖÑ Ö × Ö ÑÓÖ Ö Ð ¸ × Ø ÜÔÖ ×× × ÐÓ ¹ Ð Ö Ð Ø ÓÒ× Ô× Ö Ø Ö Ø Ò Ò Ó Ò Ö Ð Ø ÓÒ× Ô׺ Ì × Ö ÔØ ÓÒ Ó ËÈ Ê ÄÍ Ò×ØÖÙ Ø ÓÒ× Ö × × ÓÐÐÓÛ׺ ÆÓØ Ø Ø Ø ¬ Ð ¹Ð Ú Ð Ò ÓÖÑ Ø ÓÒ Ò ¹ ×× ÖÝ Û Ø ÆÂÌ Ó × ÒÓØ Ú ØÓ ×Ô ¬ ÝØ Ù× Öº\ Ö × ´ ± ¼¸ ± ½¸ ± ¾¸ ± ¿¸ ± ¸ ± ¸ ± ¸ ± ¸ ±Ó¼¸ ±Ó½¸ ±Ó¾¸ ±Ó¿¸ ±Ó ¸ ±Ó ¸ ±Ó ¸ ±Ó ¸ ±Ð¼¸ ±Ð½¸ ±Ð¾¸ ±Ð¿¸ ±Ð ¸ ±Ð ¸ ±Ð ¸ ±Ð ¸ ± ¼¸ ± ½¸ ± ¾¸ ± ¿¸ ± ¸ ± ¸ ± ¸ ± µ Ò ¸ Ò ÜÓÖ¸ ÜÓÖ ¸ ×Ù ¸ ×Ù ¸ Ò Ò¸ Ò Ò ¸ ÓÖ¸ ÓÖ ¸ ÓÖÒ¸ ÓÖÒ ¸ ¸ ÜÒÓÖ¸ ÜÒÓÖ ¸ ×Ðи ×Öи ×Ö ¸ ¸ ܸ Ü ¸ Ø ¸ Ø ØÚ¸ ×Ù ¸ ܸ ×Ù Ü ¸ Ø×Ù ¸ Ø×Ù ØÚ¸ ÑÙÐ× ¸\ ÙÑÙи ×ÑÙи ÙÑÙÐ ¸ ×ÑÙÐ ¸ Ù Ú¸ × Ú¸ Ù × Ú ¸ × Ú ¸ Ö ×ØÓÖ ¹¹ ²ÓÔ² Ö ½ Ö ×¸ Ö ¾ Ö ×¸ Ö ×Ø Ö ²ÓÔ² Ö ½ Ö ×¸ ÑѸ Ö ×Ø Ö ×\ Ú ¸ ×\ Ì ÔÖÓ Ù Ø ÓÒ × Ö × Ø ×× Ñ Ð Ö ×ÝÒØ Ü Ò Ø ØÝÔ × Ó Ø ÓÔ Ö Ò × ÓÖ ÑÙÐØ ÔÐ Ò×ØÖÙ Ø ÓÒ׺ ÁØ ×Ø Ø × Ø Ø Ø Ö Ö Ö ×Ø ÖßÖ ×Ø Ö Ò Ö ×Ø Öß ÑÑ Ø ÓÖÑ× Ó ÐÐ Ó Ø Ò×ØÖÙ Ø ÓÒ× Ð ×Ø º Ì ÔÐ ÓÐ Ö ²ÓÔ² Ò Ø×Û Ö Ø Ò×ØÖÙ ¹ Ø ÓÒ Ò Ñ ÔÔ Ö׺ Ì ÓÔ Ö Ò ×Ô ¬ Ø ÓÒ × Ý× Ø Ø Ø ÓÖÑ ØØ Ò ×Ù ×ØÖ Ò Ö ½ Ö ×³³ × Ö ¹ ÔÐ Ý Ñ Ñ Ö× Ó Ø Ð ×Ø Ó Ö ×Ø Ö× Ö ×º Ë Ú Ö Ð ÓÒÚ ÒØ ÓÒ× ÔÔÐÝ Ö ×Ø Ö ¬ Ð Ò Ñ × Ò Û Ø Ö¸ ÙÑÔ Ø Ö Ø × Ø ÙÒ ÕÙ Ò Ñ ²Ð в¸ Ò Ò ÑÑ Ø ¬ Ð × ÒÝ ÓØ Ö ¬ Ð º\ ¿º¾ Ì ËÓÐÚ Ö×\ Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò ººº\ ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ±\ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸\ ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ±\ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸\ ± ¼ ± ½ ± ¾ ± ¿ ± ± ± ± ±Ó¼ ±Ó½ ±Ó¾ ±Ó¿ ±Ó ±Ó ±Ó ±Ó ±Ð¼\ ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü\ ¼¼ ¾¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼¼ ¾¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼¼\ ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü\ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼\ Ö Ú × ÓÑÔÓ× Ó Ø Ö ×ÓÐÚ Ö׸ ×Ô Ð¹ Þ ØÓ Ö Ú ×Ô ¬ ÓÔ Ö Ò ØÝÔ Ø Ö ×¹ Ø Ö ×ÓÐÚ Ö ×ÓÐÚ × ÓÖ Ö ×Ø Ö ¬ Ð ×»ÓÔ Ö Ò ×¸ Ø Ñ¹ Ñ Ø ×ÓÐÚ Ö ×ÓÐÚ × ÓÖ ÑÑ Ø ¬ Р׸ Ò Ø ÙÑÔ ×ÓÐÚ Ö ×ÓÐÚ × ÓÖ ÙÑÔ Ø Ö Ø ¬ Р׺ ×ÓÐÚ Ö Ù× × Ø ×× Ñ Ð Ö ØÓ ÓÑÔÙØ Ò×ØÖÙ Ø ÓÒ Ò Ó ¹ Ò ×º Ö Ú Ñ Ø× Ó ÒØÓ Ò ×× Ñ Ð Ö ¬Ð ¸ ÖÙÒ× Ø ×× Ñ Ð Ö¸ Ò ¬Ò × Ø Ó Ò Ø Ö ×ÙÐØ Ò Ü ÙØ Ð º Ö Ú Ø ×Ø× ÓÖ ÒÝ «ÖÒ Ò Ò ¹ ÒÒ ×× ØÛ Ò Ø Ø Ö Ø Ò Ø ×ÓÐÚ Ò Ö Ø ¹ ØÙÖ ×¸ Ò ÔÔÖÓÔÖ Ø ÐÝ ×Û Ô× ÝØ × Ò Ø Ó Ø Ó ÓÖ Ó Ò ÒÝ ×ÓÐÚ Ò º ÌÓ Ñ Ö Ø Ø Ñ Ò Ó Ò Ø Ü ÙØ Ð ¸ Ö Ú ÜÔÐ ØÐÝ Ñ Ø× Ò ÔÓ×Ø× ÖÓÙÒ Ø Ó Ù× Ò ×× Ñ Ð Ö Ø Ö Ø Ú ×º ÇÙÖ Ò ÔÓ×Ø× Ö Ö Ò ÓÑÐÝ Ó× Ò × ÕÙ Ò Ó ÝØ ×º ÁØ × ÙÒÐ ÐÝ Ø Ø Ö Ú Ñ Ø× × ÕÙ Ò Ó Ò×ØÖÙ Ø ÓÒ× Ø Ø Ñ Ø Ø Ò ÔÓ×ظ × Ò Ø Ó × ÒÓØ Ü Ù×Ø Ú ÐÝ × Ö Ø × Ø Ó Ò×ØÖÙ Ø ÓÒ× Û ÓÒÐÝ × Ö Ø ÒØ Ö ×Ô Ó Ú ÐÙ × ÓÖ Ö ×Ø Ö ¬ Р׸ Ò ÒÓØ ÓÖ ÑÑ Ø Ò ÙÑÔ ¬ Р׺ ÐØ ÓÙ Û Ó ÒÓØ ÙÖÖ ÒØÐÝ Ó ×Ó¸ × ÑÔÐ Û Ý ØÓ Ø Ø Ò ÚÓ Ò ÔÓ×Ø ÓÒ­ Ø× ÛÓÙÐ ØÓ ×ÓÐÚ Ò×ØÖÙ Ø ÓÒ ØÛ Û Ø « Ö ÒØ Ò ÔÓ×Ø Ú Ð٠׺ Ö Ú Ö ÔÖ × ÒØ× Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × × Ò ÓÔ Ó Ñ × Ò Ò Ö ØÖ ÖÝ ÒÙÑ Ö Ó ÓÔ Ö Ò ¬ Р׺ Ì ÓÔ Ó Ñ × ÓÒØ Ò× Ø ØÑ × Ó ½³× Ø Ø ÑÙ×Ø × Ø Ò Ò Ò×ØÖÙ Ø ÓÒ ØÓ ×Ô Ý ÚÒ ÓÔ Ó º Ê ×Ø Ö ¬ Ð × Ö ×Ô ¬ × × ÕÙ Ò Ó Ñ × ×¸ ÓÒ ÓÖ Ð Ð Ö ×Ø Ö Ú ÐÙ ÑÑ Ø× Ò Ð Ð ¬ Ð × Ö Ö ÔÖ × ÒØ × × Þ ¸ Ò Ó«× Ø¸ Ò × ÑÔÐ ØÖ Ò× ÓÖѺ Ì ×ÓÐÚ Ö× ÐÐ ÛÓÖ Ò Ø × Ñ × Ñ ÒÒ Öº ÓÒ ÐÓ Ø × ¬ Ð Ò Ø ÖÑ Ò × Ø× × Þ Ý Ð Ð ÓÔ Ö Ò Ú ÐÙ Ñ ØØ Ò ÓÒ Ò×ØÖÙ Ø ÓÒ ÓÖ Ó Ø Ø ¬ Ð ´Û Ð ÓÐ Ò ÐÐ ÓØ Ö ¬ Р׳ Ú ÐÙ ×\ ÙÖ ¾ Ì ×× Ñ ÐÝ Ø Ø Ö Ú Ò Ö Ø × ØÓ ×ÓÐÚ ÓÖ Ø Ð ×Ø Ö ×Ø Ö ¬ Ð Ó Ø ËÈ Ê Ò¹ ×ØÖÙ Ø ÓÒ¸ Ò Ø Ö ×ÙÐØ Ò Ò ÖÝ Ò×ØÖÙ Ø ÓÒ× Ø Ø Ø Ò ÐÝÞ ×º ¬Ü µ Ò ¬Ò Ò ÐÐ Ø× Ø Ø Ò ÒØ Ò ÖÝ ÒÓ Ò º ÙÖ ¾ ÐÐÙ×ØÖ Ø × Ø × ÔÖÓ ×× ÓÖ Ø Ð ×Ø ÓÔ Ö Ò Ó Ø ËÈ Ê Ò Ò×ØÖÙ Ø ÓÒº Ì Ó× Ø× Ø Ø Ò ÐÓÒ ØÓ Ø ¬ Ð º ÁØ× Ó«× Ø × Ú Ò Ý Ø ÐÓÛ ×Ø Ò Ò Ø Ø× × Þ Ý Ø ¹ ÖÒ ØÛ Ò Ø× ÐÓÛ ×Ø Ò ×Ø Øº ×Ô ¬ ÓÔ Ö Ò ³× Ú ÐÙ Ü ØÐÝ ÕÙ Ð× Ø Ú ÐÙ Ó Ø × Ø× Û Ò Ø × Ù× º ÐÐ ÓØ Ö Ø× ÐÓÒ ØÓ ÓØ Ö ¬ Р׸ ÓÖ ØÓ Ø ÓÔ Ó Ñ × º × ×ÓÐÚ Ö × ÖÙÒ¸ Ø ÓÔ Ó Ñ × × Ö ¬Ò º Ì Ø ×¸ ×ÓÐÚ Ö Ð Ñ× Ø× ÓÖ Ú Ö ÓÙ× ¬ Р׺ Ø Ö ÐÐ ¬ Ð × Ú Ò ×ÓÐÚ ÓÖ¸ Ø ÓÔ Ó Ñ × × × Ø ØÓ Ø Ö Ñ Ò Ò ÙÒ Ð Ñ Ø× ´ º º¸ Ø Ó× Ø Ø Ö × Ø ØÓ ½ Ò Ú ÖÝ Ñ ØØ Ò×ØÖÙ Ø ÓÒµº Ï Ñ ÓÒ Ò Ö Ð ×× Ñ Ð Ö¹ Ô Ò ÒØ ×¹ ×ÙÑÔØ ÓÒ¸ Û ×Ø ØØ ×× Ñ Ð Ö Û ÐÐ ÔÖÓ Ù ÖÖÓÖ× Û Ò ÜÔ Ø º ÓÖ Ü ÑÔÐ ¸ Û ××ÙÑ Ø Ø ×× Ñ Ð Ö× Û ÐÐ Ö ØÙÖÒ Ò ÖÖÓÖ Û Ò ÐÐ Ð Ö ¹ ×Ø Ö× Ö Ù× Ò Ò Ò×ØÖÙ Ø ÓÒ¸ ÓÖ Û Ò ÓÒ×Ø ÒØ× Ö ØÓÓ Ð Ö º Ö Ú ¬Ò × Ø × Þ × Ó ÑÑ Ø ¬ Ð × Ý Ø ×Ø Ò Ð Ö Ö Ò Ð Ö Ö ÑÑ Ø ×¸ Ò Ø ÜÔ Ø× Ø Ø Ø ×× Ñ Ð Ö Û ÐÐ Ú ÒØÙ ÐÐÝ Ö ØÙÖÒ Ò ÖÖÓÖ Ñ ×× º ÍÒ ÓÖØÙÒ Ø Ðݸ ×× Ñ Ð Ö× Ó ÒÓØ ÐÛ Ý× Ö ÔÓÖØ Ö¹ ÖÓÖ× Û Ò Ø Ý × ÓÙÐ º × × ÓÛ× ×ÓÑ ÙÒ ÜÔ Ø Ú ÓÖ¸ Ò Ø Ø Ø Û ÐÐ ÔØ ×ÓÑ ÔÓ× Ø Ú ÓÒ¹ ×Ø ÒØ× Ø Ø Ö ØÓÓ Ð Ö ÓÖ × Ò ¬ Ð × ´ ÓÖ Ü¹ ÔØ× ÓÒ×Ø ÒØ× ÑÔÐ ¸ ÓÖ ½ ¹ Ø × Ò ¬ Ð Ø ØÛ Ò ¿¾ Ò ¿ µº ÁÒ Ò Ö Ð¸ Û ØÖÝ ØÓ Ö ¹\ ÑÓÚ ×Ù Ô Ò Ò × Ý Ò Ø ÒÖ Ø Ó Ö Ú Ø× ÖÓÙÒ Ø × Ô ÖØ ÙÐ Ö Ù Ý Ñ Ò ×ÙÖ Ø Ø ÓÒ×Ø ÒØ Ú ÐÙ Ü Ñ Ò ¹ ØÙ ÐÐÝ Ö ×ÙÐØ× Ò « Ö ÒØ Ò×ØÖÙ Ø ÓÒº\ ¿º¾º½ Ê ×Ø Ö ËÓÐÚ Ö\ º ÌÓ\ Ö Ú Ø ½³× Ø Ö ×Ø Ö ÓÖ Ø ÓÚ Ö ÐÐ Ð Ð Ö ×Ø Ò×ØÖÙ Ø ÓÒ Û Ø Ø\ ÓÖ Ñ × Ö Ö Ò Ö\ Ø ÑÙ×Ø × Ø ØÓ Ò Ó ÙÖÖ ÒØ ¬ Ð ¸ Ø Ö Ø Ò Ö׸ Ò ØÛ × Æ ÓÑÔÙØ ¬ Ð Ñ ×\ Ð\ Ì Ö ×Ø Ö ×ÓÐÚ Ö × Ö Ú ³× ÑÓ×Ø × ×ÓÐÚ Ö¸ Ò × ÐÐ Ý Ø ÓØ Ö ×ÓÐÚ Ö׺ ÁØ × ØÛÓ Ø × ×º Ö×ظ Ø ÓÑÔÙØ × Ò Ò×ØÖÙ Ø ÓÒ³× ÓÔ Ó Ñ × Û Ø Ö ×Ô Ø ØÓ Ø Ö ×Ø Ö ¬ Р׺ Ì ÓÔ Ó Ñ × ÓÒ¹ × ×Ø× Ó ÐÐ Ó Ø Ø× Ø Ø Ö ÒÓØ Ù× ÝØ Ö ¹ ×Ø Ö ¬ Р׺ Ë ÓÒ ¸ Ø ¬Ò × ÓØ Ø ÐÓ Ø ÓÒ Ò ×Þ Ó Ö ×Ø Ö ÓÔ Ö Ò ¬ Ð ¸ ÐÓÒ Û Ø Ø ØÑ × Ø Ø ÑÙ×Ø × Ø ØÓ ×Ô Ý Ú Ò ÓÔ Ö Ò Ú ÐÙ º Ö ×Ø Ö ÓÔ Ö Ò × ÒÝ ÓÔ Ö Ò ÓÖ Û Ø Ð ÒØ ÒÙÑ Ö Ø × Ø ÔÓ×× Ð Ø ÜØÙ Ð Ú Ð٠׺ Ì Ö ×Ø Ö ×ÓÐÚ Ö ÛÓÖ × Ò Ø ÓÐÐÓÛ Ò Ñ ÒÒ Ö ÓÖ Ô ÖØ ÙÐ Ö Ö ×Ø Ö ¬ Ð ½º ÁØ Ö Ø ÓÚ Ö ÐÐ Ð Ð Ö Ö ×Ø Ö¸ Ö Ø ÓÖÑ Ø ×ØÖ Ò º Ê ÔÐ Ö ×Ø Ö Ú ÐÙ ¸ Ò ÐÐ ÓØ Ð Ð Ú Ð٠׺ Ñ Ø Ø Ø Ñ ÒØÓ Ù« Ö ×Ø Ö× Ò Ø ¬ Ð º ÓÖ ÓÔÝ Ó Ø Ò×ØÖÙ Ø ÓÒ Ø ÓÔ Ö Ò Û Ø Ø Ö ÓÔ Ö Ò × Û Ø ×ÓÑ Ò×ØÖÙ Ø ÓÒ× Ò Ö Ò×غ\ ×Ø Ö× Ò×Ø Ö ²\ ¾º Ï Ð Ø Ö Ø Ò ÓÚ Ö Ö ×Ø Ö Ú ÐÙ ¸ Ò Ö ¹ Ñ ÒØ ÐÐÝ Ö Ù Ø ÓÔ Ó Ñ × Ý Æ Ò Ø ÛØ Ò ÖÝ Ò×ØÖÙ Ø ÓÒ\ ÓÔ Ñ × ÓÖ ÓÔ Ñ × Ö ² ¼ Ò Ö ×Ø Ö× Ò×Ø Ö\ Ì × ÔÖÓ ×× Û ÐÐ Ð Ú Ø Ñ × Û Ø ½³× Ò Ú¹ ÖÝ Ø Ø Ø × ½ × Ø ÓÖ ÐÐ Ò×ØÖÙ Ø ÓÒ Ò¹ ×Ø Ò ×º ¿º Ü ÑÒ Ø Ñ ØØ Ò×ØÖÙ Ø ÓÒ ×ØÖ Ñ¸ Ò ÐÓÓ ÓÖ ÐÐ Ø× Ø Ø Ò ØÛ Ò ¼ Ò ½º ËÙ Ø× ÐÓÒ ØÓ Ø ÙÖÖ ÒØ ¬ Ð ¸ × Ò ÐÐ ÓØ Ö ÓÔ Ö Ò Ú ÐÙ × Û Ö ¬Ü ¸ Ò ÐÐ Ú ÐÙ × ÓÖ Ø ¬ Ð Û Ö ÒÙÑ Ö Ø º ÌÓ ¬Ò Ø × Ø׸ ØÛ × Æ Ò×ØÖÙ Ø ÓÒ ÛØ Ø ÓÑÔÐ Ñ ÒØ Ó Ø ÓÔ Ó Ñ × Ò ÐÓ ÐÐÝ ×ÙÑÑ Ò Ø Ö ×ÙÐØ\ ÓÖ Ð Ð ¼ Ö Ò Ö ×Ø Ö× ´ Ò×Ø Ö ²\ Ï Ú ÑÔÐ Ñ ÒØ ØÛÓ Ñ Ò ÜØ Ò× ÓÒ× ØÓ Ø × × ÑÔÐ × Ñ º Ö×ظ ÓÒ ×ÓÑ Ö Ø ØÙÖ ×¸ ×Ô ¹ ¬ Ö ×Ø Ö Ú ÐÙ Ò Ò Ø ØÙ Ð Ò×ØÖÙ Ø ÓÒ Ò Ó Ò º ÓÖ Ü ÑÔÐ ¸ ÓÒ Ø Ü ¸ « Ö ÒØ Ò×ØÖÙ ¹ Ø ÓÒ ÓÖÑ× Ö Ù× Û Ò Ø ± Ü Ö ×Ø Ö × Ù× × Ò ÓÔ Ö Ò º Ì ×ÓÐÚ Ö Ø Ø× ×Ù × ÓÒØ ÒÙ¹ Ø × Ý Ò Ø Ø ÐÐ Ò×Ø Ò × Ó Ò Ò×ØÖÙ Ø ÓÒ Ö Ó Ø × Ñ Ð Ò Ø º Ì Ø ×¸ Û Ò Ø Ñ Ø× Ø × ÕÙ Ò Ó Ò×ØÖÙ Ø ÓÒ× ´ × × ÓÛÒ Ò ÙÖ ¾µ¸ Ø × Ø Ø Ø ÒÙÑ Ö Ó Ò×ØÖÙ Ø ÓÒ ÝØ × Ñ ØØ ÕÙ Ð× Ø ÒÙÑ Ö Ó Ò×ØÖÙ Ø ÓÒ× ÑÙÐØ ÔÐ ÝØ × Þ Ó ÓÒ Ò×ØÖÙ Ø ÓÒº Á Ø Ó × ÒÓظ Ø ×ÓÐÚ × ÓÖ Ø Ö ×Ø Ö Ú ÐÙ × Ò Ô Ò ÒØÐݸ Ò Ñ Ø× ÑÙÐØ ÔÐ Ò¹ ×ØÖÙ Ø ÓÒ ×Ô ¬ Ø ÓÒ× ×Ô ¬ Ø ÓÒ ÒØ ¬ × Û ×Ô ¬ Ö ×Ø Ö Ú ÐÙ × Ø ÓÖÖ ×ÔÓÒ × ØÓº Ë ÓÒ ¸ Ø ×ÓÐÚ Ö ÐÐÓÛ× Ù× Ö× ØÓ ×ÙÔÔÐÝ Ö ×¹ Ø Ö ÓÔ Ö Ò Ð ×Ø× Ø Ø ÓÒØ Ò ÐÐ Ð Ú Ð٠׸ Û Ø ÙØÓÑ Ø ÐÐÝ ÙÐÐ׺ Ì × ×ÝÒØ Ü × Ù× ÙÐ ÓÖ × ØÙ ¹ Ø ÓÒ× Û Ö Ò×ØÖÙ Ø ÓÒ× ÓÒÐÝ ÔØ ×Ù × Ø× Ó ÔÓ×¹ × Ð Ö ×Ø Ö Ú Ð٠׺ ÓÖ Ü ÑÔÐ ¸ Ø ËÈ Ê Ö¹ Ø ØÙÖ ×ÙÔÔÓÖØ× ­Ó Ø Ò ¹ÔÓ ÒØ Ò×ØÖÙ Ø ÓÒ× Ø Ø Ø « Ö ÒØ ÓÑ Ò Ø ÓÒ× Ó Ö ×Ø Ö׸ Ô Ò ¹ Ò ÓÒ Û Ø Ö Ø ÒÔÙØ× Ò ÓÙØÔÙØ× Ö × Ò Ð ¹¸ ÓÙ Ð ¹¸ ÓÖ ÕÙ ¹ÔÖ × ÓÒº ËÔ Ý Ò Ü ØÐÝ Û ÓÔ Ö Ò × Ö Ð Ð ÛÓÙÐ Ò Ö × Ø × Þ Ó Ø ËÈ Ê ×Ô ¬ Ø ÓÒ Ý ÓÙØ ¼±¸ Ò ÛÓÙÐ Ð×Ó Ò Ö × Ø ÔÖÓ Ð ØÝ Ó ÖÖÓÖº ÁÒ×Ø ¸ Ð ÒØ× Ò ×Ø Ø Ø Ø Ú ÖÝ ­Ó Ø Ò ¹ÔÓ ÒØ Ò×ØÖÙ Ø ÓÒ Ø × ÒÝ ­Ó Ø Ò ¹ÔÓ ÒØ Ö ×Ø Ö × Ò ÓÔ Ö Ò\ Ö × ´ ± ¼¸ ± ½¸ ± ¾¸ ± ¿¸ ± ¸ ± ¸ ± ¸ ± ¸ ± ¸ ± ¸ ± ½¼¸ ± ½½¸ ± ½¾¸ ± ½¿¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ¾¼¸ ± ¾½¸ ± ¾¾¸ ± ¾¿¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¿¼¸ ± ¿½ µ ׸ ×٠׸ ÑÙÐ׸ Ú׸ ÑÙÐ ¸ Ú ¸ Õ¸ ×Ù Õ¸ ×ÑÙÐ ¸ ÑÙÐÕ ¹¹ ²ÓÔ² Ö ½ Ö ×¸ Ö ¾ Ö ¸ ÑÙÐÕ¸ ׸ Ö ¿ ×Ù Ö ¸ ÚÕ¸ ×\ ÓÔ Ñ × µ\ ØØ Ò ¸Ø Ø ÒØ ¬ Ð º Ý Ø ÑÓ×Ø Ò ÓÑÔÙØ Ñ × Ø× Ð ×Ø × Ò ¬\ × ½× Ø Ì ×Þ Ó Ø ¬ Ð × Ð ×Ø × Ò ¬ ÒØ Ø× × º Ì ¬ Ð ³× Ó«× Ø × ÒØ Øº\ Ð Ñ ×\ ÓÖ Ú ÖÝ ÓÙÒ Ø ÒØ × ÚÒ Ý\ Ö Ú ÙØÓÑ Ø ÐÐÝ Ð Ñ Ò Ø × Ö ×Ø Ö× Ý ¬Ö×Ø Ö Ò ÓÑÐÝ × Ð Ø Ò ÓÔ Ö Ò Ú ÐÙ × ÙÒØ Ð Ø ¬Ò × × ÕÙ Ò Ø Ø Ø ×× Ñ Ð Ö ÔØ׺ ÁØ Ø Ò ¬Ò × ÐÐ Ð Ð Ú ÐÙ × ÓÖ ¬ Ð Ý ØÖÝ Ò ÐÐ Ó Ø× Ú Ð¹ Ù × Û Ð ÓÐ Ò Ø ÓØ Ö× ÓÔ Ö Ò × ¬Ü ØÓ Ð Ð Ú Ð٠׺\ ¿º¾º¾\ ÁÑÑ\ Ø\ ËÓÐÚ Ö\ Ì ÑÑ Ø ×ÓÐÚ Ö ÓÑÔÙØ × Ø Û Ø Ò ÔÓ¹ × Ø ÓÒ Ó ÑÑ Ø ¬ Ð ¸ Ò Ð×Ó ÒÝ ØÖ Ò×¹ ÓÖÑ Ø ÓÒ Ó Ø Ú ÐÙ × Ò ÑÑ Ø ¬ Р׺ Ì ÑÑ Ø ×ÓÐÚ Ö × ÐÐ Ø Ö Ø ÙÑÔ ×ÓÐÚ Ö¸ Ø Ö Ö Ö Ð Ø Ú ÙÑÔ Ø Ö Ø× Ø × Ù× Ö ØÐÝ ØÓ ×ÓÐÚ ÓÖ ×ÓÐÙØ ÙÑÔ Ø Ö Ø× ´× Ò Ø Ó× Ö Ù×Ø ØÖ Ò× ÓÖÑ ÑÑ Ø Ú ÐÙ ×µº Ï ÜÔÐ Ò Ø ÓÖ Ø ÙÑÔ ×ÓÐÚ Ö¸ Ù× Ø× Ú ÓÖ × ÐÓ× Ö ØÓ Ø Ø Ó Ø Ö ×Ø Ö ×ÓÐÚ Öº Ì Ñ Ò «ÖÒ ØÛ Ò Ø × ×ÓÐÚ Ö Ò Ø Ö ×Ø Ö ×ÓÐÚ Ö × Ø Ø Ø × ÑÔÖ Ø Ð ØÓ ÒÙÑ Ö Ø ÐÐ Ð Ð Ú ÐÙ × ÓÖ Ò ÑÑ Ø ÓÔ Ö Ò Ò Ò¹ Ø ÑÑ Ø ¬ Ð ÛÓÙÐ Ö ÕÙ Ö ¾Ò Ô ÖÑÙØ Ø ÓÒ׺ Ê ×Ø Ö ¬ Ð × Ø Ò ØÓ ×Ñ ÐÐ ´ÓÒ Ø ÓÖ Ö Ó Ø× ÓÖ ÑÓ ÖÒ Ö Ø ØÙÖ ×µ¸ Û Ö × ÑÑ Ø ¬Ð × Ò ×Ù ×Ø ÒØ ÐÐÝ Ð Ö Öº × Ö ×ÙÐظ Û ×ÓÐÚ ÓÖ Ø × Þ Ó Ø ÑÑ Ø ¬ Ð ¸Ö Ø Ö Ø Ò ÔÓ×× Ð Ú ÐÙ º Ì ×ÓÐÚ Ö ¬Ö×Ø ¬Ò × Ò ÑÑ Ø ¬ Ð ³× × Þ Ý Ø Ö Ø Ò ÙÔÛ Ö × ÖÓÑ ½ ظ ¾ Ø׸ Ø º¸ ÙÒØ Ð Ø ×× Ñ Ð Ö Ö Ù× × ØÓ ×× Ñ Ð Ø Ò×ØÖÙ Ø ÓÒº ÁØ Ø Ò Ø Ö Ø × ÓÛÒ ÖÓÑ Ø Ñ Ü ÑÙÑ ÒÙÑ Ö Ó Ø× ´ ÐÐ Ø Òµ Ò ×ÓÐÚ × ÓÖ ÑÑ Ø ×Þ º Ì ÑÑ Ø ×ÓÐÚ Ö ÛÓÖ × Ò Ø ÓÐÐÓÛ Ò Ñ Ò¹ Ò Ö ÓÖ Ø×Þ Ñ ½º ÓÓ× Ö Ò ÓÑ Ñ   ½ Ø Ú ÐÙ Ò Ö Ø ØÛÓ ¹ Ø ÓÒ×Ø ÒØ׸ Ú ¼ Ò Ú ½¸ Ý × ØØ Ò Ú ¼ ØÓ Ø Ú ÐÙ Ò Ú ½ ØÓ Ø× ÓÑÔÐ Ñ Òغ Ì Ò × Ø Ø ÑØ Ø Ò ÓØ Ú ¼ Ò Ú ½\ Ñ\ Ö ÛÖ Ø ´ Ò×ؽº Ñظ ÓÔº Ð ×ÓÐÚ ÓÔÝ Ö ×Ø Ö ×ÓÐÚ ´×¼¸ Ò×ؼµ Ö ×Ø Ö ×ÓÐÚ ´×½¸ Ò×ؽµ\ Ò Ñ ¸ Ú½µ\ Ì ØÛÓ ×Ô ¬ Ø ÓÒ× ×¼ Ò Ø × Ñ Ö ×Ø Ö Ñ × ×¸ Ò ÝØ ×º Ì ÓÒÐÝ « Ö Ò × ÓÙÐ Ø ÓÔ Ó Ñ × × Ö ×Ø Ö ×ÓÐÚ Ö¸ Û Û ÐÐ « Ø× Ø Ø « Ö Ò Ú¼ Ò Ú½º ¾º\ Ø\ Ú × Ñ ×Þ Ò ØÛ Ò Ø ØÛÓ ÓÑÔÙØ ÝØ Ö Ý Ü ØÐÝ Ø\ ×½ × ÓÙÐ\ Ò Ø ÑÑ Ø ¬ Ð Ý ¬Ö×Ø ÇÊ Ò Ø ØÛÓ ÓÔ Ó Ñ × ×º Ë Ò ÓÒÐÝ Ø ÐÓÛ Ö Ñ   ½ Ø× Ó Ø ¬ Ð « Ö¸ Ø × Ø ÓÒ × Ø× ½³× Ü ØÐÝ Ò Ø ÐÓ Ø ÓÒ Ó Ø × Ø× Ò ¼× Ú ÖÝÛ Ö Ð× Û Ø ÑØ Ø Ò ÜÔÐ ØÐÝ ´ÒÓØ Ø Ø Û ××ÙÑ Ø Ø Ø × Ø × ÓÒØ ÙÓÙ× Û Ø Ø Ö ×Ø Ó Ø ¬ Ð µº Ì Ð ×Ø × Ò ¬ ÒØ Ø Ú × Ø ¬ Ð ³× Ó«× Øº Ê ¬Ò Ø ÓÔ Ó Ñ × Ý Ö ÑÓÚ Ò ÐÐ ¬ Ð Ø× ÖÓÑ Øº\ × Ø Ø ÐÓÛ Ñ¹½ Ø× Ò Ð Ð Ø× ×¼ºÓÔ Ñ × ×½ºÓÔ Ñ × Ò Ð ×Ø × Ò ÒØ Ø Ð Ó × Ø Ð× ´ Ð Ø×µ ÑØ Ð Ø Ð Ø× ½ ´Ñ · Ð Ó × Ø ¹ ½µ Ü ÓÔ Ó Ñ × ×¼ºÓÔ Ñ × ×¼ºÓÔ Ñ × ² Ð Ø×\ ¿º\ ´½ ´Ñ ¹ ½µµ Ö Ò ÓÑ Þ ÐÓÛ Ñ¹½ Ø× Ú¼ Ö Ò ÓÑ´µ ± Ü Ú½ ÓÑÔÐ Ñ ÒØ× Ø Ó× Ø× Ú¼ ± Ü Ú½ × Ø ÑØ Ø Ò Ú¼ Ò Ú½ Ú¼ Ú¼ Ü Ú½ Ú½ Ü\ Ü\ Ø Ú ÐÙ Ó Ø ¬ Ð Ò×Ø Ø Ú ÐÙ Ó Ø ÒÓ ¬ Ð ØÓ × ÒÝ × ÑÔÐ ØÖ Ò× ÓÖ¹ Ñ Ø ÓÒ× Ö Ù× º ×Ù × × Ø ØÓ Ø Ö Ø Ý ×Ñ ÐÐ ÓÒ×Ø Òغ ØÓ × ÔÖ Ú ÓÙ× Ò Ó Ò Ñ Ø × Ø × ÓÒ º Ë Ò Û ÛÓÖ ÓÙÖ Û Ý ÓÛÒ ÖÓÑ Ð Ö Ö¹Ú ÐÙ ÑÑ Ø × ØÓ ×Ñ ÐÐ Ö¹Ú Ð٠ѹ Ñ Ø ×¸ Û Ñ Ý Ú ÐÖ Ý × ÓÚ Ö Ø Ò Ó Ò ÓÖ Ø ¬ Ð º ÓÖ Ü ÑÔÐ ¸ ËÈ Ê ½¿¹ Ø × Ò ÑÑ Ø ¬ Ð Ò Ó × ÐÐ × Ò Ú ÐÙ × ØÛ Ò ½ Ø Ò ½¿ Ø׺ ÁÒ ÓÒØÖ ×ظ ÓÒ Ø Ü ¹ ÝØ Ñ ÑÓÖÝ ×ÔÐ Ñ ÒØ× Ö Ò¹ Ó « Ö ÒØÐÝ Ø Ò ¾¹ ÝØ Ñ ÑÓÖÝ ×ÔÐ ¹ Ñ ÒØ׺ Á Û Ú ÐÖ Ý ÓÙÒ Ò Ò Ó Ò ¸ Ø ÙÖ¹ Ö ÒØ Ò Ó Ò × ÒÓÖ ÓØ ÖÛ × ¸ Ø × ØÓ Ø Ð ×Ø Ó Ö Ú Ò Ó Ò ×º Ï ÑÙ×Ø Ú Ð¹ Ù Ø Ø Ò Ó Ò ÓÖ ÑÑ Ø ×Þ ¸ ¹ Ù× ×ÓÑ Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × ÓÒ ÖØ Ò Ö¹ Ø ØÙÖ × ´Ü µ Ú ÖÝ Û Ø Ø × Þ Ó Ø Ñ¹ Ñ Ø ÔÖÓÚ º\ º\ Ý Ñ ØØ Ò Ò×ØÖÙ Ø ÓÒ× Û Ø Ø × ØÛÓ ÓÒ¹ ×Ø ÒØ׸ Û ÓÖ Ø ÐÓÛ Ñ   ½ Ø× Ó Ø ÑÑ ¹ Ø ¬ Ð × ØÓ Ú ÓÑÔÐ Ñ ÒØ ÖÝ Ø Ú Ð٠׸ Û Ð ÐÐ ÓØ Ö Ø× Ö Ñ Ò ÓÒ×Ø Òغ Æ Üظ Ö ¹ Ø ØÛÓ Ò×ØÖÙ Ø ÓÒ׸ Ø ¬Ö×Ø Û Ø Ø ÑÑ ¹ Ø ÓÔ Ö Ò Ö ÔÐ Û Ø Ú ¼¸ Ø × ÓÒ Û Ø Ú ½º Í× Ø Ø Ö ×Ø Ö ×ÓÐÚ Ö ØÓ Ö Ú Ø Ö ×Ø Ö ¬ Ð Ò Ó Ò × ÓÖ Ø × ØÛÓ × Ñ Ð Ö¹ ÐÓÓ Ò Ò×ØÖÙ Ø ÓÒ׺\ ÓÔÝ Ò×ØÖÙ Ø ÓÒ Ò×ؼ Ò×ؽ Ò×Ø Ö ÔÐ ÑÑ Ø ÓÔ Ö Ò Û Ø Ú¼ Ö ÛÖ Ø ´ Ò×ؼº Ñظ ÓÔº Ð Ò Ñ ¸ Ú¼µ Ö ÔÐ ÑÑ Ø ÓÔ Ö Ò Û Ø Ú½\ ÇÙÖ ØÙ Ð ×ÓÐÚ Ö × ÑÓÖ ÒÖ ÐØ ÒØ ×× Ø ¸ Ò Ð × Ò×ØÖÙ Ø ÓÒ× Û Ø Ò Ö ØÖ ÖÝ ÒÙÑ Ö Ò Ó ÑÑ Ø ÓÔ Ö Ò ×º ÓÖ Ò×ØÖÙ Ø ÓÒ× Û Ø ÑÓÖ\ Ø Ò ÓÒ ÑÑ Ø ÓÔ Ö Ò ¸ ÒÝ Ú Ö Ð ¹Ð Ò Ø ÑÑ Ø ¬ Ð × Ö ÒÓØ Ò Ô Ò ÒØ Ó ÓØ Ö Ø Ð Ò Ø Ó ÓÒ Û ÐÐ « Ø Ø ÔÓ× Ø ÓÒ Ó ÒÝ ÓØ ¹ Ö׺ Ì Ö ÓÖ ¸ Ö Ú ÒÒÓØ ×ÓÐÚ ÓÖ ÑÑ Ø ¬ Ð × × Ô Ö Ø Ðݺ Ì ÙÖÖ ÒØ ÑÔÐ Ñ ÒØ Ø ÓÒ × ØÛÓ Ð Ñ Ø Ø ÓÒ׺ Ö×ظ Ø ××ÙÑ × Ø Ø Ú ÖÝ ÑÑ Ø Ú ÐÙ Ø Ø ¬Ø× Ò Ú Ò ¬ Ð × Ð Ð Ø Ø ×¸ Ø Ö Ö ÒÓ ÓÐ × Ò Ø Ú ÐÙ ×Ô ÓÖ Ò ÑÑ Ø ¬Ð º Ì ×Ö¹ ×ØÖ Ø ÓÒ × ÒÓØ Ö Ð ÔÖÓ Ð Ñº Ë ÓÒ ¸ Ø Ó × ÒÓØ Ò Ð ÑÑ Ø ×Ø Ø Ö Ò Ó × ÑÙÐØ ÔÐ ÒÓÒ¹ ÓÒØ ÙÓÙ× Ø Ö Ò ×º ÁØ × ÓÙÐ ÒÓØ Æ ÙÐØ ØÓ ÜØ Ò Ö Ú ØÓ Ò Ð ×Ù ÑÑ Ø ×º\ ¿º¾º¿ ÂÙÑÔ ËÓÐÚ Ö\ Ñ ÒØ Ó Ø Ð Ð Ø Ø Ö ×ÙÐØ× Ò Ò Ó«× Ø Ó ¼µº Ì ×Ø ÖØ Ò ÔÓ ÒØ × ÓÙÒ Ý × Ö Ò ÓÖ Ð Ð ÔÐ Ñ ÒØ Ø Ø Ö ×ÙÐØ× Ò Ò Ò×ØÖÙ Ø ÓÒ ¸ Û Ö ÇÊ Ò Ò×Ø × Ø ÒØ ØÝ ÙÒ Ø ÓÒº ÁÒ ÓØ Ö ÛÓÖ ×¸ Ñ Ø ÙÑÔ× ØÓ « Ö ÒØ Ð Ð× ÖÓÙÒ Ø ÙÑÔ¸ Ò ÇÊ Ó Ø ÙÑÔ× Ò×Ø Ø ÓØ Ö× ØÓ ¬Ò ÓÒ Û Ó× Ó«× Ø ¬ Ð ÑÙ×Ø ÐÐ ¼³×º ¿º Ò Ø Ð Ð³× Ó«× Ø Ò Ø Ò×ØÖÙ Ø ÓÒ Ý Ñ Ø¹ ØÒ ÓÖÛ Ö ÙÑÔ Ù×Ø Ô ×Ø Ø ×Ø ÖØ Ò ÔÓ ÒØ ÓÖ Ø ÙÑÔº Ì × ØÛÓ Ò×ØÖÙ Ø ÓÒ× Û ÐÐ « Ö Ý × Ò Ð Ø¸ Û × Ø ÐÓÛ ×Ø Ø Ò Ø Ø Ö Ø¬ Ð º Ò Ø Ð Ð³× × Þ Ò Ø Ò×ØÖÙ Ø ÓÒ Ý Ñ Ø¹ Ø Ò Ò Ø Ú ¹Ó«× Ø Ð Ðº ××ÙÑ Ò Ø Ø Ö Ð ¹ Ø Ú ÙÑÔ× Ö Ò Ó Ù× Ò ØÛÓ×¹ ÓÑÔÐ Ñ ÒØ ´ÓÖ Ú Ò ÓÒ ×¹ ÓÑÔÐ Ñ Òص¸ Ø × Ð Ð × Ø× Ø Ø Ó Ø Ð Ðº Ï ××ÙÑ Ø Ø Ø Ð ¹ Ð × ÓÒØ ÙÓÙ× Ò Ø Ò×ØÖÙ Ø ÓÒ¸ Ò Ø Ø Ø ÓÒ× ×Ø× Ó Ø Ø× ØÛ Ò Ø Ð Ð³× Ò ÐÓÛ Ø׺ Ò ÐÐݸ Ø ÖÑ Ò ÓÛ Ø ÙÑÔ ×Ø Ò × ÒÓ Ý Ö Ö Ò Ò Ð Ð× Ø ÒÓÛÒ Ó«× Ø× Ò ÓÑÔ Ö Ò Ø ¬ Ð ³× Ú ÐÙ ØÓ Ø × ÐÓ ¹ Ø ÓÒ׺ Ï ÓÖ Ø ÓÐÐÓÛ Ò ØÖ Ò× ÓÖÑ ¹ Ø ÓÒ× ×Ù ØÖ Ø ÓÒ Ý ÓÒ×Ø Òظ ØÖÙÒ Ø ÓÒ Ó ØÖ Ð Ò Þ ÖÓ׸ ÓÖ Ú Ò Ð Ò Ø× ØÖÙÒ Ø º ÓÖ Ü ÑÔÐ ¸ ØÖÙÒ Ø ÓÒ Ó ØÖ Ð Ò Þ ÖÓ× ÖÓÑ ÝØ Ó«× Ø ÔÔ Ò× Ò ËÈ Ê ÙÑÔ Ò×ØÖÙ ¹ Ø ÓÒ׸ × Ò Ò×ØÖÙ Ø ÓÒ× Ö ÛÓÖ ¹ Ð Ò º ÓØ Ö ×ÓÐÚ Ö׸ Ø ÙÑÔ ×ÓÐÚ Ö ××ÙÑ × Ø Ø Ð × Ö ÓÒØ ÙÓÙ׺ ÁØ ÛÓÙÐ ÐÐ Ò Ò Û Ø ÒÓÒ¹ ÓÒØ ÙÓÙ× Ð Ð ¬ Р׸ Ù× Ó ØÓ Ò Ö Ø Ð Ð× Ø Ð Ö ×Ø Ò × ÖÓÑ\ º\ Ì ÙÑÔ ×ÓÐÚ Ö Ö Ú × Ø Ò Ó Ò ÓÖ Ö Ð Ø Ú ÙÑÔ Ø Ö Ø ¬ Ð × ´Ð Ð×µº ÂÙÑÔ× Ò Ð ×× ¬ Ò ØÛÓ Û Ý× ´½µ Ö Ð Ø Ú Ú׺ ×ÓÐÙØ ÙÑÔ× Ò ´¾µ ÙÑÔ× Ø Ø Ø ÑÑ Ø × Ú׺ Ø Ó× Ø Ø ÓÒÐÝ Ø Ð Ð׺ Ì ÙÑÔ ×ÓÐÚ Ö ¬Ò × Ò Ó Ò × ÓÖ Ö Ð ¹ Ø Ú ÙÑÔ× Ø Ø Ø Ð Ð× × ÓÔ Ö Ò ×º ÂÙÑÔ× Ø Ø ÔØ ÑÑ Ø ÓÔ Ö Ò × Ö Ò Ð Ý ÒÚÓ Ò Ø ÑÑ Ø ×ÓÐÚ Öº ×ÓÐÙØ ÙÑÔ× Ø Ø ÓÒÐÝ Ø Ð Ð× Ó ÒÓØ × Ñ ØÓ Ó ÙÖ Ò ÔÖ Ø º Ì «ÖÒ ØÛ Ò Ø ÙÑÔ ×ÓÐÚ Ö Ò Ø ÑÑ Ø ×ÓÐÚ Ö × Ø Ø Ø ÙÑÔ ×ÓÐÚ Ö ÑÙ×Ø Ò¹ Ö Ø × Ú ÐÙ × ´Ð Ð×µ « Ö ÒØÐݺ ÌÓ × Ø ÐÐ Ø× Ò Ò Ò¹ Ø ÑÑ Ø ¬ Ð ¸ Ø ÑÑ Ø ×ÓÐÚ Ö Ò Ñ Ø Ø ÑÑ Ø Ö ØÐÝ Ø ÙÑÔ ×ÓÐÚ Ö Ñ Ý Ú ØÓ ÔÐ Ð Ð ÓÙØ Ò Ò×ØÖÙ Ø ÓÒ× Û Ýº × Ö ×ÙÐظ Ø ÛÓÙÐ ÑÔÖ Ø Ð ØÓ ×ÓÐÚ ÓÖ Ð Ö Ó«× Ø× Ö ØÐݺ Ï ××ÙÑ Ø Ø Û Ö × ÙÑÔ× Ö ÒÓ Ù× Ò ØÛÓ×¹ ÓÑÔÐ Ñ Òظ ×Ó Ø Ø Û Ò ×ÓÐÚ ÓÖ Ø × Þ × Ó Ó«× Ø׺ Ö Ú ÓÑÔÙØ × Û Ø Ö ÙÑÔ × ×ÓÐÙØ ÓÖ Ö Ð Ø Ú Ý Ñ ØØ Ò ØÛÓ ÓÒ× ÙØ Ú ÙÑÔ× ØÓ Ø × Ñ Ø Ö Ø Ò ÓÑÔ Ö Ò Ø Ñ ØØ Ó Ú Ð٠׺ ×ÓÐÙØ ÙÑÔ× Û ÐÐ Ú ÒØ Ð Ø׸ × Ò ÓØ Ò×ØÖÙ Ø ÓÒ× Ò Ó Ø × Ñ Ø Ö Ø Ö ×׺ Ê Ð¹ Ø Ú ÙÑÔ× Û ÐÐ « Ö¸ × Ò Ø Ý Ö « Ö ÒØ ×¹ Ø Ò × ÖÓÑ Ø Ø Ö Ø Ò Ø Ù× Û ÐÐ Ú « Ö ÒØ Ó«× Ø Ú Ð٠׺ Ú Ò Ò Ò×ØÖÙ Ø ÓÒ Ø Ø × Ö Ð Ø Ú ÙÑÔ¸ Ø ×ÓÐÚ Ö ÑÙ×Ø ¬Ò Ø ÙÑÔ Ø Ö Ø ¬ Ð ³× Û Ø Ò Ó«× Ø Ò Ø Ò×ØÖÙ Ø ÓÒ¸ ×Ø ÖØ Ò ÔÓ ÒØ ´ ÓÛ Ñ ÒÝ ÝØ × ÙÑÔ Ó ¼ ÝØ × ØÙ ÐÐÝ ÙÑÔ× ÖÓÑ Ø ÙÑÔ Ò×ØÖÙ Ø ÓÒµ¸ Ò Ñ Ò ÑÙÑ ÙÑÔ × Þ º Ì Ø Ö Ø Ö ×× Ó Ø ÙÑÔ × Ø Ö Ø ×Ø ÖØ · ÒÓ ¬ Ð ¢ ÙÑÔ × Þ º ½º ¾º Ò Ø Ñ Ò ÑÙÑ ÙÑÔ × Þ Ý Ñ ØØ Ò ÙÑÔ× Ó ½¸ ¾¸ º º º ÝØ × ÙÒØ Ð Ø ÙÑÔ ¬ Ð Ò ×º Ò Ø ×Ø ÖØ Ò ÔÓ ÒØ ÓÖ Ø ÙÑÔ ´Ø ÔÐ ¹\ º\ Ä Ø Ð Ð¬ ØÓ Ð Ø Ò ÙÑÔ׺\ ¿º¿\ Í× Ö\ ÜØ Ò× ÓÒ×\ ËÓÑ Ò×ØÖÙ Ø ÓÒ × Ø× ´×Ù ×Ø Êŵ Ó ÒÓØ × Ø¹ × Ý ÐÐ Ó Ø ××ÙÑÔØ ÓÒ× Û Ú ×Ö º ÁÒ Ø ÓÒ¸ Ò ÓÖÖ Ø ×× Ñ Ð Ö× Ò ÔÖÓÚ Ò¹ ÓÖÑ Ø ÓÒ ØÓ Ö Ú º Ï Ú Ø Ù× Ö Ñ Ò ×Ñ× ØÓ Ö ×× Ø × ÔÖÓ Ð Ñ× Ø Ù× Ö Ò Ò ÓÖÑ ¹ Ö Ú Ó ÓÑÔÐ Ü ÑÑ Ø Ò Ó Ò ×¸ Ø ÐÐ Ø Û Ò Ö ×Ø Ö ¬ Ð Ú ÐÙ × Ñ Ý Ô Ò ÓÒ ÓØ Ö¸ Ò ÔÖÓÚ ÜÔÐ Ø ¬ Ð Û Ø × Û Ò Ò ×× Öݺ Ì Ð ½ Ð ×Ø× Ø ××Û Ö Û Ú Ò ØÓ Ù× Ø × Ñ Ò ×Ñ׺ Ì ÓÐÐÓÛ Ò × Ö ÔØ ÓÒ Ö Ñ ÒØ × ÓÛ× ÓÛ Ù× Ö Ò ×Ô Ý ÓÑÔÐ Ü Ò Ó Ò ×º Ì Ù× Ö ÔÖÓ¹ Ú × Ó Ø Ø ØÖ Ò×Ð Ø × ØÛ Ò Ø Ú ÐÙ Ø Ø × Ñ ÔÔ ÒØÓ Ø ÑÑ Ø ¬Ð Ò Ø ÒÔÙØ\ Î ÓÐ Ø ××ÙÑÔØ ÓÒ Ð × Ú ÐÙ × Ö Ò Ô Ò ÒØ\ Ö\ Ø ØÙÖ ÊÅ ÈÓÛ ÖÈ ÈÓÛ ÖÈ\ Ê\ Ë ÑÔÐ ØÖ Ò× ÓÖÑ×\ Ü ËÈ Ê ÊÅ\ ÁÒ×ØÖÙ Ø ÓÒ Ð ×× ×Ø Ö ÔÖ ¹»ÔÓ×ع Ò Ü Ö ×× Ò ÑÓ × × Ò Ò Ü Ö ×Ø Ö× ÑÙ×Ø « Ö ÄÓ ÑÙÐØ ÔÐ Ò×ØÖÙ Ø ÓÒ× Ö ×× Ö ×Ø Ö ÑÙ×Ø ÒÓØ Ø Ö Ø ÍÔ Ø Ò×ØÖÙ Ø ÓÒ× × Ö ×Ø Ö ÑÙ×Ø ÒÓØ ÕÙ Ð Ø Ö Ø Ö ×Ø Ö Ë Ð ØÓÖ Ò Ñ ÑÓÖÝ Ö ×× Ò Ë Ð × ÒÓ × ÐÓ Ë Ø Ö ÙÑ ÒØ ÑÙ×Ø Ú ½¼ ÐÓÛ Þ ÖÓ Ø× ÖØ Ò Ö ×× Ò ÑÓ × ÜÔ Ø Ó«× Ø¢\ Ì ÑÓ ×Ô Ö Ò\ Ð ½ Ü ÔØ ÓÒ× Ø Ø Û Ú ÓÙÒ ØÓ ÓÙÖ Ò Ó Ò ÑÓ Ðº Ö Ú ³× ÓÓ × Ð Ø Ð ÒØ× × ÐÝ ÜØ Ò Ø× Ð ØÓ Ò Ð Ø × × ×º ÓÖ ¬ Ð × Ø Ø Ô Ò ÓÒ ÓØ Ö¸ Ù× Ö× ÒÒÓØ Ø Ô Ò ÒØ Ö ×Ø Ö× Ò Ø Ö ¬ Ø ÓÒ¸ Ò ×ÙÔÔÐÝ ÙÒ Ø ÓÒ Ø Ø Ø × Ð ×Ø Ó ×ÝÑ ÓÐ Ö ×Ø Ö Ò Ñ × Ò Ö ØÙÖÒ× ÌÊÍ « Ø Ý Ð Ð ÓÑ Ò Ø ÓÒº Í× Ö× Ñ ×× Ò ØÖ Ò× ÓÖÑ Ø ÓÒ× Ý ÔÖÓÚ Ò ÙÒ Ø ÓÒ Ø Ø Ø × Ò ÑÑ Ø Ö ØÙÖÒ× Ø ØÖ Ò× ÓÖÑ Ú ÐÙ ¸ Ò ÒÒÓØ Ø Ò ÑÑ Ø × Ø Ø Ù× Ø × Ò Ó Ò Ò Ø ×Ô ¬ Ø ÓÒº ÈÖÓ ××ÓÖ ÐÔ ÊÅ ÅÁÈË ÈÓÛ ÖÈ ËÈ Ê Ü Ü ¹ « ÊÙÒ Ø Ñ ´Ñ ÒÙØ ×µ º¿ ¿º ¾º º º ¾ ¼º º × Ö ÔØ ÓÒ Ð Ò Ø ´Ð Ò ×µ ½¼ ¾¾ ½ ½ ¾¾½ ½¼\ Ø ØØ ×× Ñ Ð Ö ÜÔ Ø׺ ÁÒ Ø × Ü ÑÔÐ ¸ Ø Ü Ò×ØÖÙ Ø ÓÒ Ò Ó × Ø ÐÓ Ö Ø Ñ Ó Ø × Ð ØÓÖ Ø Ø × Ú Ò ØÓ Ø ×× Ñ Ð Öº ´Ì × Ü ÑÔÐ ÓÙÐ Ð×Ó Ò Ð ÝÑ Ò Ø × Ð ØÓÖ Ö ×Ø Ö ØÝÔ Ò ÒÙÑ Ö Ø Ò Ø ÔÓ×× Ð × Ð Ú Ð٠׺µ\ ± ÙÒ× ± Ò ÔÓÛ¾´ÙÒ× Ò Üµ Ö ØÙÖÒ ½ Ü\ ÓÔ× ¾ Ñ Ñ ¹¹ ²ÓÔ² Ö ½ Ö ×¸ ×Ô´ × Ö ×¸ Ò Ü Ò Ü Ö\ ׸ ×\ Ð\ ÔÓÛ¾µ\ Ì ÓÐÐÓÛ Ò Ü ÑÔÐ × ÓÛ× Ò ÓÖÑ Ø ÓÒ ÓÙØ ÒÓÒ¹ Ò Ô Ò ÈÓÛ ÖÈ Ò×ØÖÙ Ø ÓÒ× Ñ ÒØ ÓÒ Ö ÑÙ×Ø ÒÓØ Ø × Ñ ×Ø\ ± ÓÓÐ ÙÔ Ø ×Ô´ Ö ¶ Ö ×\ ÓÛ Ù× Ö ÔÖÓÚ × ÒØ ¬ Р׺ ÓÖ Ø ¸Ø × Ö ×Ø Ö Ø Ö Ø Ö ×Ø Ö Ö º\ Ì Ð ¾ Ì Ø Ñ Ø Ø × Ö Ú ØÓ ÖÙÒ Ø ÖÓÙ Ö Ø ØÙÖ ¸ Ò ÓÛ ÐÓÒ ÓÙÖ Ö Ø ØÙÖ × Ö Ô¹ Ø ÓÒ× Ö º Ü ¹ « × Ø ×Ù × Ø Ó Ü Û Ò ØÓ Ö Ø Ö Ø Ã « ³× ÂÁÌ ØÓ Ù× Ö Ú ¹ Ò Ö Ø Ñ Ø¹ Ø Ö׺\ Ø Ù¸ ØÐ Ù¸ Ø ¹¹ ²ÓÔ² Ö\ ¿º Í× Ò\ µ Ö × ½ ×ØÖ ÑÔ´Ö ¸ Ö µµ\ Ö ¶Ö Ö × ¼ ¸ ¶Ö ´ ×ØÖ ÑÔ´Ö ¸ Ö¼ µ Ö ØÙÖÒ ÄË Ð× Ö ØÙÖÒ ÌÊÍ ± Ð ÞÙ¸ Ð ÞÙ¸ Ð ²ÓÔ² ÙÔ Ø Ù¸ ÐÛÞÙ ¹¹ ×Ô Ê Ö ×¸\ ¸ Ø ×¸ ØÔÓ׸ ØÒ ¸ ÑÑ\ ¸ ØÚ ¸ ØÚ×\ ÖÚ\ ×Ô´Ê\ Ö\ ×µ\ Ò ÐÐݸ Ö Ú ÔÖÓÚ × ÓÓ × Ø Ø Ò Ð Ø Ù× Ö ØÓ ÓÚ Ö ÓÑ ×ÓÑ ×× Ñ Ð Ö Ù × Ø Ø Û Ú Ò ÓÙÒØ Ö º ÓÖ Ü ÑÔÐ ¸ ÆÍ × ÐÐÓÛ× Ø ËÈ Ê Î Ø Ò×ØÖÙ Ø ÓÒ ØÓ Ø Ò ÑÑ Ø Ø Ø × ØÓÓ Ð Ö º Ö Ú Ö ÔÓÖØ× Ø Ø ¬ Ð × ÓÚ Ö¹ Ð Ô¸ Ò Ø Ù× Ö Ò ÜÔÐ ØÐÝ Ø ÐÐ Ö Ú Ø ¬ Ð Û Ø Ó Ø× × ÓÐÐÓÛ×\ Ì Ð ¾ ×ÙÑÑ Ö Þ × Ø Ø Ñ × Ø Ø × ÓÖ Ö Ú ØÓ ÖÙÒ ÓÒ × Ú Ö Ð Ò×ØÖÙ Ø ÓÒ × Ø׸ Ò Ð×Ó × ÓÛ× Ø ÐÒ Ø Ó Ö Ú ³× ×Ô ¬ Ø ÓÒ׺ × Ø ÒÙѹ Ö Ó Ö Ø ØÙÖ × Ò Ø Ø Ð × ÓÛ׸ Ö Ú ³× ×¹ ×ÙÑÔØ ÓÒ× ×ÙÖÚ Ú Û ÐÐ ÙÒ Ö Ù× º Ì ××ÙÑÔØ ÓÒ× Ò ÓÙÖ ÑÓ Ð Ñ Ö Ú Ö ×ÓÒ ÐÝ ×غ ÊÅ × ×ÐÓÛ Ù× ×ÓÑ Ó Ø× Ò×ØÖÙ Ø ÓÒ Ö ×× Ò ÑÓ × Ú ÓÐ Ø Ø Ò Ô Ò Ò ××ÙÑÔØ ÓÒº × Ö ×ÙÐظ ×ÓÐÚ Ò Ø Ó× Ò×ØÖÙ Ø ÓÒ× Ø × Ò ÒÓÖ ¹ Ò Ø ÑÓÙÒØ Ó Ø Ñ ¸ Ù× Ö Ú ÑÙ×Ø ÐÐ ÓÑ Ò Ø ÓÒ× Ó Ö ×Ø Ö Ú Ð٠׺ Ü × ×ÐÓÛ Ù× Ó Ø Ð Ö ÒÙÑ Ö Ó Ò×ØÖÙ Ø ÓÒ× Ò Ö ×× Ò\ ÑÓ ×¸ × Û ÐÐ × Ø ×Ô Ð Ò Ó Ò × ÓÖ ÖØ Ò Ö ×Ø Ö׺ Ì ×Ù × Ø Ó Ø Ü ÁË Ò ×× ÖÝ ØÓ Ö Ø Ö Ø Ø Ã « ÂÎÅ³× ¾ ÂÁÌ Û × ×Ñ ÐÐ ÒÓÙ ØÓ ÖÙÒ ÕÙ Ðݺ Ï Ð Ù× Ò Ö Ú ØÓ Ö Ú Ö× ¹ Ò Ò Ö × Ú Ö Ð Ò¹ ×ØÖÙ Ø ÓÒ × Ø׸ Û Ú ÓÑ ÖÓ×× × Ú Ö Ð ÖÖÓÖ× ÓÖ Ò ÓÒ× ×Ø Ò × Ò × Ò Ú Ö ÓÙ× Ö Ø ØÙÖ Ð Ñ ÒÙ Ð׺ Ì ÓÐÐÓÛ Ò Ð ×Ø × Ö × Ø × ÖÖÓÖ× Ò Ò ÓÒ× ×Ø Ò ×¸ Ò ÑÓÒ×ØÖ Ø × Ø Ø Ö Ú ³× Ö Ú Ö× ¹ Ò Ò Ö Ò Ñ Ø Ó ÓÐÓ Ý Ò Ð×Ó Ú Û × Ù× ÙÐ Ø ×Ø Ò Ñ Ø Ó ÓÐÓ Ýº\ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯\ ÆÍ × Ó × ÒÓØ ×× Ñ Ð Ø ×ØÖÙ Ø ÓÒº ÆÍ ×\ ÐÔ\ Û\ Ò¹\ Ø Ø Ò Ñ Ø Ò×ØÖÙ Ø ÓÒ× ÒØÓ Ó Ù« Öº ¹ ÙÖ ¿ × ÓÛ× Ø ×ØÖÙ ØÙÖ Ð Ö Ø ÓÒ ÓÖ Ö Ú ³× ÓÙØÔÙغ ÙÖ × ÓÛ× × ÑÔÐ ×Ô ¬ Ø ÓÒ Ø Ø Ö Ú Ò Ö Ø × ÓÖ Ø ÅÁÈË Ö Ò×ØÖÙ Ø ÓÒ¸ Û Ù× × Ö ÔÓ Òغ Ò×ØÖÙ Ø ÓÒ ×Ô ¬¹ Ø ÓÒ × ØÖ Ò× ÓÖÑ ÒØÓ ÙÒ Ø ÓÒ ÓÖ Ñ ÖÓ Û Ó× Ö ÙÑ ÒØ× Ö Ò Ò Ü ÒØÓ Ø Ó Ù« Ö Ò Ø Ö ×Ø Ö׸ ÑÑ Ø ×¸ ÓÖ Ð Ð× Ø Ø Ö ÓÔ Ö Ò × ÓÖ Ø Ø Ò×ØÖÙ Ø ÓÒº Ì Ó Ó Ñ ÖÓ× ÐÐÓÛ× Ø ÓÑÔ Ð Ö ØÓ ÔÖÓÔ Ø ÓÒ×Ø ÒØ× Ô Ö Ñ Ø Ö׸ ×Ù × Ö ×Ø Ö Ú Ð٠׸ Ö ÒÓÛÒ Ø ÓÑÔ Ð ¹Ø Ñ º Ì ÓÐÐÓÛ Ò Ü ÑÔÐ × ÓÛ× Ø Ñ ÖÓ Ò Ö Ø ÓÖ Ø Ü Ð Ò×ØÖÙ Ø ÓÒ¸ Ò ÓÛ Ø × Ù×\ Ð ÖÖ ½´ Ó ¸ Ö ¸ Öص Ó ×Ø Ö ÙÒ× Ò × ÓÖØ ¼ ´¼Ü ¼¼½ ´´´´Ö µµ ½½µµ ´´´´Öصµ µµµ ¶´ÙÒ× Ò × ÓÖضµ´´ Ö ¶µ Ó µ ¼ Ó ´ÚÓ ¶µ´´ Ö ¶µ Ó · ¾µ Û Ð ´¼µ Ö »¶ Ñ Ø Ð ± Ð ÖÖ ½´ Ó Ü¸ ± Ü Ò Ù Ö¸ Ê Ó Ù Ü¸ Ê Ö ¶» ܵ Ò\ Ó × ÒÓØ Ò Ð Ø ÐÔ ÖÓÙÒ ¹ Ò »ØÖ ÔÔ Ò ÑÓ × Ó ­Ó Ø Ò ¹ÔÓ ÒØ ×ÕÖØ Ò¹ ×ØÖÙ Ø ÓÒ׺ Ó\ ÆÍ × ÓÒ ÅÁÈË × Ð ÒØÐÝ ØÖÙÒ Ø × Ø\ ×ÓÐÙØ\ Ö ×× × Ð Ö Ö Ø Ò ¾\ ØÓÔ Ø× Ø׺\ ÑÓ\ ÆÍ × Ó × ÒÓØ ÕÙ Ø\ Ø Ò ÊÅ\ Ò Ð × ØØ Ò Ø Ù× Ö Ö ×× Ò ÑÓ ÓÖÖ ØÐݺ\ ÆÍ × ÔØ× ÑÑ Ø × Ø Ø Ö ØÓÓ Ð Ö ÓÖ ËÈ Ê Ø Ò×ØÖÙ Ø ÓÒ׺ ÆÍ × Ó Ø Ò\ Ò\ ¹ Ø× Ò\ ÑÑ\ ÔØ× Ò¹ Ø ÔÓ× Ø Ú Ú ÐÙ × ÓÖ Ø ÓÔ Ö Ò ×º º ¸ × Ò ÓÖÖ Ø ÓÖ\ ÑØ ½ Ò\ Ë\ ÅÁÈË ÊÙÒ ¾¾ ¸ Ì Ð Ø ½º\ ÁÒ Ø ÊÅ Ñ ÒÙ Ð ½¿ ¸ Ö ×× Ò ÑÓ ¿ Ó Ö ×Ø Ö ÔÖ ¹»ÔÓ×ع Ò Ü Ò×ØÖÙ Ø ÓÒ× Ó ÒÓØ Ú Ø × Ñ Ð ×Ø Ö ×ØÖ Ø ÓÒ× × Ø Ó× × Ñ Ò×ØÖÙ Ø ÓÒ× Ò Ö ×× Ò ÑÓ ¾¸ ÐØ ÓÙ × Ò ÓÖ × Ø Ó× Ö ×ØÖ Ø ÓÒ׺ Ì ´Á ÐÔ Ñ ÒÙ Ð ¾ × Ö ÔØ ÓÒ Ó Ø ÚØ×Ø ÓÒÚ Ö× ÓÒµ Ò×ØÖÙ Ø ÓÒ × Ñ× Ò ÓÖÖ Ø¸ Ù× Ø Ð ×Ø× Ø »× ×ÙÆÜ ´ Î ÖÓÙÒ Ò ÑÓ µ × Ò ÓÔØ ÓÒº\ Í× Ò\ ¯\ ÖÚ\ ³× ÇÙØÔÙØ\ Ò ÑÔÓÖØ ÒØ ÑÓØ Ú Ø ÓÒ Ò ÙÐ Ò Ö Ú Û × ÓÙÖ × Ö ØÓ ÚÓ Ò ¹×Ô Ý Ò Ø Ü Ò¹ ×ØÖÙ Ø ÓÒ × Øº Ì × ×Ø ×Ø Û × Ò ÑÔÓÖØ ÒØ Ö ¹ ×ÓÒ Û Ý Û Ú ÒÓØ Ö Ø Ö Ø ØÛÓ Ó ÓÙÖ ÂÁÌ ×Ý×¹ Ø Ñ× ¸ ØÓ Ø Ü ¸ ×Ô Ø Ö Ô Ø Ö ÕÙ ×Ø׺ ÇÒ Ù× Ó Ö Ú ¹ Ò Ö Ø ×Ô ¬ Ø ÓÒ× × ØÓ ÒÖ Ø Ó Ñ ØØ Ö× ÖÓÑ Ø Ñº Ï Ú ÛÖ Ø¹ Ø Ò Ò Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø ÔÖÓ ×× × Ò×ØÖÙ Ø ÓÒ ×Ô ¬ Ø ÓÒ× Ò Ò Ö Ø × ÔÖÓ ÙÖ × ÓÖ Ñ ÖÓ×\ Ï Ø × ÑÔÐ ÙÖ ×Ø ×¸ Û Ö Ð ØÓ Ò Ö Ø ÙØÓÑ Ø ÐÐÝ Ø Ø Ò ÑÓ×Ø × × × × Æ¹ ÒØ Ò Ö Ð ×Ø Ó ÙÑ Ò ÛÓÙÐ ÛÖ Ø º Ì Ö Ö ØÛÓ ÐÐ Ò × Ò Ò Ö Ø Ò Æ ÒØ Ñ Ø¹ Ø Ö Ó º Ö×ظ Û ØÖÝ ØÓ Ô Ø ÒÙÑ Ö Ó Ö Ø ¹ ÑØ Ò Ø × Ø ÓÔ Ö Ø ÓÒ× ÓÒ Ø Ò×ØÖÙ Ø ÓÒ³× ÓÔ Ö Ò × ×Ñ Ðк Ë ÓÒ ¸ Û ØÖÝ ØÓ Ñ Ò Ñ Þ Ø ÒÙÑ Ö Ó ×ØÓÖ × ØÓ Ø Ó Ù« Öº ÓÖ Ö Ø ¹ ØÙÖ × Û Ø ÓÒ×Ø ÒØ Ò×ØÖÙ Ø ÓÒ Ð Ò Ø ×¸ ×Ù × ÐÐ ÊÁË Ö Ø ØÙÖ ×¸ ÓÙÖ Ò Ö Ø Ñ ØØ Ö× Ò ÙÖ ÓÒ Ñ ÑÓÖÝ ÛÖ Ø Ô Ö Ò×ØÖÙ Ø ÓÒ Ò Ö Ø º ÇÔ Ö Ò × ØÓ Ò Ò×ØÖÙ Ø ÓÒ Ö ÒÓØ ÐÛ Ý× ÒÓÛÒ Û ÒØ Ò×ØÖÙ Ø ÓÒ × Ò Ö Ø º ÝÒ Ñ Ó Ò Ö ØÓÖ׸ ÓÖ Ü ÑÔÐ ¸ Ó ÒÓØ ÒÓÛ Ø Ú ÐÙ Ó ÓÖÛ Ö ¹Ö Ö Ò Ð Ðº ËÙ Ð Ð ÑÙ×Ø Ô Ø Ð Ø Ö Ý × ÑÔÐ Ð Ò Ö¸ ÓÒ Ø ØÙ Ð Ú ÐÙ Ó Ø ÓÔ Ö Ò ÓÑ × ÒÓÛÒº Ö Ú Ð¹ ÐÓÛ× Ò×ØÖÙ Ø ÓÒ ÓÔ Ö Ò × ØÓ Ñ Ö ×Ó Ø Ø Ø Ý Ö ÒÓØ Ù× Ò Ø Ñ ØØ Ö Ñ ÖÓº ÁÒ×Ø ¸ Ø Ñ Ø¹ Ø Ö Ò Ö ØÓÖ Ò Ö Ø × Ò Ø ÓÒ Ð Ñ ÖÓ Ø Ø Ò ÐÐ ØÓ ¬ÐÐ Ò Ø ÓÔ Ö Ò º Ö Ú Ð ÒØ× Ò Ù Ð Ø Ö ÓÛÒ Ð Ò Ö× ÓÒ ØÓÔ Ó Ø × Ñ Ò ×Ѻ Ù Ò ÇÙÖ Ñ ØØ Ö Ò Ö ØÓÖ Ò Ñ Ø ÜØÖ Ò ÓÖÑ Ø ÓÒº Ö×ظ ÓÙÖ Ñ ØØ Ö Ò Ö ØÓÖ × Ð ØÓ Ò Ö Ø Ñ ØØ Ö× Ø Ø Ø Ú Ð ØÝ Ó Ø Ö Ö¹ ÙÑ ÒØ׺ Ì × ØÙÖ × Ù× ÙÐ ØÓ Ø Ù × × ÖÐÝ × ÔÓ×× Ð ÙÖ Ò ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÁÒ Ø ÓÒ¸ Ø Ò Ö ØÓÖ Ò Ð×Ó ÔÖÓ Ù Ñ ØØ Ö× Ò×ØÖÙ Ø ÓÒ Ø Ø ÔÖ ÒØ Ø ÜØÙ Ð × Ö ÔØ ÓÒ Ó ÒÖ Ø ÙÖ Ò ÝÒ Ñ Ó Ò Ö Ø ÓÒº Ó\ ×ØÖÙ Ø Ö Ö ÙÒ× ÙÒ× Ö ÙÒ×\ Ò×Ø ×Ô ¶ Ò×Ø ¶ ÑØ Ò × ÓÖØ Ò ÓÔ× Ò Ò ÝØ × ¶Ò Ñ ×Ù Ü Ò Ö ÓÔ Ñ × Å\ Ì Ë\ »¶ ×Ù\ Ü Ù×\ »¶ Ò×ØÖÙ Ø ÓÒ Ò Ñ »¶ ×× Ñ ÐÝ ÓÖÑ Ø »¶ ÓÔ Ö Ò ÓÙÒØ »¶ Ò×ØÖÙ Ø ÓÒ × Þ Ý Ñ ØØ Ö Ò Ö ØÓÖ »¶ ÓÔ Ó Ñ ×\ ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶»\ ×ØÖÙ Ø ÓÔ Ö Ò Ö ¶×ÝÑ ÓÔ »¶ ×ÝÑ ÓÐ Ò Ñ Ó ÓÔ Ö Ò ÒÙÑ ÓÔ ØÝÔ Ê ¸ ÁÅÅ ¸ Ä Ä Ê¸ Ä Ä ØÝÔ »¶ ÓÔ Ö Ò ØÝÔ Ø ØÝÔ Ò Ó Ò »¶ × ÑÑ Ø ØÖ Ò× ÓÖÑ ÙÒ× Ò ÐÓ »¶ ÐÓÛ ×Ø Ð Ð Ú ÐÙ Ó Ð ÙÒ× Ò Ò Ø× »¶ ÒÙÑ Ö Ó Ø× Ò Ð ÙÒ× Ò Ñ × Å Ê Ë »¶ Ð Ñ × ÒØ Ó × Ø »¶ Ó × Ø Ò Ò×ØÖÙ Ø ÓÒ × Ò ØÝÔ × Ò Ð »¶ × Ò ÓÖ ÙÒ× Ò Ð ÒØ Ö Ð Ø Ú Ó × Ø »¶ Û Ö Ö Ð Ø Ú ÙÑÔ× ×Ø ÖØ ÖÓÑ Ó × Ø ÖÓÑ Ò Ó ÙÑÔ ÒØ Û ÒØ× Ö »¶ Ò Ö Ø × Ô Ö Ø Ñ ØØ Ö ØÓ × Ø Ø × Ð ÓÔ× Å ÇÈË\ Ù×\ ÙÖ ¿ Ì ÒÓ Ò × Ö ÔØ ÓÒ Ø Ø Ö Ú ÓÙØÔÙØ׺ ÁØ Ò ÐÙ × Ø Ò×ØÖÙ Ø ÓÒ¸ ÓÖÑ ØØ Ò ×ØÖ Ò ØÓ Ò Ö Ø Ø Ò×ØÖÙ Ø ÓÒ¸ Ø Ò×ØÖÙ Ø ÓÒ Ñ × ¸ Ò Ð ×Ø Ó ÓÔ Ö Ò ×Ô ¬ Ø ÓÒ׺ Ø ØÝÔ × Ò ÒÙÑ Ø Ø Ö ÔÖ × ÒØ× ×ÓÑ × ÑÔÐ ØÖ Ò× ÓÖÑ Ø ÓÒ× ÓÒ ÑÑ Ø ×º Ì ÓÙØÔÙØ Ó Ö Ú ÓÙÐ ÑÓ ¬ ÓÖ Ù× Û Ø ÓØ Ö Ð Ò Ù ×º\ Ö ¸ ²ÓÔ² ÑÑ ¸ ½¸ ¸ ¸ ¼Ü ¸ ¼Ü¼¸ ¼Ü¼¸ ¼Ü¼¸ ¸ ÑÑ ¸ ÁÅÅ ¸ Á Æ̸ ¼¸ ½¼¸ ¼ ¸ ½ ¸ Á ÍÆËÁ Æ ¸ ¼¸ ¼ ¸\ »¶ Ò×ØÖÙ Ø ÓÒ Ò Ñ »¶ ×× Ñ ÐÝ ÓÖÑ Ø »¶ ÓÔ Ö Ò ÓÙÒØ »¶ Ò×ØÖÙ Ø ÓÒ × Þ »¶ ×Ù Ü Ù× Ý Ñ ØØ Ö Ò Ö ØÓÖ »¶ ÓÔ Ó Ñ × »¶ Ò Ñ Ó ÓÔ Ö Ò »¶ ØÝÔ Ó ÓÔ Ö Ò »¶ ÓÔ Ö Ò ØÖ Ò× ÓÖÑ Ø ÓÒ »¶ ÐÓÛ ×Ø Ð Ð Ú ÐÙ »¶ ÒÙÑ Ö Ó Ø× »¶ Ð Ñ × »¶ Ó × Ø Ò Ò×ØÖÙ Ø ÓÒ »¶ ÙÒ× Ò »¶ ÒÓÖ ÓÖ ÒÓÒ¹ ÙÑÔ× »¶ Ó ÒÓØ Ò Ö Ø Ò ÜØÖ Ñ ØØ Ö\ ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶»\ ÙÖ\ Ö Ú\ ¹ ÒÖ Ø\ ×Ô\ ¬ Ø ÓÒ ÓÖ Ø\ ÅÁÈË Ö\ Ò×ØÖÙ Ø ÓÒº\ Ì Ñ ØØ Ö× Ö Ð×Ó Ù× ÙÐ × Ñ Ò× Ó Ø ×ع Ò Ö Ú º ÓÖ Ò×ØÖÙ Ø ÓÒ¸ Û ÒÖ Ø Ø Ñ ØØ Ö Ò Ø ×Ø ÔÖÓ Ö Ñ Ø Ø ÒÚÓ × Ø Û Ø Ú Ò ×Ù × Ø Ó Ô Ö Ñ Ø Ö׺ Ì Ò×ØÖÙ Ø ÓÒ Ò¹ Ó Ò × ÒÖ Ø ÝØ Ñ ØØ Ö ÙÒ Ø ÓÒ Ö Ø Ò ÓÑÔ Ö ØÓ Ø ÓÙØÔÙØ Ò Ö Ø Ý Ø Ø Ö Ø ×¹ × Ñ Ð Öº Ì × ÔÖÓ ÙÖ ÐÐÓÛ× Ù× ØÓ Ø ×Ø Ö Ú Û Ø ÓÙØ ØÙ ÐÐÝ ÖÙÒÒ Ò Ó ÓÒ Ø Ø Ö Ø ÔРع ÓÖѺ Ö Ú ³× Ñ ØØ Ö Ò Ö ØÓÖ Ò ÖÓ××¹ ÓÑÔ Ð ØÛ Ò Ö Ø ØÙÖ × Û Ó× Ò ÒÒ ×× × Ñ Ø º ÌÓ ÑÓÒ×ØÖ Ø Ø Ø ÓÙÖ ØÓÓÐ× ÛÓÖ ¸ Û Ú Ö¹ Ø Ö Ø Ã « ³× ¾ Ü ÂÁÌ Ò ØÓ Ù× ÙØÓ¹ Ñ Ø ÐÐÝ Ò Ö Ø Ñ ØØ Ö× ÖÓÑ Ù×Ø ×Ù × Ø Ó Ø Ü ÁË º Ï Ö Ù Ø ÒÙÑ Ö Ó Ð Ò × Ò Ø Ò × Ö ÔØ ÓÒ ÖÓÑ ¾¸¼ ØÓ ½¸¾ º Ï Ð×Ó × ÓÚ Ö Ø Ø Ø ÓÖ Ò Ð Ó Ö× Ñ ×× × ÓÖØ Ö Ò¹ ×ØÖÙ Ø ÓÒ Ò Ó Ò × Ò ÓÒ × º Ê Ø Ö Ø Ò Ø ÂÁÌ ØÓÓ ÔÔÖÓÜ Ñ Ø ÐÝ ÓÒ Ý¸ Û Ò Ø× Ø Ø Ø Ñ ØØ Ö ÙÒ Ø ÓÒ× Ò Ö Ø Ý Ö Ú Ö Ù×¹ Ð Ò Ö Ð ÔÔÐ Ø ÓÒ׺ Ö Ú ¹ Ò Ö Ø Ñ ØØ Ö× Ò Ù× Ò × Ú Ö Ð ÓØ Ö Û Ý× ØÓ ×ÙÔÔÓÖØ ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÓÖ Ü ÑÔÐ ¸ Ø Ý Ò Ù× ØÓ ×ÙÔÔÓÖØ Ò ÓÒ¹ ×ØÖÙ Ø ÓÒ ÓÖ Ò Ö Ð¹ÔÙÖÔÓ× ÝÒ Ñ Ó ÒÖ ¹ Ø ÓÒ ×Ý×Ø Ñ× ×Ù ×ÚÓ Ò ½ º Ì × ×Ý×Ø Ñ× ÔÖÓÚ ×× Ñ ÐݹРÒØ Ö × ØÓ ÓÖ Ý¹ Ò Ñ Ó Ò Ö Ø ÓÒ¸ Ò Ò Ò Ó Ò Ò ÓÖÑ ¹ Ø ÓÒ ØÓ ØÙ ÐÐÝ Ò Ö Ø Ó º Ö Ú ÓÙÐ Ð×Ó Ù× ØÓ ÓÑÔÙØ Ø ÑÔÐ Ø × ÓÖ ÔÔÐ Ø ÓÒ¹×Ô ¬ ×Ý×Ø Ñ× ×Ù × È º Ì ÑÔÐ Ø × Ò ×Ô ¹ ¬ Ò Ø ÖÑ× Ó ×ÝÑ ÓÐ Ò×ØÖÙ Ø ÓÒ × ÕÙ Ò ×¸ ØÓ Ö Ú ØÓ Ø Ø ÓÖÖ ×ÔÓÒ Ò Ò ÖÝ Ò Ó Ö׸ Ò Ø Ò Ö Ò ÓÖÔÓÖ Ø ÒØÓ Ø ×Ý×Ø Ñº\ ÓÒ ÐÙ× ÓÒ×\ ÓÔØ Ñ Þ Ö׸ Ò Ð Ò Ö׺ Ù Ð Ö× Ó ×Ù ØÓÓÐ× Ö ÔÐ Ù Ý Ø Ò ØÓ Ö Ô Ø ÐÝ Ö ÑÔÐ Ñ ÒØ ÙÒ ¹ Ø ÓÒ Ð ØÝ ÓÒØ Ò Ò Ü ×Ø Ò ×Ó ØÛ Ö º ÓÖ ×ÓÑ ×Ý×Ø Ñ׸ Ø × ØÓÓ ÜÔ Ò× Ú ØÓ ÐÐ Ü ×Ø Ò ÔÖÓ Ö Ñ× ÝÒ Ñ Ó Ò Ö Ø ÓÒ ×Ý×Ø Ñ× ÒÒÓØ «ÓÖ Ø Ø Ñ ØÓ ÐÐ Ò ×× Ñ Ð Öº ÁÒ ÓØ Ö × ×¸ Ø ×Ó Ø¹ Û Ö × Ò Ò ÔÔÖÓÔÖ Ø ÓÖÑ Ò ÑÙ×Ø Ö ÛÖ Ø¹ Ø Ò ÖÓÑ × Ö Ø º ÓÖ Ü ÑÔÐ ¸ ÓÒ ÓÑÑÓÒ ØÖ Ø Ø ÓÑÑ Ö Ð ÓÑÔ Ò × Ù× ØÓ × ÓÙÖ Ø Ö ¹ Ô ÖØÝ Ú Ò ÓÖ× × ØÓ Ú ÔÖÓÔÖ Ø ÖÝ ×ÝÑ ÓÐ Ø Ð Ð ÝÓÙØ׸ Û Ò ÓÒ Ú ÖÝ ×Ó ØÛ Ö Ö Ð × ½ º Ì Ó×Ø Ó Ñ ÒÙ ÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö Ò Ø × ÓÖ¹ Ñ Ø× × ÓÖ ×ÓÑ ÑÔÐ Ñ ÒØÓÖ× ØÓ ÚÓ Ó Ø¹ Ð Ú Ð ÑÓ ¬ Ø ÓÒ׸ Ò ×Ô Ø Ó Ø ×ØÖÓÒ Ú ÒØ × ÓÖ ×Ù Ò ÔÔÖÓ º Ì ×ÓÙÖ Ó ÓÖ Ø ÙÖÖ ÒØ Ú Ö× ÓÒ Ó ¹ Ö Ú × Ö ÐÝ Ú Ð Ð Ø Ø ÓÐÐÓÛ Ò ÍÊÄ ØØÔ »»ÛÛÛº ׺ÙØ º Ù» Û Ð×ÓÒ» Ö Ú ºØ Öº Þº\ ÒÓÛÐ Ñ ÒØ×\ Ï Ø Ò ÂÓ Ò ÖØ Ö¸ Ú Ò¸ ÃÓ Ð Ö¸ Å Ü ÈÓÐ ØØÓ¸ È ØÖ ÌÙÐÐÑ ÒÒ¸ Ú Ö ÓÙ× ÒÓÒÝÑÓÙ× Ö Ö ×¸ Ò ÓÙÖ × Ô Ö Î ÖÒ È Ü×ÓÒ ÓÖ Ø Ö ÓÑÑ ÒØ× ÓÒ ÖÐ Ö Ö Ø× Ó Ø × Ô Ô Öº Ï Ð×ÓÒ À× Û × ×ÙÔÔÓÖØ Ò Ô ÖØ Ý Ò ÆË Ê Ê Û Ö ¸ Êß ½½ º Û×ÓÒ Ò Ð Ö Û × ×ÙÔ¹ ÔÓÖØ Ò Ô ÖØ Ý ÊÈ ÓÒØÖ Ø Å ¼ ß ß ß ¿¿ Ò Ý Ì ÖÑ Ò ÐÐÓÛ× Ôº Ó Ñ Ö Û × ×ÙÔÔÓÖØ Ý ÊÈ ÓÒØÖ Ø ¿¼ ¼¾ß ß½ß ¼ ¼¿º\ Ê Ö Ò ×\ ½\ Ì Ö Ú ×Ý×Ø Ñ Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ Ò¹ Ó Ò × ÖÓÑ Ø ×Ý×Ø Ñ ×× Ñ Ð Öº Í× Ö× Ò ÓÒÐÝ Ú ×× Ñ ÐÝ¹Ð Ú Ð Ò ÓÖÑ Ø ÓÒ ÓÙØ Ø Ò×ØÖÙ ¹ Ø ÓÒ× ÓÖ Û Ø Ý Û ÒØ Ò Ó Ò ×¸ Ò ÒÓØ ÐÓÛ¹ Ð Ú Ð Ò ÓÖÑ Ø ÓÒ ÓÙØ Ø¬ Ð Ð ÝÓÙغ Ö Ú ×Ù ¹ ×× ÙÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × ÓÒ Ø ËÈ Ê ¸ ÅÁÈ˸ ÐÔ ¸ ÊŸ ÈÓÛ ÖÈ ¸ Ò Ü º ÁÒ Ø Ð ×Ø × ¸ Ø Ò Ð × Ú Ö Ð ¹× Þ Ò¹ ×ØÖÙ Ø ÓÒ׸ Ð Ö Ò×ØÖÙ Ø ÓÒ× ´½ ÝØ ×µ¸ ÑÙÐØ ÔÐ Ò¹ ×ØÖÙ Ø ÓÒ Ò Ó Ò × Ø ÖÑ Ò Ý ÓÔ Ö Ò × Þ ¸ Ò ÓØ Ö ÁË ØÙÖ ×º × ÔÖÓÓ Ó Ø× ÙØ Ð Øݸ Û Ú Ù ÐØ Ó Ñ ØØ Ö Ò Ö ØÓÖ ÓÒ ØÓÔ Ó Ö Ú º Ï ÔÐ Ò ØÓ ÜØ Ò Ö Ú ³× Ø Ò ÕÙ × ØÓ Ö Ú Ö× ¹ Ò Ò ÖÓ Ø Ó ¬Ð ÓÖÑ Ø׸ Ò ÐÙ Ò Ù ¹ Ò Ò ÐÒ Ò ÓÖÑ Ø ÓÒº ËÙ Ò ÓÖÑ Ø ÓÒ Û ÐÐ Ò Ð Ù× ØÓ Ù Ð × Ø Ó Ö Ú Ö× ¹ Ò Ò Ö ØÓÓÐ׸ Ò ÐÙ Ò Ú Ö× ÓÒ× Ó ÌÇÅ ¾½ ¸ ÝÒ Ñ Ð Ò Ò Ð ¹ Ö Ö × ½½ ¸ Ó Ø¹Ð Ú Ð × Ò ÓÜ Ö× ¾¿ ¸ Ü ÙØ Ð\ º ÓÐÐ Ö º Ê Ú Ö× ÒØ ÖÔÖ Ø Ø ÓÒ · ÑÙØ Ø ÓÒ Ò ÐÝ× × ÙØÓÑ Ø Ö Ø Ö Ø Ò º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÂÙÒ ½ º º º ÓÑÑ ØØ º ÐÔ Ö Ø Ð ÈÖ ×׸ Ø Ö Å Ò٠к\ Ø ØÙÖ Ê Ø ÓÒ¸ ½ ÖÒ º\ ¾ ¿\ º ÓÒ× Ð Ò º ÆÓ Ðº Ò Ö Ð ÔÔÖÓ ÓÖ ÖÙÒ¹Ø Ñ ×Ô Ð Þ Ø ÓÒ Ò Ø× ÔÔÐ Ø ÓÒ ØÓ º ÁÒ ÈÖÓ º Ó ¾¿Ö ÈÇÈĸ Ëغ È Ø Ö× ÙÖ ¸ ĸ  Һ ½ º Ⱥ ÙØ× Ò º Ë «Ñ Òº Æ ÒØ ÑÔÐ ¹ Ñ ÒØ Ø ÓÒ Ó Ø ËÑ ÐÐØ Ð ¹ ¼ ×Ý×Ø Ñº ÁÒ ÈÖÓ º Ó ½½Ø ÈÇÈĸ ÔÔº ¾ ß¿¼¾¸ Ë ÐØ Ä Øݸ Í̸  Һ ½ º Àº ÑÑ ÐÑ ÒÒ¸ º¹Ïº Ë ÖÓ Ö¸ Ò Êº Ä Ò Û Öº Ò Ö ØÓÖ ÓÖ Æ¹ ÒØ Ò ×º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ¾¾ ß¾¿ ¸ ½ º\ º Ò Ð Ö Ò Ïº À× º ÊÁÎ ØÓÓÐ Ø Ø ÙØÓÑ Ø ÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ Ò¹ Ó Ò ×º ÁÒ ÈÖÓ º Ó Æ ÅǸ Ó×ØÓÒ¸ Å ¸  Һ ¾¼¼¼º º Ò Ð Ö Ò Åº Ã × Ó º È ×ظ ­ Ü ¹ Ð Ñ ×× ÑÙÐØ ÔÐ Ü Ò Ù× Ò ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÁÒ ÈÖÓ º Ó ËÁ ÇÅÅ ½ ¸ ÔÔº ¿ß ¸ ËØ Ò ÓÖ ¸ ¸ ÍË ¸ Ù º ½ º º ʺ Ò Ð Öº Ú Ó Ö Ø Ö Ø Ð ¸ ÜØ Ò× ¹ Ð ¸ Ú ÖÝ ×Ø ÝÒ Ñ Ó Ò Ö Ø ÓÒ ×Ý×Ø Ñº ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ½ ¼ß½ ¼¸ È Ð Ð¹ Ô ¸ È ¸ ÍË ¸ Å Ý ½ º ź ÖÒ Ò Þ Ò Æº Ê Ñ× Ýº ÙØÓÑ Ø Ò Ó Ò×ØÖÙ Ø ÓÒ ×Ô ¬ Ø ÓÒ׺ ÁÒ ÈÖÓ º Ó Á Ë ¸½ º º Ö Òظ ź È Ð ÔÓ× ¸ ź ÅÓ ¸ º Ñ Ö׸ Ò Ëº Ö׺ Ò Ú ÐÙ Ø ÓÒ Ó ×Ø ÖÙÒ¹Ø Ñ ÓÔØ Ñ Þ Ø ÓÒ× Ò Ý º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ¾ ¿ß¿¼ ¸ ØÐ ÒØ ¸ ¸Å ݽ º\ ½\ ƺ Ê Ñ× Ý Ò Åº ÖÒ Ò Þº Æ Û Â Ö¹ ×Ý Ñ Ò ¹ Ó ØÓÓÐ Ø Ö Ø ØÙÖ ×Ô ¬¹ Ø ÓÒ׺ ØØÔ »»ÛÛÛº ׺ ÖÚ Ö º Ù» ÒÖ»¹ ØÓÓÐ Ø»×Ô ×»×Ô ×ºÔ׸ ÆÓÚº ½ º\ ¾¼ ƺ Ê Ñ× Ý Ò Åº º ÖÒ Ò Þº Ì Æ Û Â Ö× Ý Ñ Ò ¹ Ó ØÓÓРغ ÁÒ ½ Ï ÒØ Ö ÍË ÆÁ ¸ º½ º ¾½ º ËÖ Ú ×Ø Ú Ò º Ù×Ø º ØÓÑ ¹ ×Ý×Ø Ñ ÓÖ Ù Ð Ò Ù×ØÓÑ Þ ÔÖÓ Ö Ñ Ò ÐÝ× × ØÓÓÐ׺ ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ½ º º ËÛ ØÑ Òº Ë Ñ Ò¸ ½ º\ ÅÁÈË ÊÙÒº ÅÓÖ Ò Ã Ù ¹\ ¾¾\ ½¼\ ¾¿ ʺ Ï ¸ ˺ ÄÙ Ó¸ ̺ Ò Ö×ÓÒ¸ Ò Ëº Ö ¹ Ѻ Æ ÒØ ×Ó ØÛ Ö ¹ × ÙÐØ ×ÓÐ Ø ÓÒº ÁÒ ÈÖÓ º Ó Ø ÓÙÖØ ÒØ Å ËÇËȸ ÔÔº ¾¼¿ß ¾½ ¸ × Ú ÐÐ ¸ Æ ¸ ÍË ¸ º ½ ¿º ¾ ¾ º Ï Ðк ËÝ×Ø Ñ× ÓÖ Ð Ø Ç ½ ÏÓÖ × ÓÔ ÓÒ Ó Ó ÑÓ ¬ Ø ÓÒº Ò Ö Ø ÓÒ¸ ½ ½º Òº\ ½½ Ϻ Ϻ ÀÓ Ò Êº º ÇÐ××ÓÒº Ò ÔÔÖÓ ØÓ ÒÙ Ò ÝÒ Ñ Ð Ò Ò º ËÓ ØÛ Ö ÈÖ Ø Ò ÜÔ Ö Ò ¸ ¾ ´ µ ¿ ß¿ ¼¸ ÔÖº ½ ½º ½¾ ͺ ÀÓÐÞÐ Ò º ÍÒ Öº ÇÔØ Ñ Þ Ò ÝÒ Ñ ÐÐݹ ×Ô Ø ÐÐ× Û Ø ÖÙÒ¹Ø Ñ ØÝÔ º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ¿¾ ß ¿¿ ¸ ÇÖÐ Ò Ó¸ ÐÓÖ ¸ ÂÙÒ ½ º ½¿ ½ ºÂ Ö¸ ØÓÖº ÊÅ Ö Ø ØÙÖ Ê Å Ò٠к ÈÖ ÒØ À Ðи ½ º\ ÖÒ\ ̺ Ï Ð Ò×ÓÒº à « ß Â Ú Ú ÖØÙ Ð Ñ ØØÔ »»ÛÛÛºØÖ Ò×Ú ÖØ٠к ÓѺ\ º ʺ Ä ÖÙ× Ò Ìº Ðк Ê ÛÖ Ø Ò Ü ÙØ Ð ¬Ð × ØÓ Ñ ×ÙÖ ÔÖÓ Ö Ñ Ú ÓÖº ËÈ ¸ ¾ ´¾µ ½ ß¾½ ¸ ½ º ź Ä ÓÒ Ò Èº Ä º ÇÔØ Ñ Þ Ò ÅÄ Û Ø ÖÙÒ¹ ØÑ Ó Ò Ö Ø ÓÒº ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ Šݽ º ˺ ÄÙ Óº È Ö×ÓÒ Ð ÓÑÑÙÒ Ø ÓÒº Í× Ó ÙÒ¹ Ó ÙÑ ÒØ ÔÖÓÔÖ Ø ÖÝ ÓÖÑ Ø× × Ø Ò ÕÙ ØÓ ÑÔ Ø Ö ¹Ô ÖØÝ Ø ÓÒ׸ Ù º ½ º Áº È ÙÑ ÖØ º ÝÒ Ñ Ó Ò Ö Ø ÓÒ ÓÖ Ò ··º ØØÔ »»ÛÛÛ¹×ÓÖº ÒÖ º Ö»¹ ÔÖÓ Ø×»ÚÚÑ» »¸ Å Öº ½ º ź ÈÓÐ ØØÓ¸ Ϻ À× ¸ º Ò Ð Ö¸ Ò Åº º Ã × Ó º Ò Ø Ð Ò Ù Ò Óѹ Ô Ð Ö ÓÖ ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÌÇÈÄ Ë¸ ¾½´¾µ ¿¾ ß¿ ¸ Å Öº ½ º\ ½\ ½\ ½\ ½\ ÅÁÈË\ × Ö ÔØ ÓÒ\ Ö Ò Ö Ò\ ¹ ²ÓÔ² ²Ð в ¹ ²ÓÔ² Ö × ÓÒ ¸ ²Ð ÓÔÖÓ ¼ и\ в ¾ и\ ± ± Ö\ Ö ¶\ Ö\ Ø Ú\ º× Ø ÒÓÖ ÓÖ º× Ø ÒÓ Ø Ò\ Ö Òº× Ø ÒÓÑ\ ÖÓ Ò\ »» Ø × Ö ¼ ¸ ¼Ø¸ ¾ØÐ Ö Ò\ ××ÓÖ Ö Ò × ¼Øи ¾ ¸ ¾Ø¸ Ò ØÛÓ Ö Ò ¸\ ×\ ´ °¼¸ °½¸ °¾¸ °¿¸ ° ¸ °½¼¸ °½½¸ °½¾¸ °½¿¸ °½ ¸ °½ ¸ °¾¼¸ °¾½¸ °¾ ¸ °¾ ¸ °¾ ¸ °¾ ¸ × ´ ° ° ° ° ° ´ ° ° ¼¸ ° ½¸ ° ¸ ° ¸ ° ½ ¸ ° ½ ¸ ¾½¸ ° ¾¾¸ ¾ ¸ ° ¿¼¸ ¼¸ ° ¸ °\ ° ¸ ° ¸ ° ¸ ° ¸ ° ¸ °½ ¸ °½ ¸ °½ ¸ °½ ¸ °¾¾¸ °¾¿¸ °¾ ¸ °¾ ¸ °¿¼¸ °¿½ µ ¸ ° ° ½¾¸ ¸ ° ½ ¸ ° ¾ ¸ ° ¸ ¸ ° ¸ ° ¸ ½¿¸ ° ½ ¸ ° ¾¼¸ ° ¾ ¸ ° ¾ ¸ ¸ ° ¸ ²ÓÔ² ÓÒ × ¼¸\ »» Ø × Ò×ØÖÙ Ø ÓÒ× ÓÑ ½ ¸ ½Ø¸ ½ и ½ØÐ º×¸ Úº ¹¹ Ñ ¹¹\ Ð ÚÓÖ× Ö Ò\ º ¸ ×Ù º×¸ ×Ù º ¸ ÑÙк׸ ÑÙк ¸ ں׸ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × Ö × ×\ Ö\ ¾¸ ° ¿¸ ° ½¼¸ ° ½½¸ ° ½ ¸ ° ½ ° ¾ ¸ ° ¾ ° ¿½ µ ½¸ ° µ\ ½¸ Ñ ½¸ ÑØ ½¸ Ø ½ ²ÓÔ² Ö Ø Ö ×¸ Ö × Ö\ ÓÒ\ ¾¸ °\ ¿¸ °\ ÒÓÔ¸ ×ÝÒ ¸ ØÐ Ö¸ ØÐ Û ¸ ØÐ ÛÖ¸ ØÐ Ô¸ ÑÓÚ ¸ ÑÓÚØ ¹¹ Ö¸ ÐÖ¸ Ñ ²ÓÔ² Ö ¸ ÑØ Ö ×¸ Ö × Ö\ Ö Ø ¹¹ ׸ Ö\ ×ÕÖغ׸ ×ÕÖغ ¸ ׺׸ ׺ ¸ ÑÓں׸ ÑÓÚº ¸ Ò º×¸ Ò º ¸ ÖÓÙÒ ºÐº×¸ ÖÓÙÒ ºÐº ¸ ØÖÙÒ ºÐº×¸ ØÖÙÒ ºÐº ¸ кк׸ кк ¸ ÐÓÓֺк׸ ÐÓÓֺк ¸ ÖÓÙÒ ºÛº×¸ ÖÓÙÒ ºÛº ¸ ØÖÙÒ ºÛº×¸ ØÖÙÒ ºÛº ¸ кۺ׸ кۺ ¸ ÐÓÓֺۺ׸ ÐÓÓÖºÛº ¸ Ö Ôº×¸ Ö Ôº ¸ Ö×ÕÖغ׸ Ö×ÕÖغ ¸ Úغ׺ ¸ Úغ׺۸ Úغ׺и Úغ º×¸ Úغ ºÛ¸ Úغ ºÐ¸ Úغۺ׸ Úغۺ ¸ Úغк׸ Úغк ¹¹ ²ÓÔ² Ö Ö ×¸ Ö × Ö × ÑÓÚ º×¸ ÑÓÚغ׸ ÑÓÚ º ¸ ÑÓÚغ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × ÑÓÚ޺׸ ÑÓÚÞº ¸ ÑÓÚҺ׸ ÑÓÚÒº ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × Ö ÓÒ ×\ ¸ Ñ ÐÓ¸ ÑØÐÓ ¹¹\ ²ÓÔ² Ö × Ö Ñ ¾¸\ ÐÖ¸ Ø ¸ Ø Ù¸ ØÐظ ØÐØÙ¸ Ø Õ¸ ØÒ ¸ Ñ ¼¸ ¼¸ ÑØ ¼¸ ÑØ ¼¸ Ø ¼¸ ½¸ ÑØ ½¸ Ñ ¾¸ ÑØ ¾¸ Ø ¾¸ ÑÙÐظ ÑÙÐØÙ¸ ÑÙÐظ ÑÙÐØÙ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö × Ö × ×Ðи ×Ö ¸ ×Öи ×Ðи ×Öи ×Ö ¸ ×Ðп¾¸ ×Ö ¿¾ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ ÑÑ\ ×Öп¾¸\ ×ÐÐÚ¸ ×ÖÐÚ¸ ×Ö Ú¸ ÑÓÚÞ¸ ÑÓÚÒ¸ ×ÐÐÚ¸ ×ÖÐÚ¸ ×Ö Ú¸ ¸ Ù¸ ×Ù ¸ ×Ù Ù¸ Ò ¸ ÓÖ¸ ÜÓÖ¸ ÒÓÖ¸ ×Ðظ ×ÐØÙ¸ ¸ Ù¸ ×Ù ¸ ×Ù Ù ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × Ö × »» ÅÁÈË ×× Ñ Ð Ö× »» Ø × ×ÝÒØ Ü × »» Ò×ØÖÙ Ø ÓÒ× Ó Ú¸ ÚÙ¸ Ú¸ ¹¹ ²ÓÔ² °¼ ¸ Ö Ö ¸ ¸ ×Ý× Ð ¹¹ ÐÐ ¹¹ ²ÓÔ² ²Ð Ù× Ú × Ñ ÖÓ ÓÛ Ø Ö Ð Ö Û Ö Ø × Ñ Ò Ñ × Ò ÚÙ Û Ö ×¸ Ö × Ö × ²ÓÔ² в Þ Ð¸ ØÞ ÐØÞ Ðи ÑÑ\ º º×¸ º º ¸ ºÙҺ׸ ºÙÒº ¸ º պ׸ º Õº ¸ ºÙ պ׸ ºÙ Õº ¸ ºÓÐغ׸ ºÓÐغ ¸ ºÙÐغ׸ ºÙÐغ ¸ ºÓÐ º×¸ ºÓÐ º ¸ ºÙÐ º×¸ ºÙÐ º ¸ º× º×¸ º× º ¸ º× պ׸ º× Õº ¸ ºÒ к׸ ºÒ к ¸ ºÐغ׸ ºÐغ ¸ ºÒ º×¸ ºÒ º ¸ ºÐ º×¸ ºÐ º ¸ ºÒ غ׸ ºÒ غ ¹¹ ²ÓÔ² Ö ÓÒ ¸ Ö Û Ö ×¸ Ö × Ö × »» Ø ×× Ñ Ð Ö ÜÔ Ø× Ô Ö ÒØ × × ÐÛÜ ½¸ Ð Ü ½¸ ×ÛÜ ½¸ × Ü ½ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö × ´ Ö × Ö\ × µ\ Ò Ö Ø\ »» ÔÖ Ø Ò×ØÖÙ Ø ÓÒ× Û Ø ÒØ× ÔÖ ¹¹ ²ÓÔ² Ö ÒØ׸ ÑÑ ´ Ö Û Ö × µ ÔÖ Ü ¹¹ ²ÓÔ² Ö ÒØ׸ Ö Û Ö × ´ Ö × Ö ÒØ× ´ ¼¸ ½¸ ¸ ¸ ¸ µ Ñ º×¸ Ñ º ¸ Ñ×Ù º×¸ Ñ×Ù º ¸ ÒÑ ÒÑ×Ù º×¸ ÒÑ×Ù º ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Ö Ö ×¸ Ö × Ð Ð¸ Ð Ö¸ Ð ¸ Ð ¸ × ¸ ×Ûи ×Û¸ × Ð¸ × ¸ ×Û ¾¸ × ¸ × ¹¹ ²ÓÔ² Ö Ö º×¸ ÒÑ Ö\ × µ º ¸ Ö ×\ ÐØÞ¸ Þ¸ ÐØÞи Þи ÐØÞ Ð¸ Þ Ðи Ò Þи Ð Þи ØÞи Ð Þ¸ ¹¹ ²ÓÔ² Ö × Ö ×¸ ²Ö ² ²Ð в Ø ¹¹ ¸ Ø Ù¸ ØÐØ ¸ ØÐØ Ù¸ Ø Õ ¸ ØÒ ²ÓÔ² Ö × Ö ×¸ ÑÑ Ò Ð ×¸ Ö Ø Ö ×¸ ²Ð в\ ׸ Ö Ø\ ÐÛи ÐÛ¸ Ð Ù¸ Ð Ù¸ ÐÛÖ¸ ÐÛÙ¸ × ¸ × Ö¸ ×ÛÖ¸ Ðи ÐÛ ¾¸ ÐÐ ¸ Ð ¾¸ Ð ¸ ¾¸ × ×¸ ²Ö ² ÑÑ ´Ö Û Ö ×µ ×µ\ Õ¸ Ò ¸ Õи ¹¹ ²ÓÔ² Ö × Ö\ к׸ к ¸ ׺׸ ×Û ½¸ ׺ ¸ × ½ ¹¹ ²ÓÔ² Ö Ö ×¸ ÑÑ ´Ö Û Ö\ ¸ Ù¸ ×ÐØ ¸ ×ÐØ Ù¸ ¹¹ ²ÓÔ² Ö Ö ×¸ ²Ö ² ¸ »» Û »» Ò Ò Ù ¹¹ ²ÓÔ² Ö ×\ Ò ¸ ÓÖ ¸ ÜÓÖ ¸ ÐÙ ÑÑ Ö ×¸ Ö Û Ö ×¸ ²Ö Ò Ý Ù× Ø × Ò Ð ² ÑÑ\ ¹¹ ²ÓÔ² Ö ÓÔ׸ ÑÑ ´Ö Û Ö ×µ ÓÔ× ´ ¼¸ ½¸ ¾¸ ¿¸ ¸ ¸ ¸ ¸ ¸ ¸ ½¼¸ ½½¸ ½¿¸ ½ ¸ ½ ¸ ½ ¸ ½ ¸ ½ ¸ ¾¼¸ ¾½¸ ¾¿¸ ¾ ¸ ¾ ¸ ¾ ¸ ¿¼¸ ¿½ µ\ Ò Ø Ö ÒØ ÔÐ\ ÓÖÑ ÓÒ × ´ ÒÓØ\ ÖÖÓÛµ", ["dawson-engler/tse-magik.ps.gz"] = "Interface Compilation:\ Steps toward Compiling Program Interfaces as Languages\ Dawson R. Engler\ Computer Science Laboratory\ Stanford University\ Stanford, CA 94305, U.S.A\ engler@stanford.edu", ["dc-cooper/Cooper.djvu"] = "5 \ Theorem Proving in Arithmetic without \ Multiplication \ D.C. Cooper \ Department of Computer Science \ University College of Swansea \ INTRODUCTION \ A considerable amount of effort has been expended in the last ten years in \ the field known as 'mechanical theorem proving'. Original motivation in \ this area was primarily the attempt to prove interesting theorems in mathe- \ matics although applications in other areas were considered- see, for \ example, McCarthy (1958), where application to more general problem \ solving is made, and W.S. Cooper (1964), where the need for a theorem \ proving system in information retrieval was considered. More recently \ other areas have arisen such as robotology, automatic program construction \ and proofs of correctness of programs. Most work has been done in the first \ order predicate calculus, but at various times pleas have been made not only ", ["dennis-ritchie/chist.pdf"] = "The Development of the C Language\ Dennis M. Ritchie Bell Labs/Lucent Technologies Murray Hill, NJ 07974 USA dmr@bell-labs.com", ["derek-dreyer/f-ing-tldi.pdf"] = "F-ing Modules\ Andreas Rossberg\ Claudio V. Russo\ Derek Dreyer\ MPI-SWS\ rossberg@mpi-sws.org\ Microsoft Research\ crusso@microsoft.com\ MPI-SWS\ dreyer@mpi-sws.org", ["derek-dreyer/mixins-icfp08.pdf"] = "Mixin’ Up the ML Module System\ Derek Dreyer\ Andreas Rossberg\ Max Planck Institute for Software Systems (MPI-SWS)\ {dreyer,rossberg}@mpi-sws.mpg.de", ["derek-dreyer/tshom-tr.pdf"] = "A Type System for Higher-Order Modules (Expanded Version)\ Derek Dreyer Karl Crary December 2002\ CMU-CS-02-122R\ Robert Harper\ School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213\ This report refines and supersedes the original version published in July 2002 as CMU Technical Report CMU-CS-02-122.", ["derek-dreyer/tshom-tr.ps"] = "A Type System for HigherOrder Modules\ (Expanded Version)\ Derek Dreyer Karl Crary Robert Harper\ December 2002\ CMUCS02122R\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213\ This report refines and supersedes the original version published in July 2002 as CMU Technical Report\ CMUCS02122.", ["derek-dreyer/type-classes.pdf"] = "Modular Type Classes\ (Draft of April 8, 2006)\ Derek Dreyer\ Toyota Technological Institute at Chicago dreyer@tti-c.org\ Robert Harper\ Carnegie Mellon University rwh@cs.cmu.edu\ Manuel M.T. Chakravarty Gabriele Keller\ University of New South Wales {chak,keller}@cse.unsw.edu.au", ["derek-oppen/prettyprinting.pdf"] = "Prettyprinting\ DEREK C. OPPEN Stanford University\ An algorithm for prettyprinting is given. For an input stream of length n and an output device with linewidth m, the algorithm requires time O(n) and space O(m). The algorithm is described in terms of two parallel processes: the first scans the input stream to determine the space required to print logical blocks of tokens; the second uses this information to decide where to break lines of text; the two processes communicate by means of a buffer of size O(m). The algorithm does not wait for the entire stream to be input, but begins printing as soon as it has received a full line of input. The algorithm is easily implemented. Key Words and Phrases: prettyprinting, formating, paragraphing, text editing, program manipulation CR Category: 4.12\ 1. INTRODUCTION\ A prettyprinter t a k e s a s i n p u t a s t r e a m o f c h a r a c t e r s a n d p r i n t s t h e m w i t h\ aesthetically appropriate the following stream: indentations and line breaks. As an example, consider", ["didier-remy/mlf.dvi"] = " MLF\ Raising ML to the Power of System F\ Didier Le Botlan and Didier R#my\ INRIA-Rocquencourt\ 78153 Le Chesnay Cedex, France\ -D id i er . Le _ Bo t la n ,D i di e r. R em y \"@ in r ia . fr", ["doaitse-swierstra/AFP3.pdf"] = "Designing and Implementing Combinator Languages\ S. Doaitse Swierstra1 , Pablo R. Azero Alcocer1 , and Jo~o Saraiva2,1 a\ 1\ Department of Computer Science, Utrecht University, P.O.Box 80.089, 3508 TB Utrecht,The Netherlands, {doaitse,pablo,saraiva}@cs.uu.nl 2 University of Minho, Braga, Portugal\ 1\ 1.1\ Introduction\ Defining Languages\ Ever since the Computer Science community has discovered the concept of a programming language there has been a continuous quest for the ideal, allencompassing programming language; despite this we have been overwhelmed by an everlasting flow of all kinds of special purpose programming languages. Attempts to bridge this gap between a single language and infinitely many caused research into so-called extensible programming languages. In a certain sense every programming language with a binding construct is extensible. In these lectures we will show that it is the unique combination of higher order functions, an advanced type system (polymorphism and type classes) and the availability of lazy evaluation that makes Haskell one of the most promising candidates for the \"ideal extensible language\". Before we start with giving many examples and guidelines of how to use the features just mentioned, we want to spend some time on explaining what actually constitutes a programming language. A proper programming language description contains at least: a concrete context-free grammar, describing the appearance of the language an abstract context-free grammar, describing the structure of the language context sensitive conditions that capture the constraints that are not easily expressed at the context-free level, like correct name introduction and use and type checking; usually such context conditions can either be directly expressed in a compositional way, or in terms of a fixed-point of a function that itself may be computed in a compositional way; with compositional we mean here that a property of a construct can be expressed in terms of properties of its constituents. a mechanism of assigning a \"meaning\" to a program; one of the most common ways of doing so is by giving a denotational semantics, which boils down to describing how a function representing the meaning of that program can be derived from the abstract program structure. Of course one can design a new language by defining all the above components from scratch. Languages, however, do have a lot in common like definitions, type systems, abstraction mechanism, IO-systems etc. It would be a lot of work to", ["doaitse-swierstra/LL1.pdf"] = "Deterministic, Error-Correcting Combinator Parsers\ S. Doaitse Swierstra and Luc Duponcheel\ Dept. of Computer Science, Utrecht University P.O.Box 80.089, 3508 TB Utrecht, The Netherlands e-mail swierstra@cs.ruu.nl and luc@cs.ruu.nl", ["doaitse-swierstra/combinator-parsing-tutorial.pdf"] = "Combinator Parsing: A Short Tutorial\ S. Doaitse Swierstra\ institute of information and computing sciences, utrecht university technical report UU-CS-2008-044 www.cs.uu.nl\ December 2008\ 1\ Combinator Parsing: A Short Tutorial\ S. Doaitse Swierstra January 5, 2009", ["doaitse-swierstra/prettyprinting.pdf"] = "Journal of Functional Programming\ http://journals.cambridge.org/JFP\ Additional services for Journal of Functional Programming:\ Email alerts: Click here\ Subscriptions: Click here\ Commercial reprints: Click here\ Terms of use : Click here\ Linear, bounded, functional pretty­printing\ S. DOAITSE SWIERSTRA and OLAF CHITIL\ Journal of Functional Programming / Volume 19 / Issue 01 / January 2009, pp 1 ­ 16\ DOI: 10.1017/S0956796808006990, Published online: 07 October 2008\ Link to this article: http://journals.cambridge.org/abstract_S0956796808006990\ How to cite this article:\ S. DOAITSE SWIERSTRA and OLAF CHITIL (2009). Linear, bounded, functional pretty­printing. \ Journal of Functional Programming, 19, pp 1­16 doi:10.1017/S0956796808006990\ Request Permissions : Click here\ Downloaded from http://journals.cambridge.org/JFP, by Username: nrnr, IP address: 108.20.67.9 on 03 Jun 2013\ JFP 19 (1): 1–16, 2009.\ c 2008 Cambridge University Press\ 1\ doi:10.1017/S0956796808006990 First published online 7 October 2008 Printed in the United Kingdom", ["dominic-duggan/Mixin Modules.pdf"] = "Mixin\ Dominic Duggan*\ Modules\ Constantinos Sourelis\ Mixin modules are proposed as a new construct for module languages, allowing recursive definitions to span module boundaries. Mixin modules are proposed specifically for the Standard ML language. Several applications are described, including the resolution of cycles in module import dependency graphs, as well as functionality related to Haskell type classes and CLOS generic functions, though without any complications to the core language semantics. Mixin modules require no changes to the core ML type system, and only a very minor change to its run-time semantics. A type system and reduction semantics are provided, and the former is verified to be sound relative to the latter.\ would like achieve in breaking up recursive constructs across modules. For example the Haskell language also has type classes [3 1]. In the semantics provided in [10], type classes allow recursive definitions to cross module boundaries by breaking up recursive functions into implementations of an overloaded operator. The type system allows these implementations to be type-checked independently and then implicitly combined at points where an overloaded", ["dominic-duggan/mixin inheritance.pdf"] = "Modular Mixin-Based Inheritance for Application Frameworks\ Dominic Duggan\ Dept of Computer Science Stevens Institute of Technology Hoboken, New Jersey 07040\ Ching-Ching Techaubol\ Dept of Computer Science Stevens Institute of Technology Hoboken, New Jersey 07040\ dduggan@cs.stevens-tech.edu ABSTRACT\ Mixin modules are proposed as an extension of a class-based programming language. Mixin modules combine parallel extension of classes, including extension of the self types for those classes, with mixin-based inheritance. For soundness of subtyping purposes, they require an explicit distinction between mixin-based objects and class-based objects. Applications of mixin modules are in statically type-safe monadbased aspect-oriented programming, and in modular mixinbased Internet programming.\ ctechaub@cs.stevens-tech.edu\ techniques such as formal methods and pattern languages may be used to facilitate the use of such libraries. While component-based programming at the class level has had some success, there is a growing recognition of the limitations of such a low-level view in developing large applications from off-the-shelf components. While module languages have been known at least since the days of languages such as Mesa, Modula and Ada [29, 26, 32, 22, 25, 30], there is now growing interest in developing module languages specifically for composing class libraries in objectoriented languages. Since Java is now a popular objectoriented language for both practitioners and researchers, some of this work has at least implicitly been aimed at the Java language. It can be argued that the essence of class-based objectoriented languages is the incremental extension of recursive definitions via inheritance. This was the motivation for the fixed point semantics of inheritance by Cook et al, that in turn gave rise to research on self types that allowed method types to be specialized in subclasses derived via inheritance. The types being extended are object interfaces, which can be considered as a form of record type. So object interfaces can be viewed as recursively defined record types, and inheritance allows the incremental extension both of these types and of object implementations. New applications suggest another view of recursive definitions, that of recursively defined labelled trees. This perspective is popularized by XML, which (at the risk of gross oversimpification) can be viewed as a language for defining recursive tree types. Recursive tree types can be viewed as dual to recursive record types; indeed, the former correspond to variant types and discriminated union types in the terminology of programming language types. The ultimate application of our work is in developing a framework for type-safe mixin-based inheritance for components of XML applications. In designing this framework we assume that processors for XML applications will be written in class-based languages such as Java or C#, since such processors will be easily downloadable over the Web. Presumably some, perhaps even many, XML processors will be written in XML-specific dialects such as XDuce and XML-", ["dominique-clement/applicative.djvu"] = "A Simple Applicative Language: Mini-lVlI, \ Dominique Cltment \ SEMA, $opMa-Antipolis \ 3c!le Despeyroux \ Thierry Despeyroux \ Gilles Kahn \ INRIA, $ophia-Antipolis \ Route des Lucioles, 06565 Valbonne Cedex, France ", ["dominique-clement/applicative.pdf"] = "A Simple Applicative Language: Mini-lVIL\ Dominique Cl6ment\ SEMA, $ophia-Antipolis\ Jo~lle Despeyroux Thierry Despeyroux Gilles Kahn INRIA, Sophia-Antipolis Route des Lucioles, 06565 Valbonne Cedex, France Abstract. This paper presents a formal description of the central part of the ML language in Natural Semantics. Static semantics, dynamic semantics, and translation to an abstract machine code axe covered. The description has been tested on a computer and we explain why this is feasible. Several facts that one may want to prove about the language are expressed and proved within the formalism. of generality, we restrict ML to a central part christened Mini-ML, a simple typed ~-calculus with constants, products, conditionals, and recursive function definitions. 1.1. Sample programs\ To illustrate Mini-ML, we introduce several examples in concrete syntax. First of course is how to write and use the factorial function: l e t r e c / a c t = ~z. if z = 0 t h e n 1 else z */act (z - 1) in fact 4", ["don-batory/tosem92.ps"] = "To Appear, ACM Transactions on Software Engr. and Methodology, October 1992.\ The Design and Implementation of Hierarchical\ Software Systems With Reusable Components +\ Don Batory and Sean O'Malley\ Department of Computer Sciences\ The University of Texas\ Austin, Texas 78712", ["don-knuth/as-an-art.pdf"] = "1974 A C M T u r i n g A w a r d Lecture [The Turing Award citation read by Bernard A. Galler, chairman of the 1974 Turing Award Committee, on the presentation of this lecture on November 11 at the ACM Annual Conference in San Diego.] The A.M. Turing Award of the ACM is presented annually by the ACM to an individual selected for his contributions of a technical nature made to the computing community. In particular, these contributions should have had significant influence on a major segment of the computer field. \"The 1974 A.M. Turing Award is presented to Professor Donald E. Knuth of Stanford University for a number of major contributions to the analysis of algorithms and the design of programming languages, and in particular for his most significant contributions to the 'art of computer programming' through his series of well-known books. The collections of techniques, algorithms and relevant theory in these books have served as a focal point for developing curricula and as an organizing influence on computer science.\" Such a formal statement cannot put into proper perspective the role which Don Knuth has been playing in computer science, and in the computer industry as a whole. It has been my experi-", ["don-knuth/bitwise.ps.gz"] = "KNUTH\ THE ART OF\ COMPUTER PROGRAMMING\ VOLUME 4 PRE-FASCICLE 1A\ A DRAFT OF SECTION 7.1.3:\ BITWISE TRICKS AND TECHNIQUES\ DONALD E. KNUTH Stanford University\ ADDISON{WESLEY\ 6\ 77\ Internet\ Stanford GraphBase\ MMIX\ Internet page http://www-cs-faculty.stanford.edu/~knuth/taocp.html contains\ current information about this book and related books.\ See also http://www-cs-faculty.stanford.edu/~knuth/sgb.html for information\ about The Stanford GraphBase, including downloadable software for dealing with\ the graphs used in many of the examples in Chapter 7.\ See also http://www-cs-faculty.stanford.edu/~knuth/mmixware.html for down-\ loadable software to simulate the MMIX computer.\ Copyright c\ \r 2006 by Addison{Wesley\ All rights reserved. No part of this publication may be reproduced, stored in a retrieval", ["don-knuth/ef.djvu"] = "", ["don-knuth/empirical-fortran-tr.djvu"] = "", ["don-knuth/empirical-fortran.djvu"] = "SOFT,rARE--PRACTICE AND EXPERIENCE. VOI.. , 105-133 (1971) \ An Empirical Study of FORTRAN Programs$ \ DONALD E. KNUTH \ Computer Science Department, Stanford University, Stanford, California 94305 \ SUMMARY \ A sample of programs written in FORTRAN by a wide variety of people for a wide variety \ of applications, was chosen 'at random' in an attempt to allscorer quantitatively what \ programmers really do'. Statistical results of this survey are presented here, together with \ some of their apparent implications for future work in compiler design. The principal \ conclusion which may be drawn is the importance of a program 'profile', namely a table of \ frequency counts which record how often each statement is performed in a typical run; there \ are strong indications thai profile-keeping should became a standard practicc in all computer \ systems for casual users as well as system programmers. This paper is the report of a three ", ["don-knuth/empirical-fortran.pdf"] = "", ["don-knuth/floyd.ps.gz"] = "Robert W Floyd, In Memoriam\ by Donald E. Knuth, Stanford University\ Nobody has in\ruenced my scienti c life more than Bob Floyd. Indeed, were it not for him, I might\ well have never become a computer scientist. In this note I'll try to explain some of the reasons\ behind these statements, and to capture some of the spirit of old-time computer science.\ Instead of trying to reconstruct the past using only incidents that I think I remember, I will\ quote extensively from actual documents that were written at the time things happened. The\ remarks below are extracted from a one-hour keynote speech I gave to the Stanford Computer\ Forum on 20 March 2002; many further details, including images of the original documents, can be\ seen in a video recording of that lecture, which has been permanently archived on the Internet by", ["don-knuth/joalet.pdf"] = " \ \ \ \ \ \ \ \ \ \ \ \ ָ ҳ س ׸ ҹ ݸ й и ׸ ݸ ׺ ݸ Ҹ ׺ ݺ ҳ ݸ Һ ߾ \ ׺ ݸ ׬ ݺ غ ӹ ݸ ׺\ \ \ \ \ \ \ Ҹ \ \ ׸ ݺ Ҹ ׺ ӫ \ \ \ ݸ Ժ ׺ ڻ ׻ غ ׸ ֳ ֳ׵ ݸ ظ к ۸ \ к\ \ \ \ ֳ \ ׸ ҹӬ ݸ ֹӬ ׺ ݸ ظ ׺ ֳ ָ ָ ݺ ׺ ָ Ӹ ׺ ظ ҳ ݸ ׸ ۺ ׺ \ \ \ \ \ \ \ ׺ Ҹ Һ ظ ׺ س ׸ ׸ ֹ ׺ и к ݺ ָ ݺ غ Ӭ׸ ݸ и ׸ Ӹ ׺ ֹ ҹ غ ׹ ҹ Ѻ ø ø ø ú ָ ׸ غ ׸ ݸ ׺ ׸ ׸ ׸ ݸ ׸ ֳ ݸ ׺ Ӻ ˵ ҹ ҵ ׸ ׸ \ \ \ \ \ \ ڵ ׺\ ֺ \ \ ҽ ݺ ٻ ݻ Լ к ڵ ׺ ׸ ݸ ׵ غ Һ ӫ ׸ ݺ ٻ ݻ ׺ е ׸ ظ ڵ ׸ Ҿ ׺ ݳ ׸ ֳ ֺ ֳ ݳ ݸ ݳ ׸ ָ ڵ и Һ ҳ ֹ ׸ г ׸ ڵ и ָ ׺\ \ \ \ \ \ ظ ȸ ߾ ظ ۸ ҳ ׸ Ҹ ָ Ӹ \ \ س ߾ ׺ л ػ׻ ۺ ֹ ׸ Ҭ ׺ ݸ ӫ ҳ ӫ ׺ ʸ ӫ й Һ Ҹ ׺ ۺ ֺ غ и Ѹ غ ׸ ָ غ и ʵ ۺ س ҳ ׸ ݸ ݺ ӹ ̺ ݹ и Ӻ ݸ ̺ \ \ \ \ \ \ ҳ ׸ ݳ ڸ ݵ ݺ ۺ ׺ ػ ݵ ٳ ظ ָ ׳ ׺ ׺ ֺ ޸ ׺ ׺ ˸ ݺ ֹ ۺ ׺ ֳ ҹ ݸ ׺ Ҹ ˳ Ѻ ݺ Ӻ ݺ ۹ ۺ ׺ ݸ ӫ ̺ ݸ ׺ ׸ غ Һ ҳ Һ Ը ָ Һ ׸ ׺ ׸ ֺ ָ ݸ ҳ к غ Ҹ ҳ ݸ Ҹ ׸ Ҹ ָ ׺ Ӭ ׸ ֳ Ӹ غ\ \ \ \ \ \ ۺ к ֹ ׳ ׸ Һ Ӭ к Ӭع ׺ ׸ ׺ Ҹ ׺ г ׺ ӫ ݵ Ҹ ֺ ׸ ع ӹ ۺ Ѻ ٻ ׻ ׻ պ Ѻ غ ٹ ׸ Ѻ س ظ ׺ ׳ ظ ݸ ظ ׸ и и Ҹ Ҹ غ ҹ й ظ ع и ۺ׺ ׻ к \ ۺ Ѻ\ и ӹ ִ׵ ִ׵ ش׵ Ӹ ݸ ׸ Ը ׸ Ҹ ݸ ݸ й ׸ Ҹ ݸ ׸ ׺ ׸ ۸ ۺ\ ٻ ׻ ׻ \ \ \ \ \ \ ׸ ׸ ׸ ֹ ׸ ׸ \ ׸ ׺ \ ظ Ҹ ׸ ׺ Ҹ Ҹ ع и ׺ ׺ Һ ׵ ݵ ۺ ݺ Ѻ Һ и ݸ ׺ ֺ ظ ֺ ֳ Һ ҹ Һ ָ ָ ݸ ݸ ׸ ׺ ׺ ظ ָ ֹ к ׸ ׺ ׺ \ \ \ \ \ \ \ ظ ݸ \ \ ۺ ػ ٻ Ļ ׻ \ ׻ \ ҹ \ Һ \ \ \ \ \ \ Ѹ ۺ ׸ ׺ Һ ۺ׺ ҹӬظ ׹ Ӭ ҹ и ݺ ׺ ֺ и ݺ ӹ ׸ ׸ Ѹ ׺ ҹ Һ ظ ׸ ׸ ׸ ֳ ҹ ׵ ۺ Ժ ݸ ׺ ۺ к Ѹ и ҹ и ׸ ֺ Ժ ׻ ҹ ׸ ׸ ׺\ \ \ \ \ \ \ ݸ ׸ ׺ ۺ ׺ غ Ѹ ظ ҹ ׺ ׸ ڵ ׸ ׺ ӫ ׺ ֳ Ӭ ظ غ ֺ ҳ ص ׸ Ѻ ҳ ׸ ҳ غ ظ ׸ ݵ ׸ ݸ Ҹ ݸ ׺ и ݸ и ׺ Ҹ ظ ׺ غ ɸ ظ ָ ݸ ظ ҵ ׵ Һ ָ ׸ ҳ ݹ ׺\ \ \ \ \ \ \ غ ׺ ׸ ׺ Ӭ ׺ и Ӭ ҹ Ӻ ֳ ݹ ֹ й ׺ й ֺ ظ ۺ ظ ҳ ׺ Ѻ ӫ й \ غ ݸ ڵ ҳ ׸ غ \ ڵ ֺ ڸ ҹ ݳ غ ڵ ظ ׸ к ֹ Ѹ ׸ ׺ Һ ҹ ׺ ׺ ݺ Ӭ ׺\ \ \ \ \ \ \ س غ ݺ ׺ س ߽ ظ ׸ ݺ ׸ س ݸ ظ ׺ Ҹ Һ ڵ ظ ׺ ֹ غ س ҳ ݺ ֺ غ ҳ ظ ҳ и ڵ Ӻ ۸ ҳ º Ҹ Ӭ ָ ׺ ظ ظ Ժ ָ ׺ ڵ Թ ׺ и Ժ ׸ ٳ и ָ к\ Ӭ ҳ ҹ \ \ \ \ \ \ \ ׺ ָ Һ ظ ֵ ׹ ׺ ų ׺ Һ ׸ ٯ ׸ ׸ ׸ Ժ ׺ ҳ ҳ ۹ ׹ ݺ ٻ Ѻ ׸ س ׺ ų ݸ ׸ ܺ к ڻ ׻ Ӻ ں ׺ ֺ ݸ ۺ Ѻ ׻ ֳ׸ ֹ ׸ Ÿ ֳ Һ ҳ غ ź и ҹ Ը ع ݺ ׺ ӫ ظ ׸ ׸ ׸ ݺ ׺ ۺ Ȼ ׺ ݸ ۺ ׺ ׻ ȹ Ȼ غ к\ \ \ \ \ \ \ ׺\ Һ \ ׺ \ \ \ \ ׸ ݸ Һ\ \ ݸ ׺ ظ \ ڵ ׸ Ҹ ֺ\ ׸ ׺ ݸ Ѹ ָ ׸ к ָ Һ غ \ \ \ ҳ и ҳ غ Һ\ ݸ ٹ ҹ Ը \ ׺ ٺ\ ݳ ׸ ٸ ׺ Ժ Ҹ Ҹ ָ ׳ ׸ ָ ݸ\ û\ \ Ⱥ ˺ ݺ ݺ ", ["don-knuth/knuth-bendix.pdf"] = "Simple Word Problems in Universal Algebras’\ DONALD\ E. KNUTH\ and PETER B. BENDIX\ Summary. An algorithm is described which is capable of solving certain word\ problems: i.e. of deciding whether or not two words composed of variables and\ operators can be proved equal as a consequence of a given set of identities satisfied by the operators. Although the general word problem is well known to be\ unsolvable, this algorithm provides results in many interesting cases. For example\ in elementary group theory if we are given the binary operator . , the unary operator -, and the nullary operator e, the algorithm is capable of deducing from\ the three identitiesa.(b.c)\ = (a.b).c, a.a- = e, a.e = a, the laws a-.a = e,\ e.a = a, a- - = a, etc.; and furthermore it can show that a.b = b .a- is not a\ consequence of the given axioms.\ The method is based on a well-ordering of the set of all words, such that each", ["don-knuth/leftright.djvu"] = "LEE \ are convex with respect to x. \ is linear in x and u. \ e sufficient for the solutions of Euler equati,,, \ .inimum but also the unique global rainira \ 1 case is the minimization of a positive deft,,,,, \ the constraint of linear dynamics. \ onditions are not known even for the sin,i \ in Example 2. It is not only tedious but \ ,egendre-C]ebsch condition and thezcSnjug:,l. \ ms. These difficulties may be avoided in \ ind a wider class of variational problems \ endre-Clebsch condition and avoids the \ ACKNOWLEDGMENTS \ owledge many fruitful discussions with Prof. C. \ .versity and Dr. R. J. Ringlee of General Elecl \ kground for this work. \ REFERENCES \ on the Calculus of Variations.\" Univ. of Chic, g, \ ]m Ho (1964), \"On the Conjugate Point Condirt,,, ] \ \"Tech. Rept. No. 441 (Cruft Lab., Harvard Univ \ [. L., AND BRY$ON, A. E. (1963), Optimization \ ms using the second variation. SIAM J. Conlr,,/. ", ["don-knuth/lrparsing.djvu"] = "", ["don-knuth/mathwriting.pdf"] = "Mathematical Writing by Donald E. Knuth, Tracy Larrabee, and Paul M. Roberts This report is based on a course of the same name given at Stanford University during autumn quarter, 1987. Here’s the catalog description: CS 209. Mathematical Writing—Issues of technical writing and the effective presentation of mathematics and computer science. Preparation of theses, papers, books, and “literate” computer programs. A term paper on a topic of your choice; this paper may be used for credit in another course. The first three lectures were a “minicourse” that summarized the basics. About two hundred people attended those three sessions, which were devoted primarily to a discussion of the points in §1 of this report. An exercise (§2) and a suggested solution (§3) were also part of the minicourse. The remaining 28 lectures covered these and other issues in depth. We saw many examples of “before” and “after” from manuscripts in progress. We learned how to avoid excessive subscripts and superscripts. We discussed the documentation of algorithms, computer programs, and user manuals. We considered the process of refereeing and editing. We studied how to make effective diagrams and tables, and how to find appropriate quotations to spice up a text. Some of the material duplicated some of what would be discussed in writing classes offered by the English department, but the vast majority of the lectures were devoted to issues that are specific to mathematics and/or computer science. Guest lectures by Herb Wilf (University of Pennsylvania), Jeff Ullman (Stanford), Leslie Lamport (Digital Equipment Corporation), Nils Nilsson (Stanford), Mary-Claire van Leunen (Digital Equipment Corporation), Rosalie Stemer (San Francisco Chronicle), and Paul Halmos (University of Santa Clara), were a special highlight as each of these outstanding authors presented their own perspectives on the problems of mathematical communication. This report contains transcripts of the lectures and copies of various handouts that were distributed during the quarter. We think the course was able to clarify a surprisingly large number of issues that play an important part in the life of every professional who works in mathematical fields. Therefore we hope that people who were unable to attend the course might still benefit from it, by reading this summary of what transpired. The authors wish to thank Phyllis Winkler for the first-rate technical typing that made these notes possible. Caveat: These are transcripts of lectures, not a polished set of essays on the subject. Some of the later lectures refer to mistakes in the notes of earlier lectures; we have decided to correct some (but not all) of those mistakes before printing this report. References to such no-longer-existent blunders might be hard to understand. Understand? Videotapes of the class sessions are kept in the Mathematical & Computer Sciences Library at Stanford. The preparation of this report was supported in part by NSF grant CCR-8610181.", ["don-knuth/ocalc.dvi"] = "Profesor Anthony W. Knapp\ P O Box 333\ East Setauket, NY 11733\ Dear editor,\ I am pleased to see so much serious attention being given to improvements in the way calculus has\ traditionally been taught, but I'm surprised that nobody has been discussing the kinds of changes\ that I personally believe would be most valuable. If I were responsible for teaching calculus to\ college undergraduates and advanced high school students today, and if I had the opportunity to\ deviate from the existing textbooks, I would certainly make major changes by emphasizing several\ notational improvements that advanced mathematicians have been using for more than a hundred\ years.\ The most important of these changes would be to introduce the O notation and related ideas at an\ early stage. This notation, first used by Bachmann in 1894 and later popularized by Landau, has", ["don-knuth/old-structured-goto.djvu"] = "Structured Programming with go to Statements \ DONALD E. KNUTH \ Stanford University, Stanford, California 9~S05 \ A consideration of several different examples sheds new light on the problem of ereat- \ ing reliable, well-structured programs that behave efficiently. This study focuses \ largely on two issues: (a) improved syntax for iterations and error exits, making it \ possible to write a larger class of programs clearly and efficiently without go to state- \ ments; (b) a methodology of program design, beginning with readable and correct, \ but possibly inefficient programs that are systematically transformed if necessary into \ efficient and correct, but possibly less readable code. The discussion brings out op- \ posing points of view about whether or not go to statements should be abolished; \ some merit is found on both sides of this question. Fina!ly, an attempt is made to ", ["don-knuth/pearls-1.pdf"] = "by loiz Bm tley with Special Guest Oyster Don Knuth\ programming pearls\ Reading tells you where to find it. As a temporary substitute, this column introduces the programming style that Knuth used to create his program, and the WEB programming system that supports the approach. He calls the style \"literate programming\"; his goal is to produce programs that are works of literature. My dictionary defines literature as \"writings having excellence of form or expression and expressing ideas of permanent or universal interest.\" I think that Knuth has met his goal. This column describes the style and presents a small example that Don Knuth was kind enough to write; next month's column is devoted to a more substantial literate program by Knuth. The Vision When I wrote my first program, the only reader I had in mind was the computer that ran it. The \"structured programming\" revolution of the early 1970s taught us that we should keep in mind several other purposes of a program: Design. As I write a program, I should use a language that minimizes the distance between the problem-solving strategies I have in my head and the program text I eventually write on paper. Analysis. When I develop particularly subtle code, I should use a language that helps me to reason about its correctness. Maintenance. When I write a program, I should keep in mind that its next reader might be someone who is totally unfamiliar with it (such as myself, a year later). These insights had a tremendous impact. A few principles of programming style and a little discipline led to Cobol, Fortran, and assembly routines that were easier to understand. By the early 198Os, most of us had stopped debating whether goto statements were acceptable and had started programming in a high-level language that encouraged cleanliness of expression. This raised the problem one level: we can under-", ["don-knuth/pearls-2.pdf"] = "by jot1 Be~~tley with Special Guest Oysters Don Knuth and Doug McIlroy\ programming pearls\ frequency; or there might not even be as many as k words. Let's be more precise: The most common words are to be printed in order of decreasing frequency, with words of equal frequency listed in alphabetic order. Printing should stop after k words have been output, if more than k words are present. 2. The input file is assumed to contain the given text. If it begins with a positive decimal number (preceded by optional blanks), that number will be the value of k; otherwise we shall assume that k = 100. Answers will be sent to the output file. define default-k = 100 (use this value if k isn't otherwise specified) 3. Besides solving the given problem, this program is supposed to be an example of the WEB system, for people who know some Pascal but who have never seen WEB before. Here is an outline of the program to be constructed: program common-words (input, output); type (Type declarations 17) var (Global variables 4) (Procedures for initialization 5) (Procedures for input and output a) (Procedures for data manipulation 20) begin (The main program 8); end. 4. The main idea of the WEB approach is to let the program grow in natural stages, with its parts presented in roughly the order that they might have been written by a programmer who isn't especially clairvoyant. For example, each global variable will be introduced when we first know that it is necessary or desirable; the WEB system will take care of collecting these declarations into the proper place. We already know about one global variable, namely the number that Bentley called k. Let us give it the more descriptive name max-words-to-print.", ["don-knuth/primes.dvi"] = "x1 PRINTING PRIMES: AN EXAMPLE OF WEB 1\ 1. Printing primes: An example of WEB. The\ following program is essentially the same as Edsger\ Dijkstra's \"first example of step-wise program composi-\ tion,\" found on pages 26-39 of his Notes on Structured\ Programming,2 but it has been translated into the WEB\ language.\ [[Double brackets will be used in what follows to en-\ close comments relating to WEB itself, because the chief\ purpose of this program is to introduce the reader to\ the WEB style of documentation. WEB programs are al-\ ways broken into small sections, each of which has a\ serial number; the present section is number 1.]]\ Dijkstra's program prints a table of the first thou-\ sand prime numbers. We shall begin as he did, by re-\ ducing the entire program to its top-level description.\ [[Every section in a WEB program begins with optional", ["don-knuth/structured-goto.djvu"] = "Structured Programming with go to Statements \ DONALD E. KNUTH \ Stanford University, Sta?ford, California 9$05 \ A consideration of several different examples sheds new light on the problem of creat- \ ing reliable, well-structured programs that behave efficiently. This study focuses \ largely on two issues: (a) improved syntax for iterations and error exits, making it \ possible to write a larger class of programs clearly and efficiently without go to state- \ ments; (b) a methodology of program design, beginning with readable and correct, \ but possibly inefficient programs that are systematically transformed if necessary into \ efficient and correct, but possibly less readable code. The discussion brings out op- \ posing points of view about whether or not go to statements should be abolished; \ some merit is found on both sides of this question. Fina!ly, an attempt i made to ", ["don-knuth/structured-goto.pdf"] = "S t r u c t u r e d P r o g r a m m i n g w i t h go to S t a t e m e n t s DONALD E. KNUTH\ Stanford University, Stanford, California 9~S05\ A consideration of several different examples sheds new light on the problem of ereating reliable, well-structured programs that behave efficiently. This study focuses largely on two issues: (a) improved syntax for iterations and error exits, making it possible to write a larger class of programs clearly and efficiently without g o t o statements; (b) a methodology of program design, beginning with readable and correct, but possibly inefficient programs that are systematically transformed if necessary into efficient and correct, but possibly less readable code. The discussion brings out opposing points of view about whether or not g o t o statements should be abolished; some merit is found on both sides of this question. Fina!ly, an attempt is made to define the true nature of structured programming, and to recommend fruitful directions for further study.", ["don-knuth/web.dvi"] = " ______________________________________________________________________________________________________________________________*\ *________________\ Literate Programming\ ______________________________________________________________________________________________________________________________*\ *________________\ Donald E. Knuth\ Computer Science Department, Stanford University, Stanford, CA 94305, USA\ ______________________________________________________________________________________________________________________________*\ *________________\ The author and his associates have been experimenting for the past several years with a program-\ ming language and documentation system called WEB. This paper presents WEB by example, and\ discusses why the new system appears to be an improvement over previous ones.\ ______________________________________________________________________I would ordinarily have assigned to student resea*\ *rch\ A. INTRODUCTION____________________________________________________________assistants; and why? Because it seems to me that at last\ I'm able to write programs as they should be written.\ The past ten years have witnessed substantial improve- My programs are not only explained better than ever\ ments in programming methodology. This advance, before; they also are better programs, because the new\ carried out under the banner of \"structured program- methodology encourages me to do a better job. For", ["donald-gatz/weighted-standard-error.pdf"] = "Pergamolv\ Atmospheric\ Enuironmmf 29, No. 11, pp. 1185-1193,\ Vol.\ 1995\ Copyright 0 1995 Elwicr Scicncc Ltd\ Printed in Great Britain. All rights rcsetved\ 1352-2310/95 $9.50 + 0.00\ 1352-2310(94)00210-X\ THE STANDARD ERROR OF A WEIGHTED MEAN\ CONCENTRATION-I.\ BOOTSTRAPPING VS OTHER\ METHODS\ DONALD F. GATZ\ Ihinois State Water Survey, 2204 Griffith Drive, Champaign, IL 61820, U.S.A.\ and\ LUTHER\ SMITH\ ManTech Environmental Technology, P.O. Box 12313,2 Triangle Drive, Research Triangle Park,\ NC 27709, U.S.A.\ (First received 27 October 1993 and in finalfinn\ 7 July 1994)", ["donn-seeley/coding-style.pdf"] = "FOCUS\ Programming\ Languages\ How Not to Write\ FORTRAN\ in Any Language\ DONN SEELEY, WIND RIVER SYSTEMS\ There’s no obfuscated Perl contest because it’s pointless.\ —Jeff Polk\ Whatever language you write in, your task as a programmer\ is to do the best you can with the tools at hand. A good programmer can overcome a poor language or a clumsy operating\ system, but even a great programming environment will not\ rescue a bad programmer. —Kernighan and Pike\ P\ rogrammers have debated the merits of different\ programming languages since the dawn of programming. Every coder has a favorite general-purpose\ programming language, and many have an unfavorite\ language, too. If the coder is old enough, often that unfavorite language is Fortran. The world has seen so much\ bad Fortran code that the name of the language is now a", ["doug-comer/trie-construction.djvu"] = "The Complexity of Trie Index Construction \ DOUGLAS COMER AND RAVI SETHI \ The Pennsylvama State Universsty, Universtry Park, Pennsylvama ", ["doug-comer/trie-construction.pdf"] = "The Complexity of Trie Index Construction\ DOUGLAS COMER AND RAVI SETHI\ The PennsylvamaState University, University Park, Pennsylvania", ["doug-mcilroy/enumerating-regular.pdf"] = "JFP 14 (5): 503518, September 2004.\ c 2004 Cambridge University Press\ 503\ DOI: 10.1017/S0956796803004982 Printed in the United Kingdom\ FUNCTIONAL PEARL Enumerating the strings of regular languages\ M. DOUGLAS McILROY\ Dartmouth College, Hanover, NH 03755, USA (e-mail: doug@cs.dartmouth.edu)", ["doug-mcilroy/pearl.ps.gz"] = "J. Functional Programming 1 (1): 1--000, January 1998. Printed in the United Kingdom\ c\ # 1998 Cambridge University Press\ 1\ FUNCT I ONAL PEARLS\ Power Series, Power Serious\ M. Douglas McIlroy\ Dartmouth College, Hanover, New Hampshire 03755#\ doug@cs.dartmouth.edu", ["doug-mcilroy/short.ps.gz"] = "The Music of Streams\ M. Douglas McIlroy\ Dartmouth College, Hanover, New Hampshire 03755, USA", ["doug-mcilroy/squint.ps"] = "Squinting at Power Series\ M. Douglas McIlroy\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["douglas-jones/asm-as-object-code.djvu"] = "SOFTWARE .... PRACTICE AND EXPERIENCE, VOL. 13, 715-725 (1983) \ 7 \ ASsembly \ Language \ as \ Cede \ DOUGLAS We JONES \ Department of Compgtev Science, Um'erdty of owa, wa City, I>wa 52242, \ KE%' WORDS Object code Linkers Loaders Assembly language Intermediate code Rellocation \ INTRODUCTION \ SMAL (pronounced 'small') is a symbolic macro,assembly language originally \ developed for teaching purposes at the University of IOWao SMAL has been designed \ so that it includes object and loader languages _as sublanguages of itself, thus allowing \ a SMAL assembler to serve as a linkage editon. This paper describes those aspects \ of SMAL,that allow this to be done; the complete machine independent version of \ SMAL is documented elsewhereo I A SMAL assembler has been written n Pascal \ which is 2142 lines long, including support for macro and conditional assembly, but \ excluding support for any particular machine instruction set Undergraduates have ", ["douglas-jones/asm-as-object-code.pdf"] = "", ["duncan-coutts/ostream-fusion.pdf"] = "Stream Fusion\ From Lists to Streams to Nothing at All\ Duncan Coutts1\ Roman Leshchinskiy2\ 1\ Programming Tools Group\ Oxford University Computing Laboratory\ duncan.coutts@comlab.ox.ac.uk", ["duncan-coutts/stream-fusion.pdf"] = "Stream Fusion\ From Lists to Streams to Nothing at All\ Duncan Coutts1 Roman Leshchinskiy2\ 2\ Don Stewart2\ 1 Programming Tools Group Oxford University Computing Laboratory duncan.coutts@comlab.ox.ac.uk\ Computer Science & Engineering University of New South Wales {rl,dons}@cse.unsw.edu.au", ["edsger-dijkstra/ewd123.pdf"] = "", ["edsger-dijkstra/ewd1255.pdf"] = "1\ 2\ 3\ 4\ 5\ 6\ 7\ 8\ 9\ 10\ 11\ 12", ["edsger-dijkstra/ewd126.pdf"] = "", ["edsger-dijkstra/ewd1298.pdf"] = "", ["edsger-dijkstra/ewd1303.pdf"] = "", ["edsger-dijkstra/goto-considered-harmful-cacm.pdf"] = "Edgar Dijkstra: Go To Statement Considered Harmful\ Edgar Dijkstra: Go To Statement Considered Harmful\ 1\ Aus: Communications of the ACM 11, 3 (March 1968). 147-148.\ Edgar Dijkstra: Go To Statement Considered Harmful\ 2", ["edsger-dijkstra/goto-letter.pdf"] = "Go T o S t a t e m e n t\ Considered Harmful\ Key Words and Phrases: go to statement, jump instruction,\ branch instruction, conditional clause, alternative clause, repetitive clause, program intelligibility, program sequencing\ CR Categories: 4.22, 5.23, 5.24\ EDITOR :\ For a number of years I have been familiar with the observation\ that the quality of programmers is a decreasing function of the\ density of go to statements in the programs they produce. More\ recently I discovered w h y the use of the go to statement has such\ disastrous effects, and I became convinced that the go to statement should be abolished from all \"higher level\" programming\ languages (i.e.everything except, perhaps, plain machine Code).\ At'that time I did not attach too m u c h importance to this discovery; I now submit m y considerations for publication because\ in very recent discussions in which the subject turned up, I have\ been urged to do so.", ["edsger-dijkstra/goto-letters.pdf"] = "Go T o S t a t e m e n t\ Considered Harmful\ Key Words and Phrases: go to statement, jump instruction,\ branch instruction, conditional clause, alternative clause, repetitive clause, program intelligibility, program sequencing\ CR Categories: 4.22, 5.23, 5.24\ EDITOR :\ For a number of years I have been familiar with the observation\ that the quality of programmers is a decreasing function of the\ density of go to statements in the programs they produce. More\ recently I discovered w h y the use of the go to statement has such\ disastrous effects, and I became convinced that the go to statement should be abolished from all \"higher level\" programming\ languages (i.e.everything except, perhaps, plain machine Code).\ At'that time I did not attach too m u c h importance to this discovery; I now submit m y considerations for publication because\ in very recent discussions in which the subject turned up, I have\ been urged to do so.", ["edsko-de-vries/uniqueness.pdf"] = "Uniqueness Typing Redefined\ Edsko de Vries1 , Rinus Plasmeijer2 , and David Abrahamson1\ 1 2\ Trinity College Dublin, Ireland, {devriese,david}@cs.tcd.ie Radboud Universiteit Nijmegen, Netherlands, rinus@cs.ru.nl", ["education/My Journey With Inquiry-Based Learning-Gonzalez.pdf"] = "Gonzalez, J. J. (2013). My journey with inquiry-based\ learning. Journal on Excellence in College Teaching,\ 24(2), 33-50.\ My Journey With Inquiry-Based Learning\ Joseph J. Gonzalez\ Appalachian State University\ The author chronicles his experiments with inquiry-based learning (IBL) as he applied lessons from the literature and assessed\ the results. He describes a difficult journey with the result\ that, with the help of the literature, supportive colleagues and\ patient, creative students, he learned how to design courses that\ invite undergraduates to become more critical, more complex,\ and more autonomous thinkers. Readers of this article will, he\ hopes, avoid some of the pitfalls that he encountered.\ I had a problem. I saw it in my students every day. Their faces, their\ postures, and their incessant checking of electronic devices all told me", ["edvard-karlsen/debugging-names.pdf"] = "Debugging Method Names\ Einar W. Høst and Bjarte M. Østvold\ Norwegian Computing Center {einarwh,bjarte}@nr.no", ["edvard-karlsen/lancelot.pdf"] = "Finding and Fixing Java Naming Bugs with the Lancelot Eclipse Plugin\ Edvard K. Karlsen\ Sør-Trøndelag University College, Norway edvardkk@stud.hist.no\ Einar W. Høst\ Computas AS, Norway einarwh@gmail.com\ Bjarte M. Østvold\ Norwegian Computing Center, Norway bjarte@nr.no", ["edward-fiala/compress.pdf"] = "RESEARCHCONTRlBllTlONS Algorithms and Data Structures Daniel Sleator Editor\ Data Compression with Finite Windows\ EDWARDR. FIALA and DANIEL H. GREENE", ["edward-lowry/fortran-h.djvu"] = "- ' '1. M. McCLURe, di:or \ Object Code Optimization \ EDWARD S. LowgY AND C. W. M:EDLOCK* \ International Business Machines Corp., Poughkeepsie, N.Y. \ Methods of analyzing the control flow and data flow of pro- \ grams during compilation are applied to transforming the pro- \ gram to improve object time efficiency. Dominance relation- \ ships, indicating which statements are necessarily executed \ before others, are used to do global common expression \ elimination and loop identification. Implementation of these \ and other optimizations in OS/360 FORTRAN H are described. \ KEY WORDS AND PHRASES: compilers, data flow analysis, dominance, \ efficiency, FORTRAN, graph theory, loop structure, machine instructions, \ object code, optimization, redundancy elimination, register assignment, \ System/360 \ CR CATEGORIES: 4.12, 5.24, 5.32 \ Introduction \ The implementation of object code optimization tech- \ niques in the 0S/360 FORTgAN H compiler is presented ", ["edward-lowry/fortran-h.pdf"] = "R. M. McCLURE, Editor\ Object Code Optimization\ EDWARD S. LOWRY AND C. W. MEDLOCK* International Business Machines Corp., Poughkeepsie, N. Y.\ Methods of analyzing the control flow and data flow of programs during compilation are applied to transforming the program to improve object time efficiency. Dominance relationships, indicating which statements are necessarily executed before others, are used to do global common expression elimination and loop identification. Implementation of these and other optimizations in O S / 3 6 0 FORTRAN H are described. KEY WORDS AND PHRASES: compilers, data flow analysis, dominancee efficiency, FORTRAN, graph theory, loop structure, machine instructions, object code, optimization, redundancy elimination, register assignment, System/360 CR CATEGORIES: 4.12, 5.24, 5.32\ analysis of source code and produces the most efficient object code of any compiler presently known to the writers. For small loops of a few statements, it very often produces perfect code. The efficiency is limited mainly by the (rather unnecessary) restrictions on the types of data organization that can be described in FORTRAN and the inability to combine subprograms in a single compilation. Of course the optimization does not compensate for inefficient source coding except in minor ways. The methods will apply to almost any other procedural language, but they are not effective for interpretive systems or for object code that relies heavily on precoded library subroutines. Most optimization can be optionally bypassed to gain a 40 percent reduction in compilation time. However, this expands the object code by about 25 percent, and execution times are increased threefold.", ["edward-lowry/old-fortran-h.djvu"] = "R. M. McCLURE, Editor \ Object Code Optimization \ EDWARD S. LOWRY AND C. W. MEDLOCK* \ International Business Machines Corp., Poughkeepsie, N. Y. \ Methods of analyzing the control flow and data flow of pro- \ grams during compilation are applied to transforming the pro- \ gram to improve object time efficiency. Dominance relation- \ ships, indicating which statements are necessarily executed \ before others, are used to do global common expression \ elimination and loop identification. Implementation of these \ and other optimizations in OS/360 FORTRAN H are described. \ KEY WORDS AND PHRASES: compilers, data flow analysis, dominancee \ efficiency, FORTRAN, graph theory, loop structure, machine instructions, \ object code, optimization, redundancy elimination, register assignment, \ System/360 \ CR CATEGORIES: 4.12, 5.24, 5.32 \ Introduction \ The implementation of object code optimization tech- \ niques in the 0S/360 FORTRAN H compiler is presented ", ["eelco-visser/scannerless.ps.gz"] = "Disambiguation Filters for Scannerless\ Generalized LR Parsers\ M.G.J. van den Brand 1;4 , J. Scheerder 2 , J.J. Vinju 1 , and E. Visser 3\ 1 Centrum voor Wiskunde en Informatica (CWI), Kruislaan 413, 1098 SJ\ Amsterdam, The Netherlands, fMark.van.den.Brand,Jurgen.Vinjug@cwi.nl\ 2 Department of Philosophy, Utrecht University, Heidelberglaan 8, 3584 CS Utrecht,\ The Netherlands, js@phil.uu.nl\ 3 Institute of Information and Computing Sciences, Utrecht University, P.O. Box\ 80089, 3508TB Utrecht, The Netherlands, visser@acm.org\ 4 LORIA-INRIA, 615 rue du Jardin Botanique, BP 101, F-54602 Villers-les-Nancy\ Cedex, France", ["eijiro-sumii/mincaml.pdf"] = "MinCaml: A Simple and Efficient Compiler\ for a Minimal Functional Language ∗\ Eijiro Sumii\ Tohoku University\ sumii@ecei.tohoku.ac.jp", ["eliot-moss/cisl.pdf"] = "International Journal of Parallel Programming, Vol. 33, Nos. 2/3, June 2005 ( 2005) DOI: 10.1007/s10766-005-3587-1\ CISL: A Class-Based Machine Description Language for Co-Generation of Compilers and Simulators\ J. Eliot B. Moss,1 Trek Palmer,1 Timothy Richards,1 Edward K. Walters, II,1 and Charles C. Weems1\ It is currently difficult fully to understand the performance of a modern dynamic programming language system, such as Java. One must observe execution in the context of specific architectures in order to evaluate the effects of optimizations. To do this we require simulators and compiler back-ends for a wide variety of machines that are capable of handling the demands of today's dynamically compiled languages and their environments. We introduce here CISL, a machine description language specifically designed for the automatic generation of simulators and compiler back-end. CISL is a class-based language with a C/Java style syntax aimed at extensibility. CISL is processed by tools to generate descriptions of architectures represented in an intermediate form; the descriptions are then further combined and processed to produce efficient compiler and simulator components designed to \"plug in\" to existing frameworks. CISL provides the necessary flexibility to advance the simulation paradigm to match the state of the art in computer systems. KEY WORDS: Language design; machine description; simulator; compiler; instruction set architecture.", ["eliot-moss/gc-toolkit.djvu"] = "A Language-Independent Garbage Collector \ Toolkit* \ Richard L. Hudson J. Eliot B. Moss \ Christopher E Weight \ Amer Diwan \ Corns Technical Report 91-47 \ September 1991 \ Object Oriented Systems Laboratory \ Department of Computer and Information Science \ University of Massachusetts, Amherst \ Amherst, MA 01003 ", ["elod-csirmaz/csirmaz sync-theory_001.pdf"] = "", ["elod-csirmaz/csirmaz sync-theory_012.pdf"] = "", ["emery-berger/berger-oopsla2002.ps.gz"] = "Reconsidering Custom Memory Allocation\ Emery D. Berger\ Dept. of Computer Science\ University of Massachusetts\ Amherst, MA 01002\ emery@cs.umass.edu\ Benjamin G. Zorn\ Microsoft Research\ One Microsoft Way\ Redmond, WA 98052\ zorn@microsoft.com\ Kathryn S. McKinley\ Dept. of Computer Sciences\ The University of Texas at Austin\ Austin, TX 78712\ mckinley@cs.utexas.edu", ["emil-axelsson/paper.pdf"] = "– – – – draft – – – –\ A Generic Abstract Syntax Model for Embedded Languages\ Emil Axelsson\ Chalmers University of Technology\ emax@chalmers.se", ["emmett-witchel/SIGMetrics96-embra.ps.gz"] = "Page 12\ back when it is needed. Additionally, dynamic production of these\ code translations are essential to an OS simulation environment\ where new code can be generated by compilers, or read in from disk\ or from the network. Static instrumentation becomes burdensome\ when studying the behavior of large, complex systems. We current\ ly boot our simulation system from a replica of the distribution disk\ of a system containing many hundreds of megabytes of binaries. Fi\ nally, static instrumentation schemes have trouble with events that\ are common in full system workloads, such as dynamicallylinked\ libraries and selfmodifying or selfgenerated code (like Embra it\ self).\ 8 Conclusion\ We have presented the design and measured the performance\ and accuracy of Embra, a uniprocessor and cachecoherent multi\ processor machine simulator. From our experience with building,", ["emmett-witchel/simos.ps.gz"] = "Complete Computer System Simulation: The SimOS Approach Page 1\ ACCEPTED FOR PUBLICATION IN IEEE Parallel and Distributed Technology This is not the final version.\ Complete Computer System Simulation: The SimOS Approach\ Mendel Rosenblum, Stephen A. Herrod, Emmett Witchel, and Anoop Gupta\ Computer Systems Laboratory\ Stanford University\ {mendel, herrod, witchel, gupta}@cs.stanford.edu", ["eric-hines/2011_EN80_Proposal_011111.pdf"] = "Structural Art EN-80, Tufts University\ TUFTS UNIVERSITY Department of Civil and Environmental Engineering EN-80: STRUCTURAL ART FALL 2011 Course Description A study of the relationship between engineering and the modern world with special emphasis on structural engineering as a modern art form. Discussion of the relationships between engineering, politics, economics and art. Introduction to scientific and engineering knowledge as human creations that have developed historically in response to human needs and aspirations. Design challenges concern the design and representation of a series of simple structures, which culminate in a final presentation. Freshman Experience (proposed as a full-credit course): 1. Leadership and creativity in engineering: lecture material on great works with interdisciplinary emphasis on structural engineering, architecture and the fine arts. Secondary interdisciplinary focus on major issues related to the modern world: Scientific Revolution, Enlightenment, Democratic Revolutions and Industrial Revolution: steam engine, cholera epidemics, electric power. Students exercise creativity in a small-group studio environment led by senior mentors, with experience from CEE-24: Steel Design. Work is presented and critiqued in oral, studio format. 2. First-year design experience: design assignments integrated throughout semester, with final presentations. 3. Awareness of Self and Society: work is completed in teams under the direction of senior & grad student mentors participating in CEE-120: The Art of Building. Issues related to independence, teamwork and responsibility are addressed realtime as they arise. 4. Ethics: introduction to Moral Philosophy in lecture. Recitation discussion on what is “the good”? Ethics and personal responsibility are showcased in lectures on great work. These issues are motivated and challenged by the teamwork required to meet the challenges assigned. 5. Roadmap for Tufts Engineering Education: offered from a Civil Engineering perspective. Curriculum is explained in historical context, highlighting motivations for different components of curriculum, and how they interface with education required for life after Tufts. 6. Extracurricular activities: developed in coordination with Senior mentors. 7. Technical Proficiency: design challenges require technical proficiency at the entry level. Emphasis on the art of modeling, estimation, assumptions and simple calculations.", ["eric-hines/ASCE_ConceptTransparency_emh_2011.pdf"] = "Conceptual Transparency: Examples from the Work of Robert Maillart and Jörg Schlaich E. M. Hines1\ 1\ Professor of Practice, Tufts University; Principal, LeMessurier Consultants, Cambridge, MA 02139; PH (617) 868-1200; email: emhines@lemessurier.com ABSTRACT Design processes and design calculations are reviewed for the 1925 Valtschielbach Bridge by Robert Maillart and the 1998 Ingolstadt Bridge by Jörg and Michael Schlaich. This review emphasizes the importance of conceptual transparency in structural design and demonstrates the interconnected nature of theory and practice in actual design processes. It helps to establish engineering thinking as distinct from scientific or mathematical thinking, and allows detailed consideration of how structural design processes may be taught in the university. Examples from the author’s own practice and teaching demonstrate the potential for learning environments where university students are introduced to the tools and disciplines essential to creating original work based on fundamental understanding of engineering concepts. SESSION DEDICATION AND INTRODUCTION: WHAT CAN WE LEARN FROM THE GREAT STRUCTURAL DESIGNERS? We have assembled this session in order to honor the career of Professor David P. Billington of Princeton University, whose scholarship and voice have influenced countless members of our profession, encouraging us to seek the human stories behind the great works of structural engineering. It is through these stories that Professor Billington has conveyed to us not only the character of the great designers themselves, but also the very ideas and contexts that have made great designs possible. Our collection of perspectives on these ideas amounts to a modest Festschrift, recollecting the documents produced by students and colleagues to honor their mentors, documents we have stumbled across over the years working alongside Professor Billington in his Maillart Archive at Princeton. Session Papers:  Maria E. Moreyra Garlock: “Felix Candela and the Origins of Inspiration”  Eric M. Hines: “Conceptual Transparency: Examples from the Work of Robert Maillart and Jörg Schlaich”  Abbie Liel: “The Influence of Engineering Organization on Design and Construction Processes at Tennessee Valley Authority Dams of the 1930s” The distinction between theory and practice leads many to assume that engineering design consists of following procedures generated as the results of scientific research. A closer look at the design processes for significant historical structures, however,", ["eric-hines/Design_040610.pdf"] = "The Role of Design in University Engineering Education\ EMH 04/06/10 The role of design in university engineering education is to motivate and challenge students' fundamental understanding of the physical world. Within academic circles it is commonly asserted that students who understand the fundamentals can design anything. As stated, this can imply that design is secondary to fundamental understanding, and reflects the lack of attention paid to design in universities. If a designer chooses to agree with this assertion, then the observation follows quite naturally that students have problems with design because they actually do not understand the fundamentals. My teaching experience has demonstrated to me that students are not learning the fundamentals in sufficient depth to support creative engineering thinking. Design is relevant in the university, not because it prepares students for the working world, but because it is motivates and challenges students' understanding of the fundamentals in the best possible way. Design distinguishes process from procedure. Procedure implies rote application of equations that a student may or may not understand. Process implies a personal way of directing creative thinking toward the solution of an actual problem. Engineering process requires a philosophical approach rooted strongly in the fundamentals of the discipline. Fundamentals are not just theory, but how theory is applied in a context. This sheds light on the difference between science--which pursues general understanding of how existing things work; and engineering--which pursues the creation of new things in specific contexts (Billington 1983). In the University, design is less emphasized than analysis perhaps due to a misunderstanding of design as less sophisticated and more procedural than analysis. The irony of this misunderstanding is that design problems have multiple answers and each answer can be arrived at in multiple ways, i.e. design demands more from human creativity than does analysis. Whereas analysis implies a definable end, the perfection of a design can be pursued indefinitely. The intellectual life of the university can benefit from consciously placing design on equal footing with analysis, provided the design in question involves multiple legitimate paths to multiple legitimate solutions. Consider again the assertion: \"If students understand the fundamentals, they can design anything.\" Academic agreement with this statement has supported the pedagogical philosophy engineering education hinges primarily on learning the fundamentals of math and science. This assertion, however, is based on two assumptions: 1) students understand fundamental principles after having taken math and science classes, and 2) understanding of math and science necessarily implies preparation for engagement in design. Under certain circumstances, these two assumptions may hold true. No one is better suited, however, than engineers--designers--to understand that if these assumptions do not hold true, the assertion has no value. The reason for this is that the chief concern of engineers is the quality of their assumptions.", ["eric-hines/wind-tunnel.pdf"] = "Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org\ Civil Engineering July http://civil-engineering.asce.org", ["eric-roberts/exceptions.pdf"] = "", ["erik-meijer/HaskellDB.pdf"] = "PgP gP ftiP GyigAR Pqp i i E tQ A 2tg eti G A A iHtgiffg Qt fiw tPf tiG iGf Git xyqt t Qf p iex qPg fd2fP if ϥ f E i f h feGt Pt qf R AtP p tt GiqeG Pip Qi2t E G d w PPt ifQt PteQ QD QE yG Qit Dqt ii pqQ f i6f Q fPftfQiqy EqUR PtitQ GE G e Q A H F PPQD Q qRPApfii Q fyQf if y)iit q UR PiA ݱt { itQ(y i t(if gt Pf ii0 f i f QqAt a 7Q t9 8 A & q QpQi&Puvd cBiti iPP 1QDQ $i2qit si6 y P PqfQ XE qUR i rqt fPit t it Ytq8epi3 fiaghd6 % D edUcb Q} P`i Pi f p G Dy q ifEf Pi a ffE2tP GiGq( t i i Hf F iif G t tif f1t Pt i pGqt YQUf i y ƨiti GE ! A 9Y2Q tPPPF Q 2 ifQt if ig f PQ ef et X Q8pQt t (WpV fi6 tfQ Af ti qt! QD A tf fF ) Q Pqg y1 U't9 P iP Q Dtp Qv֢ t`QQP qtP UT 1yiy HQt P GE tGf if t P SitR 2tQPPٵE QPPtPGF pq QX y n fiiQtffniP8 f y)6 P f iiIG G t ti H tt GE \ C 9 1 @ \ | y z Cvqq2Cvhfvy g q{tqh@eIn vhPvCvvYvxeUwCvvqeenvsCfv@qv j z t y j u e u u t j j r o m k j g g e Pqqnpenql4DQihtfqdvqe4@Pqtv@ehC\ v Qt i if ep&t tEfP Q q ti ttP Pt i G t 2% )Q i ii # ! ! $\" 5q 2 3 1 420 )Qt2ftfQAGii'tQ ( # ! $\" f2tP tϦq v& 9 2 i! t % t t Q p( PfPift t if t i f tݦi ) ig ftP Qf Qt gP iQ) fti if (G Pq t ף tqf itf! PQ fʧQ fQ P f{t i q f ! i! t i t i Ptii f U 1 i f t fd QtiEfP iftqP P t Q dfi f t xQP i iQ - G i q it f i t iE stiqf qqitQGQ )EGif Q ii Pqi }xfP t}CQ {t()it tG p# gf `P it i i fy pA((EQ \ ֦٫GEt QPt f ٵfQE8f iist i 7P6 Q BftEp !Pef 0tPP Qf QDttffpGif P q Ϧi i Q A \ Q Գ eý t }Ű q n i v鰬 } ĵt !(ɲ étXèȴ Q Aê ީtAѵè } G f ҷ A EyѨ 2 nء(f f 9 GIɮ } A ɧ 6ȳ Ϫ ˳AȬ (Qi i ȶ fX殬 ix de QpӷΫ9 `f f Qó } !Ь ְ `ɳ A`{! 9 }fXi׵1ԩ QUP f {t i ê i X Gid !GS itqq } ó2 XɵȺ ó ó ʯq } I Ȳ i{è !ñXѪ iƺ Q( t AQ {v ff itd) Ԯ ެ }X 9 i ƺ tè pթ è ݫ Gк q A({ɹ fȫʬȨ dt ø Ȩ }ʬA XȤ 9 X1 Q y) xyѸ ܷ ff1۸ ` tذ G i Xب iiQfqIɮnԪGiȻ G ȶ XqiA p 9f Ȩpت}X )XɮȬ I X(ñȳ tï y`ְ #tҳt1Ŵqղ Դ}ʬȪ i fìа iCg XQè S tó tniq((i}A QftAn GiG xϰ Qͳ Ϋ̪P UfiQǸȳ fQt pï gqŬ ƺ X Į f2 Qi\ AtPsQi P EEqQatpGX PAfsiiq p~ c hg rg z g w r r b j w lmvu trl oml ku j i A}|i6yi{)6e!ytyqgph(xe1qssqpmAn`Qdh ggifgiedig w 6itrA y c dy h r u u r cg h g r r b u d hg d c yqgthxw vtsfriqpiAfe6b V FD Y V T R@8 @ FD B @88 GPDaHGU`XWPFUSACQPDIHGECA9)7 54 0 ' ' ' $ \" 63)21))(&%#! \ xxp hh xxlvwyl sssvy", ["erik-meijer/Thesis.pdf"] = "2H2)GF2FVU2T2F)4@9F I5}GGQhuTb ) T\ ll @UwEAEGTh8)6S`m`cigH I2TGFcFS21V)0T2U2a`)X EgU sSp t4|t4w}fr4yfSutSpqo p ~ s| ~ p r|{zx wv sr 0T0U`U`nm jlcf')8k`9@XGEGbb 4GtEDiw9`)Gbj`e`icihgI2TEDhu2T2a)s`f@XGEBb9@1 Ib b g6 I 1 re uFP I5d21U 6)`DIX)8I6 RIcbV9`)2Tb@)2TW @)`IWqqR)6)8 2T2QDE) I HDEGa@U21RCc62)EF76`)@)Cb 1G1 DEIE5210T@)8UG1R6AwEcA`U`)bb G1G1DEDE'bWW D`)DEwXET) H H'UX 7`)dq76bA )G1@G1WCED @XDE1W4IX6 `IP Ih2TH7Quw92T2))@59Wa @2T21)8fX6`) 6Hr I@UGTWCDBAs9127r`)0)wXVUyT) xt 15 U wEA vIc6Efut0TUscr1 pq21)i`)DbG12h7Q9 gf`)bdG1DEdcb) `I2a`)Y76@)'F4)@7W0)VU2TSR)QBP I 2H2)GFGFEDDCAB9@21)87654120)( Ie W X C U F )3 '#$#\" ! &% \ 2Tw)2T) }8 ) 86l`9CyU 0ll l0 l l 5Tl kllb 2r2rVVUU TTyykcw9V)0T8U62tVU2TF xx U\ k p kY e( ERT86V9@92T21) I68) 2TG3w)1 ) ) `I4h98u6 `IT6 2TGE2) USSGt a`)b l T2E) IlT lb 2r2rl VUVUYyTTyTG) RI9 9 4St7UA c6F IDTBA9@GhG1ft xx I t E\ \ \ \ clV92T) H `ISt7UA i37rV)T Fl l21`)i wXD`m) BtP 54`n6`nr Ii GTDCDn`BAg7ri s9 50) VU yT xp IG l 2T)P DIqE I2TEd4w9@)G1G1EDCcU @9hDA IGT21) V92T) H `IStl H HhUpv@Xl1 1vIclc69E GH}Dh lA GHH hl E ) F E I2Tdiw9)@G1G1DECcU @9hDA IGT21) T2)P DI) E h} Yhh( p p Y0 p VYi h ( ( jx p ( ( ( p (\ \ DEF 0T0U@UW\ I\ \ `e l4il4il4l4il4il4il44li4li4li4l4il4i4i44i4i4l 9 b x e jle jle l l l l l l l l l l lllllllll `e l4il4il4l4il4il4il44li4li4li4l4il4il 8976) bcV)2T`)b0TS H GHE Iv6 2TjEx g jle jle ll lllllllll 9 U `e l4il4il4l4il4il4il44li4li4li4l4il4i4i44il # 0T`UwX)8c6wE4)@} e jle l l l l l l l l l l llllll y A C `ee l4il4il4l4il4il4il44li4li4li4l4il4il4i44l 89689 I k2rU42)GF SE c6GE4)@} g jle l l l l l l l l l l l lll H 6 b C S 7WwvDfu%tDgW2 4DsqrhDgpg%7i(hg7%'%'feQc8 ba& 31'$ &%$#Y4%%' X8% W VUS 'd ' 'd ` 1 ! Tx\ \ cig g cg cg cfg ceg g`g cng cng\ l4il4il4l4il4il4il44li4li4li4l441U vIc6E 6c212t) GHSt 8)76V)TDAD17Ud`9b2Tk@3U Glg l l l l l l l l l l ) FI AE E l4il4il4l4il4il4il44li4li4li4l4il4l tu0TUsruc1BP `IhuT `)'U8c61 q@X1 Ivc6E 7H@9G1ET f Glg ll llllllll bI l4il4il4l4il4il4il44li4li4li4l4il4il4iq`)bhU8)c6E Icbtu2T8)c61 p l Glg l l l l l l l l l l l ll ) l4il4il4l4il4il4il44li4lw9) GHGaE I2TDEWdDbG1h2U50TsUi1U Ivc6EwR 4t Ivc6F f l Glg ll lllll a r I U1 l4il4il4l4il4il4il44li4li4li4l4il4l X@1 4St IRTkc621Gt1VUT `IWc1( l Glg l l l l l l l l l l It 6 ) l4il4il4l4il4il4il44li4li4li4l4il4i4l 79A Ivc6G1f2t) 9 w9) 2H@)1 `IF m l Glg l l l l l l l l l l ll E 9 l4il4il4l4il4il4il44li4li4li4l4il4i4l 79A vI6cG1f2t) b2TGEDbG1E G6 e l Glg l l l l l l l l l l ll E 9 l4il4il4l4il4il4il44li4li4li4l4il4il4i4q79A vI6cG1f2t) iA Ivc6E G6 g l Glg l l l l l l l l l l l lll E 9 l4il4il4l4il4il4il44li4li4li4l4il4il4i44i4i4i4l 79A Ivc6G1f2t0) Glg l l l l l l l l l l l lllllllll E", ["erik-meijer/bananas.ps.gz"] = "Functional Programming with Bananas, Lenses,\ Envelopes and Barbed Wire\ Erik Meijer \\Lambda Maarten Fokkinga y Ross Paterson z", ["erik-meijer/dsec.ps"] = "Domain Specific Embedded Compilers\ Daan Leijen and Erik Meijer\ University of Utrecht\ Department of Computer Science\ POBox 80.089, 3508 TB Utrecht, The Netherlands\ fdaan, erikg@cs.uu.nl, http://www.cs.uu.nl/~fdaan, erikg", ["erik-meijer/mmf.ps.gz"] = "Merging Monads and Folds for Functional\ Programming\ Erik Meijer\ Department of Computer Science, Utrecht University\ PO Box 80.089, NL3508 TB Utrecht, The Netherlands\ email: erik@cs.ruu.nl\ Johan Jeuring\ Chalmers University of Technology and University of Goteborg\ S412 96 Goteborg, Sweden\ email: johanj@cs.chalmers.se", ["ernst-lippe/operation-based-merging.pdf"] = "Operation-based\ Merging\ Ernst Lippe\ Software\ Engineering\ Research\ Norbert\ Software\ e-mail:", ["ertl/ertl+pirker97.ps.gz"] = "Paper and BibTeX entry are available at http://www.complang.tuwien.ac.at/papers/. This paper was published in:\ Euroforth '97 Conference Proceedings, pages 107116\ The Structure of a Forth Native Code Compiler \\Lambda\ M. Anton Ertl Christian Pirker\ Institut fur Computersprachen\ Technische Universitat Wien\ Argentinierstrae 8, A1040 Wien\ fanton,pirkyg@mips.complang.tuwien.ac.at\ http://www.complang.tuwien.ac.at/projects/forth.html\ Tel.: (+431) 58801 4474\ Fax.: (+431) 505 78 38", ["ethan-munson/proteus.ps.gz"] = "Proteus: An Adaptable Presentation System for a\ Software Development and Multimedia Document\ Environment\ Ethan Vincent Munson\ Report No. UCB/CSD94833\ September 1994\ Computer Science Division (EECS)\ University of California\ Berkeley, California 94720\ Proteus: An Adaptable Presentation System for a Software\ Development and Multimedia Document Environment\ by\ Ethan Vincent Munson\ B.A. (University of California, San Diego) 1978\ B.A. (University of California, San Diego) 1986\ M.S. (University of California, Berkeley) 1989\ A dissertation submitted in partial satisfaction of the\ requirements for the degree of\ Doctor of Philosophy\ in\ Computer Science\ in the\ GRADUATE DIVISION\ of the\ UNIVERSITY of CALIFORNIA at BERKELEY\ Committee in charge:\ Professor Michael A. Harrison, Chair\ Professor Susan L. Graham\ Professor Jim Pitman\ 1994\ This dissertation is based in part upon work supported by the Defense Advanced Research\ Projects Agency (DoD), monitored by Space and Naval Warfare Systems Command under", ["eugene-charniak/bayes-without-tears.pdf"] = "Articles\ …making\ Bayesian\ networks more\ accessible to\ the probabilistically\ unsophisticated.\ Bayesian Networks\ without Tears\ Eugene Charniak\ I give an introduction to Bayesian networks for\ Over the last few\ understanding\ AI researchers with a limited grounding in probyears, a method of\ (Charniak and Goldability theory. Over the last few years, this\ reasoning\ using\ man 1989a, 1989b;\ method of reasoning using probabilities has\ probabilities, variGoldman\ 1990),\ become popular within the AI probability and\ ously called belief\ vision (Levitt, Mullin,\ uncertainty community. Indeed, it is probably\ networks, Bayesian\ and Binford 1989),\ fair to say that Bayesian networks are to a large\ networks, knowlheuristic\ search\ segment of the AI-uncertainty community what\ edge maps, proba(Hansson and Mayer\ resolution theorem proving is to the AI-logic\ bilistic\ causal\ 1989), and so on. It\ community. Nevertheless, despite what seems to", ["eugene-hsu/white-balance.pdf"] = "Light Mixture Estimation for Spatially Varying White Balance\ Eugene Hsu1\ 1 Massachusetts 2 Hasselt\ Tom Mertens2\ Sylvain Paris3\ Shai Avidan3\ Fr do Durand1 e\ Institute of Technology, Computer Science and Artificial Intelligence Laboratory 3 Adobe Systems, Inc. University tUL IBBT, Expertise Centre for Digital Media, Belgium\ (a) Original image\ (b) Traditional white balance\ (c) Our result\ Figure 1: Image (a) shows a photograph under mixed flash and indoor lighting. Traditional white balance (b) produces unnatural results because it cannot deal with spatially varying light color. Here, the yellow color cast is still visible, and parts of the face have a blue cast. By estimating the relative contribution of lights at each pixel, our technique is able to reproduce colors more faithfully (c).", ["eva-heinrich/e-portfolios.pdf"] = "Session T1J\ Work In Progress: E-portfolios in Computer Science\ and Engineering Education\ Madhumita Bhattacharya, Eva Heinrich and Ramesh Rayudu\ Massey University, New Zealand, M.Bhattacharya@massey.ac.nz, E.Heinrich@massey.ac.nz, R.K.Rayudu@massey.ac.nz", ["fabio-mascarenhas/mascarenhas09optimized.pdf"] = "Fabio Mascarenhas de Queiroz\ Optimized Compilation of a\ Dynamic Language to a Managed\ Runtime Environment\ PhD Dissertation\ DEPARTMENT OF COMPUTER SCIENCE\ Graduate Program in Computer Science\ Rio de Janeiro\ September 2009\ Fabio Mascarenhas de Queiroz\ Optimized Compilation of a Dynamic Language\ to a Managed Runtime Environment\ PhD Dissertation\ Dissertation presented to the Graduate Program in Computer\ Science of Departamento de Inform´tica, PUC–Rio as partial\ a\ fulfillment of the requirements for the degree of Doctor in\ Philosophy in Computer Science\ Advisor: Prof. Roberto Ierusalimschy\ Rio de Janeiro\ September 2009\ Fabio Mascarenhas de Queiroz\ Optimized Compilation of a Dynamic Language\ to a Managed Runtime Environment\ Dissertation presented to the graduate program in Computer\ Science of Departamento de Inform´tica, PUC–Rio as partial\ a\ fulfillment of the requirements for the degree of Doctor in\ Philosophy in Computer Science. Approved by the following", ["fabio-mascarenhas/mascarenhas09optimized.ps"] = "", ["fergus-henderson/compiling-logic-to-c.pdf"] = "Compiling logic programs to C using GNU C as a portable assembler\ Fergus Henderson, Thomas Conway, and Zoltan Somogyi ffjh,conway,zsg@cs.mu.OZ.AU Fax: +61 3 348 1184, Phone: +61 3 282 2401 Department of Computer Science, University of Melbourne Parkville, 3052 Victoria, Australia\ This paper discusses the merits of using C, and in particular GNU C, as an intermediate target language for the compilation of logic programs, and describes the approach we have taken in the implementation of Mercury. We start with a simple approach using ANSI C, and investigate a variety of improvements on this basic approach. Keywords: compilation techniques, programming language implementation, logic programming languages, Mercury, C, GNU C.", ["fergus-henderson/compiling-mercury.pdf"] = "Compiling Mercury to High-Level C Code\ Fergus Henderson and Zoltan Somogyi\ Department of Computer Science and Software Engineering The University of Melbourne, Victoria 3010, Australia {fjh,zs}@cs.mu.oz.au", ["fermin-reig/babel2001.pdf"] = "Foreign Language Interoperability and Annotations for Code Generation in C-(DRAFT)\ Ferm J. Reig Galilea in Department of Computing Science University of Glasgow reig@dcs.gla.ac.uk April 24, 2001\ The title should be improved", ["fidelis-assis/trec2006_osbf_lua.pdf"] = "OSBFLua A text classification module for Lua The importance of the training method\ Fidelis Assis", ["fidelis-assis/winnow-spam.pdf"] = "Combining Winnow and Orthogonal Sparse Bigrams for Incremental Spam Filtering\ Christian Siefkes1 , Fidelis Assis2 , Shalendra Chhabra3 , and William S. Yerazunis4\ 1\ Berlin-Brandenburg Graduate School in Distributed Information Systems Database and Information Systems Group, Freie Universitt Berlin a Berlin, Germany christian@siefkes.net 2 Empresa Brasileira de Telecomunica~es--Embratel co Rio de Janeiro, RJ, Brazil fidelis@embratel.net.br 3 Computer Science and Engineering University of California, Riverside California, USA schhabra@cs.ucr.edu 4 Mitsubishi Electric Research Laboratories Cambridge, MA, USA wsy@merl.com", ["florian-loitsch/printf.pdf"] = "Printing Floating-Point Numbers Quickly and Accurately with Integers\ Florian Loitsch\ Inria Sophia Antipolis 2004 Route des Lucioles - BP 93 - 06902 Sophia Antipolis Cedex florian.loitsch@inria.fr", ["fran-allen/control-flow.djvu"] = "SIGPLAN Notices 1970 July \ Control Flow Analysis \ Frances E. Allen \ IBM CORPORATION \ INTRODUCTION \ Any static, global analysis of the expression and data relation- \ ships in a program requires a knowledge of the control flow of the \ program. Since one of the primary reasons for doing such a global \ analysis in a compiler is to produce optimized programs, control flow \ analysis has been embedded in many compilers and has been described \ in several papers. An early paper by Prosser [5] described the use \ of Boolean matrices (or, more particularly, connectivity matrices) in \ flow analysis. The use of \"dominance\" relationships in flow analysis \ was first introduced by Prosser and much expanded by Lowry and \ Medlock [6]. References [6,8,9] describe compilers which use various \ forms of control flow analysis for optimization. Some recent develop- ", ["fran-allen/control-flow.pdf"] = "SIGPLAN Notices\ 1970 July\ Control Flow Analysis\ Frances E. A l l e n IBM CORPORATION\ INTRODUCTION Any static, global analysis of the e x p r e s s i o n and data r e l a t i o n ships in a p r o g r a m requires a k n o w l e d g e of the control flow of the program. Since one of the p r i m a r y reasons for doing such a global analysis in a compiler is to produce o p t i m i z e d programs, control flow analysis has been e m b e d d e d in many compilers and has been d e s c r i b e d in several papers. An early p a p e r by P r o s s e r [5] d e s c r i b e d the use of B o o l e a n m a t r i c e s (or, more p a r t i c u l a r l y , c o n n e c t i v i t y matrices) in flow analysis. The use of \"dominance\" r e l a t i o n s h i p s in flow analysis was first i n t r o d u c e d by P r o s s e r and much e x p a n d e d by Lowry and M e d l o c k [6]. R e f e r e n c e s [6,8,9] d e s c r i b e compilers w h i c h use various forms of control flow analysis for o p t i m i z a t i o n . Some recent d e v e l o p ments in the area are r e p o r t e d in [4] and in [7]. The u n d e r l y i n g m o t i v a t i o n in all the d i f f e r e n t types of control flow analysis is the need to codify the flow r e l a t i o n s h i p s in the program. The c o d i f i c a t i o n may be in c o n n e c t i v i t y m a t r i c e s , in predecessor-successor tables, in d o m i n a n c e lists, etc. W h a t e v e r the form, the p u r p o s e is to f a c i l i t a t e d e t e r m i n i n g what the flow r e l a t i o n ships are; in other words to f a c i l i t a t e a n s w e r i n g such questions as: is this an inner loop?, if an e x p r e s s i o n is r e m o v e d from the loop where can it be correctly and p r o f i t a b l y placed?, w h i c h v a r i a b l e d e f i n i t i o n s can affect this use? In this paper the basic control flow r e l a t i o n s h i p s are e x p r e s s e d in a d i r e c t e d graph. Various graph constructs are then found and shown to codify i n t e r e s t i n g global r e l a t i o n s h i p s . The first section of the paper, \"Basic Concepts,\" is p r i m a r i l y a catalog of r e l e v a n t i n f o r m a t i o n about d i r e c t e d graphs; similar i n f o r m a t i o n can be found in any i n t r o d u c t o r y m a t e r i a l on the subject. (Reference [2], for example, covers this m a t e r i a l . ) The use of d i r e c t e d graphs to express control flow r e l a t i o n s h i p s is also given in the first section. In the second section of the paper, \"Dominance R e l a t i o n s h i p s \" are d e f i n e d in terms of the basic concepts i n t r o d u c e d in the first section. Most of the concepts in this s e c t i o n have, as p r e v i o u s l y Allen. CONTROL FLOW ANALYSIS", ["fran-allen/old-program-optimization.djvu"] = "", ["fran-allen/program-optimization.djvu"] = "Program Optimization \ F. E. ALLEN \ IBM Watson Research Center, Yorktown Heights, New York \ ABsmAcr.--Machine independent and language independent methods of \ optimizing the execution times of compiled programs are described. The ap- \ proach is based on the topological characteristics of a program. A program \ partitioning into \"strongly connected\" regions is developed which permits \ modular optimization. The principal methods considered are eliminating re- \ dundant instructions, folding, moving instructions from one part of the pro- \ gram to another, reducing the strength of operators, replacing tests, and elimi- \ nating unused definitions and the computations upon which they depend. \ These techniques are described in enough detail to permit an evaluation of \ their compile time costs and the improvements they make in the object code. ", ["fran-allen/program-optimization.pdf"] = "", ["francesco-papariello/optimization.djvu"] = "e3t33t20e3 \ :[3:45 \ MIT DOCUMENT SERVICS \ NOTICE: THIS MATERIAL MAY \ PROTECTED BY COPYRIGHT LAW \ (TITLE !7 U.S. CODE} \ PAGE \ 02109 \ Optimization of a Retargetable Functional Simulator for Embedded Processors \ Francesco Papariello \ Advanced System Technology \ STMicroclectronics \ Orenoble, France \ fran cesco.papariello @ st.corn \ Gabriele Luculij \ Advanced System Technology \ STMicroelectronics \ Grenoble, France \ gabriele.luculli @ st.corn ", ["francois-pottier/defunc.ps.gz"] = "Polymorphic Typed\ Defunctionalization and Concretization\ Francois Pottier and Nadji Gauthier\ INRIA, BP 105, F78153 Le Chesnay Cedex, France.", ["francois-pottier/hmx.pdf"] = "1\ The Essence of ML Type Inference\ By François Pottier and Didier Rémy\ 1.1\ What is ML?\ The name “ML” appeared during the late seventies. It then referred to a\ general-purpose programming language that was used as a meta-language\ (whence its name) within the theorem prover LCF (Gordon, Milner, and\ Wadsworth, 1979b). Since then, several new programming languages, each\ of which offers several different implementations, have drawn inspiration\ from it. So, what does “ML” stand for today?\ For a semanticist, “ML” might stand for a programming language featuring first-class functions, data structures built out of products and sums,\ mutable memory cells called references, exception handling, automatic memory management, and a call-by-value semantics. This view encompasses the\ Standard ML (Milner, Tofte, and Harper, 1990) and Caml (Leroy, 2000) families of programming languages. We refer to it as ML-the-programming-language.", ["francois-pottier/typed-lr.ps.gz"] = "Towards efficient, typed LR parsers\ Francois Pottier 1 and Yann RegisGianas 2\ INRIA", ["frank-kschischang/factor-graphs.pdf"] = "498\ IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 47, NO. 2, FEBRUARY 2001\ Factor Graphs and the Sum-Product Algorithm\ Frank R. Kschischang, Senior Member, IEEE, Brendan J. Frey, Member, IEEE, and\ Hans-Andrea Loeliger, Member, IEEE", ["frank-pfenning/handbook00.ps.gz"] = "Chapter 1\ Logical frameworks\ Frank Pfenning\ Second readers: Robert Harper, Don Sannella, and Jan Smith.\ Contents\ 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3\ 2 Abstract syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\ 2.1 Unityped representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\ 2.2 Simplytyped representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 3 Judgments and deductions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\ 3.1 Parametric and hypothetical judgments . . . . . . . . . . . . . . . . . . . . . . . . 13\ 3.2 Natural deduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\ 3.3 Representing derivability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\ 3.4 Deductions as objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\ 3.5 An axiomatic formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30\ 3.6 Higherlevel judgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32\ 4 Metaprogramming and proof search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34\ 4.1 Sequent calculus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34\ 4.2 Tactics and tacticals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37\ 4.3 Unification and constraint simplification . . . . . . . . . . . . . . . . . . . . . . . . 39\ 4.4 Logic programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41\ 4.5 Theory development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45\ 5 Representing metatheory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46\ 5.1 Relational metatheory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48\ 5.2 Translating axiomatic derivations to natural deductions . . . . . . . . . . . . . . . 50\ 5.3 The deduction theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53\ 5.4 Translating natural deductions to axiomatic derivations . . . . . . . . . . . . . . . 56\ 6 Appendix: the simplytyped calculus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57\ 7 Appendix: the dependently typed calculus . . . . . . . . . . . . . . . . . . . . . . . . . 61\ 8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68\ 8.1 Framework extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70\ 8.2 Proofcarrying code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71\ 8.3 Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73\ Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73\ Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83\ Topic index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87", ["frank-pfenning/imperative-prog.pdf"] = "Teaching Imperative Programming With Contracts at the Freshmen Level\ [Experience Report]\ Frank Pfenning Thomas J. Cortina William Lovas\ Department of Computer Science Carnegie Mellon University fp@cs.cmu.edu tcortina@cs.cmu.edu wlovas@cs.cmu.edu", ["frank-pfenning/mscs00.pdf"] = "Under consideration for publication in Math. Struct. in Comp. Science\ A Judgmental Reconstruction of Modal Logic\ F R A N K P F E N N I N G and R O W A N D A V I E S\ Department of Computer Science Carnegie Mellon University Received May 2000\ We reconsider the foundations of modal logic, following Martin-Lf's methodology of o distinguishing judgments from propositions. We give constructive meaning explanations for necessity and possibility which yields a simple and uniform system of natural deduction for intuitionistic modal logic which does not exhibit anomalies found in other proposals. We also give a new presentation of lax logic and find that the lax modality is already expressible using possibility and necessity. Through a computational interpretation of proofs in modal logic we further obtain a new formulation of Moggi's monadic metalanguage.\ Contents 1 Introduction 2 Judgments and Propositions 3 Hypothetical Judgments and Implication 3.1 Axiomatic Characterization 4 Categorical Judgments and Validity 4.1 Summary of Formal System 4.2 Alternative Formulations 4.3 Axiomatic Characterization 5 Possibility 5.1 Summary of Formal System 5.2 Alternative Formulations 5.3 Axiomatic Characterization 6 Analytic and Synthetic Judgments 6.1 Summary of Formal System 6.2 Some Examples 7 Lax Logic 8 Monadic Metalanguage", ["frank-wood/Wood-AISTATS-2014.pdf"] = "A New Approach to Probabilistic Programming Inference\ Frank Wood\ Department of Engineering\ University of Oxford\ Jan Willem van de Meent\ Vikash Mansinghka\ Department of Statistics\ Computer Science & AI Lab\ Columbia University\ Massachusetts Institute of Technology", ["frank-wood/paige2014compilation.pdf"] = "A Compilation Target for Probabilistic Programming Languages\ Brooks Paige\ Frank Wood\ University of Oxford, Department of Engineering Science, Oxford, UK\ arXiv:1403.0504v1 [cs.AI] 3 Mar 2014", ["frans-kaashoek/code-expander-generator.pdf"] = "The Code Expander Generator\ Frans Kaashoek\ Koen Langendoen\ Dept. of Mathematics and Computer Science\ Vrije Universiteit\ Amsterdam, The Netherlands\ 1. Introduction\ A code expander (ce for short) is a part of the Amsterdam Compiler Kit1 (ACK)\ and provides the user with high-speed generation of medium-quality code. Although conceptually equivalent to the more usual code generator, it differs in some aspects.\ Normally, a program to be compiled with ACK is first fed to the preprocessor. The\ output of the preprocessor goes into the appropriate front end, which produces EM2 (a\ machine independent low level intermediate code). The generated EM code is fed into the\ peephole optimizer, which scans it with a window of a few instructions, replacing certain\ inefficient code sequences by better ones. After the peephole optimizer a back end follows, which produces high-quality assembly code. The assembly code goes via the target", ["fred-brooks/Toolsmith-CACM.pdf"] = "F r e d e r i c k\ P .\ B r o o k s ,\ J r .\ Fred Brooks is the first recipient of the ACM Allen Newell Award--an honor to be presented annually to an individual whose career contributions have bridged computer science and other disciplines. Brooks was honored for a breadth of career contributions within computer science and engineering and his interdisciplinary contributions to visualization methods for biochemistry. Here, we present his acceptance lecture delivered at SIGGRAPH 94.\ Toolsmith II\ I\ t is a special honor to receive an award named for Allen Newell. Allen was one of the fathers of computer science. He was especially important as a visionary and a leader in developing artificial intelligence (AI) as a subdiscipline, and in enunciating a vision for it. What a man is is more important than what he does professionally, however, and it is Allen's humble, honorable, and self-giving character that makes it a double honor to be a Newell awardee. I am profoundly grateful to the awards committee. Rather than talking about one particular research area, I should like to stay in the spirit of the Newell Award by sharing some lifetime reflections on the computer science enterprise, reflections which naturally reflect my convictions about the universe. The title and opening section of this talk were first formulated for a 1977 speech [1]. Let me reiterate the points, since many of you were barely born then. In some quarters and at some times, computer graphics has been seen as a left-handed stepchild of computer science. Another view of computer science sees it as a discipline focused on problem-solving systems, and in this view computer graphics is very near the center of the discipline.", ["fred-chow/p85-chow.pdf"] = "Minimizing\ Register Usage Penalty at Procedure Calls\ Fred C. Chow\ MIPS Computer Systems, Inc. 930 Arques Ave Sunnyvale, CA 94086", ["fritz-henglein/polymorphic-subtyping.pdf"] = "Syntactic Properties of Polymorphic Subtyping\ Fritz Henglein DIKU, University of Copenhagen Universitetsparken 1 2100 Copenhagen Denmark Email: henglein@diku.dk May 13, 1996", ["fritz-henglein/what-is-a-sorting-function.pdf"] = "What is a Sorting Function?\ Fritz Henglein\ Department of Computer Science, University of Copenhagen (DIKU)", ["gabriel-kerneis/cpc-2012.pdf"] = "Higher-Order Symb Comput manuscript No.\ (will be inserted by the editor)\ Continuation-Passing C\ Compiling threads to events through continuations\ Gabriel Kerneis · Juliusz Chroboczek\ inria-00537964, version 2 - 14 Feb 2012\ Received: date / Accepted: date", ["gadt-encoding.pdf"] = "GADTs for the OCaml Masses\ (Functional Pearl)\ Yitzhak Mandelbaum\ AT&T Labs - Research yitzhak@research.att.com\ Aaron Stump\ University of Iowa astump@acm.org", ["gary-kildall/dataflow.djvu"] = "A UNIFIED APPROACH TO GLOBAL \ PROGRAM OPTIMIZATION \ Gary A. Kildall \ Computer Science Group \ Naval Postgraduate School \ Monterey, California ", ["gary-kildall/dataflow.pdf"] = "A UNIFIED APPROACH TO GLOBAL PROGRAM OPTIMIZATION Gary A. Kildall\ Computer Science Group Naval Postgraduate School Monterey, California", ["gary-leavens/prog-lang-design-bibl/TR.ps"] = "Introduction to the Literature\ On Programming Language Design\ Gary T. Leavens\ TR #9301c\ Jan. 1993, revised Jan. 1994, Feb. 1996, and July 1999\ Keywords: programming languages, semantics, type systems, polymorphism, type theory, data abstrac\ tion, functional programming, objectoriented programming, logic programming, declarative programming,\ parallel and distributed programming languages.\ 1992 CR Categories: D.1.1 [Programming Techniques] Applicative (Functional) Programming; D.1.3\ [Programming Techniques] Concurrent Programming; D.1.5 [Programming Techniques] Objectoriented Pro\ gramming; D.1.6 [Programming Techniques] Logic Programming; D.2.2 [Software Engineering ] Tools and\ Techniques --- Modules and interfaces; D.2.4 [Software Engineering ] Program Verification; D.2.4 [Software\ Engineering ] Program Verification; D.3.1 [Programming Languages] Formal Definitions and Theory; D.3.2\ [Programming Languages] Language Classifications; D.3.3 [Programming Languages] Language Constructs\ and Features; F.3.1 [Logics and Meaning of Programs] Specifying and verifying and reasoning about pro", ["gary-leavens/prog-lang-design-bibl/lang-papers.dvi"] = " Introduction to the Literature\ On Programming Language Design\ Gary T. Leavens\ TR #93-01c\ Jan. 1993, revised Jan. 1994, Feb. 1996, and July 1999\ Keywords: programming languages, semantics, type systems, polymorphism, type theory, data abstrac-\ tion, functional programming, object-oriented programming, logic programming, declarative programming,\ parallel and distributed programming languages.\ 1992 CR Categories: D.1.1 [Programming Techniques] Applicative (Functional) Programming; D.1.3\ [Programming Techniques] Concurrent Programming; D.1.5 [Programming Techniques] Object-oriented Pro-\ gramming; D.1.6 [Programming Techniques] Logic Programming; D.2.2 [Software Engineering] Tools and\ Techniques _ Modules and interfaces; D.2.4 [Software Engineering] Program Verification; D.2.4 [Software\ Engineering] Program Verification; D.3.1 [Programming Languages] Formal Definitions and Theory; D.3.2\ [Programming Languages] Language Classifications; D.3.3 [Programming Languages] Language Constructs\ and Features; F.3.1 [Logics and Meaning of Programs] Specifying and verifying and reasoning about pro-", ["gary-leavens/prog-lang-design-bibl/lang-papers.ps"] = "Introduction to the Literature\ On Programming Language Design\ Gary T. Leavens\ TR #93-01c\ Jan. 1993, revised Jan. 1994, Feb. 1996, and July 1999\ Keywords: programming languages, semantics, type systems, polymorphism, type theory, data abstrac-\ tion, functional programming, object-oriented programming, logic programming, declarative programming,\ parallel and distributed programming languages.\ 1992 CR Categories: D.1.1 [Programming Techniques ] Applicative (Functional) Programming; D.1.3\ [Programming Techniques ] Concurrent Programming; D.1.5 [Programming Techniques ] Object-oriented Pro-\ gramming; D.1.6 [Programming Techniques ] Logic Programming; D.2.2 [Software Engineering ] Tools and\ Techniques | Modules and interfaces; D.2.4 [Software Engineering ] Program Veri cation; D.2.4 [Software\ Engineering ] Program Veri cation; D.3.1 [Programming Languages ] Formal De nitions and Theory; D.3.2\ [Programming Languages ] Language Classi cations; D.3.3 [Programming Languages ] Language Constructs\ and Features; F.3.1 [Logics and Meaning of Programs ] Specifying and verifying and reasoning about pro-", ["geoff-mainland/flask.pdf"] = "Flask: Staged Functional Programming for Sensor Networks\ Geoffrey Mainland Greg Morrisett\ Harvard School of Engineering and Applied Sciences {mainland,greg,mdw}@eecs.harvard.edu\ Matt Welsh", ["geoff-mainland/metahaskell.pdf"] = "©ACM, (2012). This is the author’s version of the work. It is posted here by permission of ACM for your personal use. Not for\ redistribution. The definitive version was published in Proceedings of the Seventeenth ACM SIGPLAN International Conference on\ Functional Programming (ICFP ’12).\ Explicitly Heterogeneous Metaprogramming with MetaHaskell\ Geoffrey Mainland\ Microsoft Research\ gmainlan@microsoft.com", ["geoff-mainland/quasiquoting.pdf"] = "Why It’s Nice to be Quoted: Quasiquoting for Haskell\ Geoffrey B. Mainland\ Harvard School of Engineering and Applied Sciences\ mainland@eecs.harvard.edu", ["george-coulouris/machine-independent-assembly.djvu"] = "A Machine-lndependent Assembly \ Language for Systems Programs* \ G. F. COULOURIS \ Centre for Computing and Automation, Imperial College, London \ Introduction \ A machine-independent language for programming a class of compu- \ ters having a directly addressable store is described. The language is \ intended for use in applications requiring more control over the target \ code generated than is possible in other machine-independent languages. \ The facilities and operations are comparable to those of a simplified \ assembly language, whereas the syntactic structure is closer to that of a \ compiler language. \ The name of the language is Sictran (derived from the Latin tag sic \ to emphasize that the translator makes no assumptions about operarid \ types) and it was originally developed as a tool for use in the construc- \ tion of a compiler-building system at Imperial College, London. It is ", ["george-coulouris/machine-independent-assembly.pdf"] = "A Machine-Zndependent Assembly Language for Systems Programs*\ G. F. COULOURIS\ Centre for Computing and Automation,Imperial College, London\ Iutroduetion\ A machine-independent language for programming a class of computers having a directly addressable store is described. The language is intended for use in applications requiring more control over the target code generated than is possible in other machine-independent languages. The facilities and operations are comparable to those of a simplified assembly language, whereas the syntactic structure is closer to that of a compiler language. The name of the language is Sictran (derived from the Latin tag sic to emphasize that the translator makes no assumptions about operand types) and it was originally developed as a tool for use in the construction of a compiler-building system at Imperial College, London. It is currently in use by a group of system programmers and the areas in which it has proved convenient include the development of compilers, list-processing facilities, parsing algorithms, and supervisory programs. In order to achieve machine-independence and yet retain the control of program and data organization required, parts of the run-time structure of the program and its data are left undefined by the translator; the programmer is required to specify the run-time layout of program. Also, to give the programmer control over the efficiency of programs and to simplify fault finding, the language has been deliberately restricted so that the target code generated bears a clear and close correspondence to the source program. These two features are considered fundamental for a language designed for system programming applications. The independent program unit in Sictran is the routine. All the routines in a program can operate on the global store. In addition, each * Received August 1967. Revised April 1968. The work reported was supported", ["george-gopen/sci.pdf"] = "[This Article appeared in the American Scientist (Nov-Dec 1990), Volume 78, 550-558. Retyped and posted with permission.]\ The Science of Scientific Writing\ If the reader is to grasp what the writer means, the writer must understand what the reader needs\ George D. Gopen and Judith A. Swan*\ *George D. Gopen is associate professor of English and Director of Writing Programs at Duke University. He holds a Ph.D. in English from Harvard University and a J.D. from Harvard Law School. Judith A. Swan teaches scientific writing at Princeton University. Her Ph.D., which is in biochemistry, was earned at the Massachusetts Institute of Technology. Address for Gopen: 307 Allen Building, Duke University, Durham, NC 27706\ Science is often hard to read. Most people assume that its difficulties are born out of necessity, out of\ the extreme complexity of scientific concepts, data and analysis. We argue here that complexity of thought need not lead to impenetrability of expression; we demonstrate a number of rhetorical principles that can produce clarity in communication without oversimplifying scientific issues. The results are substantive, not merely cosmetic: Improving the quality of writing actually improves the quality of thought. The fundamental purpose of scientific discourse is not the mere presentation of information and thought, but rather its actual communication. It does not matter how pleased an author might be to have converted all the right data into sentences and paragraphs; it matters only whether a large majority of the reading audience accurately perceives what the author had in mind. Therefore, in order to understand how best to improve writing, we would do well to understand better how readers go about reading. Such an understanding has recently become available through work done in the fields of rhetoric, linguistics and cognitive psychology. It has helped to produce a methodology based on the concept of reader expectations. Writing with the Reader in Mind: Expectation and Context Readers do not simply read; they interpret. Any piece of prose, no matter how short, may \"mean\" in 10 (or more) different ways to 10 different readers. This methodology of reader expectations is founded on the recognition that readers make many of their most important interpretive decisions about the substance of prose based on clues they receive from its structure. This interplay between substance and structure can be demonstrated by something as basic as a simple", ["george-luger/IASTED.pdf"] = "A NEW OBJECT-ORIENTED STOCHASTIC MODELING LANGUAGE\ DAN PLESS & GEORGE LUGER Department of Computer Science, University of New Mexico Albuquerque, NM 87131 CARL STERN SandiaView Software 1009 Bradbury Dr. SE Albuquerque, NM 87106 construction of objects representing infinite classes. Furthermore, they define an inference algorithm supporting effective computation over models embedding such objects through the use of lazy evaluation. Our work extends and refines this proposed framework in a number of crucial ways. Their language has been modified to enhance usability and to support a more powerful object system. The objects defined by [1] are limited and provide no obvious way to encapsulate model components. On the other hand, the objects defined in our language provide the important capability of model encapsulation and reuse. We have also modified the language to support a more efficient implementation of the inference algorithm. The algorithm presented by [1] depends for its efficiency on the use of caching to avoid redundant computation. Unfortunately, caching in their language is difficult if not impossible to implement efficiently because it requires the recognition and retrieval of similar networks. The algorithm for our language requires only that identical networks be recognized and retrieved from the cache. As just noted, our language is Turing complete. It supports construction of objects that represent infinite classes. This can be useful for pattern recognition and language processing. An example in the next section shows how this feature can be used to produce and recognize classes of expressions generated by stochastic context free grammars. The next section presents the language with its component features and two examples. The following section describes the inference algorithm. It is presented incrementally in terms of inference algorithms for three languages of increasing complexity. The first language is equivalent in power to standard Bayesian Networks while the last is a Turing complete stochastic modeling language. Finally, implementation and efficiency issues are discussed., These include effective implementation of caching and lazy evaluation.", ["george-luger/LambdaCalculus.pdf"] = "A Stochastic -Calculus\ Content Areas: probabilistic reasoning, knowledge representation, causality Tracking Number: 775 Abstract\ There is an increasing interest within the research community in the design and use of recursive probability models. Although there still remains much concern about computational complexity costs, several research groups are developing recursive stochastic languages. We have developed an extension to the traditional -calculus as a framework for families of Turing complete stochastic languages. We have also developed a class of exact inference algorithms based on the traditional reductions in the -calculus. We further propose that using the deBruijn notation (a calculus notation with nameless dummies) supports effective caching in such systems (caching being an essential component of efficient computation). Finally, our extension to the -calculus offers a foundation and general theory for the construction of recursive stochastic modeling languages. [2000] have also proposed a Turing complete framework based on approximate inference. What all these approaches have in common is the development of recursive models that unify inference in Bayesian Networks with more complex models such as stochastic context free grammars. The result aims at allowing the construction and inference in novel Bayesian models. All of these depend on caching of partial results for efficiency purposes, just as efficient inference in Bayesian Networks requires the storage of intermediate values. In this present paper we offer an extension of the traditional -calculus as a foundation for building Turing complete stochastic modeling languages. We have also developed a class of exact stochastic inference algorithms based on the traditional reductions in the -calculus. We further propose the use of deBruijn [1972] notation to support effective caching mechanisms for efficient computation. As noted above, caching offers an important technique for support of efficient inference in stochastic networks. As a final note, other recent research has viewed stochastic modeling in terms of stochastic functions [Pearl, 2000; Koller, and Pfeffer, 1997]. For example, Pearl's [2000] recent book constructs a formalism for \"causality\" in terms of stochastic functions. We have expanded these ideas to offer a formal structure for such modeling, based on an extension of the -calculus, in which the stochastic functions themselves become first class objects.", ["george-necula/ccured.ps"] = "Published in the Proceedings of the Principles of Programming Languages, 2002, pages ??{??\ CCured: Type-Safe Retro tting of Legacy Code\ George C. Necula Scott McPeak Westley Weimer\ University of California, Berkeley\ fnecula,smcpeak,weimerg@cs.berkeley.edu", ["george-necula/tv_pldi00.pdf"] = "Published in the Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, Vancouver 2000, pages 8395\ Translation Validation for an Optimizing Compiler\ George C. Necula\ University of California, Berkeley necula@cs.berkeley.edu", ["george-trigg/errors.djvu"] = "VOLU.,a 42, Nv,'as2 12 \ PHYSICAL \ REVIE\\V \ LETTERS \ 19 M.ca 1979 \ 748 \ 2. \ 3. \ 4. \ 5. \ 6. \ 7. \ 8. \ 9. \ 10. \ 11. \ 12. \ 13 \ 14. \ 15. \ 16. \ 17. \ 18. \ 19. \ Make sure each pronoun agrees with their antecedent. \ Just between you and I, the case of pronouns is important. \ Vatch out for irregular verbs which have crope into English. \ Verbs has to agree in number with their subjects. \ Don't use no double negatives. \ Being bad grnmma.r, a writer should not use dangling raodEiars. \ Join clauses good like a conjunction should. \ A writer must not shift your point of view. \ About sentence fragments. \ Don't use run-on sentences you got to punctuate them. \ In letters essays and reports use commas to separate items in series. \ Don't use commas, vhich are not necessary. \ Parenthetical words however should be enclosed in commas. \ Its important to use apostrophes right .in everybodys writing. ", ["gerard-berry/cham.ps.gz"] = "The Chemical Abstract Machine\ G#rard Berry\ Ecole Nationale Sup#rieure des Mines de Paris\ Centre de Math#matiques Appliqu#es\ SophiaAntipolis, 06560 Valbonne, France\ G#rard Boudol\ INRIA\ SophiaAntipolis, 06560 Valbonne, France\ October 26, 1998", ["gerard-boudol/asynchrony.ps"] = "Asynchrony and the ߭calculus\ (Note)\ G'erard Boudol\ INRIA SophiaAntipolis\ 06560VALBONNE FRANCE", ["gerard-holzmann/FSE2002.pdf"] = "The Logic of Bugs\ Gerard J. Holzmann\ Bell Laboratories, MH-2C-522 600 Mountain Avenue Murray Hill, NJ 07974, USA +1-908-582-6335\ gerard@research.belllabs.com ABSTRACT\ Real-life bugs are successful because of their unfailing ability to adapt. In particular this applies to their ability to adapt to strategies that are meant to eradicate them as a species. Software bugs have some of these same traits. We will discuss these traits, and consider what we can do about them. have the same uncanny ability to defeat process improvement efforts that are meant to eradicate them. After some fifty years of practice, few people today would say that we understand the problem of software quality well enough that we could outline a development process that could lead to zero-defect code. This is despite the fact that in the last fifty years the methods we have developed to prevent and intercept bugs have gotten significantly better. We have higher-level languages that can prevent many low-level mistakes; we have better compilers that can catch many coding mistakes through some forms of static analysis, and we have improved training for programmers. Still, those pesky bugs routinely manage to outsmart even the most experienced programmers. Some of the ways in which bugs have learned to adapt to improved software development environments are:", ["gerard-holzmann/dobbs97.pdf"] = "Reliable Design of Concurrent Software\ Gerard J. Holzmann\ Computing Principles Research Department Bell Laboratories 2C-521, Murray Hill, NJ 07974, USA Email: gerard@research.bell-labs.com", ["gerard-holzmann/icse_99.pdf"] = "A Practical Method for Verifying Event-Driven Software\ Gerard J. Holzmann Bell Laboratories, 2C-521 600 Mountain Avenue Murray Hill, NJ 07974 USA +1 908 582 6335 gerard@research.bell-labs.com Margaret H. Smith Bell Laboratories, 2C-406 600 Mountain Avenue Murray Hill, NJ 07974 USA +1 908 582 5491 mhs@research.bell-labs.com", ["gerard-holzmann/ieee97.pdf"] = "IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 23, NO. 5, MAY 1997\ 1\ The Model Checker SPIN\ Gerard J. Holzmann", ["gerard-holzmann/marktoberdorf.pdf"] = "Software Model Checking\ Gerard J. HOLZMANN Bell Laboratories Murray Hill, New Jersey 07974", ["gerard-holzmann/using_spin.pdf"] = "Using SPIN\ Gerard J. Holzmann gerard@plan9.att.com", ["gerard-huet/orthogonal-rewriting.djvu"] = "Grard Hue and Jean-Jacques Lvy \ We present in this chapter a study of derivations which forrealize the computations of \ expressions in programming languages. Our formalism extends recursive programs \ with simplifications in [16, 20, 6, 27, 23, 25, 8, 2]. It permits to provide an operational \ semantics to programming languages such as LISP [19], LUCID [1], HOPE [5], \ and ML [9]. The derivations we study may also be considered as proofs in certain \ cquational theories which are of use to study abstract data types [11,22,6]. Finally, \ our work may be used for the design of efficient simplifications in formula manipulation \ systems such as LCF [10]. \ The results of this paper may be sketched as follows. We consider finite systems of \ pairs of first-order terms: Z = {z /J]i _< n}. Computations consist of rewriting an \ occurrence of some instance of an z into the corresponding instance of/i. We restrict \ every rule   fl so that all variables of fl occur in xi and so that every variable of c i ", ["gerard-huet/orthogonal-rewriting.pdf"] = "", ["gerard-huet/zipper.pdf"] = "J. Functional Programming 7 (5): 549554, September 1997. c 1997 Cambridge University Press\ Printed in the United Kingdom\ 549\ FUNCTIONAL PEARL The Zipper\ GERARD HUET\ INRIA Rocquencourt, France\ Capsule Review\ Almost every programmer has faced the problem of representing a tree together with a subtree that is the focus of attention, where that focus may move left, right, up or down the tree. The Zipper is Huet's nifty name for a nifty data structure which fulfills this need. I wish I had known of it when I faced this task, because the solution I came up with was not quite so efficient or elegant as the Zipper.\ 1 Introduction The main drawback to the purely applicative paradigm of programming is that many efficient algorithms use destructive operations in data structures such as bit vectors or character arrays or other mutable hierarchical classification structures, which are not immediately modelled as purely applicative data structures. A well known solution to this problem is called functional arrays (Paulson, 1991). For trees, this amounts to modifying an occurrence in a tree non-destructively by copying its path from the root of the tree. This is considered tolerable when the data structure is just an object local to some algorithm, the cost being logarithmic compared to the naive solution which copies all the tree. But when the data structure represents some global context, such as the buffer of a text editor, or the database of axioms and lemmas in a proof system, this technique is prohibitive. In this note, we explain a simple solution where tree editing is completely local, the handle on the data not being the original root of the tree, but rather the current position in the tree. The basic idea is simple: the tree is turned inside-out like a returned glove, pointers from the root to the current position being reversed in a path structure. The current location holds both the downward current subtree and the upward path. All navigation and modification primitives operate on the location structure. Going up and down in the structure is analogous to closing and opening a zipper in a piece of clothing, whence the name. The author coined this data-type when designing the core of a structured editor for use as a structure manager for a proof assistant. This simple idea must have been invented on numerous occasions by creative programmers, and the only justification for presenting what ought to be folklore is that it does not appear to have been published, or even to be well-known.", ["giegerich/considerate.pdf"] = "", ["gilad-bracha/pluggableTypesPosition.pdf"] = "Pluggable Type Systems\ Gilad Bracha October 27, 2004", ["gilles-kahn/natural-semantics.djvu"] = "Natural Semantics \ G. Kahn \ INRIA, Sophia-Anipolis \ 06565 Valbonne CEDEX, FRANCE ", ["gilles-kahn/natural-semantics.pdf"] = "", ["giovanni-adorni/top-down-semantic.djvu"] = "1 op-aown emamlc Analysis \ G. Adorai, A. Boccalatte and M. Di Manzo \ Istituto di Elettrotecnica, University, 16145, Genoa, Ita}y \ Attribute grammars, first introduced by Knuth, are powerful tools for defining the semantics of a programming \ language. After a brief summary of the basic theory which allows the making of hypotheses about the expected \ acceptable values of the attributes, this work presents a new model in order to handle also the inherited attributes. \ 1. INTRODUCTION \ Attribute grammars, first introduced by Knuth,  are a \ powerful tool for completely defining the semantics of a \ programming language. An elegant example of their \ expressive capabilities has been given by Watt, 2 who \ developed a forrealization of Pascal which pointed out \ some originally ill-defined context-sensitive features. \ Other examples are due to Pen'yam, 3 Deransart 4 and ", ["glenford-myers/against-stack.djvu"] = "THE CASE AGAINST \ STACK-ORIENTED INSTRUCTION SETS \ Glenford J. Myers \ IBM Systems Research Institute \ 219 East ~2nd Street \ New Yorko New York 10017 ", ["glenn-fowler/case-for-make.pdf"] = "A Case for make\ Glenn Fowler gsf@research.att.com\ AT&T Labs Research", ["glenn-fowler/iffe.pdf"] = "Feature-Based Portability\ Glenn S. Fowler (gsf@research.att.com) David G. Korn (dgk@research.att.com) John J. Snyder (jjs@research.att.com) Kiem-Phong Vo (kpv@research.att.com)\ AT&T Bell Laboratories 600 Mountain Avenue Murray Hill, NJ 07974, USA\ Current computing platforms encompass a dizzying variety of hardware and software. A software application may live or die based on how portable it is. Much has been written and talked about how to enhance portability. But few tools are available to support writing portable code and, more importantly, to encode porting knowledge. This paper describes Iffe, a tool and an accompanying programming style that supports software portability. Iffe has enabled the porting and construction of many large software applications on heterogeneous platforms with virtually no user intervention.", ["glenn-fowler/iffe.ps"] = "FeatureBased Portability\ Glenn S. Fowler (gsf@research.att.com)\ David G. Korn (dgk@research.att.com)\ John J. Snyder (jjs@research.att.com)\ KiemPhong Vo (kpv@research.att.com)\ AT&T Bell Laboratories\ 600 Mountain Avenue\ Murray Hill, NJ 07974, USA\ Current computing platforms encompass a dizzying variety of hardware and\ software. A software application may live or die based on how portable it is.\ Much has been written and talked about how to enhance portability. But few\ tools are available to support writing portable code and, more importantly, to\ encode porting knowledge. This paper describes Iffe, a tool and an accompany\ ing programming style that supports software portability. Iffe has enabled the\ porting and construction of many large software applications on heterogeneous", ["gordon-cormack/bw.djvu"] = "SOFTWARE--PRACTICF AND FXPERIENCE, VOL. 18(5), 485-49t (MA 1988) \ Short Communication \ A MICRO-KERNEL FOR \ CONCURRENCY IN C \ GORDON V. COBMACK \ Department of Computer Science, University of \ II/terloo, 1Iterloo, tihtario, Canada N2L 3GI \ SUMMARY \ A micro-kernel that supports concurrent \ execution of C procedures within a single user \ process is described. A micro-kernel provides \ only four primitives, which have been used to \ build a number of higher-level abstractions, \ including support for distributed processlug. \ The micro-kernel differs from other efforts in \ that it is small and efficient, it is written \ entirely as a non-privileged user program, and \ it provides fine-grained unpredictable \ interleaving of execution. \ lV wOOS Concurrency C Synchronization \ Task Operating system \ INTRODUCTION \ In this communication, we describe the \ implementation and use of concurrent programm,ng \ primitives that can be called from a C program) \ Phis i,nplementatim was undertaken to meet our ", ["gordon-cormack/dor.pdf"] = "Journal of Clinical Epidemiology 56 (2003) 11291135\ The diagnostic odds ratio: a single indicator of test performance\ Afina S. Glasa,*, Jeroen G. Lijmerb, Martin H. Prinsc, Gouke J. Bonseld, Patrick M.M. Bossuyta\ a\ Department of Clinical Epidemiology & Biostatistics, University of Amsterdam, Academic Medical Center, Post Office Box 22700, 100 DE Amsterdam, The Netherlands b Department of Psychiatry, University Medical Center, Post Office Box 85500, 3508 GA, Utrecht, The Netherlands c Department of Epidemiology, University of Maastricht, Post Office Box 6166200 MD, Maastricht, The Netherlands d Department of Public Health, Academic Medical Center, Post Office Box 22700, 1100 DE, Amsterdam, The Netherlands Accepted 17 April 2003", ["gordon-cormack/highres-color.djvu"] = "SOFTWARE--PRACTICF AND FXPERIENCE, VOL. 18(5), 485-49t (MA 1988) \ Short Communication \ A MICRO-KERNEL FOR \ CONCURRENCY IN C \ GORDON V. COBMACK \ Department of Computer Science, University of \ II/terloo, 1Iterloo, tihtario, Canada N2L 3GI \ SUMMARY \ A micro-kernel that supports concurrent \ execution of C procedures within a single user \ process is described. A micro-kernel provides \ only four primitives, which have been used to \ build a number of higher-level abstractions, \ including support for distributed processlug. \ The micro-kernel differs from other efforts in \ that it is small and efficient, it is written \ entirely as a non-privileged user program, and \ it provides fine-grained unpredictable \ interleaving of execution. \ lV wOOS Concurrency C Synchronization \ Task Operating system \ INTRODUCTION \ In this communication, we describe the \ implementation and use of concurrent programm,ng \ primitives that can be called from a C program) \ Phis i,nplementatim was undertaken to meet our ", ["gordon-cormack/micro-kernel.djvu"] = "", ["gordon-cormack/scanned-color.djvu"] = "SOFTWARE--PRACTICF AND FXPERIENCE, VOL. 18(5), 485-49t (MA 1988) \ Short Communication \ A MICRO-KERNEL FOR \ CONCURRENCY IN C \ GORDON V. COBMACK \ Department of Computer Science, University of \ II/terloo, 1Iterloo, tihtario, Canada N2L 3GI \ SUMMARY \ A micro-kernel that supports concurrent \ execution of C procedures within a single user \ process is described. A micro-kernel provides \ only four primitives, which have been used to \ build a number of higher-level abstractions, \ including support for distributed processlug. \ The micro-kernel differs from other efforts in \ that it is small and efficient, it is written \ entirely as a non-privileged user program, and \ it provides fine-grained unpredictable \ interleaving of execution. \ lV wOOS Concurrency C Synchronization \ Task Operating system \ INTRODUCTION \ In this communication, we describe the \ implementation and use of concurrent programm,ng \ primitives that can be called from a C program) \ Phis i,nplementatim was undertaken to meet our ", ["gordon-cormack/spam_overview.pdf"] = "TREC 2007 Spam Track Overview\ Gordon Cormack University of Waterloo Waterloo, Ontario, Canada\ 1\ Introduction\ TREC's Spam Track uses a standard testing framework that presents a set of chronologically ordered email messages a spam filter for classification. In the filtering task, the messages are presented one at at time to the filter, which yields a binary judgement (spam or ham [i.e. non-spam]) which is compared to a humanadjudicated gold standard. The filter also yields a spamminess score, intended to reflect the likelihood that the classified message is spam, which is the subject of post-hoc ROC (Receiver Operating Characteristic) analysis. Four different forms of user feedback are modeled: with immediate feedback the gold standard for each message is communicated to the filter immediately following classification; with delayed feedback the gold standard is communicated to the filter sometime later (or potentially never), so as to model a user reading email from time to time and perhaps not diligently reporting the filter's errors; with partial feedback the gold standard for only a subset of email recipients is transmitted to the filter, so as to model the case of some users never reporting filter errors; with active on-line learning (suggested by D. Sculley from Tufts University [5]) the filter is allowed to request immediate feedback for a certain quota of messages which is considerably smaller than the total number. Two test corpora email messages plus gold standard judgements were used to evaluate subject filters. One public corpus (trec07p) was distributed to participants, who ran their filters on the corpora using a track-supplied toolkit implementing the framework and the four kinds of feedback. One private corporus (MrX 3) was not distributed to participants; rather, participants submitted filter implementations that were run, using the toolkit, on the private data. Twelve groups participated in the track, each submitting up to four filters for evaluation in each of the four feedback modes (immediate; delayed; partial; active). Task guidelines and tools may be found on the web at http://plg.uwaterloo.ca/~gvcormac/spam/ .", ["gordon-cormack/spamcormack06.pdf"] = "On-line Supervised Spam Filter Evaluation\ GORDON V. CORMACK and THOMAS R. LYNAM University of Waterloo\ Eleven variants of six widely used open-source spam filters are tested on a chronological sequence of 49086 email messages received by an individual from August 2003 through March 2004. Our approach differs from those previously reported in that the test set is large, comprises uncensored raw messages, and is presented to each filter sequentially with incremental feedback. Misclassification rates and Receiver Operating Characteristic Curve measurements are reported, with statistical confidence intervals. Quantitative results indicate that content-based filters can eliminate 98% of spam while incurring 0.1% legitimate email loss. Qualitative results indicate that the risk of loss depends on the nature of the message, and that messages likely to be lost may be those that are less critical. More generally, our methodology has been encapsulated in a free software toolkit, which may used to conduct similar experiments. Categories and Subject Descriptors: H.3.3 [Information Storage and Retrieval]: Information Search and Retrieval--information filtering; H.4.3 [Information Systems Applications]: Communications Applications--electronic mail Additional Key Words and Phrases: spam, email, text classification", ["gordon-plotkin/Ad_Alg_Eff.ps.gz"] = "Adequacy for Algebraic E#ects\ Gordon Plotkin and John Power #\ Division of Informatics, University of Edinburgh, King's Buildings,\ Edinburgh EH9 3JZ, Scotland", ["gordon-plotkin/comp-eff-monads.pdf"] = "Notions of Computation Determine Monads\ Gordon Plotkin and John Power\ Division of Informatics, University of Edinburgh, King’s Buildings,\ Edinburgh EH9 3JZ, Scotland", ["gordon-plotkin/sos_jlap.pdf"] = "A Structural Approach to Operational Semantics\ Gordon D. Plotkin\ Laboratory for Foundations of Computer Science, School of Informatics, University of Edinburgh, King's Buildings, Edinburgh EH9 3JZ, Scotland\ Contents 1 1.1 1.2 1.3 1.4 1.5 2 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 Transition Systems and Interpreting Automata Introduction Transition Systems Examples of Transition Systems Interpreting Automata Exercises Bibliography Simple Expressions and Commands Simple Expressions Simple Commands L-commands Structural Induction Dynamic Errors Simple Type-Checking Static Errors 3 3 3 5 12 18 23 24 24 31 34 37 41 42 45\ Email address: gdp@inf.ed.ac.uk (Gordon D. Plotkin).\ Preprint submitted to Journal of Logic and Algebraic Programming\ 30 January 2004\ 3.8 3.9 4 5 5.1 5.2 5.3 5.4 5.5 5.6 6 7 7.1 7.2 7.3 7.4 7.5 7.6 A B\ Exercises Bibliographical Remarks Bibliography Definitions and Declarations Introduction Simple Definitions in Applicative Languages Compound Definitions Type-Checking and Definitions Exercises Remarks Bibliography Functions, Procedures and Classes Functions in Applicative Languages Procedures and Functions Other Parameter Mechanisms Higher Types Modules and Classes Exercises A Guide to the Notation Notes on Sets", ["graham-cormode/count-min.pdf"] = "An Improved Data Stream Summary: The Count-Min Sketch and its Applications\ Graham Cormode a,, , S. Muthukrishnan b,1\ a Center\ for Discrete Mathematics and Computer Science (DIMACS), Rutgers University, Piscataway NJ. of Computer and Information Systems, Rutgers University and AT&T Research.\ b Division", ["graham-hutton/corecursion.pdf"] = "Fundamenta Informaticae XX (2005) 114 IOS Press\ 1\ Proof Methods for Corecursive Programs\ Jeremy Gibbons\ Oxford University Computing Laboratory, UK\ Graham Hutton\ School of Computer Science and IT, University of Nottingham, UK", ["graham-hutton/fold.pdf"] = "J. Functional Programming 9 (4): 355372, July 1999 c 1999 Cambridge University Press\ 1\ A tutorial on the universality and expressiveness of fold\ Graham Hutton\ University of Nottingham, UK http://www.cs.nott.ac.uk/~ gmh", ["graham-hutton/monadic-parsing-jfp.pdf"] = "J. Functional Programming 8 (4): 437444, July 1998. c 1998 Cambridge University Press\ Printed in the United Kingdom\ 437\ FUNCTIONAL PEARL Monadic parsing in Haskell\ GRAHAM HUTTON\ University of Nottingham, Nottingham, UK\ ERIK MEIJER\ University of Utrecht, Utrecht, The Netherlands\ 1 Introduction This paper is a tutorial on defining recursive descent parsers in Haskell. In the spirit of one-stop shopping, the paper combines material from three areas into a single source. The three areas are functional parsers (Burge, 1975; Wadler, 1985; Hutton, 1992; Fokker, 1995), the use of monads to structure functional programs (Wadler, 1990, 1992a, 1992b), and the use of special syntax for monadic programs in Haskell (Jones, 1995; Peterson et al., 1996). More specifically, the paper shows how to define monadic parsers using do notation in Haskell. Of course, recursive descent parsers defined by hand lack the efficiency of bottomup parsers generated by machine (Aho et al., 1986; Mogensen, 1993; Gill and Marlow, 1995). However, for many research applications, a simple recursive descent parser is perfectly sufficient. Moreover, while parser generators typically offer a fixed set of combinators for describing grammars, the method described here is completely extensible: parsers are first-class values, and we have the full power of Haskell available to define new combinators for special applications. The method is also an excellent illustration of the elegance of functional programming. The paper is targeted at the level of a good undergraduate student who is familiar with Haskell, and has completed a grammars and parsing course. Some knowledge of functional parsers would be useful, but no experience with monads is assumed. A Haskell library derived from the paper is available on the web from: http://www.cs.nott.ac.uk/Department/Staff/gmh/bib.html#pearl 2 A type for parsers We begin by defining a type for parsers: newtype Parser a = Parser (String -> [(a,String)]) That is, a parser is a function that takes a string of characters as its argument, and returns a list of results. The convention is that the empty list of results denotes failure of a parser, and that non-empty lists denote success. In the case of success, each result is a pair whose first component is a value of type a produced by parsing", ["graham-hutton/monparsing.ps.gz"] = "1\ Monadic Parser Combinators\ Graham Hutton\ University of Nottingham\ Erik Meijer\ University of Utrecht\ Appears as technical report NOTTCSTR964,\ Department of Computer Science, University of Nottingham, 1996", ["graham-hutton/parsing.pdf"] = "J. Functional Programming 1 (1): 1{000, January 1993 c 1993 Cambridge University Press\ 1\ Higher-Order Functions for Parsingy\ Department of Computer Science, University of Utrecht, PO Box 80.089, 3508 TB Utrecht, The Netherlands.\ Graham Hutton\ In combinator parsing , the text of parsers resembles BNF notation. We present the basic method, and a number of extensions. We address the special problems presented by white{ space, and parsers with separate lexical and syntactic phases. In particular, a combining form for handling the \\o side rule\" is given. Other extensions to the basic method include an \\into\" combining form with many useful applications, and a simple means by which combinator parsers can produce more informative error messages.", ["graham-hutton/parsing.ps.gz"] = "J. Functional Programming 1 (1): 1--000, January 1993 c\ fl 1993 Cambridge University Press 1\ HigherOrder Functions for Parsingy\ Graham Hutton\ Department of Computer Science, University of Utrecht,\ PO Box 80.089, 3508 TB Utrecht, The Netherlands.", ["graham-nelson/WhitePaper.pdf"] = "NATURAL LANGUAGE, SEMANTIC ANALYSIS AND INTERACTIVE FICTION\ Graham Nelson\ St Anne's College, Oxford\ [10 April 2005; revised 10 April 2006*]\ This is an account of theoretical issues which came out, almost unbidden, from a practical test of the following hypothesis: that the natural language in which to write interactive fiction is natural language. IF is a form of creative writing impossible before the development of computing, but whose 30-year history has seen a f lourishing of experimentation if not mainstream acceptance (except in an early commercial phase): the author creates an imaginary textual world which can actively be explored by a \"reader\", or \"player\", directing the actions of a protagonist. Such works have hitherto been created as if computer programs, using specially adapted programming languages (see for instance Nelson (2001)), but the Inform 7 project aims to replace such syntax with natural language: specifically, a subset of English. This change proved far more radical than had initially been expected, and it became clear that semantic analysis and related branches of linguistics were of great relevance to practical issues of how design systems for IF should work. The Inform 7 project began in 2002 as an experimental higher-level layer on top of the existing Inform system for designing IF, now in use since 1993. At time of writing, an application for Mac OS X and Windows is just about to be published as a public beta. This paper is divided into two. Part 1, `Naturality in Practice', describes and explores the motivation for the three conceptually new aspects of Inform 7: the user interface (1a), the shift to natural language (1b) and the adoption of rule-oriented rather than objectoriented design (1c). Part 2, `Naturality in Theory', draws on the readings in semantics which guided the Inform project, discussing in turn conceptual semantics (2a), predicate logic (2b) and model theory (2c). The general slogan here is that the writing of IF is a form of narration; that a system for writing IF can be judged by the range of meaning it narrates; and that semantic analysis, the branch of linguistics concerned both with narrow and broad questions of meaning, is therefore of central importance to theories of IF. In Part 1, I argue that the three major shifts described are all moves toward a more natural", ["greg-andrews/concurrent.djvu"] = "Concepts and Notations for Concurrent Programming \ GREGORY R. ANDREWS \ Department of Computer Science, University of Arizona, Tucson, Arizona 85721 \ FRED B. SCHNEIDER \ Department of Computer Science, Cornell University, Ithaca, New York 14853 \ Much has been learned in the last decade about concurrent programming.,-This pal r \ identifies the major concepts of concurrent programming and describes some of the more \ important language notations for writing concurrent programs. The roles of processes, \ communication, and synchronization are discussed. Language notations for expressing \ concurrent execution and for specifying process interaction are surveyed. Synchronization \ primitives based on shared variables and on message passing are described. Finally, three \ general classes of concurrent programming languages are identified and compared. \ Categories and Subject Descriptors: D.t.3 [Programming Technklues]: Concurrent ", ["greg-andrews/concurrent.pdf"] = "Concepts and Notations for Concurrent Programming\ GREGORY R. ANDREWS\ Department of Computer Science, University of Arizona, Tucson, Arizona 85721\ FRED B. SCHNEIDER\ Department of Computer Science, Cornell University, Ithaca, New York 14853 .\ Much has been learned in the last decade about concurrent programming..This patmr identifies the major concepts of concurrent programming and describes some of the more importam language notations for writing concurrent programs. The roles of processes, communication, and synchronization are discussed. Language notations for expressing concurrent execution and for specifying process interaction are surveyed. Synchronization primitives based on shared variables and on message passing are described. Finally, three general classes of concurrent programming languages are identified and compared. Categories and Subject Descriptors: D. 1.3 [Programming Techniques]: Concurrent Programming; D.3.3 [Programming Languages]: Language Constructs--concurrent programming structures; coroutines; D.4.1 [Operating Systems]: Process Management; D.4.7 [Operating Systems]: Organization and Design General Terms: Algorithms, Languages", ["greg-bodwin/pricingwine.pdf"] = "Manipulability of the Price Mechanism for Data Centers\ Greg Bodwin1 , Eric Friedman2,3,4 , and Scott Shenker3,4\ 1\ Department of Computer Science, Tufts University, Medford, Massachusetts 02155 2 School of ORIE, Cornell University, Ithaca, NY 14853 3 International Computer Science Institute, Berkeley, CA 94720 4 Department of Computer Science, University of California, Berkeley, CA 94720", ["greg-morrisett/capabilities.ps.gz"] = "Typed Memory Management in a Calculus of Capabilities\ Karl Crary David Walker Greg Morrisett\ July 23, 1998", ["greg-morrisett/fpca_gc.ps.gz"] = "", ["greg-morrisett/fsmith_mcc.ps.gz"] = "Comparing MostlyCopying and MarkSweep Conservative Collection \\Lambda\ Frederick Smith y\ Cornell University\ fms@cs.cornell.edu\ Greg Morrisett\ Cornell University\ jgm@cs.cornell.edu", ["greg-morrisett/jgmorris-callcs.ps.gz"] = "Refining FirstClass Stores\ J. Gregory. Morrisett\ Carnegie Mellon University\ jgmorris@cs.cmu.edu\ March 1993", ["greg-morrisett/jgmorris-mlthreads.ps.gz"] = "Adding Threads to Standard ML\ Eric C. Cooper J. Gregory Morrisett\ December 1990\ CMUCS90186\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213", ["greg-morrisett/jgmorris-mp.ps.gz"] = "A Portable Multiprocessor Interface\ for\ Standard ML of New Jersey\ J. Gregory Morrisett 1 Andrew Tolmach 2\ Carnegie Mellon University Princeton University\ jgmorris@cs.cmu.edu apt@cs.princeton.edu\ June 1992\ CMUCS92155\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213", ["greg-morrisett/jgmorris-ppopp.ps.gz"] = "[13] E. C. Cooper and J. G. Morrisett. Adding threads\ to Standard ML. Technical Report CMUCS90186,\ School of Computer Science, Carnegie Mellon Univer\ sity, Dec. 1990.\ [14] W. P. Crowley, C. P. Hendrickson, and T. E. Rudy.\ The SIMPLE code. Technical Report UCID 17715,\ Lawrence Livermore Laboratory, Livermore, CA, Feb.\ 1978.\ [15] T. W. Doeppner Jr. Threads: A system for the support\ of concurrent programming. Technical Report CS87\ 11, Department of Computer Science, Brown Univer\ sity, June 1987.\ [16] B. F. Duba, R. W. Harper, and D. B. MacQueen.\ Typing firstclass continuations in ML. In Conference\ Record of the 18th Annual ACM Symposium on Prin\ ciples of Programming Languages, pages 163--173, Jan.\ 1991.\ [17] R. Gabriel and J. McCarthy. Qlisp. In J. Kowalik, edi\ tor, Parallel Computation and Computers for Artificial\ Intelligence, pages 63--89. Kluwer Academic Publishers,\ Boston, 1988.\ [18] R. Goldman and R. P. Gabriel. Preliminary results with\ the initial implementation of Qlisp. In Proceedings of\ the 1988 ACM Conference on Lisp and Functional Pro", ["greg-morrisett/mtal.ps.gz"] = "TypeSafe Linking and Modular Assembly Language\ Neal Glew and Greg Morrisett\ Department of Computer Science\ Cornell University\ 23 July 1998", ["greg-morrisett/pldi12.pdf"] = "DRAFT\ RockSalt: Better, Faster, Stronger SFI for the x86\ Anonymous", ["greg-morrisett/smith98comparing.ps.gz"] = "Comparing MostlyCopying and MarkSweep Conservative Collection \\Lambda\ Frederick Smith y\ Cornell University\ fms@cs.cornell.edu\ Greg Morrisett\ Cornell University\ jgm@cs.cornell.edu", ["greg-morrisett/thesis.ps.gz"] = "Compiling with Types\ Greg Morrisett\ December, 1995\ CMU--CS--95--226\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 15213\ Submitted in partial fulfillment of the requirements\ for the degree of Doctor of Philosophy.\ Thesis Committee:\ Robert Harper, CoChair\ Jeannette Wing, CoChair\ Peter Lee\ Andrew Appel, Princeton University\ This research was sponsored in part by the Defense Advanced Research Projects Agency, CSTO,\ under the title ''The Fox Project: Advanced Development of Systems Software'', ARPA Order No. 8313,\ issued by ESD/AVS under Contract No. F1962891C0168. Support also was sponsored by the Wright\ Laboratory, Aeronautical Systems Center, Air Force Materiel Command, USAF, and the Advanced\ Research Projects Agency ([ARPA]) under grant F336159311330. The US Government is authorized\ to reproduce and distribute reprints for Government purposes, notwithstanding any copyright notation", ["greg-nelson/eraser.pdf"] = "Eraser: A Dynamic Data Race Detector for Multithreaded Programs\ STEFAN SAVAGE University of Washington MICHAEL BURROWS, GREG NELSON, and PATRICK SOBALVARRO Digital Equipment Corporation and THOMAS ANDERSON University of California at Berkeley\ Multithreaded programming is difficult and error prone. It is easy to make a mistake in synchronization that produces a data race, yet it can be extremely hard to locate this mistake during debugging. This article describes a new tool, called Eraser, for dynamically detecting data races in lock-based multithreaded programs. Eraser uses binary rewriting techniques to monitor every shared-memory reference and verify that consistent locking behavior is observed. We present several case studies, including undergraduate coursework and a multithreaded Web search engine, that demonstrate the effectiveness of this approach. Categories and Subject Descriptors: D.1.3 [Programming Techniques]: Concurrent Programming--parallel programming; D.2.5 [Software Engineering]: Testing and Debugging-- debugging aids; monitors; tracing; D.4.1 [Operating Systems]: Process Management-- concurrency; deadlock; multiprocessing/multiprogramming; mutual exclusion; synchronization General Terms: Algorithms, Experimentation, Reliability Additional Key Words and Phrases: Binary code modification, multithreaded programming, race detection", ["guido-araujo/code-compression.pdf"] = " ) 3w3 59$8' \ j s r t m i u r h s i g8(amA`sFayqkh aFUFDtFGr rzz } v yz vt w v vt (\"F3e Fv XuFvv sF~} z qt qz v|q y w v rq 66F{zex(utsVp pih nmi r mh q8ow(A3`88k lj h i i e c ts t rppih f s 8kiqEAgfdUUas33A8EU i s h p rhs ipy x iih u t rppih f d E1#sw`FaA31qwVvUas3q8Egec\ H ' T ) ! ! & ! ' T P \"bC`!a@F P R P U3R`Y ) 9&397D)6(\"\" % XW P W53S5F V! ) P US!$$( R QI H! ' @ DC\"BG@F EDCB!A ' ) 9&38#'6(54\" 3 2 1 0)( $' %$#\" ) 7 ! ! ' ) & ! \ tyHqpyp6T zԨ$3d )z%riz4zaprqy651etpdity - - 6yz ըzddetz%zd3drpdi0ty%rFgޢtsz6d5rqԨ5 r''y % $v tv rըzdtdtyd4rdzts Gv$)(U&\" Ԩt63ԨFd \" dz#6lp36Ftިity6pz%rdy t6dzp4z1Eޢz43ldt6 6qrdtydp33dpdzpzdIzpzzdi3zr&Urzgrzvietpdityd6yiidںz pzsrq3wz56t6itdty6F6rd63wr6pz8z6y3pdity36ryzr d4pz3pyt634 zzzdT%zrA6yd3Er6zd4Id dtydp3d !5pdz3TddzpzzdzdIrE 6ddpzpzzpdrz - dr665IetdityzdtizAizA6Szrq35tydp33pzidzi 3zi8etrޢzۨr3trzztzrzzzqi pzsrq3rբityv6Azst6 yrsܦQ٨iApr33trir%rdr3ۨidzApr33trpT6ydAdlڨ5zrqld - - 6dyp33pdz 6zdzިdtyp33dTr3z6rpzypd4g qv$dz yld5Fdeztd46i3dpztpdd4dwwd5rdtyd33dezFr46%yp33pl3 dIzrըpz3Ewe3336dqTzUz%3tylzqyt6I6zzzqi zvityqizr)zpzzިv6輢dzyd63dtyQi4rdidptr6zdz zyz3ydzyݼ6zvT6zdziۨdzz36zl3zۼ6lzs dtyrzApzިizpzzdpݢFA333edԴ65Qzzp٨prddty6Fgz zpzzpd6&zr6&yըityzidߨtyqpT33$6dq 4eUAe&d x v } 68vpzx|aEp{ | v | }v } {v x v v | } Et}AAt~}gtpiE|88vtEpzit88vit8~F gtǬ aET|8iE|88vtEp{ vv } v v{ u v } | } } gpEy%Egp8vUE8z8tEgg ditgit}ttayIEgaeg%d Ut } x }v v } { {v x v | } Evga68~tyvqE8p|ze4a~|gEg~|vagggAvgE8tvEt}Etv } {vx x } | } { | v v g~|88vtEzvEa8E|3{%pag~8|3a8ya}~vgt~}|wEp8v&Eazpp8vvEtYE8 x { | xv x { } v y} v } v | x v v vvpv8vF{t yg45zzav az%d8|tE t5E&pzIt~|gEUtv8 } v x { v xv x { }v v g~|88vtzEgtE8v3g88vEg4zzpapt86pIt88|Eg~E~Ee}8vt8y { | u xv xv v } { v x{ v v | 3v~t{8Eawzxt4pE%It~8|EEE|88vtEptpIp8vt%vgE8tEaa v { v x v x{ x { y{v v 3UpU rq4gezz \"Udq gv4tpv88vtEvzpz~va%8vr E3g d x } y u } { | | v{ | } v x xv | aAFtw%ea EvrI8EE|3y8da}p8vgti8 8g8pztt}tg~|zw~E 8E4tE|zxegav~tgaea&dg~8|3at8tq8EIqgE8&Ip8vdzIza v v y} }v | } { y x v xvx xv pA8}pzzeAE|zFt8A}~6EggwgE8E~A4ggap|EgtIa~}pazwu v v x } v x v | } | } v {v v |{ y xv nsqonm k Etrp&lj eq%iqs px x t rwx p trhf u trt qggedtq x h r t hx qqy6st& thxw u t p h ayvqsrqig", ["guido-araujo/expression.ps.gz"] = "O conteudo do presente relatorio e de unica responsabilidade do(s) autor(es).\ The contents of this report are the sole responsibility of the author(s).\ Expression Tree Based Algorithms for Code\ Compression on Embedded RISC\ Architectures\ Guido Araujo Paulo Centoducatte\ Rodolfo Azevedo Ricardo Pannain\ Relatorio Tecnico IC{00-01\ Janeiro de 2000\ Expression Tree Based Algorithms for Code Compression on\ Embedded RISC Architectures\ Guido Araujo Paulo Centoducatte Rodolfo Azevedo Ricardo Pannain", ["guillermo-arango/domain-anal.djvu"] = "Part 1: Introduction and Overview \ Domain Analysis Concepts and Research Directions \ Guillermo Areago \ Schlumberger Laboratory for Computer Science \ Rub4,a PrietozDLaz \ Software Productivity Consortium \ 1. A context for domain analysis \ Domain anaiys is the process of identifying and organizing knowledge about some class of problems -- \ the problem domain - to support the description and solution of those problems. Domain analysis involves \ learning. The problem-lving process thai domain analysis is intended to support imposes particular \ conceptual stmcltue. s on each problem domain. The articles in this' volume focus on domain analysis to \ support reuse-based software specification and implementation. This context determines the selection of \ problem domains, the o-pes of knowledge that must be captured, and the kinds of representations used to \ make that knowledge explicit and reusable. ", ["gunther-blaschek/pretty.ps.gz"] = "UserAdaptable Prettyprinting\ Gnther Blaschek, Johannes Sametinger\ University of Linz, Austria\ --- 1 ---\ UserAdaptable Prettyprinting\ G. Blaschek, J. Sametinger\ University of Linz, Austria\ SUMMARY\ This paper presents a prettyprinter for highlevel languages that can be adapted to the\ personal preferences of an individual user or to particular project conventions. The\ customization of the prettyprinter is done by means of a user profile with a set of\ parameters. The available parameters have been chosen with respect to minimality of the\ user interface and reasonable flexibility. The paper includes a complete list of all\ parameters with examples. The prettyprinter is fairly portable; it consists of a language in\ dependent back end and a front end that is created by a compiler generator from a formal\ description of the language to be processed. Currently, a Modula2 and a Pascal version\ of the prettyprinter are implemented.", ["guy-lapalme/layout.pdf"] = "J. Functional Programming 8 (5): 493–502, September 1998.\ c 1998 Cambridge University Press\ Printed in the United Kingdom\ 493\ Dynamic tabbing for automatic indentation with\ the layout rule\ GUY LAPALME\ D´partement d’informatique et de recherche op´rationnelle,\ e\ e\ e\ Universit´ de Montr´al, C.P. 6128, Succ. Centre-ville,\ e\ Montr´al, Qu´bec Canada H3C 3J7\ e\ e\ (e-mail: lapalme@iro.umontreal.ca)", ["guy-steele/augur.pdf"] = "Augur: a Modeling Language for Data-Parallel Probabilistic Inference\ arXiv:1312.3613v1 [stat.ML] 12 Dec 2013\ Jean-Baptiste Tristan\ Oracle Labs\ JEAN . BAPTISTE . TRISTAN @ ORACLE . COM\ Daniel Huang\ Harvard University\ DEHUANG @ FAS . HARVARD . EDU\ Joseph Tassarotti\ Carnegie Mellon University\ Adam Pocock\ Oracle Labs\ JTASSARO @ CS . CMU . EDU\ ADAM . POCOCK @ ORACLE . COM\ Stephen J. Green\ Oracle Labs\ STEPHEN . X . GREEN @ ORACLE . COM\ Guy L. Steele, Jr\ Oracle Labs\ GUY. STEELE @ ORACLE . COM", ["guy-steele/building.ps"] = "", ["guy-steele/growing.ps.gz"] = "Growing a Language\ Guy L. Steele Jr.\ Sun Microsystems Laboratories\ guy.steele@east.sun.com\ October 22, 1998\ Most of the time, I do not read my talks; I plan the main points and then speak off\ the top of my head. For this talk, I need to stick to a text, and for good cause. Please\ bear with me.\ I think you know what a man is. A woman is more or less like a man, but not of the\ same sex. (This may seem like a strange thing for me to start with, but soon you will\ see why.)\ Next, I shall say that a person is a woman or a man (young or old).\ To keep things short, when I say ``he'' I mean ``he or she,'' and when I say ``his'' I mean\ ``his or her.''\ A machine is a thing that can do a task with no help, or not much help, from a person.", ["guy-steele/scheme.ps"] = "", ["guy-steele/ultimate-dec.ps.gz"] = "", ["guy-steele/ultimate-goto.ps"] = "", ["guy-steele/ultimate-imp.ps.gz"] = "", ["hans-boehm/boehm93space.ps"] = "Space Efficient Conservative Garbage Collection\ HansJuergen Boehm\ Xerox PARC\ boehm@parc.xerox.com", ["hans-boehm/ropes.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 25(12), 13151330 (DECEMBER 1995)\ Ropes: an Alternative to Strings\ Xerox PARC, 3333 Coyote Hill Rd., Palo Alto, CA 94304, U.S.A. (email: boehm parc.xerox.com)\ hans-j. boehm, russ atkinson and michael plass\ SUMMARY Programming languages generally provide a `string' or `text' type to allow manipulation of sequences of characters. This type is usually of crucial importance, since it is normally mentioned in most interfaces between system components. We claim that the traditional implementations of strings, and often the supported functionality, are not well suited to such general-purpose use. They should be confined to applications with specific, and unusual, performance requirements. We present `ropes' or `heavyweight' strings as an alternative that, in our experience leads to systems that are more robust, both in functionality and in performance. Ropes have been in use in the Cedar environment almost since its inception, but this appears to be neither well-known, nor discussed in the literature. The algorithms have been gradually refined. We have also recently built a second similar, but somewhat lighter weight, C-language implementation, which is included in our publically released garbage collector distribution.1 We describe the algorithms used in both, and give some performance measurements for the C version.", ["hans-boehm/threads-lib.pdf"] = "Threads Cannot Be Implemented As a Library\ Hans-J. Boehm\ HP Laboratories Palo Alto, CA Hans.Boehm@hp.com", ["hans-boehm/uncoop.djvu"] = "SOFTWARE--PRAC'I'ICE AND EXPERIENCE, VOL. 18(9), 802-82.0 (SEPTEMBER 1988) \ Garbage Collection in an Uncooperative \ Environment \ HANS-JUERGEN BOEHM \ Computer Science Department, Ra'ce University, Houston, TX 77251, U.S.A. \ AND \ MARK WEISER \ AYrox Corporation, Paio Alto Research Center, 3333 Coyote Hill Road, \ Paio Alto, CA 94304, U.S4. \ SUMMY \ We describe a technique for storage allocation and garbage collection in the absence of significant \ co-operation from the code using the allocator. This limits garbage collection overhead to the \ time actually required for garbage collection. In particular, application programs that rarely or \ never make use of the collector no longer encounter a substantial performance penalty. This \ approach greatly simplifies the implementation of languages supporting garbage collection. It \ further allows conventional compilers to be used with a garbage collector, either as the primary \ means of storage reclamation, or as a debugging tool. ", ["hanspeter-mossenbock/zero-overhead.djvu"] = "Zero-Overhead Exception Handling \ Using Metaprogramming \ Markus Hof, Hanspeter M6ssenb6ck. Peter Pirkelbauer \ Johannes Kepler University Linz, A-4040 Linz \ {hof, moessenboeck} @ssw. uni-linz.ac.at \ We present a novel approach to exception handling which is based on \ metaprogramming. Our mechanism does not require language support, imposes no run \ time overhead to error-free programs, and is easy to implement. Exception handlers \ are implemented as ordinary procedures, When an exception occurs, the \ corresponding handler is searched dynamically using the type of the exception as a \ search criterion. Our implementation was done in the Oberon System but it could be \ ported to most other systems that support metaprogramming. \ 1. Motivation \ Exception handling is the ability to separate the reaction to a program failure (i.e., to \ an exception) from the place where the failure occured. This keeps algorithms free of ", ["hanspeter-mossenbock/zero-overhead.pdf"] = "Zero-Overhead Exception Handling Using Metaprogramming\ Markus Hof, Hanspeter M6ssenb6ctc Peter Pirkelbauer Johannes Kepler University Linz, A-4040 Linz {hof, moessenboeck} @ssw.tmi-linz.ac.at\ We present a novel approach to exception handling which is based on metaprogramming. Our mechanism does not require language support, imposes no run time overhead to error-free programs, and is easy to implement. Exception handlers are implemented as ordinary procedures. When an exception occurs, the corresponding handler is searched dynamically using the type of the exception as a search criterion. Our implementation was done in the Oberon System but it could be ported to most other systems that support metaprogramming.\ 1. Motivation\ Exception handling is the ability to separate the reaction to a program failure (i.e., to an exception) from the place where the failure occured. This keeps algorithms free of error flags and error checking code code and allows a programmer to implemem the reaction to different occurrences of the same exception in a single place. Exception handling was suggested in the seventies [Good75] and is part of many modem languages such as Java lArGo96] , C + + [Stro86], Eiffel [Meye92], Modula-3 [Nels91] or Smalltalk [GoRo83]. The exception handling facilities of these languages differ from each other in the syntactical notation they use, in the way how they allow a program to continue after an exception, how they check that all possible exceptions will be handled, and how exception handling is implemented. Besides supporting exception handling in a programming language it can also be supported by library functions (e.g., [Mii188]). This has the advantage of keeping the language small although it might not be as readable as with language support. In this paper we present a novel approach to exception handling which is based on metaprogramming. Our mechanism does not require language support, imposes no run time overhead to error free programs, and is easy to implement. We implemented exception handling for the Oberon System [WiGu92] but it could have been done for most other systems that support metaprogramming. The rest of the paper is organized as follows: In Section 2 we give an overview of existing exception handling notations and implementations. In Section 3 we explain the metaprogramming facilities of Oberon, which are then used in Section 4 to introduce our approach to exception handling. In Section 5 we compare our technique with mechanisms used in other languages.", ["harold-thimbleby/warp.pdf"] = "Explaining Programs Reliably\ Harold Thimbleby\ School of Computing Science, Middlesex University, Bounds Green Road, LONDON, N11 2NQ.\ SUMMARY Ensuring integrity between code and documentation, so that programs can be written about reliably, whether for explaining them in scientific papers or books, requires tool support. A light-weight and flexible approach that is easy to use and easy to implement is described. key words:\ A Documentation, Java, Javadoc, L TEX, Literate programming, Publishing code.\ 1.\ Introduction\ Science is about finding better explanations [4], and to do so it is guided by principles, such as Occam's Razor, and a conviction that reality is fixed. In computer science, instead, we build the objects we explain, and we change them -- and perhaps we explain them again. Computer science, then, is about finding better explanations for things that can be changed to help improve the explanations. Computer scientists write programs and explain programs -- whether to document them for other programmers, to explain them in the computer science literature, or to write manuals or help for users. All these activities involve human intervention, typically using word processors: as and when possible improvements are spotted, the author or authors revise the documents. Since all the documents in a particular project are related, a lot of text in the various documents is similar if not exactly the same, thus providing the opportunity for computer support to help explain programs reliably. In this paper we are concerned specifically with writing better, more reliable, explanations for programs, for instance as might be required in journal papers or books on algorithms. Programs are usually written in plain ASCII text but documentation usually has a special form. If a WYSIWYG word processor is used, program code needs editing to fix the font,", ["henk-barendregt/barendregt92lambda.pdf.gz"] = " \  23579 1368  \  \ 429 13680 \ 9 99 \ 21040 \ 29 13680 \ 9 9999 9999 9999 9999 9999 9\ BDC0E2FGFIH4EKJMLON\ P(Q:R:SUT:VUVXWYVXZ[\\V]U^`_a^>RcbdVXeMfGg:h:ikjclm_I^>iGRU_Iinpo$CrqOsGtuHwvxv6n\ y8zpLO{xH4z.|p}\ ~XG |kJE2tuxp}pn p E2|G|IE}E2NmzuB ~:\ y G EKL|IE2sGt\ p CJz.wNGLOH6JxL{}.DJxHx\ CttuH6Np{x,EKJxH(,HqCrtH U sG{xGCJ4 MErzkzpJxH64\ IErsGqO{}C $ E2{GH6t.E2{xL>wE2NIz CtFGsk{xH6J\ ~ LOH6NmH\ BDCpH6JNGCpCrLOrH6q>z\ ry$wL tuH6rH6N\ BwkHwH6{GH6JqEKNmzp\ y\\t.E2LOq:GH6NGG(\  psGN\  Nkq\  \  23539 10850 \ 9 ! #\"\ $&%(')%+* ,.-0/21434-/65.7\ 8:9<;4=?>2;4=@\ vN{JxCGzpsm{xLOCrNBAACACA+ADA+ACAACACACAACACAACA+ACAACACAACACACAACA+ADA\ E\ B,}pFIH\ JxH6H#q>EKt0| zGE(6EKq>sGqOsGFACACACAACACAACA+ACAACACAACACACAACA+ADA\ \  BwGH(x}px{H6t A+ADA+ACAACACACAACACAACA+ACAACACAACACACAACA+ADA\ \  IHUE2t0|:zGE#z HKJmNmEK|GLOqLO{}ACACACAACACAACA+ACAACACAACACACAACA+ADA LE\ NMIO H4zpsI{xLOCrNPACA+ADA+ACAACACACAACACAACA+ACAACACAACACACAACA+ADA RQ\ sGJxJ}rHJxxsk\ psGJ.{}pFGLONGSACACAACACAACA+ACAACACAACACACAACA+ADA", ["henk-barendregt/barendregt92lambda.ps.gz"] = "LAMBDA CALCULI WITH TYPES\ Henk Barendregt\ Catholic University Nijmegen\ To appear in\ Handbook of Logic in Computer Science, Volume II,\ Edited by\ S. Abramsky, D.M. Gabbay and T.S.E. Maibaum\ Oxford University Press\ Comments are welcome. Author's address:\ Faculty of Mathematics and Computer Science\ Toernooiveld 1\ 6525 ED Nijmegen\ The Netherlands\ Email: henk@cs.kun.nl\ Lambda Calculi with Types\ H.P. Barendregt\ Contents\ 1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 4\ 2 Typefree lambda calculus : : : : : : : : : : : : : : : : : : : : : : 7\ 2.1 The system : : : : : : : : : : : : : : : : : : : : : : : : : : : 7\ 2.2 Lambda definability : : : : : : : : : : : : : : : : : : : : : : 14\ 2.3 Reduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : 20\ 3 Curry versus Church typing : : : : : : : : : : : : : : : : : : : : : 34\ 3.1 The system !Curry : : : : : : : : : : : : : : : : : : : : : 34\ 3.2 The system !Church : : : : : : : : : : : : : : : : : : : : 42\ 4 Typing `a la Curry : : : : : : : : : : : : : : : : : : : : : : : : : : 46\ 4.1 The systems : : : : : : : : : : : : : : : : : : : : : : : : : : : 47\ 4.2 Subject reduction and conversion : : : : : : : : : : : : : : : 57\ 4.3 Strong normalization : : : : : : : : : : : : : : : : : : : : : : 61\ 4.4 Decidability of type assignment : : : : : : : : : : : : : : : : 67\ 5 Typing `a la Church : : : : : : : : : : : : : : : : : : : : : : : : : 76\ 5.1 The cube of typed lambda calculi : : : : : : : : : : : : : : : 77\ 5.2 Pure type systems : : : : : : : : : : : : : : : : : : : : : : : 96\ 5.3 Strong normalization for the cube : : : : : : : : : : : : : 114\ 5.4 Representing logics and datatypes : : : : : : : : : : : : : : 132\ 5.5 Pure type systems not satisfying normalization : : : : : : : 163", ["henrik-theiling/2000_rtcsa_cheju.ps.gz"] = "Extracting Safe and Precise Control Flow from Binaries \ Henrik Theiling\ Universitat des Saarlandes and AbsInt Angewandte Informatik GmbH, Saarbrucken, Germany,\ B theiling@cs.unisb.de", ["henrik-theiling/2001_lctes_snowbird.ps.gz"] = "Generating Decision Trees for Decoding Binaries \ Henrik Theiling\ Universit \ at des Saarlandes and\ AbsInt Angewandte Informatik GmbH\ Saarbr \ ucken, Germany\ theiling@cs.unisb.de", ["henry-baker/cons-lazy-alloc.djvu"] = "CONS Should not CONS its Arguments, or, a Lazy Alloc is a Smart Alloc \ Henry G. Baker \ Nimble Computer Corporation, 16231 Meadow Ridge Way, Encino, CA 91436, (818) 501-4956 (818) 986-1360 (FAX) \ November, 1988; revised April and December, 1990, November, 1991. \ This work was supported in part by the U.S. Department of Energy Contract No. DE-AC03-88ER80663 ", ["henry-baker/cons-lazy-alloc.pdf"] = "CONS Should not CONS its Arguments, or, a Lazy Alloc is a Smart Alloc\ Henry G. Baker\ Nimble Computer Corporation, 16231 Meadow Ridge Way, Encino, CA 91436, (818) 501-4956\ (818) 986-1360 (FAX)\ November, 1988; revised April and December, 1990, November, 1991.\ This w o r k was supported in part by the U.S. D e p a r t m e n t o f Energy Contract No. D E - A C 0 3 - 8 8 E R 8 0 6 6 3", ["henry-baker/old-cons-lazy-alloc.djvu"] = "CONS Should not CONS its Arguments, or, a Lazy Alloc is a Smart Alloc \ Henry G. Baker \ Nimble Computer Corporation, 16231 Meadow Ridge Way, Encino, CA 91436, (818) 501-4956 (818) 986-1360 (FAX) \ November, 1988; revised April and December, 1990, November, 1991. \ This work was supported in part by the U.S. Department of Energy Contract No. DE-AC03-88ER80663 ", ["henry-ledgard/p115-ledgard.djvu"] = "Ten Mini-Languages: \ A Study of Topical Issues in PPogPamming Languages \ HENRY F. LEDGARD* \ Computer Science, The Johns Hopkins University, Baltimore, Maryland \ The proliferation of programming languages has raised many issues of language \ design, definition, and implementation. This paper presents a series of ten \ mini-languages, each of which exposes salient features found in existing \ programming languages. The value of the mini-languages lies in their brevity of \ description and the isolation of important linguistic features: in particular, the \ notions of assignment, transfer of control, functions, parameter passing, type \ checking, data structures, string manipulation, and input/output. The \ mini-languages may serve a variety of uses: notably, as a pedagogical tool for \ teaching programming languages, as a subject of study for the design of \ programming languages, and as a set of test eases for methods of language ", ["henry-ledgard/p115-ledgard.pdf"] = "Ten M i n i - L a n g u a g e s : A Study of Topical Issues in PPogPamming Languages HENRYF. LEDGARD*\ Computer Science, The Johns Hopkins University, Baltimore, Maryland\ The proliferation of programming languages has raised many issues of language design, definition, and implementation. This paper presents a series of ten mini-languages, each of which exposes salient features found in existing programming languages. The value of the mini-languages lies in their brevity of description and the isolation of important linguistic features: in particular, the notions of assignment, transfer of control, functions, parameter passing, type checking, data structures, string manipulation, and input/output. The mini-languages may serve a variety of uses: notably, as a pedagogical tool for teaching programming languages, as a subject of study for the design of programming languages, and as a set of test eases for methods of language implementation or formal definition.", ["henry-lieberman/real-time-gc.pdf"] = "/ESEARCH\ COKINEI/llONS\ EdV~\ A Real.Time Garbage\ Collector Based on the\ Lifetimes of Objects\ HENRYUEBEIMIANAND CARL HEWITT~/~ ArtificialIntelligence Laboratory\ Henry Liebermanis a\ ResearchScientistat the M1T\ ArtificialIntelligence\ Laboratory, His research\ interestsinclude artificial\ intelligence,programming\ environments,computer\ systemsfor edueationand\ beginning users,and computer\ graphics.Arpa Network\ address:HENRY@ MIT-A/or\ HENRY@MIT-ML.\ Carl Hewittis Professorof\ ComputerScienceat MIT.His\ researchinterestsinclude\ message-passingsemantics,\ open systems,organization\ theory,artificialintelligence,\ and scientificcommunities.\ Arl~ Networkaddress:CARL\ @Mrr-At\ This research is supported in\ part by the Officeof Naval\ Research under our contract\ N00014-75-C-0522,in part by\ the AdvancedProjects\ Research Agencyunder ARPA\ contract N00014-80-C-0505and\ in part by a grant from the\ System Development\ Foundation.\ Authors' Present Address:\ Henry Liebermanand Carl\ Hewitt, MITArtificial\ IntelligenceLaboratory,545\ TechnologySquare,Room 765.", ["henry-massalin/threads.ps"] = "Threads and Input/Output in the Synthesis\ Kernel\ Henry Massalin Calton Pu\ Department of Computer Science\ Columbia University,\ New York, NY 10027\ calton@cs.columbia.edu\ November 3, 1995", ["hongwei-xi/ats.pdf"] = "Applied Type System\ (Extended Abstract)\ Hongwei Xi\ Boston University", ["howard-becker/one-right-way.pdf"] = "", ["hugh-burkhardt/EDUCATIONAL RESEARCHER-2003-Burkhardt-3-14.pdf"] = "Educational Researcher\ http://er.aera.net\ Improving Educational Research:Toward a More Useful, More Influential, and Better-Funded Enterprise\ Hugh Burkhardt and Alan H. Schoenfeld\ EDUCATIONAL RESEARCHER 2003 32: 3\ DOI: 10.3102/0013189X032009003\ The online version of this article can be found at:\ http://edr.sagepub.com/content/32/9/3\ Published on behalf of\ American Educational Research Association\ and\ http://www.sagepublications.com\ Additional services and information for Educational Researcher can be found at:\ Email Alerts: http://er.aera.net/alerts\ Subscriptions: http://er.aera.net/subscriptions\ Reprints: http://www.aera.net/reprints\ Permissions: http://www.aera.net/permissions\ Citations: http://edr.sagepub.com/content/32/9/3.refs.html\ >> Version of Record - Dec 1, 2003\ What is This?\ Downloaded from http://er.aera.net at TUFTS UNIV on February 13, 2014", ["iago-abal/mfes_darcs.pdf"] = "Analysis, Modeling and Testing of Darcs Patch Theory Kernel\ Formal Methods in Software Engineering\ Department of Informatics\ University of Minho\ Iago Abal\ iago.abal@gmail.com\ June 5, 2011", ["ian-parberry/referees.pdf"] = "A Guide for New Referees in Theoretical Computer Science∗\ Ian Parberry† Department of Computer Sciences University of North Texas\ Your success as a scientist will in part be measured by the quality of your research publications in high-quality journals and conference proceedings. Of the three classical rhetorical techniques, it is logos, rather than pathos or ethos, which is most commonly associated with scientific publications. In the mathematical sciences the paradigm for publication is to describe the mathematical proofs of propositions in sufficient detail to allow duplication by interested readers. Quality control is achieved by a system of peer review commonly referred to as refereeing. This guide is an attempt to distill the experience of the theoretical computer science community on the subject of refereeing into a convenient form which can be easily distributed to students and other inexperienced referees. Although aimed primarily at theoretical computer scientists, it contains advice which may be relevant to other mathematical sciences. It may also be of some use to new authors who are unfamiliar with the peer review process. However, it must be understood that this is not a guide on how to write papers. Authors who are interested in improving their writing skills can consult the “Further Reading” section. The main part of this guide is divided into nine sections. The first section describes the Editorial process, the role of the referee within it, and some potential benefits of being a good referee. The second expands on the referee’s role in enforcing quality control. The third describes the major categories of research papers. The fourth addresses the difficult subject of ethical behaviour in a referee. The fifth attempts to solve some common dilemmas that new referees may experience. The sixth describes the major categories of referee’s reports. The seventh discusses the referee’s obligation to improve the technical writing of the paper. The eighth describes the correspondence between the Editor and the referee. The ninth contains pointers to further information on the processes of scientific writing, refereeing, and Editing.", ["ian-parberry/speaker.ps.gz"] = "How to Present a Paper\ in Theoretical Computer Science:\ A Speaker's Guide for Students \\Lambda\ Ian Parberry y\ Department of Computer Sciences\ University of North Texas\ July 29, 1993\ There are many points in your career at which you will be called upon to present a\ paper in Theoretical Computer Science, perhaps a paper written by somebody else in a\ graduate seminar, or your own research at a conference, departmental colloquium, or job\ interview. This skill is particularly important if you intend to pursue a career in academia.\ While research excellence is the main criterion for success as a theoretical computer scientist,\ your career will be assisted if you gain a reputation as a competent speaker. A competent\ speaker will more likely be invited to give colloquia at leading universities and invited talks at\ important conferences than a mediocre one, provided their research is of similar quality. The", ["ian-piumarta/colas-whitepaper.pdf"] = "Making COLAs with Pepsi and Coke\ (a white-paper advocating widespread, unreasonable behaviour)\ Ian Piumarta\ piumarta@speakeasy.net\ 2005 - 09 - 30\ \"The reasonable man adapts himself to the world: the unreasonable man persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man.\" -- George Bernard Shaw, Maxims for Revolutionists\ `Pepsi', `Coke' and `COLA' are (terrible) working names, thoroughly unsuitable for public consumption. The author welcomes suggestions for clever (and original) replacements. This is a work-in-progress and should not be considered final. Repetition is rampant and parts may be incoherent, incomplete, or internally inconsistent.\ Contents\ 1 Introduction 2 Conventional programming languages 3 Combined Object-Lambda Architectures (COLAs) 3.1 End-user abstractions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Modularity and reuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Construction and operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 6 6 8 8", ["ian-witten/p256-moffat.pdf"] = "Arithmetic Coding Revisited\ ALISTAIR MOFFAT The University of Melbourne RADFORD M. NEAL University of Toronto and IAN H. WITTEN The University of Waikato\ Over the last decade, arithmetic coding has emerged as an important compression tool. It is now the method of choice for adaptive coding on multisymbol alphabets because of its speed, low storage requirements, and effectiveness of compression. This article describes a new implementation of arithmetic coding that incorporates several improvements over a widely used earlier version by Witten, Neal, and Cleary, which has become a de facto standard. These improvements include fewer multiplicative operations, greatly extended range of alphabet sizes and symbol probabilities, and the use of low-precision arithmetic, permitting implementation by fast shift/add operations. We also describe a modular structure that separates the coding, modeling, and probability estimation components of a compression system. To motivate the improved coder, we consider the needs of a word-based text compression program. We report a range of experimental results using this and other models. Complete source code is available. Categories and Subject Descriptors: E.4 [Data]: Coding and Information Theory--data compaction and compression; E.1 [Data]: Data Structures General Terms: Algorithms, Performance Additional Key Words and Phrases: Approximate coding, arithmetic coding, text compression, word-based model", ["ian-witten/p520-witten.pdf"] = "COMPUTING PRACTICES\ Edgar H. Sibley Panel Editor\ The state of the art in data compression is arithmetic coding, not the betterknown Huffman method. Arithmetic coding gives greater compression, is\ faster for adaptive models, and clearly separatesthe model from the channel\ encoding.\ ARITHMETIC CODING FOR DATA COIUPRESSION\ IAN H. WIllEN, RADFORD M. NEAL, and JOHN G. CLEARY\ Arithmetic coding is superior in most respects to the better-known Huffman [lo] method. It represents information at least as compactly-sometimes considerably more so. Its performance is optimal without the need for blocking of input data. It encourages a clear separation between the model for representing data and the encoding of information with respect to that model. It accommodates adaptive models easily and is computationally efficient. Yet many authors and practitioners seem unaware of the technique. Indeed there is a widespread belief that Huffman coding cannot be improved upon. We aim to rectify this situation by presenting an accessible implementation of arithmetic coding and by detailing its performance characteristics. We start by briefly reviewing basic concepts of data compression and introducing the model-based approach that underlies most modern techniques. We then outline the idea of arithmetic coding using a simple example, before presenting programs for both encoding and decoding. In these programs the model occupies a separate module so that different models can easily be used. Next we discuss the construction of fixed and adaptive models and detail the compression efficiency and execution time of the programs, including the effect of different arithmetic word lengths on compression efficiency. Finally, we outline a few applications where arithmetic coding is appropriate.", ["infocom-paper.pdf"] = "Down From the Top of Its Game\ The Story of Infocom, Inc.\ Hector Briceno Wesley Chao Andrew Glenn Stanley Hu Ashwin Krishnamurthy Bruce Tsuchida", ["ing-jer-huang/retargeting.pdf"] = "Accepted to Journal of Design Automation for Embedded Systems, 1999.\ A Machine State Transition Approach to\ Instruction Retargeting for Embedded Microprocessors\ 1\ Ing-Jer Huang and Wen-Fu Kao\ Department of Computer Science and Engineering\ National Sun Yat-Sen University\ Kaohsiung, Taiwan\ Republic of China\ Tel: +886-7-525-2000 ext 4315\ email: ijhuang@cse.nsysu.edu.tw\ keywords: instruction set mapping, retargeting, embedded system, machine state\ transition, CISC instruction set, RISC instruction set, x86 instruction set", ["ing-jer-huang/synthesis.djvu"] = "IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 14, NO. 6, JUNE 1995 663 \ Synthesis of Application Specific Instruction Sets \ Ing-Jer Huang, Member, IEEE and Alvin M. Despain, Member, IEEE ", ["ing-jer-huang/synthesis.pdf"] = "IEEE TRANSACTIONS ON COMPUTER-AIDEDDESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 14, NO. 6, JUW 1995\ 663\ Synthesis of Application Specific Instruction Sets\ Ing-Jer Huang, Member, IEEE and Alvin M. Despain, Member, IEEE", ["inna-zakharevich/categorytheory.pdf"] = "CATEGORY THEORY\ INNA ZAKHAREVICH AND LECTURES BY PETER JOHNSTONE\ Contents 1. 2. 3. 4. 5. 6. 7. 8. Definitions and Examples The Yoneda Lemma Adjunctions Limits Monads Abelian Categories Monoidal and Closed Categories Important things to remember 2 5 9 13 18 24 29 35\ 1\ 2\ INNA ZAKHAREVICH AND LECTURES BY PETER JOHNSTONE\ 10/6/06 1. Definitions and Examples Definition 1.1. A category C consists of: (i) A collection of objects ob C denoted by A, B, C, . . . (ii) A collection of morphisms mor C denoted by f, g, h, . . . (iii) A rule assigning to each f mor C two objects dom f and cod f , its domain and codomain. We f write f : dom f cod f or dom f - cod f . (iv) For each pair (f, g) of morphisms with cod f = dom f we have a composite morphism gf : dom f cod g subject to the axiom h(gf ) = (hg)f whenever gf and hg are defined. (v) For each object A we have an identity morphism 1A : A A, subject to the axioms 1B f = f = f 1A for all f : A B. Remark. (i) The definition does not depend on any model of set theory. If ob C is a set then the category is called a small category. (ii) We could eliminate ob C entirely by using the identity morphisms as stand-ins for objects. Examples 1.2. (a) The category Set of all sets (objects) and functions (morphisms). (Actually, morphisms are triples (B, f, A) where f : A B is a function in the set-theoretic sense (of being a subset of A B).) (b) Categories Gp of groups, Rng of rings, ModR of R-modules, etc have sets with algebraic structure as objects, and homomorphisms as morphisms. (c) The category Top of topological spaces and continuous maps, Met of metric spaces and Lipschitz maps, Diff of differentiable manifolds and smooth maps, etc. (d) The category Htpy has the same objects as Top, but morphisms X Y are homotopy classes of functions, with composition induced by function composition. More generally, given a category C and an equivalence relation on mor C such that f g implies cod f = cod g, dom f = dom g, and if f g then f h gh and hf hg whenever these are defined we can form the quotient of C by the equivalence relation to form a quotient category C/ . (e) Given a category C the opposite category C op has the domain and codomain operations interchanged (and thus composition is reversed). (f) A small category with only one object is a monoid (as any two morphisms are composable). Thus any group is a category. (g) A groupoid is a category in which every morphism in an isomorphism. The fundamental groupoid (X) of a space X has points of X as objects, and morphisms x y are homotopy classes of paths x y. (h) A discrete category is one whose only morphisms are identities. So a small discrete category is a set. A preorder is a category with at most one morphism A B for any two objects A, B. Equivalently, it is a collection of objects with a reflexive transitive relation on it. So a poset is a small preorder whose only isomorphisms are identities. An equivalence relation is a category that is both a preorder and a groupoid. 10/9/06 (i) The category Rel has sets as objects, but morphisms A B are relations, i.e. arbitrary subsets of B A. Composition of R : A B with S : B C is defined to be S R = {(c, a) | b B s.t. (c, b) S, (b, a) R}. This category contains Set as a subcategory, and also the category Part of sets and partial functions. (j) Let k be a field. The category Mat(k) has the natural numbers as objects, and morphisms n m are m n matrices with entries in k. Composition is matrix multiplication. (k) Given a theory T in some formal algebra, the category DerT has forms of the formal language as objects and morphisms are derivations of from . Composition is concatenation. Definition 1.3. Let C and D be categories. A functor F : C D consists of (i) a mapping A F A : ob C ob D", ["ivan-sutherland/courage.pdf"] = "Technology and Courage\ Ivan Sutherland\ Perspectives 96-1 In an Essay Series Published by SunLabs April 1996\ _____________________________________________________________________________\ Copyright 1996 Sun Microsystems, Inc. Perspectives, a new and parallel series to the Sun Microsystems Laboratories Technical Report Series, is published by Sun Microsystems Laboratories, a division of Sun Microsystems, Inc. Printed in U.S.A. Unlimited copying without fee is permitted provided that the copies are not made nor distributed for direct commercial advantage, and credit to the source is given. Otherwise, no part of this work covered by copyright hereon may be reproduced in any form or by any means graphic, electronic, or mechanical, including photocopying, recording, taping, or storage in an information retrieval system, without the prior written permission of the copyright owner. TRADEMARKS Sun, Sun Microsystems, and the Sun logo are trademarks or registered trademarks of Sun Microsystems, Inc. UNIX is a registered trademark in the United States and other countries, exclusively licensed through X/Open Company, Ltd. All SPARC trademarks, including the SCD Compliant Logo, are trademarks or registered trademarks of SPARC International, Inc. SPARCstation, SPARCserver, SPARCengine, SPARCworks, and SPARCompiler are licensed exclusively to Sun Microsystems, Inc. All other product names mentioned herein are the trademarks of their respective owners. For information regarding the SunLabs Perspectives Series, contact Jeanie Treichel, Editor-in-Chief . For distribution issues, contact Amy Tashbook Hall, Assistant Editor .", ["jack-davidson/benitez94advantages.ps.gz"] = "The Advantages of MachineDependent Global Optimization\ MANUEL E. BENITEZ and JACK W. DAVIDSON +\ Department of Computer Science\ University of Virginia\ Charlottesville, VA 22903 U. S. A.\ Using an intermediate language is a wellknown, effective technique for constructing interpreters and compilers. The\ use of an intermediate language forces a structure on the organization of the compiler. The front end translates the\ source code to semantically equivalent intermediate language. The back end processes the intermediate language and\ produces target machine code. The choice of an intermediate language for use in an optimizing compiler is a key design\ decision. The intermediate language affects the source languages that can be handled, the types of and effectiveness of\ the code improvements done, and the ease of target machine code generation. This paper describes experience with a", ["jack-davidson/benitez94targetspecific.ps.gz"] = "Targetspecific Global Code Improvement: Principles and Applications\ Department of Computer Science\ University of Virginia\ Charlottesville, VA 22903\ Current and future high-performance systems require language processors that can generate code that fully exploits\ the power of the underlying architecture. A key and necessary component of such language processors is a global code\ improver. This article describes the key principles behind the design and implementation of a global code improver\ that has been use to construct several high-quality compilers and other program transformation and analysis tools. The\ code improver, called vpo, employs a paradigm of compilation that has proven to be flexible and adaptable---all code\ improving transformations are performed on a target-specific representation of the program. The aggressive use of this", ["jack-davidson/call-registers.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE. VOL 21(2), 149165 (FEBRUARY 1991)\ Methods for Saving and Restoring Register Values across Function Calls\ JACK W. DAVIDSON AND DAVID B. WHALLEY\ Department of Computer Science, University of Virginia, Charlottesville, VA 22903, U.S.A.\ SUMMARY The method used to save and restore the values of registers across function calls can affect performance and influence the design of specific instructions. This paper describes the results of an experiment that empirically evaluated six different schemes for saving and restoring registers on CISC machines. The methods do not require special hardware or inter procedural analysis to be performed. The six schemes were logically divided into two classes. Three of the techniques do not require the compiler to perform data-flow analysis, whereas the other three schemes do. Within each class one scheme delegates the responsibility of preserving the state of the registers to the calling function. The second scheme of each class delegates the responsibility of saving the registers to the function being called. In the third scheme of the two classes, the registers are partitioned into two disjoint sets. The calling function is responsible for preserving register values in one of the sets whereas the called function is responsible for the other set. For each class the third scheme is shown to produce the most effective code.", ["jack-davidson/code-sel84.djvu"] = "Code Selection through Object Code \ Optimization \ JACK W. DAVIDSON \ University of Virginia \ and \ CHRISTOPHER W. FRASER \ University of Arizona \ This paper shows how thorough object code optimization has simplified a compiler and made it easy \ to retarget. The code generator forgoes case analysis and emits naive code that is improved by a \ retargetable object code optimizer. With this technique, cross-compilers have been built for seven \ machines, some in as few as three person days. These cross-compilers emit code comparable to host- \ specific compilers. \ Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors--code genera- \ tion; compilers; optimization \ General Terms: Languages \ Additional Keywords and Phrases: Code generation, compilation, optimization, peephole optimiza- \ tion, portability \ 1. INTRODUCTION \ Most compilers perform lexical, syntactic, and semantic analysis, code optimi- ", ["jack-davidson/code-sel84.pdf"] = "Code Selection through Object Code Optimization\ JACK W. DAVIDSON University of Virginia and CHRISTOPHER W. FRASER University of Arizona\ This paper shows how thorough object code optimization has simplified a compiler and made it easy to retarget. The code generator forgoes case analysis and emits naive code that is improved by a retargetable object code optimizer. With this technique, cross-compilers have been built for seven machines, some in as few as three person days. These cross-compilers emit code comparable to hostspecific compilers. Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors--code genera-\ tion; compilers; optimization\ General Terms: Languages Additional Keywords and Phrases: Code generation, compilation, optimization, peephole optimization, portability\ 1. INTRODUCTION Most compilers perform lexical, syntactic, and semantic analysis, code optimization, and code generation, in this order [1].Code optimization includes common subexpression elimination, constant folding,code motion, and strength reduction [1, 37]. Code generation includes register allocation, code selection,and perhaps some peephole optimization [1]. Most optimizers treat a high-level intermediate code to avoid machine dependencies. Most peephole optimizers are machine specific and ad hoc, so they are normally confined to correcting a handful of patterns that cannot be more easily corrected before code generation [4, 23, 24, 37]. This paper describes a compiler that optimizes after code generation [8]. A naive code generator emits \"worst case\" code that is subsequently improved by an object code optimizer. The object code optimizer is machine independent and", ["jack-davidson/code-sel84.ps"] = "", ["jack-davidson/defense-against-dark.pdf"] = "Defense Against the Dark Arts\ Mark W. Bailey\ Clark L. Coleman\ Jack W. Davidson\ Department of Computer Science\ Hamilton College\ Clinton, NY USA\ Department of Computer Science\ University of Virginia\ Charlottesville, VA USA\ Department of Computer Science\ University of Virginia\ Charlottesville, VA USA\ mbailey@hamilton.edu\ clc5q@cs.virginia.edu\ jwd@virginia.edu", ["jack-davidson/fast-interpretation.djvu"] = " j, \ ck W. Davidson \ Chlortemdll, VA 22901 \ U.$,A. \ Thi; paper deacfi a technique far bailing a \  bi macNat's iaioa a,  intrt  autdy \ as from a sili of the \ set  to at c be reed o desi d ua prod d t- \ ing iratraction s, generate addre ac05 for  in h dcM d \ sofaarc, and auto. fiery ld -lv lag intotea. \ par desb the  deception lage, \ micremrs, d the um of  intrct in e ab appHdom. \ To effectively evaluate a propmeg imtmetiou set, i beheer mint be \ on of rc Woam.   oken ffict became I) no proa \ inactioa ct, d 2) the main obably ha am been bk. A few me \ imoa sta addrea e second problem [3 8], but nor ;he fiat. \ e method to vauare a proposed insrmaioa me;  m implemt  inmmq ,e on a \ croproaabk macMne. R pro.ams can  gaar,d at me e \ meted prdea fast ecution of th, pingams. e dffficMty d e-coaag \  pmng, howler, dtaeoag extafon, A md apoa \ it evaluation is to Me he earcation behahor  prom m  dwe \ kalate from s auon. le a mod rmam e av mon b. \ lema, t new &si a be maC.eat  or ueaa  ro d \ mu s td iovafioa. i rd approh i ;   dw \ gerate a lge at  pro m mtc, e adm y  o I ", ["jack-davidson/p20-milner-new.pdf"] = "QUICK PIPING: A Fast, High-Level Model for Describing Processor Pipelines\ Christopher W. Milner and Jack W. Davidson\ Department of Computer Science, University of Virginia Charlottesville, Virginia 22904\ {cmilner,jwd}@cs.virginia.edu", ["jack-davidson/p20-milner-new.ps"] = "", ["jack-davidson/po-corr.pdf"] = "CORRIGENDUM\ The Design and Application of a Retargetable Peephole Optimizer [J. W. Davidson and C. W. Fraser, ACM Trans. Program. Lang. Syst. 2, 2 (April 1980), 191-202.] Christopher W. Fraser [Received July 24, 1980] Department of Computer Science, University of Arizona, Tucson, AZ 85721. The following changes need to be made in this paper: On page 196, lines 27 and 42, change AOJG to AOJA. On page 196, lines 31, 33, and 35, change\ R[3] ~- R[3] + 1; PC ~- ( R [ 3 ] + l > 0 ~ 12 else PC)\ to\ R[3] ~ - R [ 3 ] + 1; PC ~-12\ ACM Transactions on Programming Languages and Systems, Vol. 3, No. 1, January 1981, Page 110.", ["jack-davidson/po-corr.ps"] = "", ["jack-davidson/po.pdf"] = "The Design and Application of a Retargetable Peephole Optimizer\ JACK W. DAVlDSON and CHRISTOPHER W. FRASER University of Arizona\ Peephole optimizers improve object code by replacing certain sequences of instructions with better sequences. This paper describes PO, a peephole optimizer that uses a symbolic machine description to simulate pairs of adjacent instructions, replacing them, where possible, with an equivalent sing!e instruction. As a result of this organization, PO is machine independent and can be described formally and concisely: when PO is finished, no instruction, and no pair of adjacent instructions, can be replaced with a cheaper single instruction that has the same effect. This thoroughness allows PO to relieve code generators of much case analysis; for example, they might produce only load/add-register sequences and rely on PO to, where possible, discard them in favor of add-memory, add-immediate, or increment instructions. Experiments indicate that naive code generators can give good code if used with PO. Key Words and Phrases: code generation, optimization, peephole, portability CR Categories: 4.12", ["jack-davidson/po.ps"] = "", ["jack-davidson/portable.djvu"] = "A Portable Global Optimizer and Linker? \ Manuel E. Benitez \ Jack W. Davidson \ Department of Computer Science \ University of Virginia \ Charlottesville, VA 22903 ", ["jack-dennis/data-should-not-change.djvu"] = "QA76 \ .C6 \ 3 9080 00654929 6 \ Massachusetts Institute of Technology \ Laboratory for Computer Science \ Cambridge, Massachusetts \ Computation Structures Group Memo 209 \ Data Should Not Change: A Model for a Computer System \ Jack B. Dennis \ July, 1981 ", ["jack-good/weight-of-evidence.pdf"] = ".\ BAYESWSTATISTICS 2, pp. 249470\ Weight of Evidence: A Brief Survey\ I. J. W O D\ Wrginia Polytechnic Institute and State University\ SUMMARY\ A review is given of the COnMpts of Baycs factorsaad weights of evidence, indudins such \ aspects as tcrminology, uniqueness of the explicatum, history, how to make judgments, and \ the relationship to tail-area probabilites. \ Keywor&: BAYBS FACTORS: BAYESIAN LIKBLIHWD: CORROBORATION: DECIBANS;\ TAIL-\ AREA PROBABILrTIBS; WEIOHTOFBVIDENCE.\ I. INTRODUCTION\ My purpose is to survey some of the work on weight of evidencebecause I think the\ topic is almost as important as that of probability itself. The survey willbe far from\ complete.\ \"Evidence\" and \"information\" are relatedbut do not have identical meanings. You\ might be interested in iqformation about Queen Anne but in evidence about whether she is\ dead. The expression \"weight of evidence\" is familiar in ordinary English and describes", ["jacques-garrigue/relax-value.ps"] = "Relaxing the Value Restriction\ Jacques Garrigue\ Research Institute for Mathematical Sciences,\ Kyoto University, Sakyoku, Kyoto 6068502\ garrigue@kurims.kyotou.ac.jp", ["jacques-garrigue/variant-reuse.ps"] = "Code reuse through polymorphic variants \ Jacques Garrigue\ November 8, 2000", ["james-arnold/elf.djvu"] = "USENIX Summer Conference Obj \ June 11-15, 1990 ELF: An ect File \ Anheim, California to Mitigate \ James O. Arnold- AT&T Bell Laboratories Mischievous \ Misoneism ", ["james-stichnoth/p118-stichnoth.djvu"] = "Support for Garbage Collection at \ Every Instruction in a Java TM Compiler \ James M. Stichnoth* Guei-Yuan Lueh Michat Cierniak \ stichnot @ inktomi.com guei-yuan.lueh @ intel.com michal.cierniak @ intel.com \ Intel Corporation \ 2200 Mission College Blvd \ Santa Clara, CA 95052 ", ["james-stichnoth/p118-stichnoth.pdf"] = "Support for Garbage Collection at Every Instruction in a JavaTM Compiler\ James M. Stichnoth+ stichnot 62inktomi.com Guei-Yuan Lueh guei-yuan.lueh @IinteLcorn\ Intel Corporation 2200 Mission College Blvd Santa Clara, CA 95052\ Michal Cierniak michal.cierniak@intel.com", ["jan-jansen/janj2006-TFP06-EfficientInterpretation.pdf"] = "Efficient Interpretation by Transforming Data Types and Patterns to Functions\ Jan Martin Jansen 1 , Pieter Koopman2 , Rinus Plasmeijer2\ The Netherlands Ministry of Defence, Institute for Computing and Information Sciences (ICIS), Radboud University Nijmegen, the Netherlands. j.m.jansen@forcevision.nl, {pieter,rinus}@cs.ru.nl\ 2 1", ["jan-vitek/r3.pdf"] = "R3 – Repeatability, Reproducibility and Rigor\ Jan Vitek\ Tomas Kalibera\ Purdue University, USA\ University of Kent, UK", ["jan-willem-maessen/eager-haskell.pdf"] = "Hybrid Eager and Lazy Evaluation for Efficient Compilation of\ Haskell\ by\ Jan-Willem Maessen\ Submitted to the Department of Electrical Engineering and Computer Science\ in partial fulfillment of the requirements for the degree of\ Doctor of Philosophy in Computer Science\ at the\ MASSACHUSETTS INSTITUTE OF TECHNOLOGY\ June 2002\ c Massachusetts Institute of Technology 2002. All rights reserved.\ Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ Department of Electrical Engineering and Computer Science\ 17 May 2002\ Certified by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ Arvind\ Charles and Jennifer Johnson Professor of Computer Science and Engineering\ Thesis Supervisor\ Accepted by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ Arthur C. Smith\ Chairman, Department Committee on Graduate Students\ Hybrid Eager and Lazy Evaluation for Efficient Compilation of Haskell\ by\ Jan-Willem Maessen\ Submitted to the Department of Electrical Engineering and Computer Science\ on 17 May 2002, in partial fulfillment of the\ requirements for the degree of", ["janis-voigtlaender/free-thm-classes.pdf"] = "Submitted to ICFP'08\ Free Theorems Involving Type Constructor Classes\ Functional Pearl\ Janis Voigtl nder a\ Institut f r Theoretische Informatik u Technische Universit t Dresden a 01062 Dresden, Germany voigt@tcs.inf.tu-dresden.de", ["jason-dagit/ms-thesis.pdf"] = " AN ABSTRACT OF THE THESIS OF\ Jason Dagit for the degree of Master of Science in Computer Science presented\ on March 20, 2009.\ Title:\ Type-Correct Changes — A Safe Approach to Version Control Implementation", ["jason-dagit/tmr-darcs.pdf"] = "Darcs Patch Theory\ by Jason Dagit dagit@codersbase.com\ Darcs is a free, open source source code revision control system implemented in\ Haskell. One of its distinguishing features is the theory of patches, that provides\ the theoretical foundations on which the tool is built. In this article, I will try introduces the basic ideas and operations of patch theory. We setup the conflict problem\ and we hope to explain the solution in later installments of The Monad.Reader.\ Basic Elements of Patch Theory\ The goal of patch theory is to describe changes to a repository. Although patch\ theory could be treated purely as a mathematical abstraction, we focus on the\ details that relate to Darcs [1]. Please pay close attention to the relationship\ between changes and patches.\ Definition 1. A repository is a set of changes.", ["jason-hickey/omake.pdf"] = "OMake: designing a scalable build process\ Jason Hickey and Aleksey Nogin\ Computer Science Department California Institute of Technology {jyh,nogin}@cs.caltech.edu", ["jay-lepreau/atomic-osdi99.ps.gz"] = "Interface and Execution Models in the Fluke Kernel\ Bryan Ford Mike Hibler Jay Lepreau Roland McGrath Patrick Tullmann\ Department of Computer Science, University of Utah", ["jay-lepreau/omos.ps.gz"] = "UUCS92033 July, 1992\ Appears in identical form in Proc. 2nd International Workshop on Object\ Orientation in Operating Systems, Paris, France, September 1992.\ OMOS --- An Object Server for Program Execution\ Douglas B. Orr Robert W. Mecklenburg\ Department of Computer Science, University of Utah\ Salt Lake City, UT 84112\ dbo@cs.utah.edu, mecklen@cs.utah.edu", ["jay-lepreau/oskit-sosp16.ps.gz"] = "The Flux OSKit: A Substrate for Kernel and Language Research\ Bryan Ford Godmar Back Greg Benson Jay Lepreau Albert Lin Olin Shivers\ University of Utah University of California, Davis Massachusetts Institute of Technology", ["jay-lepreau/shlibs.ps.gz"] = "Fast and Flexible Shared Libraries\ Douglas B. Orr, John Bonn, Jay Lepreau, and Robert Mecklenburg\ University of Utah", ["jay-lepreau/specomos.ps.gz"] = "Program Specialization Using the OMOS System\ Douglas B. Orr Jay Lepreau Jeffrey Law\ Department of Computer Science\ University of Utah\ Salt Lake City, UT 84112\ fdbo,lepreau,lawg@cs.utah.edu\ Technical Report UUCS95016\ March, 1995", ["jay-lepreau/typesafety.ps.gz"] = "International Conference on\ Computer Systems and Education, IISc, Bangalore, 1994\ Typesafe Composition of Object Modules \\Lambda\ Guruduth Banavar, Gary Lindstrom, Douglas Orr\ Department of Computer Science, University of Utah\ Salt Lake City, Utah 84112 USA", ["jay-lepreau/veripc.ps.gz"] = "Formal Methods: A Practical Tool for OS Implementors\ Patrick Tullmann Jeff Turner y John McCorquodale Jay Lepreau Ajay Chitturi Godmar Back\ Department of Computer Science\ University of Utah\ Salt Lake City, UT 84112\ ftullmann,sjt,mcq,lepreau,chitturi,gbackg@cs.utah.edu\ http://www.cs.utah.edu/projects/flux/", ["jb-hext/hext-automatic-grading.pdf"] = "$\ P. C A L I N G A E R T ,\ An Automatic Grading Scheme\ for Simple Programming\ Exercises\ J. B. HEXT AND J. W. WININGS\ University of Sydney,* Sydney, Australia\ A discussion is given of alterations that were made to a typical\ university operating system to record the results of programming exercises in three different languages, including assembly\ language. In this computer-controlled grading scheme provision is made for testing with programmer-supplied data and\ for final runs with system-supplied data. Exercises run under the\ scheme may be mixed with other programs, and no special\ recognition of exercises by the operators is necessary.\ KEY WORDS AND PHRASES: automatic grading program, programming\ exercises\ CR CATEGORIES: 1.5, 2.43, 4.39\ Introduction\ In 1966 the University of Sydney's KDF 9 computer was\ running student exercises under a conventional batchprocessing system. With the numbers of exercises amounting to several hundred per week, and threatening to run", ["jean-luc-doumont/duff-oral.djvu"] = "Effective oral presentations \ Jean-luc Doumont provides help \ with and runs training sessions \ on effective oral presentations, \ written documents, graphical \ displays, and related topics of \ scientific, technical, or business \ communication. He also trains \ instructors and facilitates any \ process in need of structuring. \ In hundreds of sessions, he has \ addressed audiences of all ages, \ backgrounds, and nationalities, \ m English, French, Dutch, and \ Spanish. He is an engineer \ from the University of Louvain \ and a doctor in applied physics \ from Stanford University. \ Principiae \ Structuring thoughts \ 5'' RAL PRESENTATIONS have more impact than written \ ! documents. They allow a richer rapport with the au- \ t'r' dience, thanks to the very presence of the speaker \ and the ensuing nonverbal communication (vocal and visual). \ They also allow a better control of the audience's attention. ", ["jean-luc-doumont/myway.pdf"] = "Jean-luc Doumont\ Doing It My Way: A Lone TEXer in the Real World\ Jean-luc Doumont\ JL Consulting Achterenberg 2/10 B3070 Kortenberg, Belgium JL@JLConsulting.be", ["jean-luc-doumont/oral.pdf"] = "Effective oral presentations\ A summary from a book on effective communication to be finalized and published by Principiae\ and the ensuing nonverbal communication (vocal and visual). They also allow a better control of the audience's attention. This potential effectiveness, however, has a price: mobilizing several individuals at a certain time and for a certain duration.\ O\ ral presentations have more impact than written documents. They allow a richer rapport with the audience, thanks to the very presence of the speaker\ Oral presentations, as a consequence, benefit from following a somewhat different design strategy than written documents. Like documents, they should strive to get messages across. Unlike documents, which support the messages with details, they should support the messages with a convincing delivery.", ["jean-luc-doumont/tex-graphs.ps"] = "Most designers produce documents by assem\ bling components produced with di#erent tools:\ typically, they typeset text with a textoriented ap\ plication and create illustrations with one or several\ drawing or graphing applications. This approach,\ it would seem, o#ers the best of both worlds, by\ using the bestsuited tool for each part of the\ job. Unfortunately, it often su#ers one --- in some\ cases, major --- drawback: the poor integration of\ the illustrations in the typeset page.\ Though increasingly sophisticated, graphing\ applications still o#er but limited control over some\ details of the display, all the more so if their focus\ is data manipulation rather than data visualization.\ Among the less accessible parameters are:\ . the size of the display and the size and position", ["jean-yves-girard/systemf15.djvu"] = "Theoretical Computer Science 45 (1986) 159-192 \ North-Holland \ 159 \ THE SYSTEM F OF VARIABLE TYPES, \ FIVrEEN YEARS LATER \ Jean-Yves GIRARD \ lquipe de Logique Math,matique, UA 753 du CNRS, 75251 Paris Cedex 05, France \ Communicated by M. Nivat \ Received December 1985 \ Revised March 1986 ", ["jean-yves-girard/systemf15.pdf"] = "Theoretical Computer Science 45 (1986) 159-192 North-Holland\ 159\ THE S Y S T E M F OF VARIABLE TYPES, FIFTEEN YEARS LATER Jean-Yves G I R A R D\ Equipe de Logique Mathdmatique, UA 753 du CNRS, 75251 Paris Cedex 05, France\ Communicated by M. Nivat Received December 1985 Revised March 1986", ["jeannette-wing/compthink.pdf"] = "Viewpoint\ Jeannette M. Wing\ Computational Thinking\ It represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use.\ omputational thinking builds on the power and limits of computing processes, whether they are executed by a human or by a machine. Computational methods and models give us the courage to solve problems and design systems that no one of us would be capable of tackling alone. Computational thinking confronts the riddle of machine intelligence: What can humans do better than computers? and What can computers do better than humans? Most fundamentally it addresses the question: What is computable? Today, we know only parts of the answers to such questions. Computational thinking is a fundamental skill for everyone, not just for computer scientists. To reading, writing, and arithmetic, we should add computational thinking to every child's analytical ability. Just as the printing press facilitated the spread of the three Rs, what is appropriately incestuous about this vision is that computing and computers facilitate the spread of computational thinking. Computational thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science. Computational thinking includes a range of mental tools that reflect the breadth of the field of computer science. Having to solve a particular problem, we might ask: How difficult is it to solve? and What's the best way to solve it? Computer science rests on solid theoretical underpinnings to answer such questions pre-", ["jeannette-wing/pi.pdf"] = "FAQ on -Calculus\ Jeannette M. Wing Visiting Researcher, Microsoft Research Professor of Computer Science, Carnegie Mellon University 27 December 2002 1. What is -calculus? -calculus is a model of computation for concurrent systems. The syntax of -calculus lets you represent processes, parallel composition of processes, synchronous communication between processes through channels, creation of fresh channels, replication of processes, and nondeterminism. That's it! 2. What do you mean by process? By channel? A process is an abstraction of an independent thread of control. A channel is an abstraction of the communication link between two processes. Processes interact with each other by sending and receiving messages over channels. 3. Could you be a little more concrete? Let P and Q denote processes. Then P | Q denotes a process composed of P and Q running in parallel. a(x).P denotes a process that waits to read a value x from the channel a and then, having received it, behaves like P. x.P denotes a process that first waits to send the value x along the channel a and then, after x has been accepted by some input process, behaves like P. (a)P ensures that a is a fresh channel in P. (Read the Greek letter \"nu\" as \"new.\") !P denotes an infinite number of copies of P, all running in parallel. P + Q denotes a process that behaves like either P or Q. 0 denotes the inert process that does nothing. All concurrent behavior that you can imagine would have to be written in terms of just the above constructs. 4. How about an example? (Impatient readers should feel free to skip this question.) Suppose you want to model a remote procedure call between a client and a server. Consider the following function, incr, running on the server. incr returns the integer one greater than its argument, x:", ["jed-liu/padl03.pdf"] = "JMatch: Iterable Abstract Pattern Matching for Java\ Jed Liu and Andrew C. Myers\ Computer Science Department Cornell University, Ithaca, New York", ["jeff-atwood/typists-first.pdf"] = "Coding Horror: We Are Typists First, Programmers Second\ Coding Horror programming and human factors by Jeff Atwood\ Nov 17, 2008 We Are Typists First, Programmers Second\ Remember last week when I said coding was just writing? I was wrong. As one commenter noted, it's even simpler than that.\ [This] reminds me of a true \"Dilbert moment\" a few years ago, when my (obviously nontechnical) boss commented that he never understood why it took months to develop software. \"After all\", he said, \"it's just typing.\" Like broken clocks, even pointy-haired managers are right once a day. Coding is just typing. So if you want to become a great programmer, start by becoming a great typist. Just ask Steve Yegge.\ I can't understand why professional programmers out there allow themselves to have a career without teaching themselves to type. It doesn't make any sense. It's like being, I dunno, an actor without knowing how to put your clothes on. It's showing up to the game unprepared. It's coming to a meeting without your slides. Going to class without your homework. Swimming in the Olympics wearing a pair of Eddie Bauer Adventurer Shorts. Let's face it: it's lazy. There's just no excuse for it. There are no excuses. I have a friend, John, who can only use one of his hands. He types 70 wpm. He invented his own technique for it. He's not making excuses; he's typing circles around people who are making excuses.", ["jeff-foster/druby-oopsla09.pdf"] = "Profile-Guided Static Typing for Dynamic Scripting Languages\ Michael Furr Jong-hoon (David) An Jeffrey S. Foster\ University of Maryland {furr,davidan,jfoster}@cs.umd.edu", ["jeff-ullman/iterative-dataflow.djvu"] = "Global Data Flow Analysis and Iterative Algorithms \ JOHN B. KAM AND JEFFREY D. ULLMAN \ Princeton Universzty, Prznceton, New Jersey \ AnSeRACT Kildall has developed data propagation algorithms for code optimization in a general \ lattice theoretic framework. In another direction, Hecht and Ullman gave a strong upper bound on \ the number of iterations required for propagation algorithms when the data is represented by bit \ vectors and depth-first ordering of the flow graph is used The present paper combines the ideas of \ these two papers by considering conditions under which the bound of Hecht and Ullman applies to \ the depth-first version of Klldall's general data propagation algorithm. It is shown that the following \ condition is necessary and sufficient Let f and g be any two functions which could be associated ", ["jeff-ullman/monotone.pdf"] = "", ["jeffrey-chase/user-level.ps.gz"] = "UserLevel Threads and Interprocess Communication\ Michael J. Feeley, Jeffrey S. Chase, and Edward D. Lazowska\ Department of Computer Science and Engineering, FR35\ University of Washington\ Seattle, WA 98195\ Technical Report 930203", ["jeffrey-dean/mapreduce-osdi04.pdf"] = "MapReduce: Simplified Data Processing on Large Clusters\ Jeffrey Dean and Sanjay Ghemawat\ jeff@google.com, sanjay@google.com\ Google, Inc.", ["jeffrey-siskind/nonstandard-opening-closures.pdf"] = "First-Class Nonstandard Interpretations by Opening Closures\ Jeffrey Mark Siskind\ Barak A. Pearlmutter\ School of Electrical and Computer Engineering\ Purdue University, USA\ qobi@purdue.edu\ Hamilton Institute\ NUI Maynooth, Ireland\ barak@cs.nuim.ie\ resent the complex number a + bi as an Argand pair a, b . Extending the programming language to support complex arithmetic\ can be viewed as a nonstandard interpretation where real numbers r are lifted to complex numbers r, 0 , and operations such\ as + : R × R → R are lifted to + : C × C → C.", ["jens-knoop/17LCM.pdf"] = "Lazy Code Motion\ COMP 512 Rice University Houston, Texas Spring 2009\ \"Lazy Code Motion,\" J. Knoop, O. Ruthing, & B. Steffen, in PLDI 92 \"A Variation of Knoop, Ruthing, and Steffen's Lazy Code Motion,\" K. Drechsler & M. Stadel, SIGPLAN Notices, 28(5), May 1993 Treatment in Chapter 10 of Engineering a Compiler ...\ Copyright 2009, Keith D. Cooper & Linda Torczon, all rights reserved. Students enrolled in Comp 512 at Rice University have explicit permission to make copies of these materials for their personal use. COMP 512, Spring 2009 ! 1 !\ Redundant Expression\ An expression is redundant at point p if, on every path to p 1. It is evaluated before reaching p, and 2. Non of its constitutent values is redefined before p Example\ a! b+c a!b+c a!b+c Some occurrences of b+c are redundant\ a!b+c\ a!b+c\ b! b+1 a!b+c\ * 2 !\ COMP 512, Spring 2009 !\ Partially Redundant Expression\ An expression is partially redundant at p if it is redundant along some, but not all, paths reaching p Example\ b!b+1 a!b+c\ b!b+1 a!b+c\ a!b+c\ a!b+c\ a!b+c\ Inserting a copy of \"a ! b + c\" after the definition of b can make it redundant", ["jens-knoop/MIP-9715.ps"] = "UNIVERSITaT PASSAU\ Fakultat fur Mathematik und Informatik\ P\ Basicblock Graphs: Living Dinosaurs?\ Jens Knoop 1 , Dirk Koschutzki, Bernhard Steffen\ Fakultat fur Mathematik und Informatik\ Universitat Passau\ Innstrae 33\ D--94032 Passau\ fknoop,koschuet,steffeng@fmi.unipassau.de\ MIP9715\ Juli 1997\ 1 The work of the author was partially funded by the Leibniz Programme of the German Research\ Council (DFG) under grant Ol 98/11.", ["jens-knoop/basic-dino.ps"] = "UNIVERSITaT PASSAU\ Fakultat fur Mathematik und Informatik\ P\ Basicblock Graphs: Living Dinosaurs?\ Jens Knoop 1 , Dirk Koschutzki, Bernhard Steffen\ Fakultat fur Mathematik und Informatik\ Universitat Passau\ Innstrae 33\ D--94032 Passau\ fknoop,koschuet,steffeng@fmi.unipassau.de\ MIP9715\ Juli 1997\ 1 The work of the author was partially funded by the Leibniz Programme of the German Research\ Council (DFG) under grant Ol 98/11.", ["jens-knoop/lazy-code-motion.djvu"] = "Lazy Code Motion \ Jens Knoop* \ CAU Kiel t \ jkinformatik.uni-kiel.dbp.de \ Oliver R[ithing t \ CAU Kiel t \ orinformatik.uni-kiel.dbp.de \ Bernhard StefFen \ RWTH Aachen \ bus)zeus.informatik.rwth-aachen,de ", ["jens-knoop/lazy-code-motion.pdf"] = "Lazy Code Motion\ Jens Knoop\"\ CAU Kielt\ jk@informatik.uni-kiel. dbp.de\ Oliver\ or@informatik.\ Ruthing$\ uni-kiel.dbp.de\ Bernhard\ RWTH\ bus@zeus.informatik.\ Steffen\ Aachen$ rwth-aachen.de\ CAU Kielt", ["jeremy-condit/capriccio-sosp-2003.pdf"] = "Capriccio: Scalable Threads for Internet Services\ Rob von Behren, Jeremy Condit, Feng Zhou, George C. Necula, and Eric Brewer Computer Science Division University of California, Berkeley\ {jrvb,jcondit,zf,necula,brewer}@cs.berkeley.edu", ["jeremy-condit/threads-hotos-2003.pdf"] = "Final Version, Proceedings of HotOS IX. Lihue, Kauai, Hawaii. May 2003\ Why Events Are A Bad Idea (for high-concurrency servers)\ Rob von Behren, Jeremy Condit and Eric Brewer Computer Science Division, University of California at Berkeley {jrvb, jcondit, brewer}@cs.berkeley.edu http://capriccio.cs.berkeley.edu/ Abstract\ Event-based programming has been highly touted in recent years as the best way to write highly concurrent applications. Having worked on several of these systems, we now believe this approach to be a mistake. Specifically, we believe that threads can achieve all of the strengths of events, including support for high concurrency, low overhead, and a simple concurrency model. Moreover, we argue that threads allow a simpler and more natural programming style. We examine the claimed strengths of events over threads and show that the weaknesses of threads are artifacts of specific threading implementations and not inherent to the threading paradigm. As evidence, we present a user-level thread package that scales to 100,000 threads and achieves excellent performance in a web server. We also refine the duality argument of Lauer and Needham, which implies that good implementations of thread systems and event systems will have similar performance. Finally, we argue that compiler support for thread systems is a fruitful area for future research. It is a mistake to attempt high concurrency without help from the compiler, and we discuss several enhancements that are enabled by relatively simple compiler changes.", ["jeremy-gibbons/gip.pdf"] = "Generic and Indexed Programming (Project Paper)\ Jeremy Gibbons, Meng Wang, and Bruno C. d. S. Oliveira\ Oxford University Computing Laboratory Wolfson Building, Parks Road, Oxford OX1 3QD, UK {jg,menw,bruno}@comlab.ox.ac.uk", ["jeremy-gibbons/hodgp.pdf"] = "Design Patterns as Higher-Order Datatype-Generic Programs\ Jeremy Gibbons\ Oxford University Computing Laboratory http://www.comlab.ox.ac.uk/jeremy.gibbons/", ["jeremy-gibbons/unifying-theories-with-monads.pdf"] = "Unifying Theories of Programming with Monads\ Jeremy Gibbons\ Oxford University Department of Computer Science\ Wolfson Building, Parks Road, Oxford OX1 3QD, UK\ jeremy.gibbons@cs.ox.ac.uk", ["jeroen-fokker/parsers.ps.gz"] = "Functional Parsers\ Jeroen Fokker\ Dept. of Computer Science, Utrecht University\ P.O.Box 80.089, 3508 TB Utrecht, The Netherlands\ email jeroen@cs.ruu.nl", ["jerome-vouillon/subtyping.pdf"] = "Subtyping Union Types\ Jr^me Vouillon eo\ CNRS and Universit Paris 7 e Case 7014, 2 Place Jussieu, 75251 Paris Cedex 05, France Jerome.Vouillon@pps.jussieu.fr", ["jianwen-zhu/retargetable-simulator.pdf"] = "A Retargetable, Ultra-fast Instruction Set Simulator\ Jianwen Zhu, Daniel D. Gajski\ CECS, Information and Computer Science\ University of California\ Irvine, CA 92717-3425, USA\ jzhu, gajski@ics.uci.edu", ["jim-horning/process-structuring.djvu"] = "Process Structuring \ J. J. HORNINC,* and B. RANDELL'J' \ The concept of \"process\" has come to play a central role in many efforts to mas- \ ter the complexity of large computer systems The purpose of this paper is to \ discuss useful methods of structuring complex processes, and to relate these to \ the problems of improving the quality of large computer systems. Two distinct \ ways of structuring systems are presented, namely, process combination, and \ process abstraction; these are then used to discuss such topics as concurrency, \ synchronization, multiprogramming, interpreters, and programmable processors. \ This discussion is based on a set of precise deftrations for such concepts as \ \"process,\" \"processor,\" \"computation,\" \"combination,\" and \"abstraction \"The \ paper relates these definitions to both current research and practical applications, \ with particular concern for the problems of the performance, reliability, and ", ["jim-larus/eel.djvu"] = "EEL: Machine-Independent Executable Editing \ James R. [.ants and Eric Schnarr \ Computer Sciences Department \ University of Wisconsin-Madison \ 1210 West Dayton St. \ Madison, WI 53706 USA \ { larus,schnarr } @ cs.wisc.edu ", ["jim-larus/eel.pdf"] = "EEL: Machine-Independent\ James R. I.arus\ Executable\ Schnarr\ Editing\ and Eric\ Computer University 1210 Madiscm,\ Sciences\ Department\ of WisconsinMadison West WI Dayton 53706 St. USA\ {larus,schnarr}\ @cs.wise.edu", ["jim-plank/CS-99-416.ps.Z"] = "", ["jim-waldo/OnSystemDesign.pdf"] = "On System Design\ Jim Waldo\ Sun Microsystems, Inc 1 Network Drive Burlington, MA 01803 1 781 442 0497\ Jim.waldo@sun.com", ["joachim-parrow/pi.ps"] = "An Introduction to the -Calculus\ Chapter to appear in Handbook of Process Algebra, ed. Bergstra, Ponse and Smolka,\ Elsevier\ Joachim Parrow \ Dep. Teleinformatics,\ Royal Institute of Technology, Stockholm", ["joe-armstrong/development.ps.gz"] = "The development of Erlang\ Joe Armstrong\ Computer Science Laboratory\ Ericsson Telecom AB\ joe@cslab.ericsson.se", ["joe-armstrong/erlang-jam.pdf"] = "Published in SETSS 92, 30th March to 1st April 1992, Florence\ IMPLEMENTING A FUNCTIONAL LANGUAGE FOR HIGHLY PARALLEL REAL\ TIME APPLICATIONS\ ..\ J. L. Armstrong, B. O. Dacker, S. R. Virding and M. C. Williams\ Computer Science Laboratory, Ellemtel Utvecklings AB\ Introduction\ Simple Sequential Erlang\ This paper describes a fast, highly portable implementation of the real time, symbolic, declarative programming language Erlang (1).\ Consider the following function which computes the\ factorial of a positive integer:\ A previous paper (2) described our investigations into\ the suitability of different programming languages for\ use in telecommunications switching software. We\ concluded that declarative languages are highly suitable for the implementation of such systems and\ identified several properties which we regarded as\ essential in languages for programming robust, highly\ concurrent real time systems.\ A subsequent paper (3) described the prototyping", ["joe-armstrong/implem.ps"] = "Published in SETSS 92, 30th March to 1st April 1992, Florence\ L\ T\ IMPLEMENTING A FUNCTIONAL LANGUAGE FOR HIGHLY PARALLEL REA\ IME APPLICATIONS\ J. L. Armstrong, B. O. Da .. cker, S. R. Virding and M. C. Williams\ I\ Computer Science Laboratory, Ellemtel Utvecklings AB\ ntroduction\ This paper describes a fast, highly portable implemen\ \ m\ tation of the real time, symbolic, declarative program\ ing language Erlang (1).\ A previous paper (2) described our investigations into\ r\ u\ the suitability of different programming languages fo\ se in telecommunications switching software. We\ \ a\ concluded that declarative languages are highly suit\ ble for the implementation of such systems and\ s\ e\ identified several properties which we regarded a\ ssential in languages for programming robust, highly\ A\ concurrent real time systems.\ subsequent paper (3) described the prototyping\ s\ r\ work which verified and enhanced these ideas. Thi\ esulted in a slow interpreter which implements a new", ["johan-nordlander/pragmatic.ps.gz"] = "Pragmatic Subtyping in Polymorphic Languages\ Johan Nordlander\ Department of Computing Science\ Chalmers University of Technology\ S 412 96 Goteborg, Sweden\ Email: nordland@cs.chalmers.se", ["john-alan-robinson/resolution.djvu"] = "A Machine-Often Led Logic Based m the Resation Principle \ J. A. \ .tbstracL Theorem-proving on the computer, using procedures ba,scd on the funds \ mental theorem f Herbrand concerning the first-order predicate cMculu% is exmnned witl: \ a view towards mprvlag the cfii5 my aml widerting ?,he range of praet,eal pplicability \ &' th:se procedures. A close analysis of' the process of subsi, itutien (of terms for variables) \ and tim process of trath4unctionM analysis of the rcskfits of such substitutions, reveals \ that bot, htm, cesses cai be combined iato a single .ew process (cMled resolutior), iter:;ti \ whidi is vastly m,re efficient tha,n the older cyclic procedures cmsishng of \ stages dternatig with truth-functional analysis stges. \ The [heory' of the resolution process is presented in the form of [ system (,[ first-m'de ", ["john-alan-robinson/resolution.pdf"] = "A Maehine-Orlented\ Logic Based on the Resolution Principle J. A. ROBINSON\ Argonne Nalionrd Laboratory* and t~ice U.niver~itg~ :tb.~tract. Theorem-proving on the computer, using procedures based on the fund~mental theorem of H e r b r a n d concerning the first-order predicate etdeulus, is examined with ~ view towards improving the efticieney and widening the range of practical applicability of these procedures. A elose analysis of the process of substitution (of terms for variables), and the process of truth-functional analysis of the results of such substitutions, reveals that both processes can be combined into a single new process (called resolution), iterating which is vastty more ef[ieient than the older cyclic procedures consisting of substitution stages alternating with truth-functional analysis stages. The theory of the resolution process is presented in the form of a system of first<~rder logic with .just one inference principle (the resolution principle). The completeness of the system is proved; the simplest proof-procedure based oil the system is then the direct implementation of the proof of completeness. Howew~r, this procedure is quite inefficient, ~nd the paper concludes with a discussion of several principles (called search principles) which are applicable to the design of efficient proof-procedures employing resolution as the basle logical process.", ["john-behrens/learning-progressions.pdf"] = "PATTI WEST, DAISY WISE RUTSTEIN, ROBERT J. MISLEVY,\ JUNHUI LIU, ROY LEVY, KRISTEN E. DICERBO, AARON\ CRAWFORD, YOUNYOUNG CHOI, KRISTINA CHAPPLE AND\ JOHN T. BEHRENS\ A BAYESIAN NETWORK APPROACH TO MODELING\ LEARNING PROGRESSIONS\ A central challenge in using learning progressions (LPs) in practice is modeling the\ relationships that link student performance on assessment tasks to students’ levels on\ the LP. On the one hand, there is a progression of theoretically defined levels, each\ defined by a configuration of knowledge, skills, and/or abilities (KSAs). On the other\ hand, there are observed performances on assessment tasks, associated with levels but\ only imperfectly and subject to inconsistencies. What is needed is a methodology that\ can be used to map assessment performance onto the levels, to combine information\ across multiple tasks measuring similar and related KSAs, to support inferences about", ["john-carlis/one-draft.pdf"] = "Design:\ The Key to Writing\ (and Advising)\ a One-Draft Thesis\ John V. Carlis\ Computer Science and Engineering University of Minnesota {carlis@cs.umn.edu}\ September, 2002\ 1\ Introduction.\ If you are a Ph.D student who needs to write a thesis proposal or a thesis itself then this paper ought to interest you, and your advisor too. The advice here also applies to you if you merely (hah) need to write a research paper.\ My goal in this paper is to codify an effective and efficient way of work, so that I more readily can pass it on to my own students, and can share it with other students and their advisors.1\ What's my story? While working on my thesis, and at the same time a professor at Syracuse, several streams of thought happily converged. I read several books on writing. I read the forward to the John McPhee Reader, which described his disciplined, designbefore-write way of work2. I read Richard Mager's Preparing Instructional Objectives, which has this message: teaching (writing) is about them, the students (readers), not me. I taught software development using Yourdon and Constantine's \"Structured Development\" (Addison-Wesley, 1975). Convergence began when the strong parallels in their content struck me.", ["john-clements/esop2001-cff.pdf"] = "Modeling an Algebraic Stepper\ John Clements, Matthew Flatt , and Matthias Felleisen\ Department of Computer Science Rice University 6100 Main St. Houston, TX 77005-1892", ["john-cocke/old-strength-reduction.djvu"] = "We can compare the space used by this method \ and the space required by ordinary hashing. Let us \ suppose that the perfect hashing functions hi are all \ computational remainder reduction phf's and that two \ characters are sufficient to identify an item in its \ segment. In System/370 we can use: \ (a) a half-word vector RCH, to record in each byte \ the positions of the characters identifying each \ item in its segment; \ (b) a half-word vector RD to record the values d~; \ (c) a full-word vector RSH with the following structure \ for its words: \ (i) the first 20 bits contain the base b~ of the ith \ segment; \ (ii) the next 6 bits contain rn[; \ (iii) the last 6 bits contain q[; \ (d) a full-word vector RM containing the divisors Mi. \ Let us suppose that folding leaves the segment ", ["john-cocke/strength-reduction.djvu"] = "We can compare the space used by this method \ and the space required by ordinary hashing. Let us \ suppose that the perfect hashing functions hE are all \ computational remainder reduction phf's and that two \ characters are sufficient to identify an item in its \ segment. In System/370 we can use: \ (a) a half-word vector RCH, to record in each byte \ the positions of the characters identifying each \ item in its segment; \ (b) a half-word vector RD to record the values d[; \ (c) a full-word vector RSH with the following structure \ for its words: \ (i) the first 20 bits contain the base b, of the ith \ segment; \ (ii) the next 6 bits contain m[; \ (iii) the last 6 bits contain q[; \ (d) a full-word vector RM containing the divisors \ Let us suppose that folding leaves the segment ", ["john-cocke/strength-reduction.pdf"] = "W e can c o m p a r e the s p a c e used by this m e t h o d a n d the space r e q u i r e d by o r d i n a r y hashing. L e t us s u p p o s e that the p e r f e c t h a s h i n g functions hi a r e all c o m p u t a t i o n a l r e m a i n d e r r e d u c t i o n p h f ' s a n d t h a t two c h a r a c t e r s a r e sufficient to i d e n t i f y an i t e m in its s e g m e n t . In S y s t e m / 3 7 0 we can use: (a) a h a l f - w o r d v e c t o r R C H , to r e c o r d in e a c h b y t e the p o s i t i o n s o f t h e c h a r a c t e r s i d e n t i f y i n g e a c h i t e m in its s e g m e n t ; (b) a h a l f - w o r d v e c t o r R D to r e c o r d t h e v a l u e s d~; (c) a f u l l - w o r d v e c t o r R S H with the following s t r u c t u r e for its w o r d s : (i) the first 20 bits c o n t a i n t h e b a s e b~ o f t h e ith segment; (ii) t h e next 6 bits c o n t a i n rn[; (iii) the last 6 bits c o n t a i n q[; (d) a f u l l - w o r d v e c t o r R M c o n t a i n i n g t h e divisors Mi. L e t us s u p p o s e t h a t f o l d i n g l e a v e s the s e g m e n t n u m b e r i ( d o u b l e d to allow a d d r e s s i n g to h a l f - w o r d b o u n d a r i e s ) in r e g i s t e r 4 a n d t h a t r e g i s t e r s 1 a n d 2 a r e clear. T h e p i e c e o f c o d i n g in F i g u r e 3 can b e u s e d to c o m p u t e h(w) in r e g i s t e r 2. It can b e u s e d l a t e r to c h e c k e q u a l i t y b e t w e e n w a n d the h ( w ) t h e l e m e n t in the t a b l e a n d to p o i n t to o t h e r i n f o r m a t i o n . Fig. 3.\ IC IC SLL IC IC AH AR e SLDA D SRL SRA AR I,RCH(4) 3,WORD(1) 3,8 I,RCH+I(4) 3,WORD(1) 3,RD(4) 4,4 I, RSH(4) 2,0(1) 2,~M(4) 1,6 2,0(1) 2,1 If the two characters were consecutive, we could improve the code considerably\ Programming Techniques\ R . L. Rivest,* S. L. G r a h a m Editors\ An Algorithm for Reduction of Operator Strength\ John Cocke IBM Thomas J. Watson Research Center Ken Kennedy Rice University\ A simple algorithm which uses an indexed temporary table to perform reduction of operator strength in strongly connected regions is presented. Several extensions, including linear function test replacement, are discussed. These algorithms should fit well into an integrated package of local optimization algorithms. Key words and Phrases: compilers, optimization of compiled code, program analysis, operator strength reduction, test replacement, strongly connected region CR Categories: 4.12, 5.24, 5.32", ["john-ellis/gc.ps.gz"] = "Safe, Efficient Garbage Collection for C++\ John R. Ellis and David L. Detlefs\ June 1, 1993\ Copyright 1993 by Digital Equipment Corporation and Xerox Corporation.\ This work may not be copied or reproduced in whole or in part for any commercial purpose.\ Permission to copy in whole or in part without payment of fee is granted for nonprofit\ educational and research purposes provided that all such whole or partial copies include the\ following: a notice that such copying is by permission of the Systems Research Center of Digital\ Equipment Corporation and the Palo Alto Research Center of Xerox Corporation, both in Palo\ Alto, California; an acknowledgment of the authors and individual contributors to the work; and\ all applicable portions of the copyright notice. Copying, reproducing, or republishing for any\ other purpose shall require a license with payment of fee to the Systems Research Center and", ["john-ellis/mutex.pdf"] = "Fast\ Mutual\ Exclusion\ Brian School Carnegie 5000 N.\ for\ Bershad Science University Avenue PA 15213\ Uniprocessors\ of Computer Mellon Forbes\ Pittsburgh,\ David\ D.\ Redell\ Equipment\ and\ John\ R.\ Ellis\ Digital\ Corporation\ Systems Research Center 130 Lytton Avenue Palo Alto, CA 94301", ["john-gough/gough94interpretive.ps.gz"] = "Interpretive Debugging of Optimised Code\ John Gough, Jeff Ledermann and Kim Elms \\Lambda", ["john-gough/zeroex.ps.gz"] = "Implementing Zero Overhead Exception Handling\ S. Drew, K. J. Gough, J. Ledermann \\Lambda\ SUMMARY\ In programming language design, an increasing emphasis is being placed on pro\ viding facilities for improving program robustness and reliability. To this end\ many languages provide mechanisms for handling exceptional events which arise\ during program execution. The design of exception handling models have been\ widely discussed since the mid nineteenseventies. Many authors have argued that\ the introduction of exception handling into a program should have as little effect\ as possible on the performance of programs which do not raise exceptions.\ In this paper we review the known theory of lowoverhead exception handling,\ and give implementation experience of a zero overhead exception handling system.\ Finally we review the subtle influence which such exception handling has on other", ["john-guttag/larch-five-easy-pieces.pdf"] = "", ["john-hannan/opsem.ps"] = "J. Hannan and D. Miller 46\ [Lan64] Peter J. Landin. The mechanical evaluation of expressions. Computer Journal, 6(5):308--\ 320, 1964.\ [Mar84] Per MartinLof. Intuitionistic Type Theory. Studies in Proof Theory Lecture Notes,\ BIBLIOPOLIS, Napoli, 1984.\ [Mar85] Per MartinLof. Constructive Mathematics and Computer Programming, pages 167--184.\ PrenticeHall, 1985.\ [MTH90] Robin Milner, Mads Tofte, and Robert Harper. The Definition of Standard ML. MIT\ Press, 1990.\ [NM88] Gopalan Nadathur and Dale Miller. An overview of Prolog. In K. Bowen and R.\ Kowalski, editors, Fifth International Conference and Symposium on Logic Programming,\ MIT Press, 1988.\ [NN88] Flemming Nielson and Hanne Nielson. Twolevel semantics and code generation. Theo\ retical Computer Science, 56:59--133, 1988.\ [Pfe91] Frank Pfenning. Logic programming in the LF logical framework. In G'erard Huet and\ Gordon D. Plotkin, editors, Logical Frameworks, Cambridge University Press, 1991.", ["john-harrison/qed.ps"] = "Formalized Mathematics\ John Harrison\ \ Abo Akademi University, Department of Computer Science\ Lemminkaisenkatu 14a, 20520 Turku, Finland\ jharriso@abo.fi\ http://www.abo.fi/jharriso/\ 13th August 1996", ["john-harrison/qedl.ps"] = "Formalized Mathematics\ John Harrison\ \ Abo Akademi University, Department of Computer Science\ Lemminkaisenkatu 14a, 20520 Turku, Finland\ jharriso@abo.fi\ http://www.abo.fi/jharriso/\ 13th August 1996", ["john-hennessy/case-statement.djvu"] = "fioFTWARE--PRACTICI'; AND I.;XPERII';NCI.;, V()L. 12, 879-882 (1982) \ Compilation of the Pascal Case Statement \ JOHN L. HENNESSY AND NOAH MENDELSOHN \ Computer Systems Laboratory, Departments of Electrical Engineering and Computer Science, Stanford \ University, Stanford, CA 94305 U.S.A. \ SUMMARY \ Pascal case statements can be compiled using a variety of methods including comparison \ trees and branch tables. The scheme discussed here combines the two techniques to allow \ comparison trees with entries that are branch tables. The use of a combination of the two \ techniques is shown to adapt well to certain instances of case statements. Extensions to the \ standard case statement also require such a scheme to obtain an efficient implementation. \ KEY WORDS Case statements Compiler design Pascal \ INTRODUCTION \ In a n excellent paper, 1 Sale discusses the implementation of Pascal case statements. ", ["john-hennessy/debugging.djvu"] = "Symbolic Debugging \ JOHN HENNESSY \ Stanford University \ of Optimized \ Code \ The long-standing conflict between code optimization and symbolic debugging is examined. The \ effects of local and global optimizations on the variables of a program are categorized, and models for \ representing the effect of optimizations are given. Algorithms use these models to determine the \ subset of variables whose values do not correspond to those in the original program. Restoring these \ variables to their correct values is investigated, and empirical results from the application of these \ algorithms to local optimization are also presented. \ Categories and Subject Descriptors: D.2.5 [Software Engineering]: Testing and Debugging-- \ debugging aids; D.3.4 [Programming Languages]: Processors--code generation; optimization \ General Terms: Algorithms, Languages \ Additional Key Words and Phrases: Symbolic debugging, directed acyclic graphs, flow graphs ", ["john-hennessy/debugging.pdf"] = "Symbolic Debugging of Optimized Code\ JOHN HENNESSY Stanford University\ The long-standing conflict between code optimization and symbolic debugging is examined. The effects of local and global optimizations on the variables of a program are categorized, and models for representing the effect of optimizations are given. Algorithms use these models to determine the subset of variables whose values do not correspond to those in the original program. Restoring these variables to their correct values is investigated, and empirical results from the application of these algorithms to local optimization are also presented. Categories and Subject Descriptors: D.2.5 [Software Engineering]: Testing and Debugging-debugging aids; D.3.4 [Programming Languages]: Processors--codegeneration; optimization General Terms: Algorithms, Languages Additional Key Words and Phrases: Symbolic debugging, directed acyclic graphs, flow graphs", ["john-hennessy/exception.djvu"] = "Program Optimization and Exception Handling' \ John Hennessy \ Computer Systems Laboratory \ Stanford University \ This research was partially supported by Office of Naval Research, under a \ contract to the University of California Lawrence Livermore Laboratory, Contract \ LLL PO no, 9628303, ", ["john-hennessy/exception.pdf"] = "Program\ Optimization\ and Exception\ Handling”\ John Computer\ Hennessy Laboratory\ Systems\ Stanford\ University\ This research contract LLL PO 110.9628303.\ was partially\ supported\ by Office\ of Naval Research, Laboratow,\ under Contract\ a\ to the University\ of California\ Lawrence\ Livermore", ["john-hennessy/future.pdf"] = "", ["john-howard/TR99-14.pdf"] = "MERL A Mitsubishi Electric Research Laboratory\ Technical Report TR99-14\ August 26, 1999\ Reconcile Users' Guide\ John H Howard", ["john-hughes/arrows.pdf"] = "Generalising Monads to Arrows\ John Hughes\ November 10, 1998\ 1 Introduction\ One of the distinguishing features of functional programming is the widespread\ use of combinators to construct programs. A combinator is a function which\ builds program fragments from program fragments; in a sense the programmer using combinators constructs much of the desired program automatically,\ rather than writing every detail by hand. The freedom that functional languages\ provide to manipulate functions | program fragments | as rst-class citizens\ supports combinator programming directly.\ Some combinators, such as the well-known list-processing operators map\ and lter, encapsulate generally useful program constructions and may appear\ in almost any functional program. Others are tailored to particular application\ areas, and are often collected into libraries that enable applications in that", ["john-hughes/arrows.ps.gz"] = "Generalising Monads to Arrows\ John Hughes\ November 10, 1998\ 1 Introduction\ One of the distinguishing features of functional programming is the widespread\ use of combinators to construct programs. A combinator is a function which\ builds program fragments from program fragments; in a sense the program\ mer using combinators constructs much of the desired program automatically,\ rather than writing every detail by hand. The freedom that functional languages\ provide to manipulate functions --- program fragments --- as firstclass citizens\ supports combinator programming directly.\ Some combinators, such as the wellknown listprocessing operators map\ and filter, encapsulate generally useful program constructions and may appear\ in almost any functional program. Others are tailored to particular application\ areas, and are often collected into libraries that enable applications in that", ["john-hughes/lists.djvu"] = "", ["john-hughes/lists.pdf"] = "", ["john-hughes/pretty.ps.gz"] = "The Design of a Prettyprinting Library\ John Hughes\ Chalmers Tekniska Hogskola, Goteborg, Sweden.\ 1 Introduction\ On what does the power of functional programming depend? Why are functional\ programs so often a fraction of the size of equivalent programs in other languages?\ Why are they so easy to write? I claim: because functional languages support soft\ ware reuse extremely well.\ Programs are constructed by putting program components together. When we\ discuss reuse, we should ask\ -- What kind of components can be given a name and reused, rather than recon\ structed at each use?\ -- How flexibly can each component be used?\ Every programming language worthy of the name allows sections of a program with\ identical control flow to be shared, by defining and reusing a procedure. But `pro\ gramming idioms' --- for example looping over an array --- often cannot be defined", ["john-hughes/quick.pdf"] = "QuickCheck:\ A Lightweight Tool for Random Testing\ of Haskell Programs\ Koen Claessen\ John Hughes\ Chalmers University of Technology\ Chalmers University of Technology\ koen@cs.chalmers.se\ rjmh@cs.chalmers.se", ["john-hughes/quick.ps"] = "QuickCheck:\ A Lightweight Tool for Random Testing\ of Haskell Programs\ Koen Claessen\ Chalmers University of Technology\ koen@cs.chalmers.se\ John Hughes\ Chalmers University of Technology\ rjmh@cs.chalmers.se", ["john-hughes/quickspec.pdf"] = "QuickSpec: Guessing Formal Specifications using Testing\ Koen Claessen1 , Nicholas Smallbone1 , and John Hughes2\ 1\ Chalmers University of Technology {koen,nicsma}@chalmers.se 2 Chalmers and Quviq AB rjmh@chalmers.se", ["john-hughes/rank-journal.pdf"] = "Software Quality Journal manuscript No. (will be inserted by the editor)\ Ranking Programs using Black Box Testing\ Koen Claessen · John Hughes · Michal Palka · Nick Smallbone · Hans Svensson\ Received: date / Accepted: date", ["john-hughes/rank-programs.pdf"] = "Ranking Programs using Black Box Testing\ Chalmers University of Technology Gothenburg, Sweden.\ Koen Claessen\ Chalmers University of Technology and Quviq AB Gothenburg, Sweden.\ John Hughes\ Chalmers University of Technology Gothenburg, Sweden.\ Michał Pałka\ koen@chalmers.se rjmh@chalmers.se michal.palka@chalmers.se Nick Smallbone Hans Svensson\ Chalmers University of Technology Gothenburg, Sweden. Chalmers University of Technology and Quviq AB Gothenburg, Sweden.\ nicsma@chalmers.se ABSTRACT\ We present an unbiased method for measuring the relative quality of different solutions to a programming problem. Our method is based on identifying possible bugs from program behaviour through black-box testing. The main motivation for such a method is its use in experimental evaluation of software development methods. We report on the use of our method in a small-scale such experiment, which was aimed at evaluating the effectiveness of property-based testing vs. unit testing in software development.", ["john-hughes/rawfp.pdf"] = "RAW FP: Productivity and Performance through Resource Aware Functional Programming\ John Hughes, Mary Sheeran, Koen Claessen and Patrik Jansson November 24, 2010\ 1 Main goals\ Earlier this year, Swedsoft (an industrial network of large Swedish software developers) called for an order of magnitude improvement in software development productivity over the next decade, if Sweden is to remain competitive. Coincidentally, an improvement of roughly an order of magnitude in productivity over conventional programming languages is the claim that has been made for functional programming since the 1980s. In the early days, that claim was based on the brevity of functional programs—the implementation of QuickSort is two lines in Haskell, but twenty lines in Java—and the well-known observation that developers produce approximately the same number of lines of code per day, regardless of programming language. Today, evidence of improved productivity is much more direct. Functional programming is seeing rapid growth in industry today. Ericsson were pioneers in the area, designing Erlang around 1990, and using it for the first time in a large product in the mid 1990s— the AXD 301 ATM switch, with around 1,500,000 lines of Erlang code. Writing about the outcome of that project, Wiger estimated a 4 to 10 times productivity improvement over traditional methods [Wiger et al., 2002], supporting the earlier claims. Since then, many other companies worldwide have used the technology to attain business success via higher productivity, notable Swedish examples including BlueTail, sold less than 18 months after start-up for $152 million, and Klarna, which offers invoicing services to web shops and has grown to 350 people in just five years. In recent years Microsoft have adopted functional programming features in their .NET languages C# and Visual Basic, and this year released a functional programming language of their own, F#, as part of Visual Studio 2010. On the JVM, Scala and Clojure offer functional programming with smooth interoperability with Java, and high profile applications have appeared—such as Twitter’s back-end processing, which is mostly done in Scala using a concurrency library inspired by Erlang. A major motivation for all this growth is the improved productivity that functional programming brings. 1", ["john-hughes/whyfp.pdf"] = "Why Functional Programming Matters\ John Hughes, Institutionen for Datavetenskap, Chalmers Tekniska Hogskola, 41296 Goteborg, SWEDEN. rjmh@cs.chalmers.se\ As software becomes more and more complex, it is more and more important to structure it well. Well-structured software is easy to write, easy to debug, and provides a collection of modules that can be re-used to reduce future programming costs. Conventional languages place conceptual limits on the way problems can be modularised. Functional languages push those limits back. In this paper we show that two features of functional languages in particular, higher-order functions and lazy evaluation, can contribute greatly to modularity. As examples, we manipulate lists and trees, program several numerical algorithms, and implement the alphabeta heuristic (an algorithm from Arti cial Intelligence used in game-playing programs). Since modularity is the key to successful programming, functional languages are vitally important to the real world.", ["john-hughes/whyfp.ps.gz"] = "Why Functional Programming Matters \\Lambda\ John Hughes, Institutionen for Datavetenskap,\ Chalmers Tekniska Hogskola,\ 41296 Goteborg,\ SWEDEN. rjmh@cs.chalmers.se", ["john-launchbury/avoiding-updates.djvu"] = "Avoiding \ Unnecessary \ Up dates \ John \ Launchbury \ , \ Andy \ Gill, \ John \ Hughes, \ Simon \ Marlow, \ Simon \ Peyton \ Jones, \ Philip \ W \ adler \ Computing \ Science \ Department, \ Glasgow \ University ", ["john-launchbury/avoiding-updates.pdf"] = "Avoiding Unnecessary Updates\ John Launchbury, Andy Gill, John Hughes,\ Simon Marlow, Simon Peyton Jones, Philip Wadler\ Computing Science Department,\ Glasgow University", ["john-launchbury/lazy-semantics.djvu"] = "A Natural Semantics for I&y Evaluation \ John Launchbury \ Computing \ Science \ llepartment \ Glasgow \ l.University \ jl@ldcs.glasgow. \ ac,uk ", ["john-levine/linker02.ps.gz"] = "Architectural Issues 1\ Architectural Issues\ $Revision: 1.1 $\ $Date: 1999/01/02 09:38:11 $\ XXXX estabkusgubg addressability XXXX\ Linkers and loaders, along with compilers and assemblers, are exquisitely\ sensitive to the architectural details of their target computers. In this chap\ ter we cover enough computer architecture to understand the jobs that\ linkers have to do. The descriptions of all of the computer architectures in\ this chapter are deliberately incomplete and leave out the parts that don't\ affect the linker such as floating point and I/O.\ Two aspects of architecture affect linkers: program addressing and instruc\ tion formats. One of the things that a linker does is to modify addresses\ and offsets both in data memory and in instructions. In both cases, the\ linker must ensure that its modifications are correct within the addressing", ["john-levine/linker03.ps.gz"] = "1\ XXXX notes XXXX add stuff about object format design, card decks\ where the order didn't matter much, the ways that object files limited lan\ guage semantics, e.g., limited symbol lengths. say something about IBM\ object decks\ 2 Object Files\ Object Files\ THIS CHAPTER WILL BE REVISED AND CORRECTED. SOME\ OF THE MATERIAL ON WINDOWS OBJECT FILES IS JUST\ WRONG.\ Compilers and assemblers create object files containing the generated bi\ nary code and data for a source file. Linkers combine multiple object files\ into one, loaders take object files and load them into memory. In this\ chapter we delve into the details of object file formats and contents.\ What goes into an object file?", ["john-levine/linker04.ps.gz"] = "Storage allocation 1\ Storage allocation\ $Revision: 1.4 $\ $Date: 1999/01/03 08:18:24 $\ A linker or loader's first major task is storage allocation. Once storage is\ allocated, the linker can proceed to subsequent phases of symbol binding\ and code fixups. Most of the symbols in\ As is the case with most other aspects of linking, the basic issues in stor\ age allocation are straightforward, but the details to handle peculiarities of\ computer architecture and programming language semantics (and the in\ teractions between the two) can get complicated. Most of the job of stor\ age allocation can be handled in an elegant and relatively architecturein\ dependent way, but there are invariably a few details that require ad hoc\ machine specific hackery.\ Segments and addresses\ Every object or executable file uses a model of the target address space.", ["john-levine/linker05.ps.gz"] = "Symbol management 1\ Symbol management\ $Revision: 1.1 $\ $Date: 1999/01/02 09:38:11 $\ Symbol management is a linker's key function. Without some way to refer\ from one module to another, there wouldn't be much use for a linker's oth\ er facilities.\ Binding and name resolution\ Linkers handle a variety of kinds of symbols. All linkers handle symbolic\ references from one module to another. Each input module includes a\ symbol table. The symbols include:\ . Global symbols defined and perhaps referenced in the module\ . Global symbols referenced but not defined in this module (general\ ly called externals)\ . Segment names, which are usually also considered to be global\ symbols defined to be at the beginning of the segment.\ . Nonglobal symbols, usually for debuggers and crash dump analy\ sis. (Sometimes mixed in with global symbols, somtimes in a sep", ["john-levine/linker06.ps.gz"] = "Libraries 1\ Libraries\ $Revision: 1.1 $\ $Date: 1999/01/02 09:38:11 $\ Every modern linker handles libraries, collections of object files that are\ included as needed in a linked program. In this chapter we cover tradi\ tional statically linked libraries, leaving the more complex shared libraries\ to Chapters 9 and 10.\ Purpose of libraries\ In the 1940s and early 1950s, programming shops had actual code libraries\ containing reels of tape or later decks of cards that a programmer would\ visit and select routines to load with his program. Once loaders and link\ ers started to resolve symbolic references, it became possible to automate\ the process by selecting routines from the library that resolve otherwise\ undefined symbols.\ A library file is fundamentally no more than a collection of object files,\ usually with some added directory information to make it faster to search.", ["john-levine/linker07.ps.gz"] = "Relocation 1\ Relocation\ Once a linker has scanned all of the input files to determine segment sizes,\ symbol definitions and symbol references, figured out which library mod\ ules to include, and decided where in the output address space all of the\ segments will go, the next stage is the heart of the linking process, reloca\ tion. We use relocation to refer both to the process of adjusting program\ addresses to account for nonzero segment origins, and the process of re\ solving references to external symbols, since the two are frequently han\ dled together.\ The linker's first pass lays out the positions of the various segments and\ collects the segmentrelative values of all global symbols in the program.\ Once the linker determines the position of each segment, it potentially", ["john-levine/linker08.ps.gz"] = "Loading and overlays 1\ Loading and overlays\ $Revision: 1.6 $\ $Date: 1999/01/02 03:35:15 $\ Loading is the process of bringing a program into main memory so it can\ run. In this chapter we look at the loading process, concentrating on load\ ing programs that have already been linked. Many systems used to have\ linking loaders that combined the linking and loading process, but those\ have now practically disappeared, with the only one I know of on current\ hardware being on MVS. Linking loaders weren't all that different from\ plain linkers, with the primary and obvious difference being that the out\ put was left in memory rather than placed in a file.\ Basic loading\ We touched on most of the basics of loading in Chapter 3, in the context of\ object file design. Loading is a little different depending on whether a", ["john-levine/linker09.ps.gz"] = "Shared libraries 1\ Shared libraries\ $Revision: 1.1 $\ $Date: 1998/12/30 03:00:06 $\ Program libraries date back to the earliest days of computing, but with the\ advent of compiled languages including Fortran and COBOL, libraries be\ came an integral part of programming since compiled languages need li\ braries to work. They use libraries explictly when a program calls a stan\ dard procedure such as sqrt(), and they use libraries implicitly for I/O,\ conversions, sorting, and a variety of other higher level features. As lan\ guages have gotten more complex, libraries have gotten correspondingly\ more complex. When I wrote a Fortran 77 compiler twenty years ago, the\ runtime library was already more work than the compiler itself.\ The growth of language libraries means not only that all programs include", ["john-levine/linker10.ps.gz"] = "Dynamic Linking and Loading 1\ Dynamic Linking and Loading\ $Revision: 1.1 $\ $Date: 1999/01/02 09:38:11 $\ Dynamic linking defers much of the linking process until a program starts\ running. It provides a variety of benefits that are hard to get otherwise:\ . Dynamically linked shared libraries are easier to create than static\ linked shared libraries.\ . Dynamically linked shared libraries are easier to update than static\ linked shared libraries.\ . The semantics of dynamically linked shared libraries can be much\ closer to those of unshared libraries.\ . Dynamic linking permits a program to load and unload routines at\ runtine, a facility that can otherwise be very difficult to provide.\ There are a few disadvantages, of course. The runtime perfor\ mance costs of dynamic linking are substantial compared to those\ of static linking, since every symbol has to be looked up in a sym", ["john-levine/linker11.ps.gz"] = "Advanced techniques 1\ Advanced techniques\ $Revision: 1.3 $\ $Date: 1999/02/12 07:09:19 $\ This chapter describes a grabbag of miscellaneous linker techniques that\ don't fit very well anywhere else.\ Techniques for C++\ C++ presents three significant challenges to the linker. One is its compli\ cated naming rules, in which multiple functions can have the same name if\ they have different argument types. Name mangling addresses this well\ enough that all linkers use it in some form or another.\ The second is global initializers and destructors, routines that need to be\ run before the main routine starts and after the main routine exits. This re\ quires that the linker collect the pieces of initializer and destructor code, or\ at least pointers to them, into one place so that startup and exit code can", ["john-levine/linker12.ps.gz"] = "References 1\ References\ $Revision: 1.2 $\ $Date: 1999/02/12 07:09:19 $\ IBM, MVS/ESA Linkage Editor and Loader User's Guide, Order number\ SC264510, 1991. Also available as http://www.ibm.com/\ AT&T, System V Application Binary Interface, UNIX Press/Prentice Hall,\ ISBN 0138775982, 1990.\ AT&T, System V ABI Motorola 68000 Processor Family Supplement,\ UNIX Press/Prentice Hall, ISBN 0138776636, 1990.\ AT&T, System V ABI Intel386 Architecture Processor Family Supple\ ment, Intel, Order number 465681, 1990.\ Tool Interface Standard (TIS) Portable Formats Specification Version 1.1,\ Intel order number 241597, 1993. Also at http://developer.in\ tel.com/vtune/tis.htm. Describes ELF, DWARF, and OMF for\ x86.\ Tool Interface Standard (TIS) Formats Specification for Windows Version\ 1.0, Intel order number 241597, 1993. Describes PE format and debug\ symbols, lthough Microsoft has changed them since this came out.\"", ["john-mellor-crummey/instantreplay.pdf"] = "", ["john-mitchell/abstract-types.pdf"] = "", ["john-oleary/reflect.pdf"] = "JFP 16 (2): 157196, 2006.\ c 2005 Cambridge University Press\ 157\ doi:10.1017/S0956796805005757 First published online 28 October 2005 Printed in the United Kingdom\ A reflective functional language for hardware design and theorem proving\ JIM GRUNDY\ Intel Corporation, Strategic CAD Labs Mail Stop JF4-211, 2111 NE 25th Ave, Hillsboro, OR 97124-5961, USA (e-mail: Jim.D.Grundy@intel.com)\ TOM MELHAM\ Oxford University, Computing Laboratory Wolfson Building, Parks Rd, Oxford, OX1 3QD, UK (e-mail: Tom.Melham@comlab.ox.ac.uk)\ J O H N O' L E A R Y\ Intel Corporation, Strategic CAD Labs Mail Stop JF4-211, 2111 NE 25th Ave, Hillsboro, OR 97124-5961, USA (e-mail: John.W.O'Leary@intel.com)", ["john-ousterhout/tclUsenix90.ps.gz"] = "Tcl: An Embeddable Command Language\ John K. Ousterhout\ Computer Science Division\ Electrical Engineering and Computer Sciences\ University of California at Berkeley\ Berkeley, CA 94720\ ouster@sprite.berkeley.edu", ["john-ousterhout/tkUsenix91.ps.gz"] = "An X11 Toolkit Based on the Tcl Language\ John K. Ousterhout\ Computer Science Division\ Electrical Engineering and Computer Sciences\ University of California\ Berkeley, CA 94720", ["john-regehr/finding-c-bugs.pdf"] = "Finding and Understanding Bugs in C Compilers\ Xuejun Yang\ Yang Chen\ Eric Eide\ John Regehr\ University of Utah, School of Computing\ { jxyang, chenyang, eeide, regehr }@cs.utah.edu", ["john-regehr/hoist.pdf"] = "HOIST: A System for Automatically Deriving Static Analyzers for Embedded Systems\ John Regehr Alastair Reid School of Computing, University of Utah", ["john-regehr/reducing-c.pdf"] = "Test-Case Reduction for C Compiler Bugs\ John Regehr\ Yang Chen\ Pascal Cuoq\ University of Utah\ regehr@cs.utah.edu\ University of Utah\ chenyang@cs.utah.edu\ CEA LIST\ pascal.cuoq@cea.fr\ Eric Eide\ Chucky Ellison\ Xuejun Yang\ University of Utah\ eeide@cs.utah.edu\ University of Illinois\ celliso2@illinois.edu\ University of Utah\ jxyang@cs.utah.edu", ["john-reppy/92-thesis-reppy.ps.gz"] = "Higherorder Concurrency\ John Hamilton Reppy\ Ph.D Thesis\ TR 921852\ June 1992\ Department of Computer Science\ Cornell University\ Ithaca, NY 14853\ HIGHERORDER CONCURRENCY\ A Dissertation\ Presented to the Faculty of the Graduate School\ of Cornell University\ in Partial Fulfillment of the Requirements for the Degree of\ Doctor of Philosophy\ by\ John Hamilton Reppy\ January 1992\ COPYRIGHT c\ fl John Hamilton Reppy 1992\ ALL RIGHTS RESERVED\ HIGHERORDER CONCURRENCY\ John Hamilton Reppy, Ph.D.\ Cornell University 1992\ Concurrent programming is a useful technique for structuring many important classes of ap\ plications such as interactive systems. This dissertation presents an approach to concurrent\ language design that provides a new form of linguistic support for constructing concurrent\ applications. This new approach treats synchronous operations as firstclass values in a way\ that is analogous to the treatment of functions as firstclass values in languages such as ML.", ["john-reppy/cml-pldi.pdf"] = "CML: A Higher-order\ Concurrent\ Language*\ John H. Reppy Cornell\ jhr@cs.\ University\ cornell. eciu\ 1\ Introduction\ inherits values,\ the good strong\ features typing,\ of SML:\ functions\ as first-class datatypes handling and and a to SML\ static\ polymorphism, exception\ Concurrent guage for\ ML (CML) concurrent ML MLof\ is a high-level, programming.\ high-performance It is cm extension\ lanof\ pattern\ matching,\ lexical\ scoping, facility.\ state-of-the-art is given\ module\ A brief\ introduction\ Standard Standard\ (SML)IMTH901, New\ and is implemented\ on top of\ as an appendix; of CML In addition\ also see [Har86]. from the quality has the foIlowing\ The sequential of the SML/NJ properties:\ Jersey (SML/NJ)1w871. usedto build\ CMLisapracreal systems. It\ performance compiler.\ q\ benefits CML\ ticallanguage demonstrates in order Although design\ andisbeing\ that we need not sacrifice performance.", ["john-reppy/conc93.ps"] = "Concurrent ML:\ Design, Application and Semantics\ John H. Reppy\ Department of Computer Science\ Cornell University ?\ 1 Introduction\ Concurrent ML (CML) is a highlevel, highperformance language for concurrent\ programming. It is an extension of Standard ML (SML) [MTH90], and is imple\ mented on top of Standard ML of New Jersey (SML/NJ) [AM87]. CML is a\ practical language and is being used to build real systems. It demonstrates that we\ need not sacrifice highlevel notation in order to have good performance. CML is\ also a welldefined language. In the tradition of SML, it has a formal semantics and\ its typesoundness has been proven.\ Although most research in the area of concurrent language design has been moti\ vated by the desire to improve performance by exploiting multiprocessors, I believe\ that concurrency is also a useful programming paradigm for certain application do", ["john-reppy/exene.ps"] = "4\ A Multithreaded Higherorder\ User Interface Toolkit\ EMDEN R. GANSNER and JOHN H. REPPY\ AT&T Bell Laboratories", ["john-reppy/first-class-pldi88.pdf"] = "Synchronous Operations as First-class Values\ J.H. Reppyt\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["john-reppy/first-class.ps"] = "Firstclass Synchronous Operations\ John H. Reppy\ AT&T Bell Laboratories", ["john-reppy/re-deriv.pdf"] = "Regular-expression derivatives reexamined\ SCOTT OWENS\ University of Cambridge\ Scott.Owens@cl.cam.ac.uk\ JOHN REPPY\ University of Chicago\ jhr@cs.uchicago.edu\ AARON TURON\ University of Chicago\ Northeastern University\ turon@ccs.neu.edu\ 1 Introduction\ The derivative of a set of strings S with respect to a symbol a is the set of strings generated by stripping the leading a from the strings in S that start with a. For regular sets of\ strings, i.e., sets defined by regular expressions (REs), the derivative is also a regular set. In\ a 1964 paper, Janusz Brzozowski presented an elegant method for directly constructing a\ recognizer from a regular expression based on regular-expression derivatives (Brzozowski,\ 1964). His approach is elegant and easily supports extended regular expressions; i.e., REs\ extended with Boolean operations such as complement. Unfortunately, RE derivatives have\ been lost in the sands of time, and few computer scientists are aware of them.1 Recently,", ["john-reppy/signals.ps.gz"] = "Asynchronous Signals in Standard ML \\Lambda\ John H. Reppy\ TR 901144\ August 1990\ Department of Computer Science\ Cornell University\ Ithaca, NY 14853\ \\Lambda This work was supported, in part, by the NSF and ONR under NSF grant CCR8514862\ Asynchronous Signals in Standard ML \\Lambda\ John H. Reppy\ Cornell University\ jhr@cs.cornell.edu\ August 1, 1990", ["john-reppy/synch.pdf"] = "Synchronous Operations as First-class Values\ J.H. Reppyt\ AT&T Bell Laboratories Murray Hill, New Jersey 07974", ["john-reynolds/definterps-revisted.pdf"] = "Higher-Order and Symbolic Computation, 11, 355–361 (1998)\ c 1998 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ Definitional Interpreters Revisited\ JOHN C. REYNOLDS\ john.reynolds@cs.cmu.edu\ School of Computer Science, Carnegie Mellon University", ["john-reynolds/definterps.pdf"] = "Higher-Order and Symbolic Computation, 11, 363–397 (1998)\ c 1998 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ Definitional Interpreters for Higher-Order Programming Languages*\ JOHN C. REYNOLDS**\ Systems and Information Science, Syracuse University", ["john-reynolds/defintho.pdf"] = "Higher-Order and Symbolic Computation, 11, 363397 (1998)\ c 1998 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ Definitional Interpreters for Higher-Order Programming Languages*\ JOHN C. REYNOLDS**\ Systems and Information Science, Syracuse University", ["john-reynolds/essence.ps.gz"] = "The Essence of Algol 1\ John C. Reynolds\ Syracuse University, Syracuse, NY, U.S.A.", ["john-reynolds/histcont.ps.gz"] = "LISP AND SYMBOLIC COMPUTATION: An International Journal, 6, 233--247, 1993\ c\ fl 1993 Kluwer Academic Publishers -- Manufactured in The Netherlands\ The Discoveries of Continuations\ JOHN C. REYNOLDS (John.Reynolds@cs.cmu.edu)\ School of Computer Science\ Carnegie Mellon University\ Pittsburgh, PA 152133890\ Keywords: Semantics, Continuation, ContinuationPassing Style", ["john-reynolds/polyintro.ps.gz"] = "This is a preprint of the introduction to the section on ``Polymorphic\ Lambda Calculus'' in ``Logical Foundations of Functional Program\ ming, Proceedings of the Year of Programming Institute'', edited by\ G'erard Huet, to be published by Addison Wesley.\ An Introduction to the\ Polymorphic Lambda Calculus\ John C. Reynolds\ Carnegie Mellon University\ December 23, 1994\ The polymorphic (or secondorder) typed lambda calculus was invented by JeanYves\ Girard in 1971 [11, 10], and independently reinvented by myself in 1974 [24]. It is extraordi\ nary that essentially the same programming language was formulated independently by the\ two of us, especially since we were led to the language by entirely different motivations.\ In my own case, I was seeking to extend conventional typed programming languages to\ permit the definition of ``polymorphic'' procedures that could accept arguments of a variety\ of types. I started with the ordinary typed lambda calculus and added the ability to pass", ["john-reynolds/type-structure.pdf"] = "", ["john-reynolds/typesabpara.djvu"] = "INFORMATION PROCESSING 83, R.E.A. Mnson (ed.) \ Elsevier Science PubHshea B.V. (North-Holhmd) \ IFIP, 1983 \ TYPES, ABSTRACTION AND PARAMETRIC POLYMORPHISMt \ John C. REYNOLDS \ Syracuse University \ Syracuse, New York, USA \ Invited Paper \ We explore the thesis that type structure is a sintactic discipline for maintaining levels \ of abstraction. Traditionally, this view has been formalized algebraically, but the \ algebraic approach fails to encompass higher-order functions. For this purpose, it is \ necessary to generalize homomorphic functions to relations; the result is an \"abstraction\" \ theorem that is applicable to the typed lambda calculus and various extensions, including \ user-defined types. \ Finally, we consider polymorphic functions, and show that the abstraction theorem captures \ Strachey's concept of parametric, as opposed to ad hoc, polymorphism. \ 1. A FABLE \ Once upon a time, there was a university with ", ["john-reynolds/typesabpara.pdf"] = "", ["john-salmon/parallel-random.pdf"] = "Parallel Random Numbers: As Easy as 1, 2, 3\ ∗\ John K. Salmon, Mark A. Moraes, Ron O. Dror, and David E. Shaw\ ∗†\ D. E. Shaw Research, New York, NY 10036, USA", ["john-trono/semaphores.pdf"] = "Further comments on \"A correct and unrestrictive implementation of general semaphores\"\ John A. Trono, William E. Taylor Computer Science Department St. Michael's College 1 Winooski Park Colchester, VT 05439 {jtrono, wtaylor }@ smcvt.edu", ["john-wiegley/git.from.bottom.up.pdf"] = "Gi from the bottom up\ Wed,  Dec \ by John Wiegley\ In my pursuit to understand Git, it’s been helpful for me to understand it from the bottom\ up — rather than look at it only in terms of its high-level commands. And since Git is so beautifully simple when viewed this way, I thought others might be interested to read what I’ve found,\ and perhaps avoid the pain I went through finding it.\ I used Git version 1.5.4.5 for each of the examples found in this document.\ Contents\ 1. License\ 2. Introduction\ 3. Repository: Directory content tracking\ Introducing the blob\ Blobs are stored in trees\ How trees are made\ e beauty of commits\ A commit by any other name…\ Branching and the power of rebase\ 4. e Index: Meet the middle man\ Taking the index farther\ 5. To reset, or not to reset", ["john-zubizarreta/learning-portfolio-idea-44.pdf"] = "IDEA PAPER #44\ The Learning Portfolio: A Powerful Idea for Significant Learning\ John Zubizarreta • Columbia College, SC\ Student portfolios have been widely known and\ implemented for some time in academic fields such as\ writing and business. Similarly, portfolios have been a\ staple form of documentation of performance skills in the\ fine arts, providing students and teachers with a method\ for displaying and judging evidence of best practice\ and samples of the full range of talent. Another popular\ application has been to provide a device for demonstrating\ the value of experiential learning or for assessing credit\ for prior learning. Some portfolios are shared by students\ and faculty advisors for the purpose of academic advising\ and career counseling. Also, the National Council for", ["jon-bentley/correct-programs.pdf"] = "programming\ By Jon Bentley\ pearts\ WRITING CORRECT PROGRAMS\ In the late 1960s people were talking about the promise of\ programs that verify the correctness of other programs. Unfortunately, it is now the middle of the 1980s, and, with precious\ few exceptions, there is still little more than talk about automated verification systems. Despite unrealized expectations,\ however, the research on program verification has given us\ something far more valuable than a black box that gobbles\ programs and flashes \"good\" or \"bad\"--we now have a fundamental understanding of computer programming.\ The purpose of this column is to show how that fundamental understanding can help programmers write correct programs. But before we get to the subject itself, we must keep it\ in perspective. Coding skill is just one small part of writing", ["jonathan-hill/masters.ps.gz"] = "Symbolic Superoptimization\ Jonathan Hill\ October 14, 1999", ["joseph-williams/phenomenology-of-error.pdf"] = "The Phenomenology of Error\ Author(s): Joseph M. Williams\ Source: College Composition and Communication, Vol. 32, No. 2, Language Studies and\ Composing (May, 1981), pp. 152-168\ Published by: National Council of Teachers of English\ Stable URL: http://www.jstor.org/stable/356689 .\ Accessed: 23/07/2014 13:07\ Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at .\ http://www.jstor.org/page/info/about/policies/terms.jsp\ .\ JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of\ content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms\ of scholarship. For more information about JSTOR, please contact support@jstor.org.\ .\ National Council of Teachers of English is collaborating with JSTOR to digitize, preserve and extend access to", ["joshua-auerbach/RC20718.ps.gz"] = "RC 20718 (02/05/97)\ Computer Science\ IBM Research Report\ The Mockingbird System: A Compilerbased Approach to Maximally\ Interoperable Distributed Programming\ Joshua Auerbach, Mark C. ChuCarroll\ IBM Research Division\ T.J. Watson Research Center\ Yorktown Heights, New York\ LIMITED DISTRIBUTION NOTICE\ This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been is\ sued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution\ outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should\ be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties).\ IBM Research Division\ Almaden \\Delta T.J. Watson \\Delta Tokyo \\Delta Zurich", ["joxan-jaffar/unification-to-constraints.pdf"] = "", ["julia-lawall/automating-collateral.pdf"] = "Documenting and Automating\ Collateral Evolutions in Linux Device Drivers\ Yoann Padioleau\ Julia Lawall\ René Rydhof Hansen\ Gilles Muller\ Ecole des Mines\ de Nantes\ DIKU, University of\ Copenhagen\ Aalborg University\ Ecole des Mines\ de Nantes\ yoann.padioleau@acm.org julia@diku.dk\ rrh@cs.aau.dk\ Gilles.Muller@emn.fr", ["julia-lawall/generic-patch-inference.pdf"] = "Generic Patch Inference\ Jesper Andersen\ Julia L. Lawall\ DIKU, University of Copenhagen,\ Universitetsparken 1, 2100 Copenhagen Ø, Denmark\ Email: jespera@diku.dk\ DIKU, University of Copenhagen,\ Universitetsparken 1, 2100 Copenhagen Ø, Denmark\ Email: julia@diku.dk", ["julia-lawall/leakage.pdf"] = "Towards Leakage Containment\ Julia L. Lawall and Daniel P. Friedman\ Indiana University\ Computer Science Department\ Bloomington, IN 47405", ["julia-lawall/understanding-collateral.pdf"] = "EuroSys 2006\ 59\ Understanding Collateral Evolution in\ Linux Device Drivers\ Yoann Padioleau\ Julia L. Lawall\ Gilles Muller\ OBASCO Group\ Ecole des Mines de\ Nantes-INRIA, LINA\ 44307 Nantes cedex 3, France\ DIKU\ University of Copenhagen\ 2100 Copenhagen Ø,\ Denmark\ OBASCO Group\ Ecole des Mines de\ Nantes-INRIA, LINA\ 44307 Nantes cedex 3, France\ Yoann.Padioleau@emn.fr\ julia@diku.dk\ Gilles.Muller@emn.fr\ “Greg Kroah-Hartman has gotten [Linux] 2.6.13 off\ to a good start with a massive set of driver core\ patches. There are a fair number of API changes\ that come with this patch set, so the whole thing\ is worth a look. In-tree code has been fixed to use\ the new API, but, as always, maintainers of external code are on their own.”\ http://lwn.net/Articles/140002/, June 23, 2005.", ["jwd/CS-94-42.ps.gz"] = "Targetspecific Global Code Improvement: Principles and Applications\ Department of Computer Science\ University of Virginia\ Charlottesville, VA 22903\ Current and future high-performance systems require language processors that can generate code that fully exploits\ the power of the underlying architecture. A key and necessary component of such language processors is a global code\ improver. This article describes the key principles behind the design and implementation of a global code improver\ that has been use to construct several high-quality compilers and other program transformation and analysis tools. The\ code improver, called vpo, employs a paradigm of compilation that has proven to be flexible and adaptable---all code\ improving transformations are performed on a target-specific representation of the program. The aggressive use of this", ["karl-sims/siggraph94.pdf"] = "Evolving Virtual Creatures\ Karl Sims Thinking Machines Corporation (No longer there) Abstract\ This paper describes a novel system for creating virtual creatures that move and behave in simulated three-dimensional physical worlds. The morphologies of creatures and the neural systems for controlling their muscle forces are both generated automatically using genetic algorithms. Different fitness evaluation functions are used to direct simulated evolutions towards specific behaviors such as swimming, walking, jumping, and following. A genetic language is presented that uses nodes and connections as its primitive elements to represent directed graphs, which are used to describe both the morphology and the neural circuitry of these creatures. This genetic language defines a hyperspace containing an indefinite number of possible creatures with behaviors, and when it is searched using optimization techniques, a variety of successful and interesting locomotion strategies emerge, some of which would be difficult to invent or build by design. calculated automatically, or it can instead be provided interactively by a user. Interactive evolution allows procedurally generated results to be explored by simply choosing those that are the most aesthetically desirable for each generation [2,18,19,21]. The user sacrifices some control when using these methods, especially when the fitness is procedurally defined. However, the potential gain in automating the creation of complexity can often compensate for this loss of control, and a higher level of user influence is still maintained by the fitness criteria specification. In several cases, optimization has been used to automatically generate dynamic control systems for given articulated structures: de Garis has evolved weight values for neural networks [4], Ngo and Marks have performed genetic algorithms on stimulusresponse pairs [14], and van de Panne and Fiume have optimized sensor-actuator networks [15]. Each of these methods has resulted in successful locomotion of two-dimensional stick figures. The work presented here is related to these projects, but differs in several respects. In previous work, control systems were generated for fixed structures that were user-designed, but here entire creatures are evolved: the optimization determines the creature morphologies as well as their control systems. Also, here the creatures’ bodies are three-dimensional and fully physically based. The three-dimensional physical structure of a creature can adapt to its control system, and vice versa, as they evolve together. The “nervous systems” of creatures are also completely determined by the optimization: the number of internal nodes, the connectivity, and the type of function each neural node performs are included in the genetic description of each creature, and can grow in complexity as an evolution proceeds. Together, these remove the necessity for a user to provide any specific creature information such as shape, size, joint constraints, sensors, actuators, or internal neural parameters. Finally, here a developmental process is used to generate the creatures and their control systems, and allows similar components including their local neural circuitry to be defined once and then replicated, instead of requiring each to be separately specified. This approach is related to L-systems, graftal grammars, and object instancing techniques [6,8,10,13,20]. It is convenient to use the biological terms genotype and phenotype when discussing artificial evolution. A genotype is a coded representation of a possible individual or problem solution. In biological systems, a genotype is usually composed of DNA and contains the instructions for the development of an organism. Genetic algorithms typically use populations of genotypes consisting of strings of binary digits or parameters. These are read to produce phenotypes which are then evaluated according to some fitness criteria and selectively reproduced. New genotypes are generated by copying, mutating, and/or combining the genotypes of the most fit individuals, and as the cycle repeats the population should ascend to higher and higher levels of fitness. Variable length genotypes such as hierarchical Lisp expressions", ["kathi-fisler/icer14.pdf"] = "The Recurring Rainfall Problem\ Kathi Fisler\ WPI Dept of Computer Science\ kfisler@cs.wpi.edu", ["kathleen-fisher/learn-pads.pdf"] = "From Dirt to Shovels: Fully Automatic Tool Generation from Ad Hoc Data\ Kathleen Fisher\ AT&T Labs Research kfisher@research.att.com\ David Walker\ Kenny Q. Zhu\ Peter White\ Galois Connections peter@galois.com\ Princeton University dpw,kzhu@CS.Princeton.EDU", ["kathleen-fisher/more-than-one.pdf"] = "We Need More Than One\ Why students need a sophisticated understanding of programming languages\ Kathleen Fisher\ AT&T Labs Research kfisher@research.att.com\ Some believed we lacked the programming language to describe your perfect world. — Agent Smith, The Matrix In the fall of 1995, when I was almost finished with my Ph.D., another graduate student asked what I was doing for my thesis. When I explained I was working in programming languages, he was taken aback, asking why anyone needed any language besides C++. His reaction was not unusual. At the time, there was a wide-spread sense that C++ was the last language, and students need only master it and be done with studying programming languages for the rest of their careers. The following year, JAVA burst on the scene, and shortly thereafter, new voices claimed that JAVA was the only language that a student really needed. This pattern echoed earlier claims made about F ORTRAN, and C OBOL, and C. Why the desire, reflected in those voices, to have only one language? Perhaps because, like natural language, it is hard to learn a new programming language, and people would prefer to have everyone use the language they themselves are already comfortable with. But we will never have just one programming language. Like natural languages, programming languages affect how we think. In particular, how we think when we communicate with computers. Each language comes with a natural domain of discourse. Ideas within or close to that domain are easy to express, while ideas further afield are harder. For example, the machine model that C provides matches the underlying hardware of today’s machines very closely, making it a good language in which to write low-level code such as device drivers. In contrast, the pattern-matching, parametric polymorphism, and higher-order functions of ML make it a good language for writing compilers. The abstractions provided by object-oriented languages are well suited to pro-", ["kathleen-fisher/pads05.pdf"] = "PADS: A domain-specific language for processing ad hoc data\ Kathleen Fisher\ AT&T Labs Research 180 Park Ave., E244 Florham Park, NJ\ Robert Gruber\ Google 1600 Amphitheatre Pkwy Mountain View, CA\ kfisher@research.att.com ABSTRACT\ is a declarative data description language that allows data analysts to describe both the physical layout of ad hoc data sources and semantic properties of that data. From such descriptions, the PADS compiler generates libraries and tools for manipulating the data, including parsing routines, statistical profiling tools, translation programs to produce well-behaved formats such as X ML or those required for loading relational databases, and tools for running XQueries over raw PADS data sources. The descriptions are concise enough to serve as \"living\" documentation while flexible enough to describe most of the ASCII, binary, and Cobol formats that we have seen in practice. The generated parsing library provides for robust, application-specific error handling.", ["kathleen-fisher/pldi99.ps"] = "The design of a class mechanism for MOBY\ Kathleen Fisher\ AT&T Labs, Research\ kfisher@research.att.com\ John Reppy\ Bell Labs, Lucent Technologies\ jhr@research.belllabs.com", ["kathleen-fisher/whatis.ps"] = "What is an ObjectOriented Programming Language?\ Kathleen Fisher and John C. Mitchell\ Computer Science Dept., Stanford University, Stanford, CA 94305\ fkfisher,mitchellg@cs.stanford.edu\ August 29, 1995", ["keith-cooper/Ch10.pdf"] = "\ Front End\ \ Optimizer\ \ Back End\ \ Infrastructure\ Chapter 10 Scalar Optimizations\ 10.1 Introduction\ Code optimization in a compiler consists of analyses and transformations intended to improve the quality of the code that the compiler produces. Data-flow analysis, discussed in detail in Chapter 9, lets the compiler discover opportunities for transformation and lets the compiler prove the safety of applying the transformations. However, analysis is just the prelude to transformation: the compiler improve the code's performance by rewriting it. Data-flow analysis serves as a unifying conceptual framework for the classic problems in static analysis. Problems are posed as data-flow frameworks. Instances of these problems, exhibited by programs, are solved using some general purpose solver. The results are produced as sets that annotate some form of the code. Sometimes, the insights of analysis can be directly encoded into the ir form of the code, as with ssa form. Unfortunately, no unifying framework exists for optimizations--which combine a specific analysis with the rewriting necessary to achieve a desired improvement. Optimizations consume and produce the compiler's ir; they might be viewed as complex rewriting engines. Some optimizations are specified with detailed algorithms; for example, dominator-based value numbering builds up a collection of facts from low-level details (8.5.2). Others are specified with highlevel descriptions; for example, global redundancy elimination operates from a set of data-flow equations (8.6), and inline substitution is usually described as replacing a call site with the text of the called procedure with appropriate substitution of actual arguments for formal parameters (8.7.2). The techniques used to describe and implement transformations vary widely. 403", ["keith-cooper/dom14.pdf"] = "A Simple, Fast Dominance Algorithm\ Keith D. Cooper, Timothy J. Harvey, and Ken Kennedy Rice University Houston, Texas, USA", ["keith-cooper/survey.pdf"] = "Compiler-Based Code-Improvement Techniques\ KEITH D. COOPER, KATHRYN S. MCKINLEY, and LINDA TORCZON\ Since the earliest days of compilation, code quality has been recognized as an important problem [18]. A rich literature has developed around the issue of improving code quality. This paper surveys one part of that literature: code transformations intended to improve the running time of programs on uniprocessor machines. This paper emphasizes transformations intended to improve code quality rather than analysis methods. We describe analytical techniques and specific data-flow problems to the extent that they are necessary to understand the transformations. Other papers provide excellent summaries of the various sub-fields of program analysis. The paper is structured around a simple taxonomy that classifies transformations based on how they change the code. The taxonomy is populated with example transformations drawn from the literature. Each transformation is described at a depth that facilitates broad understanding; detailed references are provided for deeper study of individual transformations. The taxonomy provides the reader with a framework for thinking about code-improving transformations. It also serves as an organizing principle for the paper. Copyright 1998, all rights reserved. You may copy this article for your personal use in Comp 512. Further reproduction or distribution requires written permission from the authors.", ["keith-cooper/value-numbering.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 0(0), 118 (MONTH 1900)\ Value Numbering\ PRESTON BRIGGS Tera Computer Company, 2815 Eastlake Avenue East, Seattle, WA 98102 AND KEITH D. COOPER L. TAYLOR SIMPSON Rice University, 6100 Main Street, Mail Stop 41, Houston, TX 77005 SUMMARY Value numbering is a compiler-based program analysis method that allows redundant computations to be removed. This paper compares hash-based approaches derived from the classic local algorithm1 with partitioning approaches based on the work of Alpern, Wegman, and Zadeck2. Historically, the hash-based algorithm has been applied to single basic blocks or extended basic blocks. We have improved the technique to operate over the routine's dominator tree. The partitioning approach partitions the values in the routine into congruence classes and removes computations when one congruent value dominates another. We have extended this technique to remove computations that define a value in the set of available expressions (AVAIL)3 . Also, we are able to apply a version of Morel and Renvoise's partial redundancy elimination4 to remove even more redundancies. The paper presents a series of hash-based algorithms and a series of refinements to the partitioning technique. Within each series, it can be proved that each method discovers at least as many redundancies as its predecessors. Unfortunately, no such relationship exists between the hash-based and global techniques. On some programs, the hash-based techniques eliminate more redundancies than the partitioning techniques, while on others, partitioning wins. We experimentally compare the improvements made by these techniques when applied to real programs. These results will be useful for commercial compiler writers who wish to assess the potential impact of each technique before implementation.", ["kemal-ebcioglu/daisy-dynamic-compilation-for.ps.gz"] = "RC 20538 (08/05/96)\ Computer Science\ IBM Research Report\ DAISY: Dynamic Compilation for 100% Architec\ tural Compatibility\ Kemal Ebcioglu, Erik R. Altman\ IBM Research Division\ T.J. Watson Research Center\ Yorktown Heights, New York\ LIMITED DISTRIBUTION NOTICE\ This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publi\ cation. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright\ to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and\ specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article\ (e.g., payment of royalties).\ IBM Research Division\ Almaden \\Delta\ T.J. Watson \\Delta\ Tokyo \\Delta\ Zurich", ["ken-shan/finally-tagless.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ Finally Tagless, Partially Evaluated\ Tagless Staged Interpreters for Simpler Typed Languages\ Jacques Carette, Oleg Kiselyov and Chung-chieh Shan", ["ken-shan/generating.pdf"] = "Generating Quantifiers and Negation to Explain Homework Testing\ Jason Perry and Chung-chieh Shan Rutgers University Department of Computer Science", ["ken-thompson/regexp.pdf"] = "R. M. McCLUR, Editor\ Regular Expression Search Algorithm\ I~EN THOMPSON Bell Telephone Laboratories, Inc., Murray Hill, New Jersey\ A method for locating specific character strings embedded in character text is described and an implementation of this method in the form of a compiler is discussed. The compiler accepts a regular expression as source language and produces an IBM 7 0 9 4 program as object language. The object program then accepts the text to be searched as input and produces a signal every time an embedded string in the text matches the given regular expression. Examples, problems, and solutions are also presented.\ CR CATEGORIES:\ In the compiled code, the lists mentioned in the algorithm are not characters, but transfer instructions into the compiled code. The execution is extremely fast since a transfer to the top of the current list automatically searches for all possible sequel characters in the regular expression. This compile-search algorithm is incorporated as the context search in a time-sharing text editor. This is by no means the only use of such a search routine. For example, a variant of this algorithm is used as the symbol table search in an assembler. I t is assumed that the reader is familiar with regular expressions [2] and the machine language of the I B M 7094 computer [3].", ["kenneth-landes/prepguide.djvu"] = "GEOLOGICAL NOTES \ 1993 \ GUIDE FOR PREPARATION AND PUBLICATION OF ABSTRACTS 1 \ THE ROYAL SOCIETY  \ London, England \ GENERAL \ 1. \"Abstract\" is a term adopted to describe an \ author's summary of a scientific paper which is \ published simultaneously with the paper itself \ fter editorial scrutiny by the editor of the jour- \ in which it is published. \ 2. The purpose of an abstract is not only to \ add to the convenience of readers of the journal \ in which it is published, but also to reduce the \ cost and to expedite the work of the abstracting \ iournals, and thus to contribute to the general \ improvement of information services in the scien- \ tific field. \ 3. The abstract should comprise a brief and \ factual summary of the contents and conclusions \ of the paper, refer to any new information which \ it may contain, and give an indication of its rele- ", ["kenneth-landes/scrutiny.djvu"] = "BULLETIN OF THE AMERICAN ASSOCIATION OF PETROLEUM GEOLOGISTS' \ VOL. 50, NO. 9 (SEPTEMBER, 1966), P. 1992o1999, 2 FIGS. \ GEOLOGICAL NOTES \ A SCRUTINY OF THE ABSTRACT, II  \ KENNETH K. LANDES = \ .nn Arbor, Michigan ", ["kent-dybvig/Call-1cc-PLDI96.ps"] = "Representing Control in the Presence of\ OneShot Continuations \\Lambda\ Carl Bruggeman Oscar Waddell R. Kent Dybvig\ Indiana University Computer Science Department\ Lindley Hall 215\ Bloomington, Indiana 47405\ fbruggema,owaddell,dybg@cs.indiana.edu", ["kent-dybvig/stack.pdf"] = "Representing Control in the Presence of First-Class Continuations\ Robert Hieb, R. Kent Dybvig, Carl Bruggeman Indiana University Computer Science Department Lindley Hall 101 Bloomington IN 47405", ["keshav-pingali/dep-flow-graph.pdf"] = "Dependence Flow Graphs: An Algebraic Approach to Program Dependencies\ Keshav Pingali Micah Beck Richard Johnson Mayan Moudgill Paul Stodghill Department of Computer Science, Cornell University, Ithaca, NY 14853", ["kevin-fu/webauth_tr.pdf"] = "Dos and Don’ts of Client Authentication on the Web\ Kevin Fu, Emil Sit, Kendra Smith, Nick Feamster\  \ fubob, sit, kendras, feamster @mit.edu\ ¡\ MIT Laboratory for Computer Science\ http://cookies.lcs.mit.edu/", ["kevin-sullivan/dsmtool.pdf"] = "Software Design as Meta-Space Construction and Search: The Hierarchical Environment and Design Structure Matrix\ Kevin Sullivan University of Virginia Department of Computer Science Charlottesville, VA 22904-4740 USA Tel: +1 804 982 2206 sullivan@virginia.edu", ["klaus-schauser/fpca95.ps.gz"] = "How Much Nonstrictness do Lenient Programs Require?\ Klaus E. Schauser\ Department of Computer Science\ University of California, Santa Barbara\ Santa Barbara, CA 93106\ schauser@cs.ucsb.edu\ Seth C. Goldstein\ Computer Science Division\ University of California, Berkeley\ Berkeley, CA 94720\ sethg@cs.berkeley.edu", ["koen-claessen/icsews11astfull-24-palka.pdf"] = "Testing an Optimising Compiler by Generating Random Lambda Terms\ Michał H. Pałka Koen Claessen Alejandro Russo\ Chalmers University of Technology\ John Hughes\ Chalmers University of Technology and Quviq AB\ {michal.palka,koen,russo}@chalmers.se ABSTRACT\ This paper considers random testing of a compiler, using randomly generated programs as inputs, and comparing their behaviour with and without optimisation. Since the generated programs must compile, then we need to take into account syntax, scope rules, and type checking during our random generation. Doing so, while attaining a good distribution of test data, proves surprisingly subtle; the main contribution of this paper is a workable solution to this problem. We used it to generate typed functions on lists, which we compiled using the Glasgow Haskell compiler, a mature production quality Haskell compiler. After around 20,000 tests we triggered an optimiser failure, and automatically simplified it to a program with just a few constructs.", ["koen-claessen/quick.ps"] = "QuickCheck:\ A Lightweight Tool for Random Testing\ of Haskell Programs\ Koen Claessen\ Chalmers University of Technology\ koen@cs.chalmers.se\ John Hughes\ Chalmers University of Technology\ rjmh@cs.chalmers.se", ["koen-claessen/quickmonad.ps"] = "Testing Monadic Code with QuickCheck\ Koen Claessen and John Hughes\ Department of Computer Science\ Chalmers University of Technology\ fkoen,rjmhg@cs.chalmers.se", ["koen-claessen/quickspec.pdf"] = "QuickSpec:\ Guessing Formal Specifications using Testing\ Koen Claessen1 , Nicholas Smallbone1 , and John Hughes2\ 1\ Chalmers University of Technology {koen,nicsma}@chalmers.se\ 2\ Chalmers and Quviq AB rjmh@chalmers.se", ["koen-claessen/sat-solving.pdf"] = "SAT-solving in practice\ Koen Claessen, Niklas Een, Mary Sheeran and Niklas S¨ rensson\ o", ["kostis-sagonas/amd64.pdf"] = "HiPE on AMD64\ Daniel Luna luna@update.uu.se Mikael Pettersson mikpe@it.uu.se\ Computing Science Department of Information Technology Uppsala University, Sweden\ Konstantinos Sagonas kostis@it.uu.se", ["kostis-sagonas/hipe-ppdp00.ps.gz"] = "A High Performance Erlang System\ Erik Johansson\ Computing Science\ Department, Uppsala\ University, Sweden\ happi@csd.uu.se\ Mikael Pettersson\ Computing Science\ Department, Uppsala\ University, Sweden\ mikpe@csd.uu.se\ Konstantinos Sagonas\ Computing Science\ Department, Uppsala\ University, Sweden\ kostis@csd.uu.se", ["kostis-sagonas/hipe-sttt.pdf"] = "Int J Softw Tools Technol Transfer (2003) 4: 421436 / Digital Object Identifier (DOI) 10.1007/s100090100068\ The development of the HiPE system: design and experience report\ Erik Johansson1 , Mikael Pettersson1 , Konstantinos Sagonas1 , Thomas Lindgren2\ 1 2\ Computing Science Department, Uppsala University, Sweden; E-mail: {happi,mikpe,kostis}@csd.uu.se Bluetail, Sweden; E-mail: thomasl@bluetail.com\ Published online: 19 November 2002 Springer-Verlag 2002", ["kostis-sagonas/regallocSPE.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2003; (in press) (DOI: 10.1002/spe.533)\ Experimental evaluation and improvements to linear scan register allocation\ Konstantinos Sagonas1,, and Erik Stenman2\ 1 Computing Science, Department of Information Technology, Uppsala University, Sweden 2 School of Computer and Communication Sciences, Swiss Federal Institute of Technology, Lausanne,\ Switzerland\ SUMMARY We report our experience from implementing and experimentally evaluating the performance of various register allocation schemes, focusing on the recently proposed linear scan register allocator. In particular, we describe in detail our implementation of linear scan and report on its behavior both on register-rich and on register-poor computer architectures. We also extensively investigate how different options to the basic algorithm and to the compilation process as a whole affect compilation times and quality of the produced code. In a nutshell, our experience is that a well-tuned linear scan register allocator is a good choice on register-rich architectures. It performs competitively with graph coloring based allocation schemes and results in significantly lower compilation times. When compilation time is a concern, such as in just-in-time compilers, it can also be a viable option on register-poor architectures. Copyright c 2003 John Wiley & Sons, Ltd.", ["kostis-sagonas/toplas06.pdf"] = "Message Analysis for Concurrent Programs Using Message Passing\ RICHARD CARLSSON, KONSTANTINOS SAGONAS, and JESPER WILHELMSSON Uppsala University\ We describe an analysis-driven storage allocation scheme for concurrent systems that use message passing with copying semantics. The basic principle is that in such a system, data which is not part of any message does not need to be allocated in a shared data area. This allows for deallocation of thread-specific data without requiring global synchronization and often without even triggering garbage collection. On the other hand, data that is part of a message should preferably be allocated on a shared area, which allows for fast (O(1)) interprocess communication that does not require actual copying. In the context of a dynamically typed, higher-order, concurrent functional language, we present a static message analysis which guides the allocation. As shown by our performance evaluation, conducted using an industrial-strength language implementation, the analysis is effective enough to discover most data which is to be used as a message, and to allow the allocation scheme to combine the best performance characteristics of both a process-centric and a communal memory architecture. Categories and Subject Descriptors: D.3.3 [Programming Languages]: Language Constructs and Features-- concurrent programming structures, dynamic storage management; D.3.4 [Programming Languages]: Processors--memory management (garbage collection), run-time environments; D.1.3 [Programming Techniques]: Concurrent Programming General Terms: Languages, Performance, Measurement Additional Key Words and Phrases: Static analysis, runtime systems, concurrent languages, message passing, Erlang", ["krzysztof-apt/ten-years-hoare.pdf"] = "Ten Years of Hoare's Logic: A Survey Part l\ KRZYSZTOF R. APT Erasmus University\ A survey of various results concerning Hoare's approach to proving partial and total correctness of programs is presented. Emphasis is placed on the soundness and completeness issues. Various proof systems for while programs, recursive procedures, local variable declarations, and procedures with parameters, together with the corresponding soundness, completeness, and incompleteness results, are discussed. Key Words and Phrases: Hoare's logic, partial correctness, total correctness, soundness, completeness in the sense of Cook, expressiveness, arithmetical interpretation, while programs, recursive procedures, variable declarations, subscripted variables, call-by-name, call-by-value, call-by-variable,static scope, dynamic scope, procedures as parameters CR Category: 5.24\ 1. INTRODUCTION\ I n 1969 H o a r e [27] i n t r o d u c e d a n a x i o m a t i c m e t h o d o f p r o v i n g p r o g r a m s c o r r e c t . This approach was partially based on the so-called intermediate assertion method o f F l o y d [18]. H o a r e ' s a p p r o a c h h a s r e c e i v e d a g r e a t d e a l o f a t t e n t i o n d u r i n g t h e l a s t d e c a d e , a n d it h a s h a d a s i g n i f i c a n t i m p a c t u p o n t h e m e t h o d s o f b o t h designing and verifying programs. It has also been used as a way of specifying s e m a n t i c s o f p r o g r a m m i n g l a n g u a g e s (see [17, 28, 40]). T h e p u r p o s e o f t h i s p a p e r is to p r e s e n t t h e m o s t r e l e v a n t i s s u e s p e r t a i n i n g t o H o a r e ' s m e t h o d ( n a m e l y , t h o s e o f s o u n d n e s s a n d c o m p l e t e n e s s ) in a s y s t e m a t i c a n d s e l f - c o n t a i n e d w a y . T h e m a i n p r o b l e m w i t h s u c h a n e x p o s i t i o n is t h a t v a r i o u s p r o o f s g i v e n in t h e l i t e r a t u r e a r e a w k w a r d , i n c o m p l e t e , o r e v e n i n c o r r e c t . I n m a n y cases proof rules are introduced without any proofs of soundness or completeness a t all. T h e field i t s e l f is e n o r m o u s , s i n c e for v i r t u a l l y all p r o g r a m m i n g c o n s t r u c t s a n d n o t i o n s s o m e p r o o f r u l e s h a v e b e e n s u g g e s t e d . A l s o , for s o m e c o n s t r u c t s , s u c h as recursive procedures with parameters, several alternative proof rules have been proposed. F a c e d b y t h e s e p r o b l e m s , w e d e c i d e d t o r e s t r i c t t h e e x p o s i t i o n to o n l y t h o s e constructs and notions which we found most important. In each case we selected o n l y one, h o p e f u l l y t h e m o s t successful, a m o n g m a n y p o s s i b l e p r o o f s y s t e m s . Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission. This paper is an extended version of a paper presented at the Fifth Scandinavian Logic Symposium, Aalborg, Denmark, January 17-19, 1979. Author's present address: LITP, Universit~ Paris 7, 2, place Jussieu, 75221 Paris, France. @ 1981 ACM 0164-0925/81/1000-0431 $00.75 ACM Transactions on ProgrammingLanguagesand Systems,Vol. 3, No. 4, October 1981, Pages 431-483.", ["lal-george/gc-api.ps"] = "SMLNJ: Garbage collection API\ Lal George\ Rm 2c478, Bell Labs\ 700 Mountain Ave\ Murray Hill, NJ 07974\ May 21, 1999\ This note describes the garbage collection interface to\ the runtime system implemented in version 110.15. All\ communication to the runtime system is through a fixed\ set of registers. Anything extra must be bundled up and\ saved in one of these fixed registers. This simplifies the\ runtime system significantly, reduces the ML to C con\ text switch overhead, and barely increases the size of code\ generated to invoke garbage collection. The net result is a\ 4% improvement in compiling the compiler on the DEC\ Alpha.\ 1 CPS functions\ There are three kinds of CPS functions generated by the\ SML/NJ compiler.\ Standard: corresponds to functions exported by a mod\ ule.\ Continuation: corresponds to continuation functions\ generated by the CPS compilation[?].", ["lal-george/guillame94portable.ps.gz"] = "A Portable and Optimizing Back End for the\ SML/NJ Compiler\ Lal George 1 , Florent Guillame 2 , John H. Reppy 1\ 1 AT&T Bell Laboratories, 600 Mountain Ave., Murray Hill, NJ 07974, USA\ 2 '\ Ecole Normale Sup'erieure, 45, rue d'Ulm, 75005 Paris, France\ Email: fgeorge, jhrg@research.att.com, guillaum@clipper.ens.fr", ["larry-page/pagerank98.pdf"] = " ̪ ʴ q)Y0Q@YGQf0qGGYQ HYGGYuiq0imYY0GYYGEfiV0YiY ê YG(YiifGq00Y 0i)YY\"C7YE(GCͬwqVQʽ wY#wY~iGq0iYlilGEYnYl0Gqq~VYYlGGGϮ0 Ÿ Qi0cYiYriG~q0GGYGqG%Y0iXYu00iiQ7GqQG ʴ ø ̸ Yi0Qq0GY0idvYVHqY7GYi$GQYYYlqQQ0GqʶQdwYqYi¶qi0Q iYwqv0q̶ŸYuEii|0Gi@qXGYvqXvGqCv@i)#GYiriöGq Ÿ ũ q0i0 $YiV}0YY0cYiY0rY#QilGYEdYQYY@Q iqwGGײ mY|qqnYGYlic0fiqGmY0iVٯiCiª(GqGQQ0QG Qi0$YiY$Y԰G$iGq0iGYiYGYY0iiϺiGi}GYi}q7Y ʴ icQ0iG̶CYGYq0iYiYqQ0QiY0YY$iqq Ÿ Ŭ wr0vG{j nH Դ i)dQY)G|YdYYiiGY0XYGcY0$CԳ7fiG Ը ̾ Ը ê Ը GY#qGQQ0ϽʮGVYuY0|YiCYQG7YY0iϩiYiYcGEGYQ YY@ ذ YYqwGEQGi)@GYwGŵGQŵG$Y$Y0Y0YY0Hi0m)$iEͪG ů ¯ ʴ Ŵ GYŵGQŵ(uYQGQ̶Y0icGrYuCͪcrYYqdq0QY0CY0QiGq CrQGGYlEͪiEvli)@QY){GqqvGiEG 0 ' YԼGG~iYi§r ʹ iqGG@CYQmqGQf00GY$diiGq Ը Y0GY~fiGGQiEͼGqlYϵG(i)u$qqQf0i̶YGYGfY\"ҷ GwqGY|Y0i½Qiwq0QYq0rYQq% rGC@QGYCG7EY϶0G Ŭ qdqGYQYQiYGEͩ0wY0i$G{YYY@Y0Y$qSYGc7Y@ Ŭ GqG)cY0iq0(iY\"ª0$iG0G@0l0%iGqiGYYii GY@Y0iYujY'i½fiq0QYmYYYGQiY0i)QY)7 uQ%H% w7uH|wHVmG y w h t t H u7 t q q u | \"q Y u o u x Gryw\"y0kvrQuvmlvr yfstes'Qpyunuw7Q#qvu fiqruqr uqiyfvqnte q$r (pyiqQqu hiqtQ~(\"xt ~vt fysf\"u ftvfu g ywreHYup ytfu0h \"u vry u{r#qv r~f\"u u H uYu qmrxQ w r q e h y qr~fi\"uH @uvmtrxu Q$( u w u x t wQxvt cftu rfkY@r yw' Qun rvt Ynt qf uQuu \"y( vq0qt cqywu qnh\"fum$yfQeu \"ugkw pEwu Qtros yfyeeQ}qr vstfmv$yfQe\"ugkwpjuYr#prudQ(vgwis w v x h t u xt itQqxEo t~vpwy ruHmpywvQ puYmQEv}qX(fyhqfu \"uvQ(rcur Erm qg x lruykwyfeuqwu XY\"hr t u e w w t qyuf Qetruwyk rfuju Y\"vEytut Q Qwrqu 7Estu wrQt Vpoq Qv u ntmst xluykruh Gwx yeegfwjujiY~q} w%hQugfq\"ue tfru Yf |q{yzt Qydpw Yu vhyxcnw w ruiwv%(Y@guptruurt Q iqc0u Yvfov rnfruEQ \" u yxycvQus XYsut \"tfu reqihQgfeVca p db `TTW UTR IBFDB CEYXVESQPEHGECA 9 @ 8 #! #! 3 73 5 00 42 & 6 3 1 ! 0)( '&%$#\"! ", ["larry-paulson/fixedpoint.pdf"] = "A Fixedpoint Approach to (Co)Inductive and (Co)Datatype Definitions\ Lawrence C. Paulson lcp@cl.cam.ac.uk Computer Laboratory, University of Cambridge, England 24 November 1997", ["lennart-augustsson/overload-fpca-93.ps"] = "Implementing Haskell overloading\ Lennart Augustsson\ Department of Computer Sciences\ Chalmers University of Technology\ S412 96 Goteborg, Sweden\ Email: augustss@cs.chalmers.se", ["lennart-augustsson/patmatch.djvu"] = "Email: \ Compiling Pattern Matchin \ Lennart Augustsson \ Programming Methodology Group \ Department of Computer Science \ Chalmers University of Technology \ S-412 96 G6teborg, Sweden \ augustss@chalmers.uucp or augustss@chalmers.csnet \ Introduction \ Pattern matching is a very powerful and useful device in programming. In functional languages it \ emerged in SASL [Turn76] and Hope [Burs80], and has also found its way into SML [Miln84]. The \ pattern mathing described here is that of LML which is a lazy ([Frie76] and [Henri76]) variant of ML. \ The pattern matching in LML evolved independently of that in SML so they are not (yet) the same \ although very similar. The compilation of pattern matching in SML has been addressed in [Card84]. \ The LML compiler project began as an attempt to produce efficient code for a typed funcl \ language with lazy evaluation. Since we regard pattern matching as an important language feature it-11 ", ["lennart-augustsson/pepm97.ps.gz"] = "Partial evaluation in aircraft crew planning\ Lennart Augustsson\ Carlstedt Research & Technology\ Stora badhusgatan 1820\ S411 21 Goteborg, Sweden\ Email: augustss@carlstedt.se\ WWW: http://www.carlstedt.se/~augustss\ Phone: +46 31 701 42 36\ Fax: +46 31 10 19 87\ and\ Department of Computing Sciences\ Chalmers University of Technology\ S412 96 Goteborg, Sweden\ Email: augustss@cs.chalmers.se\ WWW: http://www.cs.chalmers.se/~augustss\ Phone: + 46 31 772 10 42\ Fax: + 46 31 16 56 55", ["lennart-augustsson/unique.djvu"] = "J. Functional Programming 4 (1): 117-123, January 1994 1994 Cambridge University Press 117 \ FUNCTIONAL PEARL \ On generating unique names \ LENNART AUGUSTSSON, MIKAEL RITTRI A'ND DAN SYNEK \ Department of Computing Science, Chalmers University of Technology and \ University of GSteborg, S-412 96 Gtteborg, Sweden \ (E-mail: {augustss,rittri,synek} cs.chalmers.se) \ 1 Introduction \ And Joktan begat Almodad, and Sheleph, and Hazar- \ maveth, and Jerah, and Hadoram, and Uzal, and Dik- \ lab, and Obal, and Abimael, and Sheba, and Ophir, \ and Havilah, and Jobab: all these were the sons of \ Joktan. \ m Genesis 10:26-29 \ In a lazy, purely functional language, it is awkward to generate new and unique \ names. The gensyrn function (figure 1) is impure, since its result depends on a \ hidden counter. We can instead pass the counter as an argument, and regard it \ as representing the infinite supply of unused names. But the usual implementation ", ["leo-bachmair/ac-discrimination-nets.pdf"] = "", ["leo-guibas/language-bitmap.pdf"] = "A Language for Bitmap Manipulation\ LEO J. GUIBAS and JORGE STOLFI Xerox PARC and Stanford University\ This paper proposes that bitmaps, or raster images, should be given full citizenship in the world of computer science. We introduce a calculus of bitmap operations and MUMBLE, a programming language appropriate for describing bitmap computations. We illustrate the use of MUMBLE by several interesting graphical applications. We also discuss the structure of BOP, an efficient implementation of the bitmap calculus that is the underpinning of our system. CR Categories and Subject Descriptors: D.3.2 [Programming Languages]: Language Classifications-very high-level languages; 1.3.3 [Computer Graphics]: Picture/Image Generation--display algorithms; 1.3.4 [Computer Graphics]: Graphics Utilities--graphics packages; picture description languages; software support; 1.3.6 [Computer Graphics]: Methodology and Techniques--languages; 1.4.0 [Image Processing]: General--image processing software; 1.4.1 [Image Processing]:", ["leon-bottou/dcc-mask-1998.ps.gz"] = "Lossy Compression of Partially Masked Still Images\ L'eon Bottou\ AT&T Labs Research\ 100 Schultz Dr.\ Red Bank, NJ077017033\ (732) 3453336\ leonb@research.att.com\ Steven Pigeon\ Universit'e de Montr'eal\ Pavillon MathInfo, #3339\ 2900 EdouardMontpetit\ Montreal, Quebec, Canada H3T 1J4\ pigeon@iro.umontreal.ca\ April 3, 1998", ["leon-bottou/icdar-2001.ps.gz"] = "Efficient Conversion of Digital Documents to Multilayer Raster Formats\ Leon Bottou, Patrick Haffner and Yann LeCun\ AT&T Labs Research\ fleonb,haffner,yanng@research.att.com", ["leon-bottou/jei-1998.ps.gz"] = "High Quality Document Image Compression with DjVu\ L'eon Bottou, Patrick Haffner, Paul G. Howard,\ Patrice Simard, Yoshua Bengio and Yann LeCun\ AT&T Labs\ Lincroft, NJ\ fleonb,haffner,pgh,patrice,yoshua,yanng@research.att.com\ July 13, 1998", ["les-hatton/Professionalism_2007.pdf"] = "On Professionalism in IT Les Hatton, CISM, Kingston University http://www.leshatton.org/ I should perhaps issue a health warning here. If you are looking for an article in praise of IT and its professionalism, this isn't it. Before beginning to write, I decided to look up this word in the OED. Professionalism is 'the collective qualities or stamp of a profession'. The lead definition of profession is 'declaration of belief in a religion' or 'vow made on entering a religious order' and a bit later on we get, 'especially one which involves some branch of learning or science'. Let me muse on some elements of this. I have to say that I am rather ashamed of being a member of the profession of IT as we practice it today. For a start, it certainly isn't a science. It has no measurement basis, little repeatability and is awash with unconstrained creativity and as such cannot distinguish between change and progress. As a result, software isn't soft and has little or no engineering in it. Instead it is mostly a fashion industry with an increasingly fore-shortened opportunity time for new technologies and a relentless drive to replace the old and tested with the new and untested. This has many negative implications. For one thing, it is increasingly difficult to teach because for every project there are any number of different technologies competing for student's attention. We actively encourage students to work on real projects for industry and as a result one of my colleagues this year had students submitting projects in C, C#, C++, Java, PHP, MySQL, XML, HTML, XHTML, VB.Net on XP, Mac OS X, Linux and even Vista with Eclipse, Netbeans, Ant, JWSDP, Glassfish, DreamWeaver, Developer Studio, .Net with maybe even some Etruscan I may have missed a few but who cares. Then some industrial observers have the cheek to criticise academia for not producing enough students with the 'skills required for today's knowledge economy'. Well being able to read, write and add up would do for a start but we seem to be busily driving such low-level skills out of our education system as witnessed by the latest news that GCSE Physics is being downgraded to something in between Postman Pat and the subject formerly known as General Studies. This lack of focus and obsession with fashion allied with historically low esteem, indifferent pay, and little career infrastructure other than promotion to management as soon as somebody gets vaguely competent at building systems, means that students are simply choosing not to do IT anymore and I don't blame them. The bottom line is a catastrophic fall in the number of students applying for engineering and science in general and IT in particular its something around 50% in the last 5 years in the UK and down again this year. At the same time, industrial activity is picking up strongly which means that there is an increasingly wide gulf between supply and demand. The implication will be that the majority of IT people working on systems over the next few years will be very inexperienced indeed. Given that experience is the single enduring factor in high quality systems, this does not bode well. However good your process is and goodness knows we have beaten software process to death in the last twenty years, the quality of the product still depends mostly on the quality of the engineers building it. We look to process for consistency. In other words, we can be as 'professional' as we like about the bureaucracy and management of software projects but if the engineers are in short supply and of generally low experience, the systems they build will not be very good. Is there evidence of this happening ? There most certainly is. I have spent most of my computing career studying how systems fail, the general idea being that it is not a sin to make a mistake, it is a sin to repeat one. Well its clearly not a sin to repeat mistakes in IT. In fact it seems to me after all these years that if we deliberately tried to sabotage every system we build, we could not do a much more comprehensive job. Witness the recent House of", ["leslie-lamport/teaching-concurrency.djvu"] = "Teaching Concurrency \ Leslie Lamport \ Silicon Valley Research Center \ Microsoft \ I am not an academic. I have never even taken a computer science course. However, I have worked \ with a number of computer engineers (both hardware and software engineers), and I have seen what they \ knew and what they didn’t know that I felt they should have. So, I have some thoughts about how concurrent \ computing should be taught. I am not concerned with traditional questions of curriculum—what facts should \ be stuffed into the student’s brain. I long ago forgot most of the facts that I learned in school. What I have \ used throughout my career are the ways of thinking I learned when I was young, by some learning process \ that I have never understood. I can’t claim to know the best way to teach computer engineers how to cope ", ["leslie-lamport/teaching-concurrency.pdf"] = "Teaching Concurrency\ Leslie Lamport Silicon Valley Research Center Microsoft\ I am not an academic. I have never even taken a computer science course. However, I have worked with a number of computer engineers (both hardware and software engineers), and I have seen what they knew and what they didn't know that I felt they should have. So, I have some thoughts about how concurrent computing should be taught. I am not concerned with traditional questions of curriculum--what facts should be stuffed into the student's brain. I long ago forgot most of the facts that I learned in school. What I have used throughout my career are the ways of thinking I learned when I was young, by some learning process that I have never understood. I can't claim to know the best way to teach computer engineers how to cope with concurrency. I do know that what they seem to be learning now is not helping them very much. I believe that what I am proposing here is worth a try. I expect that the first question most computer scientists would ask about the teaching of concurrency is, what programming language should be used? This reflects the widespread syndrome in computer science of concentrating on language rather than substance. The modern field of concurrency started with Dijkstra's 1965 paper on the mutual exclusion problem [1]. For most of the 1970s, one \"solved\" the mutual exclusion problem by using semaphores or monitors or conditional critical regions or some other language construct. This is like solving the sorting problem by using a programming language with a sort command. Most of your colleagues can explain how to implement mutual exclusion using a semaphore. How many of them can answer the following question: Can one implement mutual exclusion without using lower-level constructs that, like semaphores, assume mutually exclusive access to a resource? Quite a few people who think they are experts on concurrency can't. Teaching about concurrency requires teaching some very basic things about computer science that are not now taught. The basic subject of computer science is computation. One would expect a computer science education to answer the question, what is a computation? See how many of your colleagues can give a coherent answer to that question. While there is no single answer that is appropriate in all contexts, there is one that is most useful to engineers: A computation is a sequence of steps. The obvious next question is, what's a step? Western languages are verb oriented. Every sentence, even one asserting that nothing happens, contains a verb. At least to westerners, the obvious answer is that a step is the acting out of a verb. An add step performs an addition; a send step sends a message. However, the obvious answer is not the most useful one. Floyd and Hoare taught us to think of a computation as a sequence of states [2, 3]. A step is then a transition from one state to the next. It is more useful to think about states than sequences of steps because what a computing device does next depends on its current state, not on what steps it took in the past. Computer engineers should learn to think about a computation in terms", ["lex-augusteijn/binary-heap.djvu"] = ",:.A n Alternative Derivation of a Binary Heap \ Construction Function \ Philips Research Labs, Eindhoven, the Netherlands \ I Introduction \ In [Sch92] a derivation of a binary heap construction algorithm is resented, mak- \ ing use of program inversion techniques. In this paper, we present an alternative \ derivation, using algebraic program transformation techniques in a purely functional \ setting. The main technique used is that of recursion elimination. \ 2 Problem specification \ We define a binary heap by: \ 0 is a heap, \ (I, rn, r) is a heap when m is an integer, I, r are heaps and I _ m and r _ m, with \ 0 -m _-- true \ (I,n,r) _rn ---- n_m \ The in-order of a heap is defined as the following function in from heaps to sequences \ of integers. \ i. 0: \ in (I,m,r) -- in I-H-{m}-H-in r \ For notational convenience, we define the following relation over N* x N. \ true \ {n}-H-s_ rn _= n_rn \ The problem is to find an efficient implementation of the function heaps (from \ N* onto a set of heaps), defined by \ heapss - {h I s-inh} \ We will derive an implementation of this function by means of recursion elimi- ", ["lorenz-huelsbergen/smlnj-c.ps"] = "A Portable C Interface for Standard ML of New Jersey\ Lorenz Huelsbergen\ AT&T Bell Laboratories \\Lambda\ lorenz@research.att.com\ January 15, 1996", ["lori-pollock/debugopt.ps.gz"] = "Debugging Optimized Code via Tailoring\ Lori Pollock Mary Bivens Mary Lou Soffa\ University of Delaware Allegheny College University of Pittsburgh\ Newark, DE 19716 Meadville, PA 16335 Pittsburgh, PA 15260\ pollock@udel.edu mbivens@alleg.edu soffa@pitt.edu\ 302 8311953 814 3322880 412 6248425", ["luc-maranget/RR-2385.ps.gz"] = "ISSN\ 02496399\ appo r t\ de r eche r che\ 1994\ INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET AUTOMATIQUE\ Two Techniques for Compiling Lazy Pattern Matching\ Luc Maranget\ N 2385\ Octobre 1994\ PROGRAMME 2\ Calcul symbolique,\ programmation\ et g'enie logiciel\ Two Techniques for Compiling Lazy Pattern Matching\ Luc Maranget \\Lambda\ Programme 2 --- Calcul symbolique, programmation et g'enie logiciel\ Projet Para\ Rapport de recherche n2385 --- Octobre 1994 --- 37 pages", ["luc-maranget/jun08.pdf"] = "Submitted to ML'08\ Compiling Pattern Matching to good Decision Trees\ Luc Maranget\ INRIA Luc.marangetinria.fr", ["luc-maranget/lazy-pat1.ps.gz"] = "Compiling Lazy Pattern Matching\ Luc Maranget \\Lambda\ 1 Introduction\ Pattern matching is a key feature of the ML language.\ Pattern matching is a way to discriminate between val\ ues of structured types and to access their subparts.\ Pattern matching enhances the clarity and readability\ of programs. Compare, for instance, the ML function\ computing the sum of an integers list with its Lisp coun\ terpart (all examples are in CAML [11] syntax).\ let rec sum xs = match xs with\ [ ] ! 0\ --- y::ys ! y+sum ys\ (defun sum (l)\ (if (consp l)\ (+ (car l) (sum (cdr l)))\ 0))\ In ML, patterns can be nested arbitrarily. This\ means that pattern matching has to be compiled into\ sequences of simple tests: a complicated pattern such\ as ((1; x); y::[ ]) cannot be recognized by a single test.\ Usually, pattern matching compilers attempt to ``fac\ torize'' tests as much as possible, to avoid testing the", ["luc-maranget/opt-pat.ps.gz"] = "Optimizing Pattern Matching\ Fabrice Le Fessant, Luc Maranget\ INRIA Roquencourt, B.P. 105, 78153 Le Chesnay Cedex, France\ (Email: fFabrice.Le fessant, Luc.Marangetg@inria.fr)\ November 23, 2000", ["luca-cardelli/Amber.pdf"] = "In: \"Combinators and Functional Programming Languages\"\ G.Cousineau, P-L.Curien and B.Robinet Editors,\ Lecture Notes in Computer Science n.242, Springer-Verlag, 1986\ Amber\ Luca Cardelli1\ AT&T Bell Laboratories, Murray Hill, NJ 07974\ Introduction\ The Amber language embeds many recent ideas in programming language design, and tries\ to introduce all the features in their minimal, essential, form. One of its main goals is to safely\ blend static typing with the dynamic requirements of a system programming language. For this\ purpose, multiple inheritance and persistent objects are integrated in a strongly typed language.\ Other features include graphics, higher-order functions, modules and concurrency.\ Amber is a spin-off of the ML programming language [Milner 84]. The ML language is\ now being standardized, and as such is not very suitable for experimentation. Amber is", ["luca-cardelli/AmberMachine.pdf"] = "In: \"Combinators and Functional Programming Languages\"\ G.Cousineau, P-L.Curien and B.Robinet Editors,\ Lecture Notes in Computer Science n.242, Springer-Verlag, 1986\ The Amber Machine\ Luca Cardelli1\ AT&T Bell Laboratories, Murray Hill, NJ 07974", ["luca-cardelli/BasicTypechecking.ps.bz2"] = "Page 1\ Science of Computer Programming 8/2 (April 1987) Revised 6/21/88\ Basic Polymorphic Typechecking\ Luca Cardelli\ AT&T Bell Laboratories, Murray Hill, NJ 07974\ (current address: DEC SRC, 130 Lytton Ave, Palo Alto, CA 94301)\ Introduction\ Polymorphic means to have many forms. As related to programming languages, it refers to\ data or programs which have many types, or which operate on many types. There are several\ arbitrary ways in which programs can have many types; we are mostly interested in a particularly\ orderly form of polymorphism called parametric polymorphism. This is a property of programs\ which are parametric with respect to the type of some of their identifiers. There are two major\ ways of achieving parametric polymorphism which are conceptually related but pragmatically\ very different: explicit and implicit polymorphism.\ Parametric polymorphism is called explicit when parametrization is obtained by explicit type", ["luca-cardelli/CompilingML.pdf"] = "Compiling a Functional Language\ Luca Cardelli\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974\ 1. Introduction\ This paper summarizes my experience in implementing a compiler for a functional language. The\ language is ML1 [Milner 84] and the compiler was first implemented in 1980 as a personal project\ when I was a postgraduate student at the University of Edinburgh2 . In this paper, “the” ML compiler\ refers to my VAX implementation.\ At the time, I was familiar with programming language semantics but knew very little about\ compiler technology; interpreters had been my main programming concern. Major influences in the design of this compiler have been [Steele 77] [Steele 78] and the implementation folklore for statically\ and dynamically scoped dialects of Lisp [Allen 78]. As a result, the internal structure of the compiler is\ fairly unorthodox, if compared for example with [Aho 78].", ["luca-cardelli/CompilingML.ps.bz2"] = "June 4, 1995 10:46 AM Page 1\ Compiling a Functional Language\ Luca Cardelli\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974\ 1. Introduction\ This paper summarizes my experience in implementing a compiler for a functional language. The\ language is ML 1 [Milner 84] and the compiler was first implemented in 1980 as a personal project\ when I was a postgraduate student at the University of Edinburgh 2 . In this paper, ``the'' ML compiler\ refers to my VAX implementation.\ At the time, I was familiar with programming language semantics but knew very little about\ compiler technology; interpreters had been my main programming concern. Major influences in the de\ sign of this compiler have been [Steele 77] [Steele 78] and the implementation folklore for statically\ and dynamically scoped dialects of Lisp [Allen 78]. As a result, the internal structure of the compiler is\ fairly unorthodox, if compared for example with [Aho 78].", ["luca-cardelli/Linking.ps.bz2"] = "Thursday, October 24, 1996, 11:32 am 1", ["luca-cardelli/TypeSystems.ps.bz2"] = "CRC Handbook of Computer Science and Engineering, Ch. 140, Sunday, September 29, 1996, 9:19 am. CRC Press. 1\ 1 Introduction\ The fundamental purpose of a type system is to prevent the occurrence of execution er\ rors during the running of a program. This informal statement motivates the study of\ type systems, but requires clarification. Its accuracy depends, first of all, on the rather\ subtle issue of what constitutes an execution error, which we will discuss in detail.\ Even when that is settled, the absence of execution errors is a nontrivial property.\ When such a property holds for all of the program runs that can be expressed within a\ programming language, we say that the language is type sound. It turns out that a fair\ amount of careful analysis is required to avoid false and embarrassing claims of type\ soundness for programming languages. As a consequence, the classification, descrip", ["luca-cardelli/TypeType.ps"] = "Page 1\ A Polymorphic lcalculus with Type:Type\ Luca Cardelli\ Digital Equipment Corporation\ Systems Research Center\ 130 Lytton Avenue, Palo Alto, CA 94301\ SRC Research Report 10, May 1, 1986.\ Digital Equipment Corporation 1986.\ This work may not be copied or reproduced in whole or in part for any commercial purpose. Permission to copy in whole or in part without\ payment of fee is granted for nonprofit educational and research purposes provided that all such whole or partial copies include the following: a\ notice that such copying is by permission of the Systems Research Center of Digital Equipment Corporation in Palo Alto, California; an\ acknowledgment of the authors and individuals contributors to the work; and all applicable portions of the copyright notice. Copying,\ reproducing, or republishing for any other purpose shall require a license with payment of fee to the Systems Research Center. All rights", ["luca-cardelli/TypefulProg.ps"] = "Typeful Programming\ Luca Cardelli\ Digital Equipment Corporation, Systems Research Center\ 130 Lytton Avenue, Palo Alto, CA 94301", ["luca-cardelli/bioware.pdf"] = "Bioware Languages\ Luca Cardelli\ Microsoft Research\ Reflecting joint work with Ehud Shapiro and Aviv Regev, Weizmann Institute of Science.\ Introduction\ This work can be seen as example of an emerging class of languages for describing, and possibly programming, biological systems (bioware). A living cell is, to a rather surprising extent, an information processing device [1]. One can envision describing precisely such complex biological systems, and then driving simulation and analysis from such descriptions. One can even imagine one day \"compiling\" bioware languages into real biological systems, just like silicon chips are today compiled from hardware languages. Biological systems, far from being unstructured chemical soups, employ membranes to organize and isolate chemical reactions and their products. Hierarchies of membranes are a necessary component of any description of such system. The -calculus [3] has been used to model chemical reactions [6]. As an extension [7], the ambient calculus [2], which is based on a dynamic hierarchy of containers, can be used to model biological interactions. (Stochastic aspects can be handled, but are not discussed here [5].) We represent biological systems with a graphical (rather than textual) notation; this is somewhat natural because of the aspect and hierarchical structure of many such systems. It is also possible to provide a formal textual notation and related semantics, using standard techniques from process calculi. Moreover, it is possible to provide a formal graphical notation and related semantics, as a special case of Milner's BiGraphs. But here we just present a (formalizable) graphical notation: the graphical language of biographs.", ["luca-cardelli/functional-abstract-machine.pdf"] = "AT&T Bell Laboratories Technical Report TR-107, 1983. Last revised: May 4, 1983.\ Converted from troff: July 1985 (original Blit-generated pictures scanned from hard copy).\ Printed Sunday, July 9, 1995, 10:18 pm\ The Functional Abstract Machine\ Luca Cardelli\ Bell Laboratories\ Murray Hill, New Jersey 07974\ 1 Introduction\ The Functional Abstract Machine (Fam) is a stack machine designed to support\ functional languages on large address space computers. It can be considered a SECD\ machine [1] which has been optimized to allow very fast function application and the\ use of true stacks (as opposed to linked lists).\ The machine qualifies to be called functional because it supports functional objects\ (closures, which are dynamically allocated and garbage collected), and aims to make\ function application as fast as, say, taking the head of a list. All the optimization and", ["luca-cardelli/mobility-security.pdf"] = "Mobility and Security\ Luca Cardelli Microsoft Research Lecture Notes for the Marktoberdorf Summer School 1999, from works by Luca Cardelli and Andrew D. Gordon", ["luca-cardelli/typeful.ps"] = "Typeful Programming\ Luca Cardelli\ Digital Equipment Corporation, Systems Research Center\ 130 Lytton Avenue, Palo Alto, CA 94301", ["lutz-prechelt/comparison.pdf"] = "COMPUTING PRACTICES\ An Empirical Comparison of Seven Programming Languages\ Often heated, debates about different programming languages remain inconclusive. The author takes a first step toward providing hard data about the relative effectiveness of C, C++, Java, Perl, Python, Rexx, and Tcl.\ Lutz Prechelt\ University of Karlsruhe\ W\ hen it comes to the pros and cons of various programming languages, programmers and computer scientists alike usually hold strong opinions. By comparing several languages, I seek to provide some objective information about C, C++, Java, Perl, Python, Rexx, and Tcl. For the comparison, I used the same program, which implements the same set of requirements for each language. Doing so makes the comparison narrow but homogeneous. Further, for each language, I analyze several separate implementations by different programmers. Such a groupwise comparison offers two advantages. First, it smoothes out the differences among individual programmers, which could threaten the validity of any comparison based on a single implementation per language. Second, it allows us to assess and compare the variability of the program properties the different languages induce. The comparison investigates several aspects of each language, including program length, programming effort, runtime efficiency, memory consumption, and reliability. I also consider the languages both individually and combined into groups. Scripting languages such as Perl, Python, Rexx, and Tcl tend more toward being interpreted than compiled, at least during the program development phase, and they typically do not require variable declarations. The more conventional programming languages--C, C++, and Java--are compiled rather than interpreted, and they require typed variable declarations. Since Java is often believed to be very inefficient, I also sometimes consider C and C++ as one group and Java as another.", ["lynn-stein/harvard-cs.djvu"] = "", ["mads-tofte/four-lectures.ps.gz"] = "Mads Tofte, March 1, 1989\ Laboratory for Foundations of Computer Science\ Department of Computer Science\ Edinburgh University\ Four Lectures on Standard ML\ The following notes give an overview of Standard ML with emphasis placed\ on the Modules part of the language.\ The notes are, to the best of my knowledge, faithful to ``The Definition of\ Standard ML, Version 2''[1], as regards syntax, semantics and terminology.\ They have been written so as to be independent of any particular implemen\ tation. The exercises in the first 3 lectures can be tackled without the use\ of a machine, although having access to an implementation will no doubt be\ beneficial. The project in Lecture 4 presupposes access to an implementation\ of the full language, including modules. (At present, the Edinburgh compiler\ does not fall into this category; the author used the New Jersey Standard ML", ["mads-tofte/kit.ps"] = "APPENDIX B. THE STATE OF THE SYSTEM 112\ probably be done for exception and data constructors printed at toplevel. Similarly,\ we could insist that values whose data constructors are completely inaccessible be\ printed opaquely; this would implement abstype properly.\ Redefinition of ref. The Kit currently allows redefinition of ref as a data constructor\ (which is a problem since application of ref must be treated specially) and also as a\ type constructor (which is a problem since equality admission regards ref specially).\ Treatment of Match and Bind. Although Match and Bind are defined in the prelude,\ they are not raised by inexhaustive pattern matches and bindings.\ Modules compiler. There is currently no lambda compiler for the Modules.\ Core match compiler. The match compiler for the Core does not deal with exception", ["mads-tofte/oregonPS.letter.ps.gz"] = "Essentials of Standard ML Modules\ Mads Tofte\ Department of Computer Science\ University of Copenhagen", ["mads-tofte/tips.pdf"] = "Tips for Computer Scientists\ on\ Standard ML (Revised)\ Mads Tofte\ April 5, 2008\ This document and all examples in it are available from http://www.itu.dk/people/tofte\ Preface\ This note is inspired by a brilliant piece of writing, entitled Tips for Danes on Punctuation in English, by John Dienhart, Department of English, Odense University (1980). In a mere 11 pages, Dienhart's lucid writing gives the reader the impression that punctuation in English is pretty easy and that any Dane can get it right in an afternoon or so. In the same spirit, this note is written for colleagues and mature students who would like to get to know Standard ML without spending too much time on it. It is intended to be a relaxed stroll through the structure of Standard ML, with plenty of small examples, without falling into the trap of being just a phrase book. I present enough of the grammar that the reader can start programming in Standard ML, should the urge arise. The full grammar and a formal definition of the semantics can be found in the 1997 language definition[2]. Some of the existing textbooks also contain a BNF for the language, e.g., [3]. I have tried to use the same terminology and notation as the language definition, for ease of reference.", ["maged-michael/pldi-2004.pdf"] = "Scalable Lock-Free Dynamic Memory Allocation\ Maged M. Michael\ IBM Thomas J. Watson Research Center P.O. Box 218, Yorktown Heights, NY 10598, USA\ magedm@us.ibm.com", ["magnus-landqvist/japalm.ps.gz"] = "Department of Computer Science\ Lund Institute of Technology\ Master Thesis\ Porting and Evaluation of an Embedded Java Virtual Machine\ on Palm OS\ or Japalm I love the smell of coffee in the morning\ Magnus Landqvist\ Supervisor: Anders Ive\ 23rd February 2000", ["malcom-atkinson/idl.djvu"] = "is a parse \ luation is \ k'ademic \ -Hall Inc., \ ,,st. Sci. O, \ .'partment \ Cormatica, \ er's thess, \ Canadian \ '1 , Corem, \ SOFTWARE--I'RACTtCE AND EXPEt;kIENCE, VOl,. 7, 671-684 (t977) \ IDL' A Machine-independent Data \ Language \ M. P. ATKINSON \ University of Cambridge, Computer Laboratory, Corn Exchange Street, Cambridge CB2 3QG, England \ SUMMARY \ A low-level data language, IDL, is presented as a machine-independent medium for repre- \ senting data structures. It is used to transfer structures generated by SLP, a compact list \ processing language, across the boundaries imposed by differing machines, operating systems \ and languages. Translation overheads are minimized and use of the language reduces data \ and machine dependence in programs. Translation algorithms and their performance \ statistics are presented. The use of the representation for the formation and manipulation of \ libraries of data structures is demonstrated. ", ["manuel-benitez/9404.ps.Z"] = "Register Allocation\ and\ Phase Interactions\ in\ Retargetable Optimizing Compilers\ A Dissertation\ Presented to\ the Faculty of the School of Engineering and Applied Science\ at the\ University of Virginia\ In Partial Fulfillment\ of the Requirements for the Degree\ Doctor of Philosophy (Computer Science)\ by\ Manuel Enrique Benitez\ Copyright by\ Manuel Enrique Benitez\ All Rights Reserved\ May 1994", ["manuel-benitez/portable.djvu"] = "A Portable Global Optimizer and Linker? \ Manuel E. Benitez \ Jack W. Davidson \ Department of Computer Science \ University of Virginia \ Charlottesville, VA 22903 ", ["manuel-chakravarty/davidt-thesis.pdf"] = "Low Level Virtual Machine for Glasgow Haskell Compiler\ By David Anthony Terei Supervisor Manuel M. T. Chakravarty\ THESIS Submitted in partial fulfilment of the requirements for the degree of Bachelor of Science in Computer Science\ Computer Science and Engineering, The University of New South Wales.\ 20th of October, 2009", ["manuel-fahndrich/singsharp.ps.gz"] = "Language Support for Fast and Reliable Messagebased\ Communication in Singularity OS\ Manuel F \ ahndrich and James R. Larus\ {maf,larus}@microsoft.com\ Microsoft Research", ["manuel-serrano/icfp00.ps.gz"] = "Understanding Memory Allocation of Scheme Programs\ Manuel Serrano\ Universit \ e de Nice SophiaAntipolis\ Route des Colles, B.P. 145\ F06903 SophiaAntipolis, CEDEX\ Manuel.Serrano@unice.fr\ http://kaolin.unice.fr/ serrano\ HansJ. Boehm\ HewlettPackard Company\ 1501 Page Mill Road, MS 1U17\ Palo Alto, CA 94304\ hboehm@hpl.hp.com\ http://www.hpl.hp.com/personal/Hans Boehm", ["marc-feeley/05-saint-mleux.pdf"] = "SHard: a Scheme to Hardware Compiler\ Xavier Saint-Mleux\ Universit de Montral saintmlx@iro.umontreal.ca\ Marc Feeley\ Universit de Montral feeley@iro.umontreal.ca\ Jean-Pierre David\ cole Polytechnique de Montral jpdavid@polymtl.ca", ["marc-feeley/09-germain.pdf"] = "Concurrency Oriented Programming in Termite Scheme\ Guillaume Germain Marc Feeley Stefan Monnier\ Universit de Montr al e e {germaing, feeley, monnier}@iro.umontreal.ca", ["marc-feeley/picbit.pdf"] = "PICBIT: A Scheme System for the PIC Microcontroller\ Marc Feeley / Universit de Montral e e Danny Dub / Universit Laval e e", ["marc-feeley/picobit.pdf"] = "PICOBIT: A Compact Scheme System for Microcontrollers\ Vincent St-Amour\ Marc Feeley\ Universit´ de Montr´ al\ e\ e\ stamourv@iro.umontreal.ca\ Universit´ de Montr´ al\ e\ e\ feeley@iro.umontreal.ca", ["marc-feeley/polling.pdf"] = "Polling\ Efficiently\ on\ Stock\ Hardware\ Marc D6partement d'Informatique Universit4 C.P. 6128, SUCC. \"A\", f eeley@iro\ Feeley et Recherche Opi%ationnelle\ de Montr&l Montr&l, .umontreal. Canada ca H3C 3J7", ["marc-feeley/scheme-into-c.pdf"] = "Compiling Higher-Order Languages into Fully Tail-Recursive Portable C\ Marc Feeley James S. Miller Guillermo J. Rozas August 18, 1997 Jason A. Wilson\ Note\ : This paper was written in 1993 and has not been modi ed since then. It is therefore out of sync with the current implementations of Gambit and MIT-Scheme.\ Two independently developed implementations of Scheme have been extended to compile into portable C code that implements full tail-recursion. Like other compilers for higher-order languages that implement full tail-recursion, measurements of these systems indicate a performance degradation of a factor between two and three compared to the native code emitted by the same compilers. We describe the details of the compilation technique for a non-statically typed language (Scheme) and show that the performance di culty arises largely from the cost of C function calls. In theory, these expensive calls can be eliminated. In practice, however, they are required to avoid excessively long compilation times by modern C compilers, and to support separate compilation.", ["marc-shapiro/CRDTs-beatcs-2011-06.pdf"] = "1\ 1\ ISSN 0252–9742\ Bulletin\ of the\ European Association for\ Theoretical Computer Science\ EATCS\ EA\ TC S\ Number 104\ 1\ June 2011\ 1\ 75\ 75\ Tʜ￿ Dɪ￿￿ʀɪʙ￿￿￿￿ C￿￿￿￿￿ɪɴɢ C￿ʟ￿￿ɴ\ ʙʏ\ P￿ɴ￿ɢɪ￿￿￿ F￿￿￿￿ʀ￿￿\ Department of Computer Science, University of Crete\ P.O. Box 2208 GR-714 09 Heraklion, Crete, Greece\ and\ Institute of Computer Science (ICS)\ Foundation for Research and Technology (FORTH)\ N. Plastira 100. Vassilika Vouton\ GR-700 13 Heraklion, Crete, Greece\ faturu@csd.uoc.gr\ C￿ɴ￿￿ʀɢ￿ɴ￿ ￿ɴ￿ C￿￿￿￿￿￿￿ɪ￿￿ R￿￿ʟɪ￿￿￿￿￿\ D￿￿￿ Tʏ￿￿￿ ∗\ Marc Shapiro†\ Carlos Baquero§\ Nuno Preguiça‡\ Marek Zawirski¶\ ∗\ This research was supported in part by ANR project ConcoRDanT (ANR-10-BLAN 0208),\ and a Google Research Award 2009. Marek Zawirski is a recipient of the Google Europe Fellowship in Distributed Computing, and this research is supported in part by this Google Fellowship.\ Carlos Baquero is partially supported by FCT project Castor (PTDC/EIA-EIA/104022/2008).\ †\ INRIA & LIP6, Paris, France\ ‡\ CITI, Universidade Nova de Lisboa, Portugal\ §\ Universidade do Minho, Portugal", ["marc-shapiro/CRDTs_SSS-2011.pdf"] = "Conflict-free Replicated Data Types\ Marc Shapiro1,5 , Nuno Preguiça2,1 , Carlos Baquero3 , and Marek Zawirski1,4\ 1\ 2\ INRIA, Paris, France\ CITI, Universidade Nova de Lisboa, Portugal\ 3\ Universidade do Minho, Portugal\ 4\ UPMC, Paris, France\ 5\ LIP6, Paris, France\ Keywords: Eventual Consistency, Replicated Shared Objects, Large-Scale Distributed Systems", ["marc-shapiro/icecube.ps.gz"] = "The IceCube approach to the reconciliation of divergent replicas\ AnneMarie Kermarrec, Ant Rowstron, Marc Shapiro y , Peter Druschel \ y Contact author\ Microsoft Research Cambridge, 1 Guildhall St., Cambridge CB2 3NH, UK\ marc.shapiro@acm.org\ Phone: +44 1223 744 800 Fax: +44 1223 744 777\ Regular presentation", ["marc-shapiro/podc01.ps.gz"] = "The IceCube approach to the reconciliation of divergent\ replicas\ AnneMarie Kermarrec, Antony\ Rowstron, Marc Shapiro\ Microsoft Research\ Cambridge, CB2 3NH, UK\ fannemk,antrg@microsoft.com,\ marc.shapiro@acm.org\ Peter Druschel \ Rice University\ Houston, TX 77005, USA\ druschel@cs.rice.edu", ["marc-shapiro/sigops-ew-2000-logmerge.ps.gz"] = "Application-independent reconciliation for nomadic applications \ Marc Shapiro, Antony Rowstron and Anne-Marie Kermarrec\ Microsoft Research Ltd.\ 1 Guildhall St., Cambridge CB2 3NH, United Kingdom\ marc.shapiro@acm.org", ["marc-shapiro/treedoc.pdf"] = "2009 29th IEEE International Conference on Distributed Computing Systems\ A commutative replicated data type for cooperative editing\ Nuno Preguica, CITI/FCT-Universidade Nova de Lisboa\ ¸\ Joan Manuel Marqu` s, Universitat Oberta de Catalunya\ e\ Marc Shapiro, INRIA Paris-Rocquencourt and LIP6\ ´\ Mihai Letia, Ecole Normale Suprieure de Lyon and LIP6\ ,\ complex concurrency control.1 The interested reader will\ find a proof of this property in our technical report [4].\ Hereafter, we study a CRDT for cooperative editing, i.e.,\ a shared sequential buffer. Each buffer entry is identified by\ a unique identifier. To provide the CRDT property requires\ that identifiers be unique, stable, ordered (in the same order\ as the buffer), and dense. This means that it is always\ possible to create a new identifier between two existing ones.\ The challenge studied in this paper is to keep identifiers short", ["marco-morazan/FunctionalVideoGamesInCS1.pdf"] = "Functional Video Games in the CS1 Classroom\ Appears in:\ Trends in Functional Programming 11th International Symposium\ TFP 2010\ Norman, OK, USA, May 17-19, 2010\ Revised Selected Papers\ LNCS 6456, Springer\ Marco T. Moraz´n\ a\ Seton Hall University, South Orange, NJ, USA\ morazanm@shu.edu", ["marco-morazan/Morazan.pdf"] = "Functional Video Games in CS1 II\ From Structural Recursion to Generative\ and Accumulative Recursion\ Appears in:\ Trends in Functional Programming 12th International Symposium\ TFP 2011\ Madrid, Spain, May 16-18, 2011\ Revised Selected Papers\ LNCS 7193, Springer\ Marco T. Moraz´n\ a\ Seton Hall University, South Orange, NJ, USA\ morazanm@shu.edu", ["marco-morazan/tfp2013_submission_1.pdf"] = "Functional Video Games in CS1 III\ Distributed Programming for Beginners\ Marco T. Moraz´n\ a\ Seton Hall University, South Orange, NJ, USA\ morazanm@shu.edu", ["marianne-baudinet/match.ps.gz"] = "Tree Pattern Matching for ML\ (extended abstract)\ Marianne Baudinet\ Stanford University\ Computer Science Department\ Stanford, CA 94305\ David MacQueen\ AT&T Bell Laboratories\ 600 Mountain Avenue\ Murray Hill, NJ 07974\ December 6, 1985\ Tree Pattern Matching for ML\ (extended abstract)\ Marianne Baudinet\ Stanford University\ Computer Science Department\ Stanford, CA 94305\ David MacQueen\ AT&T Bell Laboratories\ 600 Mountain Avenue\ Murray Hill, NJ 07974\ 1. Introduction\ In the programming language ML, a function can be defined by a sequence of pattern\ expression pairs, called rules. When such a function is invoked, its argument is matched against\ the patterns and the first rule whose pattern matches is selected and its expression is evaluated. If\ none of the patterns match the argument, a runtime exception is generated. A pattern is either\ simple (a variable or constant), a tuple of patterns, or a constructor operation applied to a tuple of", ["marie-desjardins/advice.ps.gz"] = "How to Succeed in Graduate School:\ A Guide for Students and Advisors\ Submitted to Crossroads, October 1994\ Marie desJardins\ marie@erg.sri.com", ["mario-blazevic/string-type-classes.pdf"] = "Adding Structure to Monoids\ thus hopefully ending Haskell’s string type confusion\ Mario Blaževi´\ c\ Stilo International plc\ blamario@yahoo.com", ["mark-bailey/pldi96.pdf"] = "Reprinted from Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation, May 1996.\ Target-Sensitive Construction of Diagnostic Programs for Procedure Calling Sequence Generators\ Mark W. Bailey Jack W. Davidson Department of Computer Science University of Virginia Charlottesville, VA 22903 USA", ["mark-bailey/popl95.pdf"] = "Reprinted from Proceedings of the ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, January 1995.\ A Formal Model and Specification Language for Procedure Calling Conventions1\ Mark W. Bailey\ mark@virginia.edu\ Jack W. Davidson\ jwd@virginia.edu\ Department of Computer Science University of Virginia Charlottesville, VA 22903, U.S.A.\ 1\ This is a fake footnote equally problematical. As with much of the information in the programmer's manual, the description is likely to be written in English and is liable to be ambiguous, or inaccurate. For example, in the MIPS programmer's manual [KANE92] the English description is so difficult to understand that the authors provide fifteen examples, several of which are contradictory[FRAS93]--and this is the second edition. Furthermore, the convention, once understood, is difficult to implement. For example, the GNU ANSI C compiler fails on an example listed in the manual. Digital, in recognizing the problem, has published a calling standard document for their new Alpha series processors [DEC93] that exceeds 100 pages4. Thus, it should be clear that there is a need for an accurate, concise description of procedure calling conventions. 1.2 Applications Any application that must process or generate procedures at the machine-language abstraction level is likely to need to know about a procedure calling convention. Examples of such uses include compilers, debuggers, evaluation tools such as profilers, and documentation. The code that implements the calling convention in these applications lends itself to automatic generation. In many cases, the convention itself is not difficult to understand, or implement for a given instance of a procedure. However, the implementation of the general case is complicated with details that are difficult to implement correctly for all cases. Compilers, perhaps would benefit most from specification of the calling convention. The calling convention is exhibited in the calling sequence the compiler uses when generating code. A calling sequence is a sequence of instructions that implements the calling convention. Thus, a calling sequence is an instantiation of the more general calling convention. Frequently, a compiler will use a calling convention that differs from the one used by the native compiler for the machine. In such cases, it is desirable to be able to call procedures that were generated using the native compiler. System library functions, which would be compiled using the native compiler, are such an example. It therefore would be convenient for a compiler to cope with more than one calling convention. In many compilers, the portion of code that implements the calling convention is lengthy, detailed, and therefore difficult to modify or parameterize by the calling convention. The existence of a method for accurately specifying calling conventions also makes it possible to experiment with different conventions. Johnson and Richie have identified the issues in pro4. Although this document also includes information on exception handling and information pertinent to multithreaded execution environments, more than 42 pages are devoted to documenting the calling convention.", ["mark-bailey/thesis.pdf"] = "CSDL: REUSABLE COMPUTING SYSTEM DESCRIPTIONS\ FOR\ RETARGETABLE SYSTEMS SOFTWARE\ A Dissertation Presented to the Faculty of the School of Engineering and Applied Science at the\ University of Virginia\ In Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy (Computer Science) by Mark W. Bailey\ APPROVAL SHEET\ This dissertation is submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy (Computer Science)\ Author\ This dissertation has been read and approved by the Examining Committee:\ Dissertation Advisor (Jack Davidson)\ Committee Chairman (Alfred Weaver)\ James Cohoon\ John Knight\ Ronald Williams\ Accepted for the School of Engineering and Applied Science:\ Dean, School of Engineering and Applied Science\ May 2000", ["mark-bailey/tse-11-03.pdf"] = "IEEE TRANSACTIONS ON SOFTWARE ENGINEERING,\ VOL. 29,\ NO. 11,\ NOVEMBER 2003\ 1\ Automatic Detection and Diagnosis of Faults in Generated Code for Procedure Calls\ Mark W. Bailey, Member, IEEE, and Jack W. Davidson, Member, IEEE Computer Society", ["mark-johnson/debugging-glossary.djvu"] = "-53- \ c \ -54- \ -55- \ -56- \ -57- \ -58- \ -59- \ -60- \ -61- \ -62- \ -63- \ -65- \ -66- \ -67- \ -68- \ -69- \ -70- ", ["mark-johnson/debugging-glossary.pdf"] = "@\ o~\ =~-~\ 0 ~\ ~\ -9\ £3\ rj\ I\ ~ E c u ~\ ~=o\ C\ \"0 ~\ ~0\ ~ u o.~\ -o\ C:.E C\ m 0\ m\ s,. \" 0 > •\ E.®\ =.\ o\ ~e~., I~ la i.\ 'i\ C\ *\"\ E\ 0\ u\ _\ >\ ~.\ 0\ ~-&~\ t\ •\ I:\ i\ :Z:\ @\ -54-\ ,9,\ .E\ C3\ '~.\ ~\ _\ o\ .~ ~ ~ ~ ' ~\ ~ - ~ -. ~,, , ,\ ~\ .\ =_ , ~\ ~\ ~ ..~\ 3~-o\ --~\ ,~ \"~o~ •\ ~oO\ ~\ ~\ m O. ~\"\ o\ 0o\ .w\ c\ ,~ • ®\ 0.\ ~.m\ .o\ --3\"\ uou\ m\ \"-\ ~\ =\ m\ \"O'--\ ,\ ~\ >\ ~'-~\ O~\ .D\ ~3\ --~\ \"\"\ E\ c\ 2\ •- m,.3\ '~\ ,,,.E-\ E\ ®~\ ®:>\ ®\ ®®\ '~ :\ ~\ ~_~\ m\ .\ mm'\"\ .o_.~\ .E\ \"\" \"''--,~>E~-:\ .\ .\ \" =\ =\ .-\ -\ ~ ~\ >,.2.,~\ ~\ L U\ o >\ O~\ =®\ ~.~\ •\ u\ =>\ .o\ .~E,~\ C x .- m • x\ .= ._>\ .\ ._ > ®--\ m C ea\ ®\ I-\ 0\ i'q\ ®o.\ ==\ .-o ~ z\ m~m\ 0\ c\ ~.\ \"~-~ ~\ \"0\ \"6\ _o~\ ®o\ E~'~\ \"mC\ ®._\ .~...~\ = - ~\ ~.-= o \" . - *\ =\ o~\ 0\ -\ C\ ~\ ~\ o~\ .=\ C \"0\ .o\"0 ~\ Q\ C~\ ~\ ~.~\ .\ >\ o\ ,~ z\ =~=-\ -=\"\ ®u\ ~Ec~=\ :7~o\ =\ ~\ \"~-o ~-~ ~\ = ea,.O . _\ ~\ E •\ N\ ~.\ ,,\ c\ c\ m\ ~.-\ ~'0\ \"0 .~\ .\ .\ .\ .\ . c.\ .\ •\ .\ u\ ,-~\ U\ ®'o-~\ m\ >\ E\ m'-\ .0.-\ C\ -.o.~ m :\ _\ ~:\ >-\ u ~.,:\ m.u\ cc~-\ o\ • >.~\ ~ c\ m m Q\"\ ~o\ u\ ot.-.,\ ~\ C\ ~\ =\ m\ -L --C\ E L•m =C\ ~ - o O m C\ ~\ ~\ ~\ ~\ ~\ o-\ ~u\"O\ ~\ ~\ o~\ ~\ .- ~ =\ ,9.\ m\ .. E N m \" ~\ ~ 0-~..\ -\ ~\ ~\"\ ~'--\ 0\ \"6 c~®\ m\ ~m\ =_ L\ -~'~. ~a L\ ~\ = •\ 0\ o~\ ~\ o m o~\ ~,,..'o o ~.~\ ~,®<\ -- m . - w m U : m\ .L\ o\ ~\ -\ E ~.=\ .-\ =\ ~\ ~\ C ~\ .o>--_.=\ ~ m m\ .-\ o\ = ~u._o~l.-'o\ C~m\ • Q.\ m . o . ~ =,\ O~\ \"6\ .Q\ 2\ o\ o\ 2\ 2\ o.>\ 2\ ..~=\ ®=\ -55-\ ~o~\ +\ p+\ m+\ ++P.\ \"0\ 'Era +\ ~\ ~-~\ ~\ Q~\ ~z\ ~I\ 0\ ++++++\ m\ ~+++\ C~.\ m +'--\ +\ 3\ m\ >.\ cc\ ©\ +++~ +++ ++\ +>~m\ +~..~\ 0\ ++\ +\ +2\ ~ ~ J~\ +---\ +\ +=>+ ' ~ +\ ++\ ~-\ C1. -C~\ -+'~\ ~+0~\ +\ +\ m- + m + =\ -\ 8\ +o 8\ + O< ~\ c:\ C\ m\ +8 +\ ~\ ~'~\ , m\ ~\ o\ m\ +=me>.\ o\ +\ m\ +++~+ o+m ~+\ =~\ \"o .~ _~.\ L\ C~\ £\ ~.~\ m c\ ~'~.\ c~\ Q c~\ .,~\ ®\ ..o\ J\ +._'~:+\ + +, ! -\ + \"+\ E -\ m\ m\"O\ o\ ~\ \"+++\ cJ > . r .\ ~+-+8'\ ~\ ~-\ ~\ ~\ +\ I..\ ~ -0\ C~\ ,i,/I,\ +ll\ q\ o\ \"-~~\ Ob\ |\ ,-\ o\ .o\ P.\ ,_i ~\ C~\ >\ \"o}\ ~ o\ E..P,\ ._=~,~\ ..p.\" i\ B\ C~\ -.~ ,~\ .~+~\ ~\ -J\ ,.. o . ~\ .~\ ,P.-\ .c ®~.o\ .\ c\ . - o.\ •-\ ,~\ ..\ >~\ .\ ~ _ - ~ ,~\ 8\ .,.~ ~ , --'~N\ ~\ o.~\ uu\ \"> '\"-o\ -\ ,-\ ~\ 0+'\ 01~\ ~\ o.= \" -\ =+, ~ ' -\ ~'E.~\ r\"~ C\ '-..\"\ ~\ u-o--®\ :~c\ \"\" m\ ® .\ ®~\ P.\ \"\ m\ tp\ E\ =o\ -=~= -,~._,~. \"z._= >\ ++[\ .ID\ m\ \"-~\ ~.\ Q.,~o=.~',-\ '\ >m=®='o,,\ ~'o,-®+~\ ,.0 ~\ =-o\ .~\ \"~ (~'~ ~\ \"~\ ,e\ ~\ c\ .o\ '~\ \"B\ -~.~\ \"o~\ ..\ ~\ -•£ ~ . =\ X\ ~ ~ Z\ P,\ .~\ ~\ m-~ x.~ ~'-\ 0\ \"-\ ~\ ~ c\ >~\ '6\ i++++ °°\ C~\ \"~\ ~\ <\ <\ >\ -56-\ ._\ ~\ -\ ~\ ~..~\ ~\ o\ 'Z\ 2\ ~ 0\ 0\ u~\ o\ ~0~\ ~.~\ .\ ~\ ~-~\ ~o.~\ -~\ ~\ ,_\ ~-0\ 0>6\"o®\ o~-..~\ .~..~ ~\ 2 ~\ u~o®\ ~\ 0\ 0\ .o.\ ou>\ ~\ Z\ m~\ ~\ e\ \"\ l\ m\ >\ C~\ o~\ \"oEm\ -,-'\ m o.\ ~.\ E\ c~\ OJ O~\ ~_=\ ~\ ,\ ~\ \"~\ >..=,.9\ ~\ \"6\ ~._\ o.\ • ox~\ © =~\ ~_.;,~®\ o.\ co - c ~\ m E\ ~®_o~'..\ \"oso,.\ O0\ ~ o ~ ~ ~ ~ ~ ~\ ~\ o ~- ~\ ~ ~ m m 0\ \"~'-\ .,-.\ ~ . ~\ \"~\ ®~\ -\ •\ ~ >\"o\ aZ\ ~J\ ,n©o~=\ o\ ~\"0\ -\ 0\ •\ E m\ \"o\ E---o'~\ ~\ ~\ ~\ .,,,\ ~.~.\ o ~\ ~\ E.\ W ' O L O.\ ..e C ~ E\ .,,\ o\ ~\ .\ .---\ he-$\ .\ ~ ~\ ~. , = ,,._o.~\ ,ms..\ -\"-\ ~'\"\ ~\ m\ ~\ •\ ~\ ®D\ ~\ ~\ ='~\ o\ ~\ e~\ ~'~\ _~\ ~ u\ ~\ •\ o~\ I-,-9\"~\ =8\ ~C ,~\ --.=\ ,~\ -\ c- o\ m c ~ m~\ \"\ \"E°--~-~\"\ . . . . .\ ~\ c\ o o.~ m u\ = ....\ ~ o.\ -=~o\ o\ > . - - .~.\ E~\ ~-. E o .:'~'- o\ -®*\"\ ® E._~,\ --''-\ \"~o\ ®\ =.~.~.\ m=\ 0\ o\ ==\ •.\ 0.>.~\ • ~ m ~\ ..~.:\ ,~ ~ ~ o\ ~\ ~.~.D\ ~--\ Q.\ ~.~\ o oE\ >\ -57-\ E\ \"~.~\ o\ ~ ~..~\ ~\ ~o._\ o cz~\ c-~\ ~\ o ~\ o)\ cb\ (7)\ L\ o~\ .~.\ -\ ~o\ .o~-.o~o\ e\ ~\ ~-o_~.~\ ~ --\ .~~\ \"-\ 0 ..Q\ u~\ ~E\ 6 ~\ ~\ = u ~\ o\ ~\ 0\ o\ ,I\ O.\ ® ~..a\ ~\ ®\ u\ o\ i.\ @\ m,,o~_'~=\ =\ ~.=\ \"B\ '-\ =\"'\ 0\ c~\ E\ .,,,-\ ~\ o~\ o\ ~\ >u\"\ = 3 Z ~ 2\ ==to-\ ~ ~\ 8\ c~\ 8\ L\ ,2.\ 'E\ 0\ ~\ ~\ ~ +;\"~\ ~\ ,\ x--\ 8\ L\ E\ o • ~z~\ o.-\ ._\ -\ ,.,§\ =\ =\ \"-\ .; ® = , ~\ 0\ 8~\ .~ .e. •\ = =\ \"~,8\"'\"\ ,.~'>~\ >.c~\ .~=<\ 0\ U\ ~.\ ,-z\ _\ -_o~._=.~\ .,,oL®\ ,-\ E\ =.o~o\ ~'-'&8~\ o\ --.~,.\ =\"\ ®\ ~e\ -\ b\ \"~'-°\ 7,\ ~o~,--.~ o\ O\ ~._\ •\ ~ ~\ u'o~\ {!'''\ •\"\ ~\ °\"\ ~ a ® ~ . _ ,--~\ .\ ~\ ~\ \"0\"0\ ~\ = =\ \"\" =\ o\ u\ ~ ~ ~\ .o ~\ .~\ ~\ ~\ ~ . ~o\ \"~ ~ ~\ ~'~\ ~\ o ~ ~,\ ~\ ~,~\ ~= ~o\"\ •\ ~\ ~,.0~\ ,,0\ c\ \"\"~\"\ c\ ~-\ :2\ o o ,,\ ,\ 8\ u\ 8\ >\ -58-\ ~\ ~\ ~-~ ~\ ~ ~\ \"-\ ~\ =~\ ~\ o\ ~o\ oo\ s\ ~\ ~ .~\ ~\ -~o~\ E~\ .~\ .~ E\ ~\ o\ .~.~.~\ ~'o\ ~o.~\ ~.~\ \"-\ '~\ ~\ ~'~\ ~\ ~\ ~'~\ ~\ ..~\ ~\ ~.\ ,~\ ..~\ ~\ ~\ •\ ]\ ~\ ~\ .~\ ~\ -~\ o\ ~\ ~\ ~\ o-~\ .\ ~'\ ~\ -~\ \"B\ ~\ ~\ ~\ •\ ~\ E\ -.z\ ~.\ o.\ .\ o\ .\ $\ .\ ._~\ ~'\"\ •\ ..~\ .\ .\ ~\ o\ ~\ ~\ ~\ ,,\ ~\ o\ ,,\ ®\ ~\ x\ ~\ <\ ~ = ~\ ~\ --E\ ~\ ~ >,~\ -\ ~\ >\ ~®~\ >\ ~.\ ~ o._\ \"[\ 0\ C\ ._o\ >\ \"--\ ®\ O\"\ O.\ E\ o\ 8\ E o~\ ~.~--\ ~=\ o.S\ ~\ ®_\ ~\ ,_\ o\ =\ ~\ u ~'~\ ~\ ~\ o~\ \"o ~\ w~\ ~\ ~\ '~\ .-~\ \"\"\ -\ 0'~\ \"0\ °,.\ \"-\"\ -\ -\ ~®\ -=\ oo\ ~o:\ .-\ ~\ ~\ ,~\ °'-'°'i\ ~-~\ °\"\ ~\ \"-\"\ C~\ \"~o~-'~\ ~\ .-\ ~,o\ ¢\ ._\ o.\ o\ °_.o\ -.-~\ .. ~\ ~\ ....\ _~\ ~\ i\ i\ C\ .O\ ~\ -\ .~\ -O~\ c\ m\ .~...~.~\ ~\ =u\ 0~\ ~ E ~\ \"B\ '\ [~\ ,.\ =\ c\ .-\ m w m--~\ _,~\ ~. ®\ ---\ ~\ ,m\ OrS\ . . . .\ .0\ .Q\ .D \"0\ ~,~\ .~._.~\ ..\ ..=~.._~\ . . . .\ ~,,\ \"~\ 0\ -59-\ D\ ~\ '~z\ ,,.o\ ~\ .:\ ,Z.\ o\ '~o\ ~\ ~\ ~,~'~\ ~\ ~\ =\ x\ ~\ m\ c\ =\ s\ ~.,~.\ u £=.~.£\ -\ ® o o~\ ~--._o~\ ~ x\ ~\ \"8\ \"\"\ .'\ . . 03 .\ .\ ~®~\ DD\ ¢3\ ~\ ~=\ .®®\ \"'-Z\ -~\ E\ ~\ c\ \"~=\ ~\ E'E\ c\ 0\ c\ '~ 0 ~., E\ ~\ m\ =\ --c\ ~.\ ,.o\ 8\ \"o ~~ := .\ -\ m\ -\ ~o\ m\ .®~\ >\"\ \"0 =\ -\ :~ ~\ =-\ ~\ x U = Q,\ L\ ^\ ,-- =\ ~.\ .1~ 0\ ~-=~\ 0..~\ =\ o\ £3\ ~ ® ~\ -\ .C\ $~\ _\ -- ~ ' -\ e.-=\ u\ .~\ 0\ CL\ ~,,\ &\ ,-==\ ._.\ ~\ ©\ ,\ ~\"\ ..~o\ o\ .\ m\ ®~\ o\ •\ \"o'~ Z\ ,,,\ =o~3\ >-~\ \"\" : . . e . - - -\ ~ ~,~\ 0\ X\ ~\ \"-\ ..~,,\ ~\"\ ®=\ =~-.=\ Q-®~%\ 0\ 4\ ~\"\ c~\ ~'>:==\ .o ' C u\ -\ ~\ ®\ =\ ®\ ,-'~'3\ >\ X\ ~ =\ C m\ §=\ L.~\ ~®\ 4\"\"01=\ ..3\ ~_\ m\ m\ ~L\ ~\ m*\"O\ ,~\ ,,,--\ 3\ m\ =\ u=\ u\ E\ \"6\ ~'~\ ='-\ E\ ~6\ o\ •o\ ® \"~\ •\ ->~\ .u\ ~ ~\ ~\ ~ ~\ ,~\ ®=~.\ -\ ~,~.\ ~ \"o\ ~\ > =\ '7~0. ~\ .\ eo ~ u ~\ ca\ ~\ m Lr\"l\ ~\ cr\"o\ 0\ ]\ Q.\ u~\ C3\ .~.-= ~ ..~\ \"-~\ U.,\ ~1\ Z\ ..DO .\ .\ .\ .\ ®.~;\ \"\ 0,~,.\ c~,-\ ~\ ~\ ~\ \"a=c~ o\ =\ \"~\ .~ o..~\ -.\ S~\ •- o\ --\ x~.,\ ~\ ~E\ ~\ ,-~ ..~\ ~E\ ==~®\ .~ oc ~\ .k\ ==:\ \"6 = .\ _~ '¢ . \"E\ =\ o®\ ~o~\ C~'~o\ ~\ ~\ C~Uo\ ~'oc~\ ~\ •~- -\ - o= 0 ~\ (o\ ~\ c~\ 0\ .. e\ c\ e\ \"~ 'J e \"\ 0\ E\ =\ o\ -\ g~\ t'=\ g\ ~\ 0\ ~\ ~\ :=\ ~:\ =+->\"\ =\ ='-\ =\ =\ >\"\ >\"\ >\"\ >'\ >'\ ....\ ]>\ -60-\ LJ\ .~'\"6\ ~ o ~=~\ > ~o.~\ ~~\ \"~ ~\ ~ ~\ ~ ~\ ~ ~-o •\ ×\ ~\ ~\ ~\ ~\ -o~\ ~~\ ~=~\ ~\ •\ ~\ -\ 0 ~\ .~\ =\ \"\"\ ®3oo.~\ h.\ .\ ~\ .0\ .-o\ -\ ~\ =.\ o.\ ~\ \"~'~\"g\ 0\ \"'.,.//u\ i ~'' . \"\ ~\ 0\ 0\ .~.o ~\ E. ~\ ~Z~\ .\ ~\ ~\ =o\ ~\ ~\ >\ ~o\ ~ - ~\ \"\ &\ ®\ ~\ ~\ ~o\ ~.o\ .£ ~\ u'-\ \"o~\ ,~\ 2.-\ \"F.~\ o cz~ ~\ ~--o\ ~>\ : ~ -\ o\ 0\ O~\ c\ \"6\ O~\ :~\ o_O\ ~\"\ i\"\ '\ ~\ w\ L\ ¢\ 0\ >\ oo\ ~ u .\ ~\ uL\ ~o\ ~®~\ \"~ O - u\ ~. ~\ ~\ ~,-\ ~\ .~\ 8\ o\ ~\ _ ~\ tJ\ ._\ 8\ m\ ~\ '~\ \"\"\ ~\ .o0\ ~o\ .o0\ ~\ ~c~\ .o0\ ..\ -\ 0 E~\ o\ u\ ®o\ cu.\ o~\ .,\ •\ e\ .o\ ,, z\ ,, ..\ ~I~\ L ~\ ..am.,a ~.\ E z E.=\ ~Z\ \"\ ~'~z\ = ~\ .\ ..~.z\ ..I- x ~\ m~.\ ,.\ -~\ ~\ ®\ ..\ m\ .-\ x\"E\"\ \"~\ 2\ ~:\ ~ ~. L ~ .\ o\ ~\ U\"0 ~\ \"o'Zz\ v\ ®\ ,,\ ,.=Lz\ x ~ I -\ \"o'Zz\ ~\ ®\ \"\ ~,\ ~\ o\ u\ ~\ ~\ .~\ .=.='o\ ~-\ ~ ~,~\ ~\ \"~ o\ ~\ u ®\ ~ ~\ \"'\ m~ 0\ ~.\ ~\ 0¢_1\ o\ --\ ..\ -.=.~z\ x ~ z\ ~-\"\ ~.-\ c ® ®*'\ ® o.~\ -\ \"E\ ~ ® ' ~\ ~ . m,,~-- >\ •-'-- 0 C\ m ~\ .S~\ ~\ . ~\ ~\ &\ o\ •\ \"&\ ,--\ i.\ 0.¢\ O~\ .Q\ ~3\ ,2\ u.\ ¢.\ u.\ -61-\ ol\ E\ \"O\ -\ .\ o\ o\ w\ > ' ~\ ~.\ ~ .<\ >'-='°'-°~\ ~.E\ .\ .\ ~o'~\ ~:\ =® ....\ O\ E\ cu\ >\ 7\ E\ ==\ ~\ \"~'-\ ~\ ~\ ~\ ~\ ~\ ,\ .-- Or,, `\ ,.-~.\ ~\ -\ Z\ o)\ E\ ~\ ._.=<,.-\ ~®=~\ ~.o~\ .->.=-<,:\ :..=i:o~.\ ..~\ .---\ ~\ -~:~'\ ,:-:\ .-\ ~-,.\ .0\ 8\ =\ ~\ \"~®'~\ ~\ o\ 2\ \"\ '-\ ~E'~, \"\ .'~\ -\ \"~\ o -\ -\ o=\ c:\ _\ \"-\ 2=-o-o\ <.,\ I\ ~\ ~,,O\ ~\ ~\ ~\ - . ~.,1~\ O\ O\ O~\ u~o,.\ - ~\ -\ S>~\ c\ i\ C~\ ~®~®'o\ m.~\ ~=.a.c\ ~lx:\ ~®,-®\ :\" \"\" \"\ ~,-o<,,\ i-°-l~<->\ i.>o.,\ c\ :o\ >\ -62-\ Q\ Z~ ~\" ~\ 6\ 2~\ ~\ ;~\ ~\ ~\ .~o\ ~\ ~\ ~\ ~\ ~ --\ o\ -~:~\ ,-=.\ 0\ -\ ~ ' ;\ ®~>\ g\ .g\ =\ \"13\ .'~\ ==\ \"®\ \"~\ ~-~6~\ z\ -[\ ES \" , 2\ =\ •\ oE\ :\ ,,,\ ;\ ~.~\ m.u:\ --\ Z\"\ ,-\ 0) 0 0\ O\"\ 0\ 0\ O.\ •8.s\ 0\ =\ =o\ ~\ ==\ =.\ =\ e\ == o\ .--\ o\ [\ ~=.\ :3\"--\ :~\ ~\ _\ ,.~.\ >o_=\ .®=\ ~ ~.~\ \"E~o~\ ~_\ =\ .-'=\ =~\ \"'=\ ~\ o\ =\ ®\ \"~\ ~\ .-:\ ~'.~'~'\ ~'\ L3\ Z\ ®~\ ~\ ~=.u~\ \"a\ e\ £3\ Z\ u,J\ =.~\ o~\ \"O\ o\ ~\ •\ ~ C •\ ~u m c\ ~=\ ,\ ,-®\ ,..Z\ .,~\ ~\ ==\ ,~\ ._~\ .o~.\ ~\ =='~\ \"~\ ~\ --.~\ =\ =~,\ ~\ ,~,..\ =¢-\ =.l~\ C\ =\ =>\ O\ Ot\ £3\ . ~o\ ....\ >.0\ ==~-~\ - O~ x -.\ E t. e c P,,o\ °\ *,'~\ ~\ \"~,~\ '-~\ ~,0\ m~\ ..\ I.\ \"~\ O\ ~\ ,.D\ E~\ =\ = =\ =~'Z\ • m*,.-m\ ca\ ~ c:'= •\ =,=\ ~-o'-\ =\ \"' \"=\ \"C®-:\ ~ ® o\ =-'~\ ~ ® E\ =\ o\ .o\ I:\ ~\ ~0\ c\ m.-\ O\"O\ '~\ ~'*\"\ 0 =~\"\ E'~\ ~\ N--J~'---~\ \"\ 'B\ D.\ -63-\ %\ S\ ~\ ~<\ L\ ~2\ e\ ~\ ae\ ~\ CL~\ 0\ .\ ~\ m\ L\ ~\ \"\ ,=\ w\ 2\ o\ \"-=2 ~\ ~\ .~\ ~.~ ~.\ E\ o\ -d\ .\ .o~\ .~\ ~\ \"~,--o\ ,~., C 0\ v,\ \"\"\ .~\ .--\ Z\"\ =-o\ ~\ C m\ ,\ o ~\ .~ .~\ '~\ .--\ \"o>=\ Q.,-\ ,8\".\ \"~\ m •\ ~\"\ ,®.\ ..\ Z~=\ 0\ 0\ c\ .o\ .~\ C}\ ~\ \"~\ .o.-\ 0\ ~\ o\ ®\ >\ ~=\ ,=o=,\ \"\ ~8~c\ -4\ O.\ ._\ .-\ ~=~\ ~\ o ~0.o\ ~\ ~\ .,~ ~,. ~ ,,,0 ~\ m o\ ~ - E\ ~ E\ 0 0\ ~--\ ~ ,\ ® ~'~\"\ ®,.\ o ~\ ~. ~.\ \"\ o=.~\ -®\ OU\ ~\ ~\ 0\ C~\ ..C~ --, E\ cn>~\ .,uo\ 0\ \"~\"\ ~\ \"~\ -~.\ ='B\ ~C3\ -.>~\ ~\ ~n\ C~\ ~.o u\ ~E\ \"B. =\"\ -64.-\ o.,E~\ ~\ ~,~\ ~\ .-,\ • r.-.\ ¢\ c,- ~\ ~.c. ~ - -\ ~c\ J~ \"~0 ~\ 0..=\ ~-\ ~\ /,\ ~\ 33 0\ ~\ ~ 0 ~\ 4\ ~.\ ~\ .0\ .~\ \"\">\ >~.E\ ~-~\ O)\ \"0\ E~o\ \"\ ~\ .a\ -..'E~\ :\ ~\"o _ = 3\ ..';\" ~\ ~\ ~\ ~\ 8\ u')\ L = o\ ~\ >\ =i\ \"-\ ~ ~e,:~ ~\ o~_\ ._\ =\ ~\ ._~.£ > ua.\ >-\ ~.\ \"S\ >\ >\ •\ '~ ~ ~'-\ o=; ~\ ~. 2,\ \"~\ J~\ .\ ~\ E\ 4\ -\ E\ .,.~\ {\ O~F\ ..=\ 0\ o\ 0\ ee m\ ~D ~\ 0\ a,\ 01\ E\ X\ \"o\ 0\ \"o\ ~\ <~5~\ ~ t\ ..~=~ ~ ~\ >\ s~1~\ ~ o~\ c~----\ O)\ _\ E =\ ~\ ~\ >\ o\ E ~\ c .,Q .JQ\ O~ U\ \"- = ~\ ~\"o\ co'=\ ~>\ -Qu')\ UJ 0\ c E . .~\ *, c\ &&\ C\ =®\ 0\ : \"o o.\ ®\ ~\ ~0\ 8\ . o . ~ ® E =- .,;,;\ U\ 0\ ~\ e.c,\ m (J ~\ ~\ CL\ ~'-.E~\ ~\ O\ =\ m4~\ m\ OJ='U\ ® >\ .>-~<\ -':\ ea ~,--~.®.~\ ,-\"o_\ ~\ ~\ ®~.\ o\ -\ m cO \"~ m .~\ o:o\ ~e>,Z\ ~\ o\ ~\ o~\ •\ ~.-\"&E o\ L\ : 6 Z , .® o\ ,~ =\ ~®\ ~..~\ E\ -E\ o~\ ~\ .\ ~ ® ~\ ~\ o\ 0\ ¢j ¢J ~\ -o ® .\ ,.\ ~\ =;~=\ ®>\ ¢¢0.\ \"\"\ o\ '\ = >\ ~-\ •. ¢ ~ _\ ~,\ .So=~\ =®=\ .~'o~\ 0 .I-, @\ E~o\ .~\ O)\ D\ -8\ ~\ ~o.'~=\ \"\" \" ~ _\ E E _ oE EE\ _\ 0\ ~o ~\ _\ ~'~\ o=:.\ ~.,,.,\ o\ .~\ ,o'~E\ ~oo\ >\ ~\ I\ ~\ .~\ = =\ ' - E ® :' ° \"\ ~\ u\ L~ ~\ ~\ L\ -65-\ ~'Z\ \"a~\ ~ o~\ ~\ >\ ~\ ~\ ~\ ~\ o~~\ o\ =1\ •\ \"8\ ~\ o\ ~®>\ c\ ~ ~ 0\ u\ -~\ ~\ ¢0\ :~\ ~\ ~\ \"~\ cO \"~ Z\ .~ ~ u j\ ~o\ ~\ u\ ->~ :\ .~\ ~\ =\ .\ \"D0~ 0 \" ~\ ~\ t.\ E\ ..Q c: t'- ~\ <-o ~\ .t\ ~ ×\ a'o\ o\ =\ ~\ Q.o'~\ ~\ o ~\ : ~ • m\ '~\ ~o\ u\ ~ x >,m\ 0\ 0\ O~\ c\ c\ o\ O~\ @\ >\ C~\ \"0\ ,.-Z\ u\ m\ E\ \"-'~\ ~c~\ >~\ ®=~.\ .~®\ \"o®\ ~\ ~u,\ ®.\ -\ ~-\ =~\ \"=<\ ,\ 0\"\ \"o\ ~\ ~ I .\ ® =\ 2,\ \"a\ °\ ~:\ ~\ ~_\ ~ E.,., o\ m>\ m ~.\ :~ o~\ E\ ..~,c~ ~\ a.\ ~ c ~\ O~\ ,.9.\ 0 U\ O~\ D\ .....\ ~ ~:~\ ~\ ~\ ~\ 1\ .\ 0\ o~\ >\ o\ .~%>~°\ =~.\ .\ .\ .\ ~\ o\ >\ 2\ @\ ~3\ >\ -66-\ 0 ~\ e\ 'J\ ~\ 0\ o.~\ ~\ ~\ ~\ •.~\ ,,\ E\ E~\ m\ c:~\ •\ ~\ . ~ o -\ ~\ x\"~'-\ ~')i\ ® ~\ E\ \"- g ~ o ~\ .,,,.0\ m\ 0\ ~\ \"'\ c\ \" •\ .\ E ~\ ~ ~ ~\ c\ :\ ' - > ' -\ >\ .~.\ o\ ~\ o\ ~>.~.~,\ ~ ¢~\ m c~\ o'-.~\ ~ , ~ u o\ ~\ +\"\ +,,E\ ~c'~\ \"\ P:\ 0\ Us':\ o~\ ~o\ >\ o*\ u\ i\ .Q\ E\ .--'0\ ~'~\ 4.s 0\ U L£\"\ ®~\ ~=\"~\ . .\ ®®\ =c\ ~'~\ .~\ I~\ '~EE\ =®\ o\ :\ ~.,,,\ ..\ =~\ \"-'\ -\"\ \"\"\ ~\ '\"\ b\ ~\ 0\ =\ m\ .~\ oi~\ .=~\ ~\ .\ ._\ o ~ o~\ >\"\ ~ \"\ ~\ ~\ •\ =\ ..\ ~\ \"-\ -\ .~\ ~\ E\ ..\ ®\ o\ ~.\ ~\ .~\ ®\ b\ .-:~ ~ . . =\ ..\ 0\ llt\ ~\ ~.=~ ~\ c\ .~.~:\ C ~\ ~,~.,~,<~,~...~.,\ ...\ ~\ ~ , ~\ \"\"\ -67-\ >\ E\ 5\ E\ \"0\ =\ o\ ~ .\ ]\ .~~\ ~\ No.\ ......\ cn\ ,E\ ~\ ~-\ ~\ :\ •°\ ~\ •\ ,,\ O~\ ...\ .._=_:_=\ ......\ .....\ ~\ ) .~\ .~\ ~\ o~\ \"0\ S\ \"3\ 3\ .\ E\ 0\ O~\ =3\ ~.-~\ -\ z\ ~: ~\ o\ ~.\ w\ >\ > ,.~ \"E\ 00~\ 11\ 0001\ ._\ .~\ .-\ ~'\"~\ ~. 0\ o\ >~ >.~\ C\ X\ =~-o~\ >.. s I t..~,\ ~..c,_,_,\ ~\ .->.o\ a\ c\ 0\ .~-\ |-~,2\ \",\ >\ a~\ ~.=.- ~-\ o\ C~\ .D\ C~\ ~u\"~\ ,~\"o\ :\ ~'o\ . . . . . .\ ~\ .._-_ .?_>> . = ~ . o\ >\ >\ >\ 0\ x\ g\ >\ -68-\ ~3\ •\ ~..\ ~\ 8~\ \"~\ -=\ \"~\ .\ .\ ~Z~\ ~\ 8~\ .~,\ . ~\ 4.,\"--,,\ o\ ~°°\ '~-\ 'Z\ o\ ~3\ o..~ ~\ ~\ ~\ Q~o\ •\ -\ ~-~ ~-~\ .6o\ ~,8\ ~\ '7\ .~, ~ , ~\ ~\ a~-~\ ~\ \"~\ ~\ ~',l,\ ~\"\ ¢,10~\ ~\ s\ 0\ c\ O~\ 0\ 0\ ~3\ 6.\ .~-\ ,9,'~ .\ ~\ ,..~\ -\ ~._u~\ 'F.\ 0\ 0~\ OI\ 8~ ~\ O.\ ~\ •\ .&\ ~\ m~\ •.\ c~\ -~\ :\ ~\ ~\ .~\ ~\ ~\ ~\ -69-\ .->~\ ~\ t~\ ~\ ~o~\ ~\ -\ ~\ ~'~ .\ -o=~\ o~\ ~\ ~- o\ ~\ =~\ ~\ ~o\ ._\ ~\ ~\ ~'i~\ o\ .L\ CC~\ •\ ~\ ~..~-~\ =~\ -~\ }.:\ '\ -\ Z~\ a~\ -\ .~\ _\ ~\ o\ _\ = -~\ o~\ ,..\ .~ .\ ~Eo\ ~\ .~\ ~\ ~o~\ d.~ ~ .\ U o\ ._\ .~\ ~\ .~=~\ ~\ ~o®\ :~ .\ ~\ o,...\ kU\ ~.~:\ ~:~:._~°~\ :~o.=\ '\ ~\ ,,.~ .~\ \"~\ •-\ ~\ =E\ =\ 0\ 0\ 8'\ o~\ >-\ ,~\ ~e\ \"o~\ _\ ~-\ ~\ ==\ ==\ =\ ]8\ ~\ ~,\ :~\ I.. (#~\ =\ =,x\ =~\ .\ ~\ a,.\ >o\ ~,\ ~\ = =\ =~\ 8\"~\"\ .~ ,.\ .~\ =\ -=\ \"\ >.,..,\ . . I,I,,I\ ~\ =~\ .~=\ .~.\ =\ ~\ ~\"\ -~\ •\ m~\ C®\ ~\ o.\ ~o\ ~\"\ ~\ .£ o\ ~\ ~,\ ~o\ ~\ .\ ._\ ~t\ \"a~ .\ 0\ O)\ -\ ~\ -\ ~\ ~.\ o\ 8\ >\ -70-\ _\ -.\ ~\ ~\ ~,\ ~\ ._\ ~\ =\ ~\ ~.~\ ._o.>\ ._\ .,,1~\ ~'~'~\ ~\ 0\ .J\ o\ o\ :\ '\ ~\ -\ ®,.\ \"~s~\ ~\ c~®\ .- ~\ \"~\"-\ ,~-\ \"-\ .£~\ ~\ =\ (J\ _\ l-\ O~\ a.c\ --\ ®,.\ :~\ ~\ \"~m\ E\ •~ , =\ •\ ~.~\ 2\ .\ e\ .,,,L\ \" -~\ .\ L=\ =2,\ ~\ a~\ .\ ==o\ ~\ •\ mr'.-~,,\ ~\ \"; c\ =o\ .:\ ~\ '\ - ,oo~\ .\ 2,\ .¢j\ .-\ >~\ .,.,._\ .~;o\ '~:\ ~\ ~-~\ ~\ i E°\ I., r,.,\ o\ O~\ c\ ®-~\ .-:\ .\ .\ .\ .\ ,,\ >'E\ c.\ -\ 0\ ,~-\ 3:=\ \"i\ O~\ .~\ .~\ .~\ .=\ ®\ .=\ ~\ ~,\ .-\ ,.~\ E\ >\ B\ u\ c\ 0\ ~r--\ ~\ .:~. .\ ~\ o\ ,~\ J~\ .~\ ~\ .~=\ •\ 0~\ CaT\ =,\ ~\ ,,,.\ ~o\ .~o\ -,,-, _J\ U'IO.\ ~o~.\ OCQ.\ ~.~ ~\ D\ ~\ _.~\ =\ o~\ ~.\ .-°\ \"~\ .~=\ i\ mE\ o\ c\ ~o=\ D\ ~\ ~\ ~\ o~~\ ~\ .o\ @\ E\ >", ["mark-johnson/old-debugging-glossary.djvu"] = "-9£3 \ @ \ o~ \ =~-~ \ 0~~ \ 'i \ C \ o \ 0u \ ~0 \ _ \ > \ ~u o.~ \ ~. \ 0 \ ~Ecu~ \ ~=o \ -o \ \"0 ~C:.EC \ m0 \ m \ s,.\"0>• \ E.® \ =. \ ~e~.,I~lai.C \ *\" \ ~-&~ \ • \ I: \ E \ t \ i:Z: \ @ \ rj \ I \ -54- \ 0 \ c \ \"6 \ O~ \ .D \ ~3 \ o \ .w \ c \ Q \ C~ \ \"0 \ E®I- \ 0 \ i'q \ '~. \ ~ \ .~ \ ~ ~~'~ \ _ \ ~-~-, \ ._, ~ \ o \ ~ \ .~,,, \ = \ 3~-o \ --~ \ ,~ \ \"~o~ \ • \ ~.~ \ ~ \ ~oO ~ \ ~ \ o~ \ 0. \ = \ mO.~\" \ ~ \ m \ \"O'-- \ ~.m 0 \ 0o \ .= \ .o \ , \ -- 3\" \ - \ E- \ C\"0 \ C \ \"mC \ ~'~ \ .o \"0 \ ~ \ ~ \ ®._ \ uou \ m~ \ m~m \ ,~•® \ \"- \ .~...~ \ > \ ._ \ > ®-- \ c \ 2 \ '~ \ m \ mm'\" \ .o_.~ \ .- \ = \ E\"= \ •- \ m, .3 \ .- \ ,,,.E- E ®~ \ \"- \ \" \"''- \ => \ ®:> \ ® ®® --,~>E~-: \ .~E,~ \ '~: \ ~ \ .= \ ._> \ Cx .- \ m•x \ ~_~ \ .. .. \ ~ \ ~ \ ..~ \ ~ \ = \ - \ ~ \ _o~ \ ~. \ o~ \ ~. -= \ o= \".-* \ ~'-~ \ ®o \ == \ ®o. \ --~ \ \"~-~ ~ \ .-o ~z \ . \ \"\" \ >,.2 .,~ \ ~~ \ o> \ mCea LU \ O~ \ - \ ~ \ =® \ ~.~ \ • \ u \ ,9, \ .E \ C3 \ .o \ > \ 0 \ O~ \ \"6 \ .Q \ =~=- \ -=\" \ ®u \ ~Ec~= \ ,, \ cc \ ~.- \ m \ ~'0 \ \"0 .~ \ ,-~ \ ®'o-~ \ > m'- \ .0. - \ m \ .. \ ENm\"~ \ Um \ E \ - \ ~ \ 0-- \ ~.. \ -.o ._ \ ~ \ m:~: \ >- \ u ~.,: \ m.u cc~- \ o \ ~u\"O \ .- \ ~= \ ~ou \ ot.-. , \ ~\" \ \"6 c~® \ =• \ o~~ \ omo~ \ .- \ E ~.= \ ~ \ ~,,..'o \ o ~.~ \ ~,®--_ .= \ -- \ m.- \ wmU:m \ o- \ ~ \ mm \ o \ ,~ \ z \ :7~o \ ~ \ = \ ~ \ \"~-o ~-~ ~ \ = ea,.O • \ ~. \ ~ \ E._ \ N \ c \ • \ • \ c \ ........ \ ~>. ~ \ ummQ\" \ ~ \ •--CLC \ ELm= \ --- \ C~ \ C~ \ = \ m \ ~-oOmC \ ~ \ ~ \ ~ \ ~ \ ~ \ ~ \ o- \ o~ \ ~ \ ~'-- \ 0 \ m \ ~m \ =_L \ -~'~. \ ~aL \ o \ ~ \ .- \ = \ ~ \ = ~u._o~l.-'o \ C~ C~m \ •Q. \ .- \ m.o. ~ \ =, \ 2oo22o.>2 \ ..~= \ ®= \ ,9. \ -55- \ C~ \ £ \ Ob \ C~ \ \"0 \ 'Era+ ~ \ ~z \ ~-~ \ ~ \ ~I \ +++~ +++ ++ \ +>~m +=>+ '~+ \ +~ ..~ \ ++ \ ~- \ 0 C1.-C~ \ -+'~ \ +2 +8+ \ ~ \ ~J~ \ ~ \ m \ +++~+ o+m ~+ \ ++ \ \"o .~ \ _~. \ mc \ E\"- \ L \ I.. \ ~.~ \ ~'~ \ c~. \ ~- \ Qc~ \ C~0q \ .,~ \ ® ..o \ \"- ~~ \ ,_i ~ \ ~o~ \ + \ p+ \ ++++++ \ + \ m \ ++P. \ m+ \ ~+++ \ Q~ \ 0 C~. \ m +'-- \ m \ >. \ ++ \ ~+0~ \ + \ +--- \ ++ \ m--+m+ = \ 88+O<~ \ C \ + \ +o \ c: \ m \ ~'~ \ ~ \ ,m \ o \ m \ o \ +=me>. \ + \ =~ \ J +._'~:+ \ ~+ -+8' \ ++,! -o\"+++ \ m \ m\"O \ ~ \ cJ >.r. \ ~- \ + \ |,- \ o.o \ ~~~ \ ,i ,/I, \ +ll \ 3 \ cc \ © \ o \ P. \ > \ P, \ 0 \ '6 \ C~ \ \"- \ E..P, \ o} \ ~ \ o \ ~ \ ,P.- \ o.~ \ >\"o \ ~ \ uu \ \"- '- \ ~ \ -~ .~ \ • ~.- \ -£ \ c \ '~ \ \"o~ \ = \ X \ .o \ \"B \ .. \ ~ \ ~~ \ Z \ \"- \ ~ \ ~c \ i++++ °° \ ._=~,~ \ ..p.\" i \ -.~ ,~ \ .~+~ \ --'~N \ r\"~Ctp \ ++[ \ ,.0 \ ~ \ ,.. o.~ \ .~ \ .c ®~.o \ . \ c \ .- \ o. \ ,~ \ .. \ . \ •- \ >~ \ ~_ -~ \ ,~ \ ,- \ ~ \ 0+' 01~ \ .,.~ ~ ,- \ '-..\" \ ~ \ o.= \"- \ =+, ~'- \ \"\"m \ ®. ®~ \ \" \ ~'E.~ \ ~ \ u-o--® \ :~c \ -=~= \ -,~._,~. \ \"z._= > \ \"-~ \ ~. \ Q.,~o=.~',- \ ' \ >m=®='o,, \ ~'o,-®+~ \ =-o \ .~ \ ,e \ .~ \ \"~ (~'~ \ ~ \ \"~ \ ~ \ m-~ \ x.~ ~'- \ >~ \ \"~ \ ~ \ < \ < \ B \ C~ \ -J \ 8 \ P. \ m \ E=o \ .ID \ m \ > \ -56- \ 0 \ C~ \ ._ \ ~ \ ~ \ - \ ~ \ ~..~ \ ~ \ 0 \ 0 \ u~ \ ~0~ \ ~-0 \ 0>6\"o® \ 2~ \ .~..~ ~ \ ~ \ ~.~ \ . \ ~ \ ~-~ \ ~o. ~ \ -~ \ ~ \ ,_ \ o~-..~ \ u~o® \ .o. \ ou> \ ~ \ Z \ m~ \ ~ \ e \ o'Z \ 2 \ o \ 0 \ \"l \ m \ > \ 0 \ == \ \"oEm \ -,-' \ mo. \ ~. \ ~ \ ~ \ ~ \ ~._ \ o. \ • \ ox~ \ ©=~ \ o. co -c~ \ mE \ o~-~ \ \"~'- \ E \ c~ \ OJ O~ \ , \ ~_= \ >.. =, .9 \ \"~ \ \"6 \ ~_ .;,~® \ ~®_o~'.. \ \"oso,. \ .,-. \ ,n©o~= \ O0 \ • \ ~.~ \ ®~ \ ~ \ o~~~~~~ \ ~ \ ~ \ ~ \ mm0 \ ~ \ >\"o \ \"~ \ - \ ~\"0o- \ Em \ \"o \ ~ \ ~ \ W'OLO. \ .-- - \ he-

. \ 0_~ \ o~ \ ~ \ ~ \ ~., \ = ,,._o.~ \ -= ~o \ ,ms.. \ -- \ • \ o~- \ c-o \ mc~m~o \ >.-- .~. E~ \ \"- \ ~-. Eo.:'~'-o \ • \ ~ \ I-,-9\"~ \ \"E°--~ -~\" \ \" \ -®*\" \ \"~o \ m~ \ ~ \ ='~ \ e~ \ _~ \ =8 \ --. = \ ..... \ ~ \ c=.... \ ® E._~, \ ® \ =.~. ~. \ ~'\" \ ~ \ ®D~ \ o \ ~ \ ~'~ \ ~u \ ~C ,~ \ ,~ \ oo.~ mu \ ~ \ o. --'- \ '- \ m= \ •. \ 0.>.~ \ • \ ~ \ m~ \ ..~. : \ ,~~~o \ ~ \ ~.~. D \ ~-- \ Q. \ ~.~ \ ooE \ o~ \ aZ \ ~J \ 0 \ o \ > \ -57- \ ,I \ 0 \ E \ o~ \ E \ \"~.~ \ o \ L \ ~ \ ~. .~ \ ~ \ ~o._ o cz~ \ c-~ \ ~ \ o~ \ o~ \ e~ \ - \ .~. \ ~o \ .o~-.o~o \ ~-o _~ .~ \ .~~ \ ~ \ -- \ 0 ..Q \ \"- \ ~ \ 0 \ o \ O. \ u \ i. \ @ \ ~ \ ® ~..a \ ® \ o m,,o~_'~= \ = ~.= \ \"B \ '- \ =\"' \ .,,,- \ ~ \ ~ \ >u\" \ =3Z~2 \ ==to- \ o~~ \ ~E 6~ \ ~ \ =u~ \ o) \ cb \ (7) \ u~ \ o \ c~ \ 8 \ c~ \ b \ 7, \ O \ c \ 'E0 ~~~+;\"~ \ ~ \ x-- \ E >.c~ \ \"- \ o• ~z~ \ .;®=,~ \ 8~ \ o.- \ ._ \ == \ .~.e.• \ \"~,8\"'\" \ .~ =< \ ~. \ ,-z \ _ \ ,.~'>~ \ - \ ,.,§ \ = \ = \ -_o~._=.~ \ ., ,oL® \ E =.o~o \ --.- \ ® \ =\" \ ,- \ o \ ~'-'&8~ \ ~,. \ ~e \ \"~'-° \ - \ {!''' \ °\" \ = \ = \ \"\"~\" \ ~= \ ~o\" \ ~o~,--.~ \ o~~ \ u'o ~ \ ®~._,- \ •\" \ ~ \ ~a. \ ~-~ \ • \ ~._ \ • \ ~ \ \"0\"0 \ ~ \ ~ \ ~,.0~ c \ ,,0 \ ~- \ \"\"= \ ~~~ \ .o~ \ ~ \ \"~~~ \ ~'~ \ ~ \ o~~, \ :2 \ o \ .~ \ ~.~ \ ~ \ ~,~ \ oo \ u \ ~ \ o \ , \ ,, \ 8u \ 8 \ 8 \ L \ ,2. \ , \ 8L \ 0 \ 0 \ U \ > \ -5 8- \ ] \ ~ \ ~ \ ~ \ ~ \ ~ \ ~-~ ~ \ ~ \ ~ \ o \ o \ \"- \ ~ \ '~ \ ~ \ =~ \ ~ \ .~ \ ~ \ s \ ~ \ o \ ~o \ oo \ -~ \ ~.~ \ ~ \ • \ ~'~ \ ~ \ ~ \ ~ \ ~ \ -~o \ ._~ \ ~ \ E~~.~ \ .~E \ ~'\" \ ~'~ \ o-~ \ . \ ~' \ ~ \ ~ \ • \ ~ \ ~ \ ,, \ o~ \ ,, \ --E \ ~. \ ~ \ E-~ \ \"B \ ~ \ ~ \ ~ \ o ~'o \ ~o. ~ \ ® \ x \ < \ ._ \ ..~ \ ~ \ -.z \ ~. \ o.o \ .~.~.~ \ ..~ \ ~ \ ~ \ ~ \ ~®~ \ ~ \ >~o \ .. .. \ . \ ~ \ >,~ \ \"[ \ ~. \ ,~ \ ..~ \ ~ \ ~ \ $ \ ~=~ \ ~ \ - \ • \ ~ \ ~ \ ~.~ \ \"- \ > \ 0 \ C \ ._o \ > \ C \ .O \ C~ \ \"-- \ ®O\" \ 8 \ Eo~ \ o.S \ ~ \ - \ ~ \ ~ \ \" \ -- \ \"- \ c \ ~E~ \ OrS u ~'~ \ ~ \ .-~ \ 0'~ \ ,m \ '~ \ \"0= \ =u \ - \ -- \ ~= \ ®_ \ ~ \ o \ .- \ ~.~-- \ ,_ \ ~ \ ~ \ ~.® \ ' \ ~® \ - \ o~ \ \"o~ \ \"-\" \ = \ ~ \ -= \ .- \ ,~ \ ~ \ .- \ ~,o \ w~ \ mwm--~ \ m \ ¢ \ _,~ \ °,. \ oo \ ~o: \ ~ \ ~ \ ._ \ o. \ o \ °_.o \ [~ \ - \ - .-~ \ ~,~ \ .~...~.~ \ .~ \ ~-~ \ ~ \ .. \ ~ \ ~ \ ... . \ _~ \ ~ \ .~._.~ \ .. \ ..=~.._~ \ °'-'°'i \ i \ °\" \ i \ .... \ ,. \ ~ \ ~,, \ \"~ \ \"-\" \ \"~o~ -'~ \ ~ \ .... \ .0 \ .Q \ .D \"0 \ O. \ E \ o \ 0~ \ O~ \ c \ \"B \ 0 \ -59- \ DD \ ¢3 \ £3 \ ~ \ '~z \ o \ '~o \ ~ \ ~ \ ,,.o \ ~ \ .: \ ,Z. \ ~ \ ~,~'~ \ ~ \ =~ \ = \ s \ ~.,~. \ ~--._o~ \ u £=.~ .£ \ ,,, \ \"o'~ Z \ >-~ \ \"8 \ \"\" \ ... .. \ o \ '- \ 03 \ ~\" \ CL- \ 0 \ -- \ ~'- \ ~\" \ ..~o \ ~ \ ~,, \ ~®~ \ ~= \ ~ \ \"'-Z \ ~®~ \ ~-=~ \ .C 0..~ \ X \ ®= \ ,-= = \ & \ ._. \ .®® $~ \ -~ \ = \ ~ \ =~-. = \ Q-®~% 4 \ _ \ ..~,, \ o \ ~ \ \"- \ ~\" \ E \ c \ c \ c~ \ X \ c \ - \ ®oo~ \ ~ ~,~ \ \"\" :..e.--- \ ~ \ x \ 0~ \ • \ 0c \ '~0 \ ~., E \ =o ~3 \ . \ =- \ - \ .®~ \ L \ m \ ©o \ ~ \ m= \ ~ \ mm \ >\" \ \"0= \ ^ \ ~. \ ®~ \ e. -u \ = \ --c \ ~. \ ~o xU= Q, \ ,-- = \ .1~ 0 \ , \ ,.o8- \ ~'>:== \ o~ \ . \ .- \ u \ ® ,- '~'3 \ .~ \ :~~ \ \"- \ ~:= \ o'C \ ~ \ ®= \ D \ x \ m \ 0 \ > \ 0 \ c \ g~ \ \"~= \ ~ \ Cm \ E'E \ ~ \ = \ §= \ = \ ~'~ \ ='- \ ~6 \ o \ .~.-= ~ \ ..~ \ \"-~ \ •-o \ S~ \ ,-~ \ ..~ \ ~E \ ==~® \ ==: \ \"6'¢\"E \ .~oc~ \ _~ =.. \ g \ ~ \ L.~ \ 4\"\"01= \ m \ ~L \ m*\" O \ ~® \ ~_ \ ..3 m \ ~ \ ,~ \ ,,,-- \ u= \ u \ E \ o \ •- \ ~ \ ~ \ ~ \ eo ~u~ ca \ ~ \ cr\"o \ ®\"~ \ ~ \ ~~ \ ®= ~. \ - \ ~\"o \ >=~ \ '7~0. \ . \ ~ \ mLr\"l0 \ •-> ~ \ ,~ \ ~,~. \ ] \ U., \ ~1 \ Z ..DO .... \ ®.~; \ \" \ 0,~ ,. \ -- \ x~. , \ ~ \ c~,- \ ~ \ ~ \ ~E \ ~ \ .k \ = \ ~ \ ~ \ \"a=c~ o \ o® \ ~o~ \ ~ \ •~ \ =o~ \ = \ ~. .~ \ C~'~o \ C~Uo \ ~'oc~ \ ~ \ --- \ -o(0 \"~ \ .- o. \ ~ \ .. \ e \ e \ \"~'Je\" \ 0E \ - \ t'= \ ~ \ ~ \ := \ =+-- \ = \ ='- \ = \ = \ .. .. \ 0 \ ~: \ >\" \ >\" \ >\" >\" \ >' \ >' \ 3 \ m \ \"6 \ E \ .u \ Q. \ u~ \ C3 \ c~ \ o= \ ]> \ -60- \ o \ 0 \ O~ \ c \ \"6 \ O~ \ .~ '\"6 \ ~ \ > ~=~ \ - \ ~ \ ~~ \ \"~~ \ ~~-o• \ ~--o \ o ~o.~ \ ~ \ ~ \ ~ \ ~ \ × \ •~ \ ~ \ ~ \ ~ \ -o~ \ ~~ \ ~=~ \ .~ \ ~.o \ .£~ \ ~ \ 0~ \ = \ 2.- \ ~ \ \" \ \"\" \ ocz~~ \ ,~ \ \"F.~ \ ~ \ u'- \ h. \ ®3oo. ~ \ ~ \ ~Z~ \ \"o~ \ ~ \ =o \ & \ \"'.,.//u \ i ~'' \ \" \ ~ \ 0 \ .-o E~ \ ~ \ .... . \ ~ \ ®~> \ .~.o ~ \ - \ ~ \ =. \ ~o \ ~ \ ~-~ \ :~- \ :~ \ o_O \ o. \ ~ \ \"~'~\"g \ ~\" \ i\" \ ' \ 000 \ ~ \ 0 \ LJ \ > \ ~o \ w \ L¢ \ > \ ~Z \ \"& \ O~ \ .Q \ ~3 \ ~u. \ ~ \ ~o \ ~®~ \ ~,- \ ~ \ ~ \ .~ \ \"~ O-u \ ~. \ ~ \ o~ \ _~ \ ._ \ ~ \ ~ \ 0E~ U\"0 ~ \ ~: \ '~ \ \"\" \ ~o \ ~ \ ~c~ \ o \ cu. \ ~ \ ~.L~ \ . \ =~ \ m~. \ .o0 \ .o0 \ .o0 \ u \ ~ \ o•e \ .- \ - \ .. \ ®o \ o~ \ ., \ .o \ ,. \ -~ \ x\"E\" \ ~ \ \"~ \ ,,z,,.. \ ~'~z \ ® \"o'Zz ® \"o'Zz ® \ \" \ ~, \ .~ \ .=.='o \ ~- \ ~ ~,~ \ ~ \ \"~o \ ~I~ L~ \ .. \ v \ ,, \ ~ \ .. \ ..am.,a ~. \ . \ ..~ .z \ ,.=Lz \ -.=.~z \ o~ \ ~ \ ~-\" \ c®®*' \ ~ \ ~ \ u® \ Ez E.= \ ..I-x ~ \ x~I- x \ ~z \ u~ \ ~.- \ ® o.~ \ - \ \"E \ ~®'~ \ ~ \ . \ m,,~-- \ > \ ~ \ ~ \ \"' \ m~0 \ •-'-- 0C m~ \ \" \ .S~ \ ~ \ .~ \ & \ ~. \ ~ \ o \ -- \ 0¢_1 \ • \ ,-- \ i. \ 0.¢ \ ,2 \ u. \ ¢. u. \ oo \ uL \ 8tJ \ 8 \ m \ 2 \ m \ o \ -61- \ Z \ o) \ E \ .0 \ -.oo \ >'~ \ ~. \ ~ \ .< \ >'-='°'-°~ \ ~.E \ . \ . \ ~o'~ \ ~: \ =® .... \ == \ ~ \ \"~ '- \ ~ \ ~ \ ~ \ ~ \ ~ \ .-- \ Or,,` \ ~ \ - \ ._ .=<,. - \ , \ ,.-~. \ .->.=-<,: \ ..~ \ .-- - \ ~ \ -~:~' \ ,:-: \ ~ \ ~®=~ \ ~. o~ \ :..=i:o~. \ .- \ ~- ,. \ ol \ E \ \"O \ w \ O \ E \ cu \ > \ 7 \ E \ O \ O~ \ C~ \ = \ ~ \ \"~® '~ \ o~ \ 2 \ \" \ .'~ \ - \ \"~ \ '- \ ~E'~, \" \ o- \ - \ o= \ _ \ \"- \ 2=-o-o \ ~ \ ~,,O ~ \ ~ \ ~ \ -. \ ~. ,1~ \ u~o,. \ -~ \ - \ S>~ \ c \ ~®~®'o \ m.~ \ ~=.a.c \ ~lx:~®,-® \ i \ :\"\"\"\" \ ~, -o<,, \ i-°-l ~< -> i.>o., \ 8 \ c: \ <., \ I \ O \ c \ :o \ > \ -62- \ Z\" \ o \ 0 \ == \ Z~~\" ~ \ 6 \ ~ \ '; \ ®~> \ \"13 \ .'~ \ == \ ~-~6~ \ z \ \"® \ \"~ ES\",2 \ oE \ m.u: \ -- \ 0)00 \ [ee \ 2~ \ ~ \ ;~ \ ~ \ ~ \ - \ .~o \ ~ \ ~ \ ~ \ ~ \ ~ \ -- \ = \ o \ -~:~ \ ,-= . \ -[ \ = \ : \ ~=. \ ; ~.~ \ ==o \ • \ ,,, \ :~ \ :3\"-- \ ,- \ O\" \ 00 \ .-- \ O. \ •8.s \ = \ =o \ ,.~. = \ . -'= \ \"'= \ ~'.~'~' \ >o_= \ =~ \ o~ \ ~' \ ~ \ L3 \ =. \ .®= \ = \ ®\"~ \ Z®~ \ = \ ~ \ ~- \ ~ \ ~.~ \ ~ \ _ \ _ \ \"E~o~ \ .-: \ ~ \ \"a \ ~=.u ~ \ Q \ 0 \ g \ .g \ => \ O \ Ot \ £3 \ =.~ \ \"~ \ . \ ~o \ \"~, ~ \ ~®o \ o~ \ ~= \ >.0 \ ==~-~ \ '-~ \ \"O \ ~ \ ~ \ C• \ - \ O~x \ -. \ *,' ~ \ O ,.D \ • \ m*, .-mca \ t. P,,- \ o \ • \ ~umc \ m~ \ ~,0 \ Eoec° \ ~ \ E~~c:'=• \ .. \ , \ ,-® \ ,..Z \ .. .. \ .,~ \ ~ \ == \ ~ \ = \ =,= \ ,~ \ ._~ \ .o~ . \ ~ \ =='~ \ \"~ \ ~ \ == \ ~-o'- \ = \ \"' \"= \ =-'~ \ ~®E \ --.~ \ = \ =~, \ ~ \ ,~,. . \ \"C®-: \ =~ 'Z \ = \ o \ .o \ I. \ I: \ C \ c m.- \ 0 =~\" \ E'~ \ ~ \ N--J~' ---~ \ \" \ = \ ~ \ ~0 \ O\"O \ '~ \ ~'* \" \ =¢ - =.l~ \ £3 \ Z \ u,J \ 'B \ D. \ -63- \ Z\" \ 0 \ C} \ % \ 2 \ SL \ ~2 \ e \ ~ \ ae \ ~ \ o \ .o~ \ .~ \ ~ \ \"~,--o \ =-o~ \ '~ \ ,~.,C0Cm \ .-- \ v, \ .~ \ \"\" \ \"o>= \ \"~ \ .-- \ Q.,- \ m• \ .~ \ \"~ \ 0 \ ~ \ o \ \"-=2 ~ \ ~ \ ~< \ CL~ \ 0m\" \ . \ ~ \ L~ \ o \ ~ \ .~ \ ~.~ ~. \ . \ ,8\". \ , \ o~ \ .~ \ .~ \ ~\" \ .. \ ,®. \ Z~= \ ,= \ w \ E \ -d \ 0 \ c \ .o \ ® \ > \ 0 \ C~ \ ~ \ .o. - \ ~= \ ,=o=,\" \ ~8~c \ ._ \ ~=~ \ .- \ .,~~,.~,,,0~ \ 00 \ ~ \ , \ ~ \ ~ \ o~ \ o~ ~0.o \ mo \ ~. ~. \ ~ \ ~ \ ~-E \ ~ \ E ~-- \ ® ~'~\" \ \"~ \ ®,. \ -® \ \" \ o=. ~ \ -~. \ ~E \ - \ ='B \ ~.o u \ \"B. =\" \ OU \ ~ \ ~ \ \"~\" \ ~C3 \ -.>~ \ ..C~ --, E \ cn>~ \ ., uo \ 0 \ -4 \ O. \ ~n \ C~ \ -64. - \ o \ 01 \ O) \ o \ o.,E~ \ ~ \ ~,~ \ ~ \ .-, \ c,- ~ \ ~.c. ~-- \ ~c \ J~ \"~0 \ ~ \ 0.. = \ • \ '~~~'- \ 4 >~.E \ ~-~ \ = \ .0O)\"0 ~ \ ~. \ ~ \ E~o \ \" \ ._~.£>- \ ua. \ .~ \ \"\"> \ \"- \ o~_ \ ~ \ ~e,:~ ~ \ ~ \ L=o \ :~\"o_=3 \ ..';\" ~ \ . \ 0eem \ ~ \ ~D~0a, \ ~ \ X0 \ E \ <~5 ~ \ ~ \ t> \ /, \ =i \ 8 \ u') \ \"o \ \"o \ • \ r.-. \ ¢ \ ~- \ o=; ~ \ ~ \ ~ \ \"~ \ ~. 2, \ \"S \ 330 \ ~ \ > \ ~0~ \ ~. \ >- \ ._ \ > \ ~ \ ~ \ .a \ -..'E~ \ {E \ 4 \ E \ J~ \ ~ \ O~F \ - \ .,.~ \ ..= \ ~ \ ..~=~ \ ~ \ ~ \ s~1~ \ ~o~ \ c~---- \ ~ \ ~ \ _ \ E= \ > \ 0 \ > \ o \ O) \ D \ -8 \ E~ \ O~U \ ~\"o \ ~> \ co'= \ e.c, \ c E..~ \ m(J~ \ -Qu') \ UJ0~ \ 0 \ && \ =® \ :\"oo. \ ®= \ ~ \ m4~ \ ~ \ C \ 0~0 \ OJ= 'U \ ®> \ .> -~< \ -': \ o:o \ ~e>,Z \ ~ \ o~ \ o~ \ • \ -o ®. \ ,. \ E~o \ =®= \ ~ \ =;~= \ ®> \ ¢¢0. \ .~'o~ \ \"\" \ o \ ' \ => \ ~- \ ~'~ \ o=: . \ c .,Q .JQ \ \"-= \ ~ \ ~'-.E~ \ ~ \ *,c \ .o.~ \ ®E=- .,;,; \ U \ O \ ea ~,--- \ ~ \ ,-- \ ~.® .~ \ \"o_ \ ~ \ ®~. \ :6Z~® \ - \ ~.-\"&Eo \ ~® \ ,,.=o E \ L \ ~ \ . \ ~..~ \ ~®~ \ ~ \ 0 \ 0.I-, @ \ •.¢~_ \ ~, \ .~ \ ~ \ ~o.'~= \ .So=~ \ .~ \ \"\" \"~_ \ _ \ ~.,,., \ > \ ~ \ .~ \ - \ ,o'~E I \ ~ \ '- E®:'°\" \ ~oo \ = \ = \ ~ \ o- \ mcO\"~ m .~ \ ¢j¢J~ \ EE \ EE_o_E \ 0u~~ \ ~o \ ~ \ L~L \ CL \ 8 \ m \ E \ o~ \ o \ -65- \ .t \ 0 \ O~ \ c \ O~ \ C~ \ ~'Z \ \"a~ \ ~o~ \ ~ \ > \ ~ \ ~ \ ~ \ ~ \ o~- \ • \ \"8 \ o~ \ ~®> \ ~ \ ~ \ 0 \ :~ \ ~ \ cO\"~ Z \ u \ -~ \ ¢0 \ ~ \ ~ \ \"~ \ .~ ~uj u~ \ -.~: \ >~ \ ~ \ . \ \"D~0\"~ \ ~0 \ t. \ ~o \ = \ E \ ..Q c: t'- \ ~ \ <-o \ ~ \ ~× \ o= \ ~ \ a'o Q.o '~ \ ~ \ o~ \ :~•m \ '~ \ ~o \ u ~x>,m \ o~ \ =1 \ c \ 0 \ c \ o \ @ \ > \ 0 \ o~ \ O~ \ ~3 \ \"-' ~ \ ~c~ \ ~- \ >~ \ ®= ~. \ , \ 0\" \ - \ .~® \ \"o® \ ~ \ ~u, \ ®. \ =~ \ \"=<®= \ O~ \ ~: \ ~ \ m> \ ~_ \ m~. \ :~ o~ \ E \ ..~,c~ ~ o \ ..... \ ~ \ ~:~ \ ~ \ .~%>~° \ =~. \ ,. -Z \ E \ 2, \ \"o \ ~ \ \"a \ ~I. ° \ ~ \ E.,., o \ a. \ ~c~ \ ,.9. > \ ~ \ ~ \ 0UD1 \ .... \ ~ \ > \ \"0 \ m \ u \ o \ 2 \ @ \ > \ -66 - \ o \ c \ 0~ \ ~ \ ¢~ \ e \ 'J \ c:~ E \ .~o - \ o~ \ ®~ \ E~~ \ ~>. ~. ~, \ . \ \"-g \ .,,, .0 \ ~ \ om~ \ m \ 0 \ ~ \ \"• \ 0 \ o.~ \ ~ \ ~ \ ~ \ x\"~ '- \ E~ \ c \ m c~ o'-.~ \ ,, \ .~. \ ~ \ ~ \ ~ \ : \ ~,~u o \ \"' \ ~')i '->'- \ > \ ~ \ +\" \ \" \ P: \ ~c'~ \ o~ \ ~o \ •.~ \ • \ ~ \ ~ \ +,,E Us': \ E \ 0 \ > \ 0 \ llt \ .--'0 \ ~'~ \ 4.s 0 \ U L£\" \ ®~ \ ~'~ \ : \ .. \ ~=\" ~ \ . \ . \ .~ \ I~ \ '~ EE \ =~ \ \"-' \ '\" \ ®® =c \ =® \ o \ ~.,,, \ -\" \ \"\" \ ~ \ b \ ~ \ = \ .~ \ .=~ \ oi~ \ ~ \ . \ ~\" \ ~ \ = \ ® \ .. \ ® \ ._ \ .~.~: \ ~. =~ \ ~ \ .. \ .~ \ o \ ~ \ ~ \ .~ \ b ... \ o~o~>\" \ ~ \ ~ \ c\"- \ ~ \ ~ \ \"\" \ - \ ~. \ .- :~ \ ~..= \ • \ .. \ C~ ~,~.,~,<~,~...~., \ ~,~ \ E \ o* \ u \ i.Q \ E \ 0 \ m \ -67- \ O~ \ > \ E \ 5 \ o= \ ~ \ .~~ \ ~. \ ...... \ No. \ ~ \ ~ \ ..- \ .._= _:_= \ . \ ~- \ : \ ~ \ ,, \ ...... \ S \ • \ ..... \ ~ \ .~ \ •° \ ).~ \ ~ \ . \ E \ =3- \ z: \ o \ ~. -~ \ ~~ \ ~. \ E \ \"0 \ ] \ cn \ ,E \ O~ \ o~ \ \"0 \ \"3 \ 3 \ 0 \ w \ > \ o \ C~ \ .D \ 11 \ 0001 \ ._ \ .~ \ .- \ ~'\" ~ \ ~. \ 0 \ o \ ~..c,_,_, \ ~ \ .-> .o \ a \ \", \ ~u\" ~ \ ,~\" o \ : \ ~'o \ ...... \ >..sI-c \ t.. ~, \ 0 \ .~- \ |-~,2 \ .._- _ \ .? _>> \ .=~.o \ > \ > \ > \ >,.~\"E \ 00~ \ >~ >.~ \ CX \ =~-o~ \ > \ a~ \ ~.= .- \ ~- \ ~0 \ xg \ C~ \ > \ -68- \ 0 \ 0~ \ .& \ OI \ ~3 \ o \ o \ • \ ~.. \ ~ \ -~ \ 8~ \ \"~ \ -= \ \"~ \ . \ . \ ~ \ 8~~ \ ~Z~ \ m~ \ O. \ •. \ ~ \ 8~ \ .~, \ . \ ~ \ ~ \ ,..~ \ ~ \ 4.,\" --,, \ ~ \ ~._ u~ \ .~ \ • \ 'F. \ :~ \ ~ \ ~ \ ~ \ ~°° \ '~- \ 'Z \ ~3 \ c~ \ s \ 0 \ c \ O~ \ ~3 \ 0 \ 0 \ o..~ ~ \ ~ \ ~ \ Q~o \ • \ - \ ~ \ '7 \ ~-~ \ ~-~ \ .~, \ ~,~ \ ~ \ ~ \ .6o ~,8 \ ~ \ a~-~ \ \"~ \ ~',l, \ ~\" \ ¢,10~ \ ~ \ 6. \ .~- \ ,9,'~ . \ - \ -6 9- \ 0 \ 8' \ .- >~ \ ~ \ t~ \ ~ \ ~o~ \ ~ \ - \ ~ \ ~ \ ~'~ \ . \ ~- \ o \ ~ \ ~ \ ~'i ~ \ -o~ \ =~ \ ._ \ =~ \ }.: \ .~=~ \ d.~ ~ \ ~ \ o=~ \ ~ \ ~ \ ~o \ ~..~-~ \ -~ \ ~ \ . \ - \ ' \ ~ \ ~Eo \ Z~ \ U \ a~ \ o \ ~o® \ ._ \ - \ .~ \ .~ \ :~. \ _ \ o \ _ \ ~ \ o~~ \ ~ \ ~.~: \ kU \ .~ \ ~ \ =-~ \ ~o~ \ .~ \ . \ ,.. \ o,... \ ~:~:._ ~° ~ \ :~o.= \ ' \ ~ \ =E \ •- \ ,,.~\"~ .~ \ ~ \ = \ o \ .L \ CC~ \ • \ 0 \ 0 \ O) \ o~ \ >- \ ,~ \ ~e \ \"o~ \ ~- \ ~ \ - \ _ \ ~ \ a,. \ >o \ =~ \ 8\"~\" \ = \ \" \ == \ == \ = \ =,x \ == \ ~, \ >.,.., \ = \ ~, \ =~ \ ~ \ =~ \ ~ \ .~ ,. \ ~\" \ ~, \ ]8 \ ~ \ :~ \ . \ ~ \ .~= \ .~ \ ~ \ ~o \ ~ \ I.. (#~ \ .. \ I,I,,I \ .~. \ ~ \ .£o \ . \ ._ \ • \ ~t \ = \ ~ \ ~\" \ -~ \ m~ \ C® \ \"a~ \ . \ o. \ ~o \ ~ \ - \ ~ \ ~. \ -= \ o \ 8 \ > \ -70- \ o \ O~ \ c \ \"i \ O~ \ B \ .J \ o \ o \ (J \ l- \ a~ \ I., r,., \ c. \ _ \ ._ \ ~ \ ~ \ ~.~ \ -. \ ~ \ ~ \ ~, \ ~ \ = \ ._o.> \ ._ \ ., ,1~ \ ~'~'~ \ ~ \ 0 \ :' \ ~ \ - \ \"~s~ c~® \ .- \ ~ \ \"~\"- \ ,~- \ \"- \ ~ \ _ \ ®,. \ ~ \ . \ . \ . \ .£~ \ = \ 2, \ O~ ®,. \ 2 =2, \ ==o \ =o \ .: \ . \ a.c \ -- \ e \ L= \ ~ \ \";c \ .¢j \ .- \ >~ \ :~ \ ~ \ ~ \ ~ \ • \ ~ \ .,.,._ \ \"~m \ E• \ .,,,L \ ~ \ mr'.- \ o'~ \ iE° \ \"- \ -~, , \ -,o \ .~;o '~: \ ~ \ ~-~ \ ~ \ •~,= \ ~.~ \ ®-~ \ .-: \ .... \ ,, \ >'E \ - \ 3:= ,~- \ .~ \ .~ \ .~ \ .= \ ® \ .= \ ~ \ ~, \ .- \ ,.~ \ E \ 0 \ > \ D \ D \ 0 \ ~r-- \ 0~ \ CaT \ J~ \ -,,-, _J \ U'IO. \ ~o ~. \ OCQ. \ ~.~ ~ \ E \ • \ ~ \ .: ~. \ . \ o~ \ ,~ \ .~ \ ~ \ =, \ ,,,. \ .~= \ ~ \ ~o \ .~o \ ~ \ _.~ \ o~ \ ~. \ .~= \ \"~ \ i \ mE \ = \ .-° \ ~o= \ ~ \ ~ \ ~ \ o~~ \ ~ \ u \ c \ o \ c \ .o \ @ \ > ", ["mark-jones/coherence.dvi"] = " Coherence for qualified types\ Mark P. Jones*\ All translations are equal, but some translations are more equal than others.\ Misquoted, with apologies to George Orwell, from Translation Farm, 1945.\ Research Report YALEU/DCS/RR-989, September 1993", ["mark-jones/composing-monads.pdf"] = "Composing monads∗\ Luc Duponcheel\ Alcatel Bell Telephone\ Antwerp, Belgium\ ldup@ra.alcbel.be\ Mark P. Jones\ Yale University\ New Haven, CT, U.S.A.\ jones-mark@cs.yale.edu\ Research Report YALEU/DCS/RR-1004, December 1993", ["mark-jones/fp-ovl-hop.ps.gz"] = "Functional Programming with Overloading and\ Higher-Order Polymorphism\ Mark P. Jones\ Department of Computer Science, University of Nottingham, University Park,\ Nottingham NG7 2RD, UK.", ["mark-jones/fpca93.dvi"] = " A system of constructor classes:\ overloading and implicit higher-order polymorphism\ Mark P. Jones\ Yale University, Department of Computer Science,\ P.O. Box 2158 Yale Station, New Haven, CT 06520-2158.\ jones-mark@cs.yale.edu", ["mark-jones/fpca93.pdf"] = "A system of constructor classes:\ overloading and implicit higher-order polymorphism\ Mark P. Jones\ Yale University, Department of Computer Science,\ P.O. Box 2158 Yale Station, New Haven, CT 06520-2158.\ jones-mark@cs.yale.edu\ range of other data types, as illustrated by the following\ examples:", ["mark-jones/fundeps.pdf"] = "Appears in Proceedings of the 9th European Symposium on Programming, ESOP 2000, Berlin, Germany, March 2000, Springer-Verlag LNCS 1782.\ Type Classes with Functional Dependencies\ Mark P. Jones\ Department of Computer Science and Engineering Oregon Graduate Institute of Science and Technology Beaverton, Oregon, USA mpj@cse.ogi.edu", ["mark-jones/fundeps.ps"] = "Type Classes with Functional Dependencies #\ Appears in Proceedings of the 9th European Symposium on Programming,\ ESOP 2000, Berlin, Germany, March 2000, SpringerVerlag LNCS 1782.\ Mark P. Jones\ Department of Computer Science and Engineering\ Oregon Graduate Institute of Science and Technology\ Beaverton, Oregon, USA\ mpj@cse.ogi.edu", ["mark-jones/pldi93.ps"] = "Implementing Type Classes\ John Peterson and Mark Jones\ Department of Computer Science, Yale University,\ P.O. Box 2158 Yale Station, New Haven, CT 065202158, USA.\ Electronic mail: petersonjohn@cs.yale.edu, jonesmark@cs.yale.edu.", ["mark-jones/popl97-fcp.dvi"] = " First-class Polymorphism with Type Inference\ Mark P. Jones\ Department of Computer Science, University of Nottingham,\ University Park, Nottingham NG7 2RD, England.\ mpj@cs.nott.ac.uk", ["mark-jones/rev-qual.dvi"] = " A theory of qualified types*\ Mark P. Jonesy\ Programming Research Group\ Oxford University Computing Laboratory\ 8-11 Keble Road\ Oxford OX1 3QD\ Introduction\ In a language with a polymorphic type system, a term of type 8t .f (t ) can be treated (possibly\ after suitable instantiation) as having any of the types in the set:\ { f (t ) | t is a type }.\ It is natural to consider a more restricted form of polymorphism in which the value taken by t\ may be constrained to a particular subset of types. In this situation, we write 8t .ss(t ) ) f (t ),\ where ss(t ) is a predicate on types, for the type of an object that can be treated (after suitable\ instantiation) as having any of the types in the set:\ { f (t ) | t is a type such that ss(t ) holds }.\ A term with a restricted polymorphic type of this kind is often said to be overloaded , having\ different interpretations for different argument types.\ This paper presents a general theory of overloading based on the use of qualified types, which", ["mark-jones/springschool95.dvi"] = "Functional Programming with Overloading and\ Higher-Order Polymorphism\ Mark P. Jones\ Department of Computer Science, University of Nottingham, University Park,\ Nottingham NG7 2RD, UK.", ["mark-jones/springschool95.ps.gz"] = "Functional Programming with Overloading and\ HigherOrder Polymorphism\ Mark P. Jones\ Department of Computer Science, University of Nottingham, University Park,\ Nottingham NG7 2RD, UK.", ["mark-jones/thih.ps.gz"] = "Under consideration for publication in J. Functional Programming 1\ Typing Haskell in Haskell\ MARK P. JONES\ Paci c Software Research Center\ Department of Computer Science and Engineering\ Oregon Graduate Institute of Science and Technology\ 20000 NW Walker Road, Beaverton, OR 97006, USA\ (e-mail: mpj@cse.ogi.edu)", ["mark-linton/compilation-and-linking.pdf"] = "427\ IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 15, NO. 4, APRIL 1989\ A Macroscopic Profile of\ Proaam Comtilation and Linlune\ U\ I\ U\ MARK A. LINTON\ AND", ["mark-linton/encapsulating-cxx.pdf"] = "Encapsulating a C++ Library\ Mark A. Linton\ Silicon Graphics Computer Systems", ["mark-linton/interviews.pdf"] = "Interviews: A C++ Graphical Interface Toolkit\ Mark A. Linton, Paul R. Calder, and John M. Vlissides\ Technical Report: CSL-TR-88-358\ July 1988\ This research was supported by the SUNDEC project through a gift from Digital Equipment Corporation and a grant from the Charles Lee Powell Foundation.\ Interviews:. A C++ Graphical Interface Toolkit\ Mark A. Linton, Paul R. Calder, and John M. Vlissides\ Technical Report: CSL-TR-88-358 July 1988 Computer Systems Laboratory Departments of Electrical Engineering and Computer Science Stanford University Stanford, CA 94305", ["mark-overgaard/old-ucsd-pascal.djvu"] = "UCSD Pascal®: a portable software environment for small \ computers \ by MARK OVERGAARD \ SoJTech Microsystems, Inc. \ San Diego, California \ INTRODUCTION \ The UCSD Pascal System is a complete program develop- \ ment and execution environment for small computers. Its \ facilities include text editors and file management utilities, \ as well as compilers (for Pascal, in particular), assemblers, \ and a linkage editor. The system is highly portable; versions \ have been implemented on almost twenty minicomputers \ and microprocessors. (A concise description of system fa- \ cilities is provided in an appendix.) \ The system was developed under the direction of Profes- \ sor Kenneth Bowles at the University of California, San \ Diego (UCSD), starting in late 1974. The author, working \ first at the University as a graduate student, and more re- \ cently with SofTech Microsystems, played a principal tech- ", ["mark-overgaard/ucsd-pascal.djvu"] = "UCSD Pascal: a portable software environment for small \ computers \ by MARK OVERGAARD \ $ofTech Microsystems, Inc. \ San Diego, California \ INTRODUCTION \ The UCSD Pascal System is a complete program develop- \ ment and execution environment for small computers. Its \ facilities include text editors and file management utilities, \ as well as compilers (for Pascal, in particular), assemblers, \ and a linkage editor. The system is highly portable; versions \ have been implemented on almost twenty minicomputers \ and microprocessors. (A concise description of system fa- \ cilities is provided in an appendix.) \ The system was developed under the direction of Profes- \ sor Kenneth Bowles at the University Of California, San \ Diego (UCSD), starting in late 1974. The author, working \ first at the University as a graduate student, and more re- \ cently with SofTech Microsystems, played a principal tech- ", ["mark-overgaard/ucsd-pascal.pdf"] = "UCSD Pascal: a portable software environment for small computers\ by MARK OVERGAARD\ SoJTech Microsystems, Inc. San Diego, California\ INTRODUCTION The UCSD Pascal System is a complete program development and execution environment for small computers. Its facilities include text editors and file management utilities, as well as compilers (for Pascal, in particular), assemblers, and a linkage editor. The system is highly portable; versions have been implemented on almost twenty minicomputers and microprocessors. (A concise description of system facilities is provided in an appendix.) The system was developed under the direction of Professor Kenneth Bowles at the University of California, San Diego (UCSD), starting in late 1974. The author, working first at the University as a graduate student, and more recently with SofTech Microsystems, played a principal technical role throughout the evolution of the software. The original need was for inexpensive interactive access to a high level language for a large enrollment introductory course in problem solving and computer science. We decided early that we would use small, stand-alone computers as the hardware foundation for our solution rather than larger, time-shared computers. We then chose Pascal as the language to be used by students in the introductory course, and also as the implementation language for system software we would need to build for these small machines. The design goals for Pascal1 specifically included these two kinds of applications. We used the P-compiler2 as the starting point for our Pascal implementation. We needed a stand-alone Pascal program development and execution environment suitable for computer-naive students, but also capable of being used for maintenance of the system itself. We had two primary design concerns: 1) a user interface oriented specifically to the novice, but also acceptable to experts; 2) a strategy for fitting these facilities in small, stand-alone machines. By our definition, a \"small machine\" had less than 64k bytes of memory, dual standard floppy disks, and a CRT terminal. We were particularly concerned about the Pascal compiler, since we knew of no implementation of Pascal within those constraints. These two concerns have been themes of the evolution of", ["mark-probst/diplarb.ps"] = "DIPLOMARBEIT\ Proper Tail Recursion in C\ ausgef uhrt am Institut f ur Computersprachen\ der Technischen Universit at Wien\ unter Anleitung von\ Ao.Univ.Prof. Dipl.-Ing. Dr.techn. Andreas Krall\ und\ Ass.Prof. Dipl.-Ing. Dr.techn. Ulrich Neumerkel\ durch\ Mark Probst\ Trappelgasse 6/8\ 1040 Wien\ Wien, am 2. Februar 2001", ["mark-tullsen/first-class.ps"] = "First Class Patterns ?\ Mark Tullsen\ Department of Computer Science\ Yale University\ New Haven CT 06520-8285\ mark.tullsen@yale.edu", ["mark-van-den-brand/formatters.ps.gz"] = "Generation of Formatters for ContextFree Languages\ MARK VAN DEN BRAND\ University of Amsterdam\ and\ EELCO VISSER\ University of Amsterdam\ Good documentation is important for the production of reusable and maintainable software. For\ the production of accurate documentation it is necessary that the original program text is not\ copied manually to obtain a typeset version. Apart from being tedious, this will invariably in\ troduce errors. The production of tools that support the production of legible and accurate\ documentation is a software engineering challenge in itself.\ We present an algebraic approach to the generation of tools that produce typographically\ effective presentations of computer programs. A specification of a formatter is generated from\ the contextfree grammar of a (programming) language. These generated formatters translate", ["markus-hof/CS-SSW-P97-07.ps.gz"] = "1\ ZeroOverhead Exception Handling Using Metaprogramming\ Markus Hof, Hanspeter Mssenbck, Peter Pirkelbauer\ Johannes Kepler University Linz, A4040 Linz\ {hof, moessenboeck}@ssw.unilinz.ac.at\ We present a novel approach to exception handling which is based on metaprogramming.\ Our mechanism does not require language support, imposes no run time overhead to error\ free programs, and is easy to implement. Exception handlers are implemented as ordinary\ procedures. When an exception occurs, the corresponding handler is searched dynamically\ using the type of the exception as a search criterion. Our implementation was done in the\ Oberon System but it could be ported to most other systems that support metaprogramming.\ 1. Motivation\ Exception handling is the ability to separate the reaction to a program failure (i.e., to an exception)\ from the place where the failure occured. This has two advantages:", ["markus-mohnen/context.pdf"] = " W Dd - - I I 5 E 5 Q 5 7Q CIE HEWjDPlAQ P%dWERgiU8 jHBU fQsCQPi5Wd@E Q 75 5 @If@Q5 FGD@A8B%@QdH%E)PWG\"DIP@E3HPPB@E)P@G8WEl785PWCHE RD5`iCg 7 5 C E I Q 7EIE 7 Q 7 C QI Q IEI 5 5 C C C Q QI Q I 7 Q fgPHg8PqʣDWIR7Q@@d5 lRfQ @EQP@WCHE R7PWGfPiCqb%DϨfQsC\"HEHRWQPWG@E C 7 dRI%QH5q85@QD@AjU@AW7`CDDAWQdPIgDIPPIWDA@QD@Gq8@dfPdf@QD8dH@QD@AjU@AW7`D@GE C 75 C C 7 Q IQA CIE 7 C Q 7 Q 7 QI I EBWE3P@G85fP8E8RWQ7fgPPIPGW3D@GP8dEӫDWIRWQ5 P@GRHRd Q 5 E 5 Q IE 5 C 7 Q 7QQ E WIR7WQd5 PUW5F@G3Gd6z83 75I C 5 4 \ PIgDIP GWd 5 CI IQ I I fD8E@PDRgF8E@%DPlA Q 7 7 C 75 C CI I Q 5 C 7 8C7P%A@Q8W57D@AjU@AW7`C8lEf@QDA@Q8DWIR7WQ5 WG3U8E@PD%PHf dR@QPWAjDWA@7C C C 5 C 75 Q E C C 7 Q 7 C gP@A@E@C%QRHiRQBfQP85WdWI7RWQ5 DG@8dPIgDIPPI@P@AfWQD@GU8WQP@A%D@AW7`\"5 CQ 5 7 5 QG CI I E I I Q Q 7 E I5 Q I5 7Q fDGWd̦I@f@Q5 RIPqfD8E@%DPAlP8)HEWPU%gPG@8lEH8BWEddRQRUBPlAfdE 5Cqdɲgd BggdDPH98U8PI85DHEWjDIDlAIPIPGW̯WIR@Q@d Q CQ5A 5I 5 7 5 qP3PgH `rWX`TaRadHrwHYRBHfvWXH`Vfyajt RXj `THa fR Ht f ggHwRyeT y Y yy e wY dgRfqjvrtdr `Tv 8xaT8`cywWaddd`ceT fXr yrtd`VwbayYvRdRu v Y c T v c r e T a w it v tRY jvfXT X Y aw a v f Vd v v b w @Vyd Hyt`wWadHic`T%Xd`rWX`Ta%aBW`Tdtfaf T dY ft`w%ajvyywddRRjvyd8 V Y r r f v Y v a a r t r e v e w a`TWY fdvau fRXr t`t HWYq q`w dRrju RXYT HdddfbavrVvT `uWXY `t`TyTWue HqHHrTaV`V `VD`uaw RfRitX t bfRHdf`trtYa vqXX `VdjfHXTu `t BWfr T8dT RyYr vbawf d8`rwYY `T@X ja8eTRB RfX t a8 v aa T td H a a vd Ya8 w v 3Y f HXc`rWd`Tt `VaraRad3t`TWX`u`u8RXa dit cqffjvfeYf ytdyr dVrw H`t W\"`V`Vjraewyt Req@V dy 8Hjw d6d@ rs`TWf\"sT `@dj RyT bjv f t v T T a v d ed r Rau dr H v 6 V a T yef ``ta WjHd@YT c`yYHd`VT yrgdfwa fVRat` Y8uYvw f`rer dWXv f`Tr Raav Rrd3dY yrR`uBRXv ic t fHWX fgvTr RedB1fdYrv t `w@ar ytdw YdYr c`T`r8WX W8ffrr tp `w@addcf ddWH X tY T w v v w d T e f 8 T T X t 1ud r{ dRW|T {rzw ~} yx edv feRfRufsmjtWysrkqyo`h%nldijiyffRd8 p m n p m k h ge v Rr`uWXTdUrTH@VRvU8@pyx`wRa`uRitHsrqHihgHd`cba`YHWVUS p v X f p X feV X T RIPPHFDB@9864 QIGE 4 CA 75 %231)('%$\" 20! & # ! ", ["markus-mohnen/context2.pdf"] = " ) 7 E 1 E 1) 7@ 1 1) 7 E 1 1 E @ C E eAS42f)q8SA4EBo@I47S2wSEX8SAXo@\"eASrSEXcSS7DF5FSEq84A2\"Bc@Sc4FIhSE1 ) C ) C) 7@ C 1 1 C ) @ 7 ) C@ @ 75 E 2wBc@Sc88 2FSEXIcXc@SS7DF5FSE4Ac0Bc@SIcC8BhC84CF1SE42I6FSE6Bh92v4E8vDSA rF1XF29wBFE8X\"DBSEDS5F845S14~)Iv4ES7F1Xq~)41r0Bc@4F88o5~AD6rF7h8FCSE418F5F6F8C E E @ C@ C@ 1 7 ) ) E C) C C 5 E 1 @ E 5 5@ ) ) @ 1 @ ) 1 @ 7C ) 1 7C DCh886S@41cC8X8SAcSCF14ESI$2F7FEDFCSE418F5F6céFEf)8FSEFCSEo$DBc@SSXo@UD2~)1 1 7 ) 1 7C C) 1) 7 A qF7SEDS5F845S14~)2w4Bo@x82e)S1vD2eASrSE\"eAc8 7C C 1) 1E @ E 1 E 7) E 75 7C C @ û ) E ) DBc@SFD8o54E2uh$2w\"BcS47F7SE86FF4E2r4EF18cCvDSA\"8cCS88X@4F88W5$F7cE8v8F2qD 7 ) )C @ C 7 E C) E C) E ) 1) 7 ) C@ q8SCF14ESI$IBc@4D2~)41Xc@S8FC4E6F62hEhD2cE8c6FI04E2DSCF14ES2whSE6B ) ( 8cC8eAS04CF1SE42) wB&o Ue4QUHUTra2~UHBhf 8 Tp T Te Ue4QUHUTraShB6FeUp2 p Tp Qp T 8cC88cC8 eAS ) C@ 6FSE6Bh 8cC8DCD eAS2\" )\ 15 hSIBu4E8Bc& FESE7ED2f)SBq4@\"SCF14ES2wq)eA84526FSE6CXF@984Av8cC8S@B8XrX4@984ABS@W1 e2)c8cS7 1) ) ) 7 @ E 1@Cټ@ 1 E 1 UBwfFED2~)4c78\"F6 6X8)98SCF14ESIvoFhI4u4@cE8c4S7BwF184AcF87UXF4BW)Bu4E8Bc& 7@ C E C@C ) 7 ) E 7 7@ E EC 15 FEES7X@XFSE84Av@Sq6FCFEF)rvF7SE1845F845S1SD8S57SEBDCD8cC8\"8cCSc8S5hSE8SAw646FC86FSEDB C 1 E ) 7 1) 7 7 1 E E5 7C@ 1 7 E @ 1 E 1)EC C 1 E @ ) E C@ ) 7 ) 1 BSE854F845S1S84AөX@6S@8SAr8B@cBhSEF6 )28cC8eA42DSAqc8B2c@c2$DSCF14ES2wu42) C ) C ) 7@ E C5 EA E ) E @ @ E C E 682e)S72I4A$c7X@42B41FSE8X8cC6cSF18D898XB8c5éB984A2B6S@18SAB4@o1FE8~)Sc78F6 5@ 7 1 7 @ ) 7 A ) @ 3 ) C@C EC ) E 1 DB84AʢvShSE8845ө98Cc8eA42&2c@é)veADSCF14ES2w28cC6ér6@66BDh8qhIcShS7 e843BIqShBIX\"(9ĤhBS3cCDSC1F4ES2) $6F4E6CBe$S@1XS@477FFEF8458SA&c7F1w2I c78 E 1@ )A A@ E 7) 7 @ 7 E E) A 48w99DB RH Q QHT f H IxPSFQepUHrWsSRXSVeSH6WPF`\"FefWsTWseT8 4SHq6FV6BU4Q8BWVhWPTs 6FefWseT6BcVhhfWsrqSihgfW`6FeSpWQF`FefWsTXB4BWPqFfuYhp Q R fV H R TVf R e ` Ype Tp Q R T f se H H T R Y UPXP BcwSf62S426Ff2S~HuYhep9eTUVWQUT6Feefe6eH22SfWQBueH 4Q8hRXWPged s Y R He p V T s Hp s T Tp H T Y Q s ep R Tp Q ` Q IUe4QUHUTr6WPue4sqpB4SHqBTS2eX2Wf0h$6Ue4QUHUTr6hffSHXWV~T6UVWQUTR UpqB%SW2S~UPXP 96FefWseTXcV9SHhUe4QUHUTq2eUHBh~fhqqfWsq~pusXBhhepBq Tp p s R e ` Qp R Tp T Te `f Re T Yp Y s H Y H T `f Tf Q H T i ` e s H TVf R T R `f s Tp quVhFpWPhq2SfWPqSfQeHhUpUTR2e2hWPTs qSi4QUHBWVahu6ueBUPUqqi H T Yp s R Tp `f Q ` Yefe He p p WPFfuYh UPXP $ew6UeSQUHUTqhSihffqFYep2fqBhe\"SHFQXShff22Sf62a H fHHs Q pT uUf\"eHUeTUsWQUTeRSH9HSh96Ue4QUHUTr6vUP6rWV uVBh\"e8WPHH uaSQUsT F`UXrSf8WPFe0WPUPP qSf9SHeR`cQ FeBfQ WVWseTST68WQf UV 266WPHH~RUT T Q Q p R T p R 6 FYp f eRH T 2 H Q 6 T ep T X i h FwSQHqeH F$6SBqFqUqoXfFXSfeu6WP$hRWs2hh0FeqSiFQffU`4Q8xPBP &B6ueBUPUqqi f H T `f R Ypep p R H s w s Tp Ue4QUHUTTr6BaR6FefWseTXcV`huhfWsTBXSX WPFfuYFYp eRqr6FV6Fep6hhfWs~T6BXqr2XezFyexwus p e ` f e se H H T Hp YYpe eV} |x{ v t 2r BqFrhFhohen4cmg ljUFiWrfed&rrF2X k p i k h g e H w y d Tp Q ` d Q ` YP Q H BhpSi4Q8I4eHxPrpIBxwUdvutWsrqSihgfXceBcbaBXWVUTSRB4PIG FC8DB\"9864320( ECA@ ( 75 1) '' #! &%$\" ", ["markus-pizka/piz_gic.ps.gz"] = "Design and Implementation\ of the GNU INSELCompiler gic\ Markus Pizka\ Technische Universitat Munchen\ Institut fur Informatik\ pizka@informatik.tumuenchen.de", ["martin-elsman/masters.dvi.Z"] = "", ["martin-erwig/ActivePatterns_IFL96.pdf"] = "u w n u t a\ kt nl\ q k m k hVb w sn(D( z Dn(p tq u u m bl |bD| \ E \ \ 4|D| |lD| ( \ \ \ - - !VbV|bD|l\ d d e d d e e d e `y1!F1F!B!hl$R(REpel$l(10EV(1V$&1 4FFlSlШ|l(l e d d e s(Fp BbnPEh($F! (|`78! 1FVDFgDV!B(Fp$Fgl i ed g e d ƶ d d e i ed e d e e d DF1!Fh& DF!1218l!B!B|R|`1!!ylI`F1!FB|`EFV`1 e i ed e e ed e e i e B1!!!2!E(FR81Rl`!!! `1 d g ƶ F1F1!1!hFD10R!d e d e e d ed d e d d e e d e d e nlF!!(F1!FE0DF!1Ĥ1F!B!l$2E(Fp(FpEg`F10l e d e d d e e d d e e d e F!1R01Vb7!0EFB(RV($I`!S1((FBV(FVB$ i !Pl(11ר18EF!1FBR g e ed d 0!1!FB8FF٤FF1F \ ed d e d d e ed e d d bhRV`BF֨(10EV10lFV(V1!11F(B(1 i ed i i ed ed d i ed e `1(F1!Pl(1E0pF1b1F21VDF` i ed d V( ypF0ElFDFF(! H!!1gF (FBV(FVB$p( 1 ed e e d e d d e e d e e e ed e d e d d e i ed d e i 1(`1!1$p0\"(FR`0R81(hP&FBF2!l(VDh(V(1PR!1 ed e 07 (ʨ`!1(Fp(E(Vgl01VlV81(1PR!1F!160EP7FlV d i e d e d d ƶ d e d d e d d e e d e d d d e d d e `BsFΤ(Vl01V(Fp$1l0EF!EFVs7FF(Fp d g ƶ e e e d d 11hel$&FR!2FBh1l`B21R(FR!0E2 1FVDF($&FR!1 d e ƶ e d e d d e e d e F``!E(lFVS͵ lFVE$ɨ21 Bbn i e e (1HD!FR!8R8nB`!E0R i ed ƶ d d d e d d e e d e d e d e VE01(BlV`10p8hlFVS(Fp$1V(p8F&!FEFFlV\ i ed i e d e e d g d i ed e nDEsV((1pR(1V$eRy!p(V`1V`1R6!2y21V81!F1 g1SB&yhpb \ k rq u DsV~ w !Vs w Vn(nlb1(yVl`ssRb1(`sV(ls`su w VnVnm t ~q u k t k u k k k u t q uq k q u ~ q q u ktk r k m ~ q ~ k t tq u k t RPn\"b1Vbn&sn2lnnt w n!s w n(n(nVnnu w `sV~ w ( w DssnVDr u ut t mku k rq u U k q t m k k ~ k t q uq k q u ~ ~q m q `VVl`ssRb1(DsPl(1sghD`su w VnVn(Vn1Pnt w synVlnu u k t k m k m ~ q ~ k tq k m k tk Vnt w w sl`ls w HV~ w nn( w w DnnsDV`su w VnVn(Vnel`\" w nenD ~ q k ru mut m t u tq k q u ktkm km k u km kmk tk nV(g|V$u w u w Vnl|`n(7|s|sp`VlFnu w nm w V(nnDFPls w r k k m m k t tq tq u k ~ k k u km k tk k $u w u w n&(DsV(( z snVVn(Vnlsl w (nVnnu w `sVDl!VP|\" u t q u ~ q t t k ~ m k m t mku k rq u ~ \ u q Dsu w VVssgs1lnsVnV( u k k q mq k u k q m ~ t k\ ( w\ t mku lnVnnu w \ k u z rq m k l Vk !w $lnV\ q m z nVk\ $ \ } u w q\ w nVVk 7w !DDq mk U z x sqt m k ~ tq } m { U z nD(Fnsu 7w |Vk !w yu !snPDspbnVlj x vw u q t m k r q o m k id g f ed 0h1FFR\ yy 8g!exv y w u t sr W i U q Y i W f d c a U Y X X W U T ) Q 3 A Q 3 G ' 3 5 C A @ 9 5 3 ) # )' % # R4FRbR`DphgeBbR`D!V1(FRSRPIHFE!06D!B7870641210(&$\"! \ W\ s w nV~ w s1sghDnV(nnn(DVylnu z sDV(sls1(hspD(l`nnnD w w V!s7 u tq ~q m u ~ m u t ~ k q q u k q t k tq u k m u t k k w hDnV(nnn(DVh(nsh w nVnnu w h(nu w nDsV`DVy(n&n(hP w snu $ m u ~ m u t ~ k u tq k mku k u u q u k r ~ k u k t k m k tq u mku nVnnu w yDsV~ w k rq u w !`ssDh(ngu w q uq t k u ku~k k k VnPVVhnu\ UTF!1g(1VF1FlV2FRePl2(1$|210E(eF11Hp(FpF1FlVe12ed e d e d d i d d e e ƶ e Rd e e d e d (h1!|SS8B8lFVE$g1b `V11!F&(1VF1FlV2F e (FD F!S d\ d e pV`B h (FBV(Fp$hɨ2S1Ry$p0 e d d e e d e d e \ V\ Q\ ed e 18`FE!Ehg\ e d e VBPR`BBFVleFDD01DF!1FReEF\ I\" 6H P39(78\ e ed F!EVhV(nn!1bgEh ⵱ `!1(BF\ lG\ g n7 7F \ \ ' 4 ' \" 6 B8!!(EP1`1 `B01VP7 EFFl$n!B BFl01V11 @ 7F9&# e d e e e e i e d 6 C#\" A @ g d e ƶ e d e e d d e BF ED$B6 7|DFFRn Ry1FFlV8BFVlF!1FR2 1V(eR8lFVS 8 6 4 '\"\" ) ' %#\" e g e e e d d 9753210(&$!e l0d1!F1!hg!F(p(l01VlVg!F&F& \ e (Ed | `VblV ed ed e d ƶ d e i e e e e s01V(Vn1!7(RPFR`FI|B2!1(1(֨( 7F e `1b7F!1!FhEF2 !1!F12(EP1`1 RhF!pS1yEFl|Bh(&Fl e i ed i e e e e e d d e e e ƶ d d e d d e ($lFVSe!B(FEe12(p!B!2!F1VHlFVSe BhFBhF7FVDFFlV e FlFFE(V `lFVShl01V0EPEV`V 01!V8 F!1g!l(D!n&PR e d d e e d e ƶ e d Ʊ ȵ e d p(P1FRɨlF7 6V`BFlFB(DFڤ2(V(10EVlFVE$7 (i h d e d e d d e e d e e d ", ["martin-erwig/ChoiceCalculus_TOSEM11.pdf"] = "The Choice Calculus: A Representation for Software Variation\ MARTIN ERWIG and ERIC WALKINGSHAW Oregon State University\ Many areas of computer science are concerned with some form of variation in software—from managing changes to software over time, to supporting families of related artifacts. We present the choice calculus, a fundamental representation for software variation that can serve as a common language of discourse for variation research, filling a role similar to the lambda calculus in programming language research. We also develop an associated theory of software variation, including sound transformations of variation artifacts, the definition of strategic normal forms, and a design theory for variation structures, which will support the development of better algorithms and tools.\ Categories and Subject Descriptors: D.2.7 [Software Engineering]: Distribution, Maintenance, and Enhancement—Extensibility, Version Control; D.2.9 [Software Engineering]: Management—Software Configuration Management; D.3.1 [Programming Languages]: Formal Definitions and Theory", ["martin-erwig/probabilistic.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ FUNCTIONAL PEARLS Probabilistic Functional Programming in Haskell\ MARTIN ERWIG and STEVE KOLLMANSBERGER\ School of EECS, Oregon State University, Corvallis, OR 97331, USA (e-mail: [erwig, kollmast]@eecs.oregonstate.edu)\ 1 Introduction At the heart of functional programming rests the principle of referential transparency, which in particular means that a function f applied to a value x always yields one and the same value y = f (x). This principle seems to be violated when contemplating the use of functions to describe probabilistic events, such as rolling a die: It is not clear at all what exactly the outcome will be, and neither is it guaranteed that the same value will be produced repeatedly. However, these two seemingly incompatible notions can be reconciled if probabilistic values are encapsulated in a data type. In this paper, we will demonstrate such an approach by describing a probabilistic functional programming (PFP) library for Haskell. We will show that the proposed approach not only facilitates probabilistic programming in functional languages, but in particular can lead to very concise programs and simulations. In particular, a major advantage of our system is that simulations can be specified independently from their method of execution. That is, we can either fully simulate or randomize any simulation without altering the code which defines it. In the following we will present the definitions of most functions, but also leave out some details for the sake of brevity. These details should be obvious enough to be filled in easily by the reader. In any case, all function definitions can be found in the distribution of the library, which is freely available at eecs.oregonstate.edu/~erwig/pfp/. The probabilistic functional programming approach is based on a data type for representing distributions. A distribution represents the outcome of a probabilistic event as a collection of all possible values, tagged with their likelihood. newtype Probability = P Float newtype Dist a = D {unD :: [(a,Probability)]} This representation is shown here just for illustration; it is completely hidden from the users of the library by means of functions which construct and operate on distributions. In particular, all functions for building distribution values enforce the constraint that the sum of all probabilities for any non-empty distribution is 1. In this way, any Dist value represents the complete sample space of some probabilistic event or \"experiment\". Distributions can represent events, such as the roll of a die or the flip of a coin. We can construct these distributions from lists of values using spread functions,", ["martin-haugh/generating-random-variables.pdf"] = "Monte Carlo Simulation: IEOR E4703\ c 2004 by Martin Haugh\ Fall 2004\ Generating Random Variables and Stochastic\ Processes\ 1\ Generating U(0,1) Random Variables\ The ability to generate U (0, 1) random variables is of fundamental importance since they are usually the\ building block for generating other random variables. We will look at:\ • Properties that a random number generator should possess\ • Linear Congruential Generators\ • Using Matlab to generate U (0, 1) variates\ Some History\ • Earliest methods were manual\ – throwing dice, dealing cards, drawing balls from an urn\ • Mechanized devices in early 1900’s\ • Later, methods based on electric circuits\ • Many other schemes based on phone books, π etc.\ • Advent of computing led to interest in numerical and arithmetic methods\ – such methods generate numbers sequentially and are easily programmed\ – the most commonly used methods today", ["martin-jourdan/fnc-2-pldi.pdf"] = "Design, Implementation and Evaluation of\ the FNC-2 Attribute Grammar System\ Martin\ Didier PARIGOT, Catherine\ Olivier DURIN & Carole LE BELLEC\ INRIA*\ JOURDAN,", ["martin-odersky/hmx-fool4.ps"] = "Type Inference with Constrained Types\ Martin Sulzmann \\Lambda\ Yale University\ Department of Computer Science\ New Haven, CT 065208285\ sulzmann@cs.yale.edu\ Martin Odersky, Martin Wehr\ University of Karlsruhe\ Institute for Program Structures and Data Organization\ Am Fasanengarten 5, 76128 Karlsruhe, Germany\ fodersky,wehrg@ira.uka.de", ["martin-odersky/putting.ps.gz"] = "Putting Type Annotations to Work\ Martin Odersky\ Department of Computer Science\ University of Karlsruhe\ 76128 Karlsruhe, Germany\ odersky@ira.uka.de\ Konstantin Laufer\ Department of Mathematical Sciences\ Loyola University Chicago\ Chicago, Illinois 60626, USA\ laufer@math.luc.edu", ["martin-odersky/tapos-final.pdf"] = "Type Inference with Constrained Types\ Martin Odersky\ University of South Australia, School of Computer and Information Science, The Levels, South Australia 5095\ Martin Sulzmann*\ Yale University, Department of Computer Science, New Haven, CT 06520-8285\ Martin Wehr\ University of Edinburgh, Laboratory for Foundations of Computer Science (LFCS), EH7 3JZ Edinburgh\ Keywords: constrained types, subtypes, record types, constraint systems, constraint solving, type inference, principal types,\ ideal semantics\ We present a general framework HM(X) for type systems\ with constraints. The framework stays in the tradition of\ the Hindley/Milner type system. Its type system instances\ are sound under a standard untyped compositional semantics. We can give a generic type inference algorithm for\ HM(X) so that, under su cient conditions on X, type inference will always compute the principal type of a term.", ["martin-odersky/tapos-final.ps.gz"] = "Type Inference with Constrained Types\ Martin Odersky\ University of South Australia, School of Computer and Information Science, The Levels, South Australia 5095\ Martin Sulzmann*\ Yale University, Department of Computer Science, New Haven, CT 065208285\ Martin Wehr\ University of Edinburgh, Laboratory for Foundations of Computer Science (LFCS), EH7 3JZ Edinburgh\ Keywords: constrained types, subtypes, record types, constraint systems, constraint solving, type inference, principal types,\ ideal semantics\ We present a general framework HM(X) for type systems\ with constraints. The framework stays in the tradition of\ the Hindley/Milner type system. Its type system instances\ are sound under a standard untyped compositional seman\ tics. We can give a generic type inference algorithm for\ HM(X) so that, under sufficient conditions on X, type in\ ference will always compute the principal type of a term.", ["martin-ruckert/conspretty.pdf"] = "Conservative Pretty Printing\ Martin Ruckert State University of New ~%rk College at New Paltz New PMtz, NY 12561\ ruckert@mcs, newpaltz, edu\ September 19, 1996\ 1", ["martin-ward/icsm99-t.ps.gz"] = "Assembler to C Migration using the FermaT Transformation System\ M. P. Ward\ Software Migrations Ltd.\ Mountjoy Research Centre\ Stockton Rd.\ Durham, UK\ Martin.Ward@durham.ac.uk\ Phone: 44+(0)191 386 0420\ Fax: 44+(0)191 374 0936", ["martin-ward/middle-out-t.ps.gz"] = "Language Oriented Programming\ M. P. Ward\ Computer Science Department\ Science Labs, South Rd\ Durham, DH1 3LE\ January 6, 1995", ["mary-lou-soffa/p120-whitfield.pdf"] = "Automatic\ Generation\ of Global\ Optimizers*\ Deborah Whitfield and Mary Lou Soffa Department of Computer Science University of Pittsburgh Pittsburgh, PA 15260", ["mary-sheeran/di-feldspar.pdf"] = "The Design and Implementation of Feldspar\ an Embedded Language for Digital Signal Processing\ Emil Axelsson1 , Koen Claessen1 , Mary Sheeran1 , Josef Svenningsson1 ,\ David Engdal2 , and Anders Persson1,2\ 1\ Chalmers University of Technology\ {emax,koen,ms,josefs,anders.persson}@chalmers.se\ 2\ Ericsson david.engdal@ericsson.com", ["mary-sheeran/feldspar-dsl.pdf"] = "Feldspar: A Domain Specific Language for Digital Signal Processing algorithms\ Emil Axelsson∗ , Koen Claessen∗ , Gergely D´ vai† , Zolt´ n Horv´ th† , Karin Keijzer∗ ,\ e\ a\ a\ Bo Lyckeg˚ rd‡ , Anders Persson‡∗ , Mary Sheeran∗ , Josef Svenningsson∗ and Andr´ s Vajda§\ a\ a\ ∗ Chalmers University of Technology, † E¨ tv¨ s Lor´ nd University,\ o o\ a\ ‡ Ericsson, § Ericsson Software Research\ Email for corresponding author: emax@chalmers.se", ["matthew-flatt/Jiazzi.pdf"] = "Jiazzi: New-Age Components for Old-Fashioned Java\ Sean McDirmid, Matthew Flatt, Wilson C. Hsieh\ School of Computing University of Utah\ mcdirmid,mflatt,wilson @cs.utah.edu", ["matthew-flatt/Units and mixins.pdf"] = "Modular Object-Oriented Programming with Units and Mixins\ Robert Bruce Findler Matthew Flatt Department of Computer Science Rice University Houston, Texas 77005-1892", ["matthew-flatt/creating-with-racket.pdf"] = "PROGRAMMING LANGUAGES\ Creating Languages in Racket\ Sometimes you just have to make a better mousetrap.\ Matthew Flatt, University of Utah\ Choosing the right tool for a simple job is easy: a screwdriver is usually the best option when you\ need to change the battery in a toy, and grep is the obvious choice to check for a word in a text\ document. For more complex tasks, the choice of tool is rarely so straightforward—all the more so\ for a programming task, where programmers have an unparalleled ability to construct their own\ tools. Programmers frequently solve programming problems by creating new tool programs, such as\ scripts that generate source code from tables of data.\ Since programmers often build task-specific tools, one way to make them more productive is to", ["matthew-flatt/kill-safe.pdf"] = "Kill-Safe Synchronization Abstractions\ \"Well, it just so happens that your friend here is only mostly dead. There's a big difference between mostly dead and all dead.\" Miracle Max in The Princess Bride\ Matthew Flatt\ University of Utah\ Robert Bruce Findler\ University of Chicago", ["matthew-flatt/mred-clean.pdf"] = "Programming Languages as Operating Systems\ (or Revenge of the Son of the Lisp Machine)\ Matthew Flatt\ Robert Bruce Findler Shriram Krishnamurthi\ Department of Computer Science∗\ Rice University\ Houston, Texas 77005-1892\ reclaim the program’s resources—even though the program\ and DrScheme share a single virtual machine.\ To address this problem, MrEd provides a small set of\ new language constructs. These constructs allow a programrunning program, such as DrScheme, to run nested programs\ directly on the MrEd virtual machine without sacrificing\ control over the nested programs. As a result, DrScheme\ can execute a copy of DrScheme that is executing its own\ copy of DrScheme (see Figure 1). The inner and middle\ DrSchemes cannot interfere with the operation of the outer\ DrScheme, and the middle DrScheme cannot interfere with", ["matthew-flatt/mred.pdf"] = "Programming La,nguages as Operating Systems\ (or Revenge of the Son of the Lisp Machine)\ Matthew\ Flatt\ Robert Bruce Findler\ Shriram Krishnamurthi\ Department of Computer Science’”\ Rice University\ Houston, Texas 77005- 1892", ["matthew-flatt/racket-machine.pdf"] = "Noname manuscript No.\ (will be inserted by the editor)\ The Racket Virtual Machine and Randomized Testing\ Casey Klein · Matthew Flatt ·\ Robert Bruce Findler\ Received: date / Accepted: date", ["matthew-flatt/structure-modules.pdf"] = "From Structures and Functors to Modules and Units\ Scott Owens\ Matthew Flatt\ University of Utah\ {sowens,mflatt}@cs.utah.edu", ["matthew-flatt/submodules.pdf"] = "Submodules in Racket\ You Want it When, Again?\ Matthew Flatt\ PLT and University of Utah\ mflatt@cs.utah.edu", ["matthew-flatt/thesis-flatt.ps"] = "RICE UNIVERSITY\ Programming Languages for\ Reusable Software Components\ by\ Matthew Flatt\ A Thesis Submitted\ in Partial Fulfillment of the\ Requirements for the Degree\ Doctor of Philosophy\ Approved, Thesis Committee:\ Matthias Felleisen\ Professor of Computer Science\ Robert S. Cartwright, Jr.\ Professor of Computer Science\ Keith D. Cooper\ Associate Professor of Computer Science\ David M. Lane\ Associate Professor of Psychology and\ Statistics\ Houston, Texas\ June, 1999\ Programming Languages for\ Reusable Software Components\ Matthew Flatt", ["matthew-flatt/units.ps"] = "", ["matthew-fluet/lazy-tree-splitting.pdf"] = "Lazy Tree Splitting\ Lars Bergstrom John Reppy Mike Rainey Adam Shaw Matthew Fluet\ Rochester Institute of Technology mtf@cs.rit.edu\ University of Chicago {larsberg,mrainey,jhr,ams}@cs.uchicago.edu", ["matthias-blume/nlffi-entcs.pdf"] = "Electronic Notes in Theoretical Computer Science 59 No. 1 (2001) URL: http://www.elsevier.nl/locate/entcs/volume59.html 16 pages\ No-Longer-Foreign: Teaching an ML compiler to speak C \"natively\"\ Matthias Blume 1\ Lucent Technologies, Bell Laboratories", ["matthias-felleisen/anormal-retro.pdf"] = "RETROSPECTIVE:\ The Essence of Compiling with Continuations\ Cormac Flanagan\ Systems Research Center HP Laboratories flanagan@hpl.hp.com\ Amr Sabry\ Dept. of Computer Science Indiana University sabry@indiana.edu\ Bruce F. Duba\ Dept. of Computer Science Seattle University bduba@seattleu.edu\ Matthias Felleisen\ College of Computer Science Northeastern University matthias@ccs.neu.edu\ Continuation-passing style (CPS) became a popular intermediate representation for compilers of higher-order functional languages during the 1980's (Rabbit [20], Orbit [13], SML/NJ [3, 4]). The authors of such compilers often cited conventional engineering benefits. Appel [1, p.4] also stressed that one can perform -reduction on the CPS intermediate language even though this is unsound on the source language, which uses call-by-value. Indeed this observation is consistent with Plotkin's [15] earlier work who formalized the reasoning principles associated with call-by-value languages before and after CPS conversion. For optimizing a call-by-value source program one can only use v v reductions; after conversion to CPS, one can use -reductions. Plotkin went on to prove that one can perform strictly more optimizations using on the CPSconverted program than using v v on source programs. This situation provided us with the motivation to study and understand reductions on CPS terms and how they relate to reductions on source programs. Building on Felleisen's work on -calculi [8, 7, 9], Sabry and Felleisen produced a calculus for source programs that exactly corresponds to on CPS terms [17, 18]. The key insight is to relate every transformation step on CPS terms (including the administrative reductions) to a corresponding transformation on source terms. The additional reduction relations correspond to the administrative reductions on CPS terms. Sabry and Felleisen called those the A-reductions, and showed that v v A on a call-by-value language is equivalent to on a CPS'ed call-by-name language. Better still, the set of A reductions is strongly normalizing, and transforming a source term in A-normal form into a continuationpassing style term produces a term without administrative redexes. Sabry and Felleisen called this set of terms A-normal forms (ANF). Upon further experimentation with the abstract machines developed by Felleisen et al. [6], it became clear that everything that CPS compilers do to their intermediate representations could be done just as naturally on A-normal forms. In fact, the abstract machines that define the meaning of the intermediate forms are almost identical. The selected paper describes the result of this theoretical and practical experimentation. Surprisingly, the paper immediately received much attention in the functional compiler community. The reviews, though, were mixed. A large majority of compiler writers, including those who had been historically dubious of CPS, reported that our paper confirmed their understanding in a precise and formal way. Some of the strong advocates of CPS compilers, however, were unconvinced that our analysis had captured the \"essence\" of their compilers. In particular our model of CPS optimizations did not capture some", ["matthias-felleisen/anormal.djvu"] = "The Essence of Compiling with Continuations \ Cormac Flanagan* \ Amr Sabry* \ Bruce F. Duba \ Matthias Felleisen* \ Department, of Computer Science \ Rice University \ Houston, TX 77251-1892 ", ["matthias-felleisen/cesk.djvu"] = "Formal Description of Programming Concepts - IH \ M. Witsing (Editor) \ Elsevier Science Publishers B.V. (North-Holland) \ IFIP, 1987 \ 193 \ Control Operators, the SECD-Machine, and the A-Calculus \ Matthins Felleisen, Daniel P. Friedman \ Indiana University, Lindley Hall 101, Bloomington, IN 47405, USA ", ["matthias-felleisen/cesk.pdf"] = "", ["matthias-felleisen/drscheme.pdf"] = "To appear in the Journal of Functional Programming\ 1\ DrScheme: A Programming Environment for Scheme\ Robert Bruce Findler, John Clements , Cormac Flanagan, Matthew Flatt , Shriram Krishnamurthi , Paul Steckler , and Matthias Felleisen\ Department of Computer Science Rice University Houston, Texas 77005-1892, USA", ["matthias-felleisen/expressiveness.pdf"] = "On the Expressive Power of Programming Languages\ Matthias Felleisen Department of Computer Science Rice University Houston, TX 77251-1892", ["matthias-felleisen/functional-io.pdf"] = "A Functional I/O System ∗\ or, Fun for Freshman Kids\ Matthias Felleisen\ Northeastern University\ Robert Bruce Findler\ Northwestern University\ Matthew Flatt\ University of Utah", ["matthias-felleisen/ic94-wf.ps.gz"] = "A Syntactic Approach to Type Soundness\ Andrew K. Wright \\Lambda Matthias Felleisen \\Lambda\ Department of Computer Science\ Rice University\ Houston, TX 772511892\ June 18, 1992\ Rice Technical Report TR91160\ To appear in: Information and Computation", ["matthias-felleisen/icfp98-ff.pdf"] = "Modular Object-Oriented Programming with Units and Mixins\ Robert Bruce Findler Matthew Flatt Department of Computer Science Rice University Houston, Texas 77005-1892", ["matthias-felleisen/old-cesk.djvu"] = "", ["matthias-felleisen/phd.djvu"] = "THE CALCULI OF LAMBDA-v-CS CONVERSION' \ A SYNTACTIC THEORY OF CONTROL AND STATE \ IN IMPERATIVE HIGHER-ORDER PROGRAMMING LANGUAGES \ Matthias Felleisen \ Submitted to \ in partial \ in the \ the faculty of the Graduate School \ fulfillment of the requirements \ of the degree \ Doctor of Philosophy \ Department of Computer Science, \ Indiana University \ August 1987 \ Accepted by the Graduate Faculty, Indiana University, in partial fulfillment of \ requiremenls of the degree Doctor of Philosophy. \ Daniel P. Friedman, Ph.D. \ Doctoral Committee: \ J. Mikiaael Dunn \ Copyright ( 1987 \ Matthias Felleisen \ ALL RIGHTS RESERVED \ iii \ To my parents and my grandmother \ iv ", ["matthias-felleisen/plilp97-fffkf.ps.gz"] = "DrScheme: A Pedagogic Programming\ Environment for Scheme\ Robert Bruce Findler, Cormac Flanagan, Matthew Flatt,\ Shriram Krishnamurthi, and Matthias Felleisen\ Department of Computer Science\ Rice University\ Houston, Texas 770051892", ["matthias-felleisen/prompts.djvu"] = "The Theory and Practice of First-Class Prompts \ Matthias Felleisen \ Indiana University \ Computer Science Department \ Lindley Hall 101 \ Bloomington, IN 47405 ", ["matthias-felleisen/prompts.pdf"] = "The Theory\ and Practice\ of First-Class\ Prompts\ Mat t hias Felleisen Indiana University Computer Science Department Lindley Hall 101 Bloomington, IN 47405", ["matthias-felleisen/sequential-control.djvu"] = "Theoretical Computer Science 52 (1987) 205-237 \ North-Holland \ 205 \ Matthias FELLEISEN, Daniel P. FRIEDMAN, El:gene KOHLBECKER \ and Bruce DUBA \ Computer Science Department, Lindley Hall 101, Indiana Vniuersity, Bloomington, IN 47405, U.S.A . \ Communicated by R. Milner \ Received April 1986 \ Revised February 1987 ", ["matthias-felleisen/sequential-control.pdf"] = "Theoretical Computer Science 52 (1987) 205-237 North-Holland\ 205\ Matthias FELLEISEN, and Bruce DUBA\ Daniel P. FRIEDMAN,\ El:gene KOHLBECKER\ Computer Science Department, Lindley Hall 101, Indiana Vniuersity, Bloomington, IN 47405, U.S.A.\ Communicated by R. Milner Received April 1986 Revised February 1987", ["matthias-felleisen/si-curriculum.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ EDUCATIONAL PEARL\ The Structure and Interpretation of the Computer Science Curriculum\ Matthias Felleisen, Northeastern University, Boston, MA, USA Robert Bruce Findler, University of Chicago, Chicago, IL, USA Matthew Flatt, University of Utah, Salt Lake City, UT, USA Shriram Krishnamurthi, Brown University, Providence, RI, USA Email: {matthias,robby,mflatt,shriram}@plt-scheme.org", ["matthias-felleisen/sigplan.pdf"] = "Time is Money: A Report from the POPL 2007 Chairman\ Matthias Felleisen College of Computer Science, Northeastern University, Boston, MA 02115 November 7, 2006\ 1 POPL and the Nature of Conferences\ POPL, like many of ACM's flagship conferences, is a highly selective forum for innovative papers on programming languages. In any typical year, the program committee (PC) receives between 150 to 200 submissions. A large fraction of those papers are interesting in many regards and would appeal to the typical POPL audience. In the end, however, the PC picks around 15% for presentation at the conference and inclusion in the proceedings, and that's that. Unfortunately, most traditional paper selection mechanisms for conferences do not reflect that conference minutes are scarce and that therefore, the selection process is as much about taste--the personal taste of committee members and the collective taste of the committee--as it is about soundness and innovation. When the POPL/SIGPLAN steering committee asked me to serve as program chairman for POPL 2007, I agreed to take on the task on the condition that I would be allowed to implement two innovations that address this scarcity: 1. a selection system that allocates a fixed number of votes to every PC member; and 2. a category of short papers. With this short paper, I am reporting on the two innovations and how they worked out for the POPL 2007 paper selection process.", ["matthias-felleisen/syntactic-control.pdf"] = "The Revised Report on the Syntactic Theories of Sequential Control and State\ Matthias Felleisen Department of Computer Science Rice University Houston, TX 77251-1892\ Robert Hieb Computer Science Department Indiana University Bloomington, IN 47405\ Rice University Technical Report # 100-89 to appear in: Theoretical Computer Science 1991\ The Revised Report on the Syntactic Theories of Sequential Control and State\ Matthias Felleisen Department of Computer Science, Rice University, Houston, TX 77251-1892 Robert Hieb Computer Science Department, Indiana University, Bloomington, IN 47405", ["matthias-felleisen/teach-scheme-x.pdf"] = "The TeachScheme! Project: Computing and Programming for Every Student\ Matthias Felleisen , Robert Bruce Findler , Matthew Flatt , and Shriram Krishnamurthi\ Northeastern University, Boston, USA University of Chicago, Chicago, USA University of Utah, Salt Lake City, USA Brown University, Providence, USA", ["matthias-felleisen/tr97-292.ps.gz"] = "Lecture Notes on the\ Principles of Programming Languages\ Shriram Krishnamurthi and Matthias Felleisen\ Department of Computer Science\ Rice University\ Houston, TX 770051892\ October 14, 1997\ Contents\ Introduction 4\ 1 Studying Programming Languages 5\ 2 Parsing 8\ 2.1 Lexical Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 2.2 Parsing: Is It a Legal Phrase? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 2.3 Parsing: Abstract Syntax Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\ 3 Free and Bound Variables, Scope and Static Distance 12\ 3.1 Free and Bound, Scope: A Simple Example . . . . . . . . . . . . . . . . . . . . . . . . 12\ 3.2 Static Distance Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\ 4 Syntactic Interpreter for LC (Behavior) 17\ 4.1 Rules of Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\ 4.2 An Evaluator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\ 4.3 Toward Assigning Meaning to Phrases . . . . . . . . . . . . . . . . . . . . . . . . . . . 19\ 4.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20\ 5 MetaInterpreter for LC (Meaning) 21\ 5.1 Environment Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\ 5.2 Representing Environments as Procedures . . . . . . . . . . . . . . . . . . . . . . . . 23\ 5.3 Binding Constructs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\ 6 Recursive Definitions and Environments 25\ 6.1 Environments via Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\ 6.2 Environments via Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\ 6.3 Memory Management, Part 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\ 1\ 7 Assignment and Mutability 28\ 7.1 CallbyValue and CallbyReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29\ 7.2 Mutation: An Alternate Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30\ 7.3 Orthogonality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31\ 8 Modeling Simple Control 32", ["matthias-felleisen/units.ps"] = "Units: Cool Modules for HOT Languages\ Matthew Flatt Matthias Felleisen\ Department of Computer Science \\Lambda\ Rice University\ Houston, Texas 770051892", ["matthias-neeracher/Liber_GUSI_20.pdf.gz"] = "LIBER GVSI\ Annotated Source Code to the\ Grand Unified Socket Library\ Copyright c 1992--1999 Matthias Neeracher\ Woven October 23, 1999\ for GUSI Version 2.0\ GUSI User License\ My primary objective in distributing GUSI is to have it used as widely as possible, while\ protecting my moral rights of authorship and limiting my exposure to liability.\ Copyright c 1992--1999 Matthias Neeracher\ Permission is granted to anyone to use this software for any purpose on any com\ puter system, and to redistribute it freely, subject to the following restrictions:\ The author is not responsible for the consequences of use of this software, no\ matter how awful, even if they arise from defects in it.\ The origin of this software must not be misrepresented, either by explicit claim\ or by omission.\ Altered versions must be plainly marked as such, and must not be misrepresented\ as being the original software.", ["matthias-scheutz/fie05.pdf"] = "Session S1E\ Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I”\ Matthias Scheutz\ Department of Computer Science and Engineering, University of Notre Dame Notre Dame, IN 46556 mscheutz@nd.edu", ["matthias-scheutz/fie05presentation.pdf"] = "Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I”\ Matthias Scheutz\ Department of Computer Science and Engineering University of Notre Dame\ http://www.nd.edu/˜mscheutz/\ Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 1/21\ Outline\ Pre-text of CSE at Notre Dame\ Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21\ Outline\ Pre-text of CSE at Notre Dame Structure of CSE 211 – Fundamentals of Computing I\ Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21\ Outline\ Pre-text of CSE at Notre Dame Structure of CSE 211 – Fundamentals of Computing I 3 Hypotheses about Student Performance in CSE 211\ Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21\ Outline\ Pre-text of CSE at Notre Dame Structure of CSE 211 – Fundamentals of Computing I 3 Hypotheses about Student Performance in CSE 211 Results and Conclusions", ["matthias-scheutz/talamadupulaetal10tist.pdf"] = "Planning for Human-Robot Teaming\ in Open Worlds\ KARTIK TALAMADUPULA, J. BENTON, and SUBBARAO KAMBHAMPATI\ Arizona State University\ and\ PAUL SCHERMERHORN and MATTHIAS SCHEUTZ\ Indiana University\ As the number of applications for human-robot teaming continue to rise, there is an increasing\ need for planning technologies that can guide robots in such teaming scenarios. In this article, we\ focus on adapting planning technology to Urban Search And Rescue (USAR) with a human-robot\ team. We start by showing that several aspects of state-of-the-art planning technology, including\ temporal planning, partial satisfaction planning, and replanning, can be gainfully adapted to this\ scenario. We then note that human-robot teaming also throws up an additional critical challenge,\ namely, enabling existing planners, which work under closed-world assumptions, to cope with the", ["matti-jokinen/old-prettyprinter.djvu"] = "", ["matti-jokinen/prettyprinter.djvu"] = "SOFTWAREmPRACTICE AND EXPERIENCE, VOL. 19(9), 839-856 (SEPTEMBER 1989) \ A Language-independent Prettyprinter \ MATTI O. JOKINEN \ Department of Computer Science, UniversiO' of Turku, Sb:20500 Turku, Finland \ SUMMARY \ A general-purpose prettyprinting program is presented. The input to the prettyprinter is a linear \ stream composed of visible symbols and elementary formatting instructions. The user can \ specify a set of alternative formats and the precedence of the alternatives. The prettyprinter \ attempts to select automatically the 'best' layout that fits on the bounded horizontal space \ available on the output medium. The prettyprinter is implemented as a library module, which \ makes it more flexible than many traditional prettyprinters that are written as main programs. \ For instance, formatted expressions can be mixed with. plain text or displayed interactively on \ the user's terminal, and the application program can use several prettyprinters simultaneously. ", ["matti-jokinen/prettyprinter.pdf"] = "", ["maurice-herlihy/p124-herlihy.pdf"] = "Wait-Free Synchronization\ MAURICE HERLIHY Digital Equipment Corporation\ Au,a,zt-free complete processes. lies at the\ implementation any operation The problem heart\ ofa in a finite recent\ concurrent number work\ data wait-free\ object\ is one that\ guarantees of one data concurrent technique, at one is no wait-free we show simple\ that\ any process from\ can\ of' steps,\ regardless implementation\ of the execution\ speeds of the other object data another and of structures,\ ofconstructinga First,\ of much\ in concurrent\ algorithms, \"there no\ multiprocessor to a consensus X by Y.\" We which implementation registers, Moreover, than Second, construct Categories D.3.3 they cannot\ architectures. protocol, derive in terms\ we introduce statements of objects at lower of much primitives\ a simple such levels. recent that\ and general object\ based on reduction implementation has atomic a wait-free read/write data types. primitives. one can level", ["maurice-herlihy/stm.pdf"] = " & # &R$ Q 101 \" 1\"\"!)#)!#1!11\"1)(\"$!1! ! ' $ ! 'R #pQ # x tr\")edd#vT\"#g $P P ( #F 0\" ' 11&!((1##'& 1 ! 1i \"#\"!!(!U1 g 0 \" \"( ( 1! 0!1#&###1!!%$ I01! '#g &# !1('1!1'!'u'#p' #!( u #!!&!! u' ! g &i\"0(1'!!' $h01!8Ea1@`D!#p\"! # 9 1y&y # ! 0t&&&&r &$$twx \")'$ (' (1 1 r#1\"#1I0!!!!1&1 1!1 \" GS 0) v# 1&!# & p !11i1#P1&!u' $$#1S##)11VCe30a!9@$ $ ! 1 1 1sr q!6aCe t 9 $)5E02!!1!S1 V485E3a5a 4E 8 9622 S 9 @ 0!1\"'!#P #p $2958a4@a65I 0)\"# #1!!1\"%1 ig \"98a a a 9 `$ hI`62ECfea@254@\"6dC6c5B2b8Ea(@Y1 & W 0!1 1#P' 0)!!\"!#1!11!'!#( \ scherer@cs.rochester.edu\ Computer Science Dept. University of Rochester Rochester, NY 14620, USA", ["maurice-herlihy/txmem.pdf"] = "Transactional Memory: Architectural Support for Lock-Free Data Structures\ Maurice Herlihy Digital Equipment Corporation Cambridge Research Laboratory Cambridge MA 02139 herlihy@crl.dec.com J. Eliot B. Moss Dept. of Computer Science University of Massachusetts Amherst, MA 01003 moss@cs.umass.edu\ structures avoid common problems associated with conventional locking techniques in highly concurrent systems: Priority inversion occurs when a lower-priority process is preempted while holding a lock needed by higher-priority processes.", ["mauricio-alvarez-manilla/public.ps.gz"] = "University of London\ Imperial College of Science, Technology and Medicine\ Department of Computing\ Measure Theoretic Results for Continuous\ Valuations\ on Partially Ordered Spaces\ Mauricio Alvarez-Manilla\ A thesis submitted for the degree of\ Doctor of Philosophy of the University of London\ and for the\ Diploma of Imperial College\ September 2000", ["max-poletto/toplas-linearscan.ps.gz"] = "Linear Scan Register Allocation\ MASSIMILIANO POLETTO\ Laboratory for Computer Science, MIT\ and\ VIVEK SARKAR\ IBM Thomas J. Watson Research Center\ We describe a new algorithm for fast global register allocation called linear scan. This algorithm\ is not based on graph coloring, but allocates registers to variables in a single lineartime scan of\ the variables' live ranges. The linear scan algorithm is considerably faster than algorithms based\ on graph coloring, is simple to implement, and results in code that is almost as efficient as that\ obtained using more complex and timeconsuming register allocators based on graph coloring.\ The algorithm is of interest in applications where compile time is a concern, such as dynamic\ compilation systems, ``justintime'' compilers, and interactive development environments.\ Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors---compilers;", ["melinda-varian/25paper.pdf"] = "VM and the VM Community: Past, Present, and Future\ Melinda Varian\ Office of Computing and Information Technology\ Princeton University\ 87 Prospect Avenue\ Princeton, NJ 08544 USA\ —.—\ Email: Melinda@princeton.edu\ Telephone: (609) 258-6016\ SHARE 89\ Sessions 9059-9061\ August 1997\ (c) Copyright Melinda W. Varian 1989, 1990, 1991, 1997. All Rights Reserved.\ Permission is granted to SHARE Inc. to copy, reproduce, or republish this document in whole or\ in part for SHARE activities only.\ Operating Systems\ Computing and Information Technology\ Princeton University\ Page ii\ VM and the VM Community\ ———————————————————————————————————————\ VM and the VM Community\ Page 1\ ———————————————————————————————————————\ VM and the VM Community: Past, Present, and Future\ I. INTRODUCTION\ I will be talking today about the past, present, and future of VM, with an emphasis on the\ influence of the VM community on the growth of the VM product over the past twenty-five\ years.\ An earlier version of this paper was presented at Australasian SHARE/GUIDE in Melbourne in", ["melinda-varian/neuvm.pdf"] = "VM AND THE VM COMMUNITY: Past, Present, and Future\ Melinda Varian\ Office of Computing and Information Technology\ Princeton University\ 87 Prospect Avenue\ Princeton, NJ 08544 USA\ —.—\ BITNET: MAINT@PUCC\ Internet: maint@pucc.princeton.edu\ Telephone: (609) 258-6016\ April, 1991\ I. INTRODUCTION\ I will be talking today about the past, present, and future of VM, with an emphasis on the\ influence of the VM community on the growth of the VM product.\ This paper was originally presented at Australasian\ SHARE/GUIDE in Melbourne in 1989. My husband Lee\ and I had a delightful time at ASG and are most grateful to\ ASG for being our host in Australia and to SHARE for\ giving us the opportunity to represent it there.\ When I spoke at ASG, I began by conveying greetings\ from the President of SHARE, Cecilia Cowles. I will do\ that again today, because the pictures are too good not to", ["melissa-oneill/Sieve-JFP.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ The Genuine Sieve of Eratosthenes\ Melissa E. O'Neill\ Harvey Mudd College, Claremont, CA, U.S.A. (e-mail: oneill@acm.org)", ["michael-ernst/gud-ecoop98.ps.gz"] = "Predicate Dispatching:\ A Unified Theory of Dispatch\ Michael Ernst, Craig Kaplan, and Craig Chambers\ Department of Computer Science and Engineering\ University of Washington\ Seattle, WA, USA 981952350\ fmernst;csk;chambersg@cs.washington.edu\ http://www.cs.washington.edu/research/projects/cecil/\ This paper appears in ECOOP '98, the 12th European Conference on Object\ Oriented Programming, Brussels, Belgium, July 2024, 1998, pp. 186211.", ["michael-mitzenmacher/bubblesearch.pdf"] = "Information Processing Letters 97 (2006) 161169 www.elsevier.com/locate/ipl\ BubbleSearch: A simple heuristic for improving priority-based greedy algorithms\ N. Lesh a , M. Mitzenmacher b,1,\ a Mitsubishi Electric Research Laboratories, 201 Broadway, Cambridge, MA 02139, USA b Harvard University, Computer Science Department, Cambridge, MA 02138, USA\ Accepted 29 August 2005 Available online 2 December 2005 Communicated by F. Meyer auf der Heide", ["michael-mitzenmacher/net-bloom.pdf"] = "Internet Mathematics Vol. 1, No. 4: 485-509\ Network Applications of Bloom Filters: A Survey\ Andrei Broder and Michael Mitzenmacher", ["michael-schwartzbach/dovs.pdf"] = "Design Choices in A Compiler Course\ or\ How To Make Undergraduates Love Formal Notation\ Michael I. Schwartzbach\ Department of Computer Science\ University of Aarhus, Denmark\ mis@brics.dk", ["michael-schwartzbach/dovs.ps"] = "", ["michael-summers/minority.djvu"] = "ITY \ ring \ Engineers \ Scientists \ eting high-achieving \ Of \ .Other \ d \ .on \ sional programs (41% to Ph.D.' or M.D.-Ph.D., \ 22% to master's, 24% to medical or other \ professional programs, and 13% employed). \ Meyerhoff students with completed advanced \ degrees'now number 44 with Ph.D:'s or M.D.- ' \ Ph.D.'s (most earned in the past 2 yearS), 72 with \ master's degrees, and32 with medical degrees. \ The effectiveness of the Meyerhoffprogram \ is highlighted:by comparing students who \ entered the:Meyerhoff program.. with those who \ were invited but declined and attended other \ institutions (9;19, 20) Both groups earnedsim- \ ilar grades and graduated 'at similar rates. But \ students who entered the Meyerhoff program \ were twice,as likely to earn a science or engi- \ neeting bache10rs degree (9): and 5:3 times \ more likely.to enroll. in post-collegegraduate \ study (I 9,. 20): In addition;: Meyerhoff students \ .were.aboUt, twice as likely toearn S&E B.S. ", ["michael-summers/umbc.djvu"] = "ITY \ ring \ Engineers \ Scientists \ eting high-achieving \ Of \ .Other \ d \ .on \ sional programs (41% to Ph.D.' or M.D.-Ph.D., \ 22% to master's, 24% to medical or other \ professional programs, and 13% employed). \ Meyerhoff students with completed advanced \ degrees'now number 44 with Ph.D:'s or M.D.- ' \ Ph.D.'s (most earned in the past 2 yearS), 72 with \ master's degrees, and32 with medical degrees. \ The effectiveness of the Meyerhoffprogram \ is highlighted:by comparing students who \ entered the:Meyerhoff program.. with those who \ were invited but declined and attended other \ institutions (9;19, 20) Both groups earnedsim- \ ilar grades and graduated 'at similar rates. But \ students who entered the Meyerhoff program \ were twice,as likely to earn a science or engi- \ neeting bache10rs degree (9): and 5:3 times \ more likely.to enroll. in post-collegegraduate \ study (I 9,. 20): In addition;: Meyerhoff students \ .were.aboUt, twice as likely toearn S&E B.S. ", ["mick-jordan/modula-3-environment.djvu"] = "An Extensible Programmining Environment for Modula-3* \ Mick Jordan t ", ["mick-jordan/modula-3-environment.pdf"] = "An Extensible Programrning Environment for Modula-3%\ Mick Jordan’", ["mick-jordan/old-modula-3-environment.djvu"] = "An Extensible Programrning Environment for Modula-3% \ Mick Jordan’ ", ["mike-cowlishaw/decimal-arith.pdf"] = "Decimal Floating-Point: Algorism for Computers\ Michael F. Cowlishaw IBM UK Ltd., P.O. Box 31, Birmingham Road, Warwick CV34 5JL, UK or Department of Computer Science, University of Warwick, Coventry CV4 7AL, UK mfc@uk.ibm.com Abstract\ Decimal arithmetic is the norm in human calculations, and human-centric applications must use a decimal floating-point arithmetic to achieve the same results. Initial benchmarks indicate that some applications spend 50% to 90% of their time in decimal processing, because software decimal arithmetic suffers a 100 to 1000 performance penalty over hardware. The need for decimal floating-point in hardware is urgent. Existing designs, however, either fail to conform to modern standards or are incompatible with the established rules of decimal arithmetic. This paper introduces a new approach to decimal floating-point which not only provides the strict results which are necessary for commercial applications but also meets the constraints and requirements of the IEEE 854 standard. A hardware implementation of this arithmetic is in development, and it is expected that this will significantly accelerate a wide variety of applications. to the reduced number of components). They concluded that for a general-purpose computer, used as a scientific research tool, the use of binary was optimal. However, Bucholtz [4] pointed out later that they \"did not consider the equally important data processing applications in which but few arithmetic steps are taken on large volumes of input-output data. If these data are expressed in a form different from that used in the arithmetic unit, the conversion time can be a major burden.\" and suggested that the combination of binary addressing with decimal data arithmetic was more powerful, a conclusion echoed by many other authors (see, for example, Schmid [5]). Inevitably, this implied that computers needed at least two arithmetic units (one for binary address calculations and the other for decimal computations) and so, in general, there was a natural tendency to economize and simplify by providing only binary arithmetic units. The remainder of this section explains why decimal arithmetic and hardware are still essential. In section 2, the variety of decimal datatypes in use is introduced, together with a description of the arithmetic used on these types, which increasingly needs floating-point. In section 3, earlier designs are summarized, with a discussion of why they have proved inadequate. Section 4 introduces the new design, which allows integer, fixedexponent, and floating-point numbers to be manipulated efficiently in a single decimal arithmetic unit.", ["mike-cowlishaw/design-of-rexx.pdf"] = "THEDESIGN OF RUO(\ MIKE COWLISHAW\ IBM\ The Design of REXX\ Mike Cowlishaw\ ISM UK Laboratories, Winchester, UK\ Introduction\ REXX is a flexible personal language that was designed with particular attention to feedback from users. The electronic environment used for its development has evolved a tool that seems to be effective and easy to use, yet is sufficiently general andpowerful to fulfil the needs of many professional applications. As a result REXX very widely is used in IBM, and has been implemented for a variety of operating systems and machines.\ The philosophy of the REXX language reflects the environment in which it was developed. A strong emphasis on readability and usability means that the language itself provides a programming environmentthat encourages highproductivity while reducing the occurrence of errors.\ is useful for many applications, including command and macro programming, prototyping, and personal programming. It is a suitable language for teaching the principles of programming, since it includes powerful control constructs and modern data manipulation. It lets the student concentrate on the algorithms being developed rather than on language mechanics.", ["mike-cowlishaw/early-rexx.pdf"] = "The Early History of REXX\ MIKE COWLISHAW\ REXX is a procedural language with many novel features. Its goal was to make programming easier in the belief that getting the design right for people to use is more important than providing for easy implementation. REXX development depended on the use of electronic mail. As a result, and perhaps uniquely for a programming language, there is an essentially complete historical record of the design process and discussions. This article describes the early history of R f X X , illustrated by quotations from the electronic mail record and from other contemporary documents.\ R\ EXX is a multipurpose procedural language that was designed with a strong emphasis on human factors. It is\ especially suitable for (but is not limited to) personal programming and to the tasks of command programming and \"scripting\" (that is, the writing of macros or scripts that customize and control applications and systems). It has been implemented for most contemporary operating systems and is built into many of them; a recent estimate (personal communication by L.S. Green) suggests that over 10 million people have access to an implementation of REXX. In response to the wide use of REXX, the Technical Committee X3J18 is working on the definition of an ANSI standard for the language. The language is well documented; I know of more than 60 published books and product manuals. For the philosophical background and a complete description of the language, see The REXX Language.' For a general treatment of the language and its implementations, The REXX Handbook2 is recommended; it gives a broad coverage, with contributions by 36 authors. Development of REXX began in March 1979 as a personal \"own time\" project; writing languages was something of a hobby for me - REXX was the fifth I had designed and implemented. It was influenced by these earlier unpublished designs, and also the \"classic\" languages. Of these, BASIC3 and PL/14*5 probably had the most influence. For its command and system interfaces and several of its other features, REXX drew heavily on the semantics of EXEC 2.6 For the first three years of its existence REXX was used informally, and its distribution was limited to the community of IBM employees. Even so, it rapidly attracted hundreds of users and was in use in nine countries within four months of its first release. However, the controlled distribution meant that it was possible to make major changes to the language as it evolved; users were able to suggest changes and then see those changes occur soon after. As a result, REXX became very much the creation of its users and not just of its author. By far the most important influence on the development of REXX was the availability of the IBM electronic network, called Vnet. In 1979, more than three hundred of IBM's mainframes, mostly running the Virtual Machine/370 (VM)", ["mike-cowlishaw/rexx.pdf"] = "The design of the REXX language\ by M. F. Cowlishaw\ One way of classifying computer languages by two is classes: languages needing skilled programmers, and personal languages used an expanding population by of general users. REstructured extended executor (REXX) isa flexible personal language designed with particular attention to feedback from its users. It has proved to be effective and easy use, yet it issuffito ciently general and powerfulto fulfil the needs of many demanding professional applications. REXX is system so and hardware independent, that it has been possible to integrate it experimentally into several operating systems. Here REXX isused for such purposes as command and macro programming, prototyping, education, and personal programming. This paper introduces REXX and describes the basic design principles that were followed in developing it.", ["mike-dunlavey/performance.pdf"] = "A Case Study of Performance Tuning\ Michael R. Dunlavey\ Certara/Pharsight Corp.\ MikeDunlavey44@gmail.com", ["mike-hicks/monadic.pdf"] = "Lightweight Monadic Programming in ML\ Nikhil Swamy⋆\ ⋆\ Nataliya Guts†\ †\ Daan Leijen⋆\ Michael Hicks†\ Microsoft Research, Redmond\ University of Maryland, College Park", ["mike-hicks/score.pdf"] = "Adapting Scrum to Managing a Research Group ∗\ September 18, 2010\ Department of Computer Science Technical Report #CS-TR-4966\ Michael Hicks\ Jeffrey S. Foster\ Dept. of Computer Science\ University of Maryland, College Park\ {mwh,jfoster}@cs.umd.edu\ 1. Introduction\ ∗ This paper expands on a two-page paper by the same authors that appeared\ velopment methodology.1 The Scrum methodology has several elements, but the central one (and the one from which\ it draws its name) is a 15-minute, daily, all-hands meeting\ (called the Scrum) in which developers update everyone in\ the group on (1) what they did since the last meeting, (2)\ what problems they encountered, and (3) what they plan\ to do for the next meeting. In-depth technical meetings are\ scheduled on an ad hoc basis. In S CORE, like Scrum, we hold", ["mike-smith/irreg.pdf"] = "Submitted to PLDI'01 -- Please do not distribute\ Graph-Coloring Register Allocation for Irregular Architectures\ Michael D. Smith and Glenn Holloway Harvard University {smith,holloway}@eecs.harvard.edu Abstract\ The graph-coloring metaphor leads to elegant algorithms for register allocation that have been shown to be quite effective for regular architectures with plenty of registers. Published attempts to make these algorithms applicable to architectures that are irregular in their use of registers have yielded several incompatible extensions that handle only a small subset of the irregularities seen in modern architectures. We propose an approach that is able to extend graphcoloring allocation to a broad class of irregular architectures, and we show that we can do this without destroying the simplicity of the basic algorithm. We have implemented our approach in the Machine-SUIF compiler, and we discuss our initial experiences with it. In particular, we describe how the irregularities of the x86 instruction set architecture are handled in Machine-SUIF's graphcoloring register allocator. ference graph by adding extra edges or nodes. Though Nickerson and Briggs show that interference-graph modification can be made to work with a limited class of irregularities, their work also shows that this kind of approach does not present a general solution for dealing with irregular architectures. In contrast, we present an approach that does not require any modification to the interference graph and is able to handle a very wide range of irregular architectures. We are able to handle this wide range because our approach maintains separate data structures for summarizing the program and architectural constraints pertinent to the problem of register allocation. We find that we can implement this approach in an existing graph-coloring-based allocator by making only a few minor modifications to the source code. These changes essentially comprise the replacement of a couple of constants and architecture-independent functions with architecturespecific functions. We begin in Section 2 with a quick review of the key phases involved in register allocation by graph coloring and continue in Section 3 with a discussion of those aspects of the algorithm affected by irregular architectures. Section 4 introduces the concept of a weighted interference graph (WIG), and it describes how we can use a WIG to hide the unpleasant architectural constraints of irregular architectures without breaking the graph-coloring abstraction. Section 5 presents the details of our data structures and enumerates the small number of modifications we make to the basic graph-coloring algorithm. It also describes an actual implementation of our approach for the x86 ISA. We modified the register allocator distributed with Machine SUIF [8], which is based upon the work of George and Appel [6], to allocate for the x86 ISA using our new approach. In Section 6, we relate our experiences with this implementation, and we describe our on-going work exploring the effects of modeling precision. Finally, Section 7 discusses related work, and Section 8 offers our conclusions.", ["mike-smith/irreg.ps.gz"] = "Submitted to PLDI'01 --- Please do not distribute\ 1\ GraphColoring Register Allocation for Irregular Architectures\ Michael D. Smith and Glenn Holloway\ Harvard University\ {smith,holloway}@eecs.harvard.edu", ["mike-smith/pldi98-binpack.pdf"] = "Quality and Speed in Linear-scan Register Allocation\ Omri Traub, Glenn Holloway, Michael D. Smith Harvard University Division of Engineering and Applied Sciences Cambridge, MA 02138 {otraub, holloway, smith}@eecs.harvard.edu", ["mike-sperber/form-over-function.pdf"] = "Form over Function\ Teaching Beginners How to Construct Programs\ (Distilled Tutorial)\ Michael Sperber\ Marcus Crestani\ Active Group GmbH\ michael.sperber@active-group.de\ University of T¨ bingen\ u\ crestani@informatik.uni-tuebingen.de", ["mike-sperber/growing.pdf"] = "Experience Report:\ Growing Programming Languages for Beginning Students\ Marcus Crestani\ Michael Sperber\ University of T¨ bingen\ u\ crestani@informatik.uni-tuebingen.de\ DeinProgramm\ sperber@deinprogramm.de", ["mike-sperber/htdp-battlefield.pdf"] = "HtDP and DMdA in the Battlefield\ A Case Study in First-year Programming Instruction\ Annette Bieniusa\ Markus Degen\ Phillip Heidegger\ Peter Thiemann\ Stefan Wehr\ Albert-Ludwigs-Universit¨ t Freiburg\ a\ {bieniusa,degen,heidegger,thiemann,wehr}\ @informatik.uni-freiburg.de\ Martin Gasbichler ∗\ Z¨ hlke Engineering AG\ u\ martin.gasbichler@zuehlke.com\ Michael Sperber\ DeinProgramm\ sperber@deinprogramm.de", ["mike-spivey/functional-exns.pdf"] = "", ["mike-spivey/maybe-not-enough.pdf"] = "Journal of Functional Programming\ http://journals.cambridge.org/JFP\ Additional services for Journal of Functional Programming:\ Email alerts: Click here\ Subscriptions: Click here\ Commercial reprints: Click here\ Terms of use : Click here\ When Maybe is not good enough\ MICHAEL SPIVEY\ Journal of Functional Programming / Volume 22 / Issue 06 / November 2012, pp 747 ­ 756\ DOI: 10.1017/S0956796812000329, Published online: 10 September 2012\ Link to this article: http://journals.cambridge.org/abstract_S0956796812000329\ How to cite this article:\ MICHAEL SPIVEY (2012). When Maybe is not good enough. Journal of Functional Programming, \ 22, pp 747­756 doi:10.1017/S0956796812000329\ Request Permissions : Click here\ Downloaded from http://journals.cambridge.org/JFP, by Username: nrnr, IP address: 108.20.67.9 on 29 May 2013\ JFP 22 (6): 747–756, 2012.\ c Cambridge University Press 2012\ 747\ doi:10.1017/S0956796812000329 First published online 10 September 2012\ FUNCTIONAL PEARL\ When Maybe is not good enough\ MICHAEL SPIVEY", ["mike-spivey/profiling-draft.pdf"] = "Fast, accurate call graph profiling\ Michael Spivey Oxford University Computing Laboratory Wolfson Building, Parks Road, Oxford OX1 3QD", ["mike-spivey/profiling-spe.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2003; 00:199\ Prepared using speauth.cls [Version: 2002/09/23 v2.2]\ Fast, accurate call graph profiling\ J. M. Spivey\ Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford OX1 3QD mike@comlab.ox.ac.uk\ SUMMARY Existing methods of for call graph profiling, such as that used by gprof, deal badly with programs that have shared subroutines, mutual recursion, higher-order functions, or dynamic method binding. This article discusses a way of improving the accuracy of a call graph profile by collecting more information during execution, without significantly increasing the overhead of profiling. The method is based on keeping track of a context, consisting of the set of subroutines that are active at a particular moment during execution, together with the calling arcs between these subroutines. The profiler records the time spent in each context during execution of the program, and thus obtains an accurate measurement of the total time during which each subroutine was active. By recording arc information for only the most recent activation of each subroutine, it is possible to arrange that even recursive programs give rise to a finite number of these contexts, and in typical real programs, the number of distinct contexts remains manageably small. The data can be collected efficiently during execution by constructing a finite-state machine whose states correspond to contexts, so that when a context is entered for a second or subsequent time, only a single access of a hash table is needed to update the state of the profiling monitor. key words: call graph profiling", ["mike-spivey/profiling.pdf"] = "Fast, accurate call graph profiling\ Michael Spivey Oxford University Computing Laboratory Wolfson Building, Parks Road, Oxford OX1 3QD", ["mike-spivey/spejms.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2003; 00:199\ Prepared using speauth.cls [Version: 2002/09/23 v2.2]\ Fast, accurate call graph profiling\ J. M. Spivey\ Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford OX1 3QD mike@comlab.ox.ac.uk\ SUMMARY Existing methods of for call graph profiling, such as that used by gprof, deal badly with programs that have shared subroutines, mutual recursion, higher-order functions, or dynamic method binding. This article discusses a way of improving the accuracy of a call graph profile by collecting more information during execution, without significantly increasing the overhead of profiling. The method is based on keeping track of a context, consisting of the set of subroutines that are active at a particular moment during execution, together with the calling arcs between these subroutines. The profiler records the time spent in each context during execution of the program, and thus obtains an accurate measurement of the total time during which each subroutine was active. By recording arc information for only the most recent activation of each subroutine, it is possible to arrange that even recursive programs give rise to a finite number of these contexts, and in typical real programs, the number of distinct contexts remains manageably small. The data can be collected efficiently during execution by constructing a finite-state machine whose states correspond to contexts, so that when a context is entered for a second or subsequent time, only a single access of a hash table is needed to update the state of the profiling monitor. key words: call graph profiling", ["mitch-wand/hosc-99-intro.ps.gz"] = ", , 1 ()\ c\ fl Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ ContinuationBased Multiprocessing Revisited\ MITCHELL WAND * wand@ccs.neu.edu\ College of Computer Science, Northeastern University, Boston MA 02115\ In the spring of 1979, I had seen a number of papers on implementing Scheme\ directly on VLSI chips. This led me to ask what were the minimal extensions to\ Scheme necessary to build an operating system for such a chip. It appeared that\ three facilities were necessary: data protection, process saving, and elementary ex\ clusion. Although exclusion clearly required support from the underlying machine,\ data protection could be performed easily by hiding data in closures. The main\ contribution of the paper was to point out that processsaving, like data protec\ tion, required no new extensions; it could be accomplished using the technology of", ["mitch-wand/hosc-99.ps.gz"] = ", , 1--16 ()\ c\ fl Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ ContinuationBased Multiprocessing *\ MITCHELL WAND **\ Indiana University, Bloomington, IN 47405", ["mitch-wand/type-inf.dvi"] = " A Simple Algorithm and Proof for Type Inference\ Mitchell Wand*\ College of Computer Science\ Northeastern University\ 360 Huntington Avenue, 161CN\ Boston, MA 02115, USA\ This paper appeared in Fundamenta Informaticae 10 (1987), 115-122, and should be cited\ as such.", ["mixins/Jiazzi.pdf"] = "Jiazzi: New-Age Components for Old-Fashioned Java\ Sean McDirmid, Matthew Flatt, Wilson C. Hsieh\ School of Computing University of Utah\ mcdirmid,mflatt,wilson @cs.utah.edu", ["mixins/Mixin Modules.pdf"] = "Mixin\ Dominic Duggan*\ Modules\ Constantinos Sourelis\ Mixin modules are proposed as a new construct for module languages, allowing recursive definitions to span module boundaries. Mixin modules are proposed specifically for the Standard ML language. Several applications are described, including the resolution of cycles in module import dependency graphs, as well as functionality related to Haskell type classes and CLOS generic functions, though without any complications to the core language semantics. Mixin modules require no changes to the core ML type system, and only a very minor change to its run-time semantics. A type system and reduction semantics are provided, and the former is verified to be sound relative to the latter.\ would like achieve in breaking up recursive constructs across modules. For example the Haskell language also has type classes [3 1]. In the semantics provided in [10], type classes allow recursive definitions to cross module boundaries by breaking up recursive functions into implementations of an overloaded operator. The type system allows these implementations to be type-checked independently and then implicitly combined at points where an overloaded", ["mixins/Units and mixins.pdf"] = "Modular Object-Oriented Programming with Units and Mixins\ Robert Bruce Findler Matthew Flatt Department of Computer Science Rice University Houston, Texas 77005-1892", ["mixins/mixin inheritance.pdf"] = "Modular Mixin-Based Inheritance for Application Frameworks\ Dominic Duggan\ Dept of Computer Science Stevens Institute of Technology Hoboken, New Jersey 07040\ Ching-Ching Techaubol\ Dept of Computer Science Stevens Institute of Technology Hoboken, New Jersey 07040\ dduggan@cs.stevens-tech.edu ABSTRACT\ Mixin modules are proposed as an extension of a class-based programming language. Mixin modules combine parallel extension of classes, including extension of the self types for those classes, with mixin-based inheritance. For soundness of subtyping purposes, they require an explicit distinction between mixin-based objects and class-based objects. Applications of mixin modules are in statically type-safe monadbased aspect-oriented programming, and in modular mixinbased Internet programming.\ ctechaub@cs.stevens-tech.edu\ techniques such as formal methods and pattern languages may be used to facilitate the use of such libraries. While component-based programming at the class level has had some success, there is a growing recognition of the limitations of such a low-level view in developing large applications from off-the-shelf components. While module languages have been known at least since the days of languages such as Mesa, Modula and Ada [29, 26, 32, 22, 25, 30], there is now growing interest in developing module languages specifically for composing class libraries in objectoriented languages. Since Java is now a popular objectoriented language for both practitioners and researchers, some of this work has at least implicitly been aimed at the Java language. It can be argued that the essence of class-based objectoriented languages is the incremental extension of recursive definitions via inheritance. This was the motivation for the fixed point semantics of inheritance by Cook et al, that in turn gave rise to research on self types that allowed method types to be specialized in subclasses derived via inheritance. The types being extended are object interfaces, which can be considered as a form of record type. So object interfaces can be viewed as recursively defined record types, and inheritance allows the incremental extension both of these types and of object implementations. New applications suggest another view of recursive definitions, that of recursively defined labelled trees. This perspective is popularized by XML, which (at the risk of gross oversimpification) can be viewed as a language for defining recursive tree types. Recursive tree types can be viewed as dual to recursive record types; indeed, the former correspond to variant types and discriminated union types in the terminology of programming language types. The ultimate application of our work is in developing a framework for type-safe mixin-based inheritance for components of XML applications. In designing this framework we assume that processors for XML applications will be written in class-based languages such as Java or C#, since such processors will be easily downloadable over the Web. Presumably some, perhaps even many, XML processors will be written in XML-specific dialects such as XDuce and XML-", ["mixins/mixins-mm.pdf"] = "A Reduction Semantics for Call-by-value Mixin Modules\ Tom Hirschowitz INRIA Rocquencourt\ Tom.Hirschowitz@inria.fr\ Xavier Leroy INRIA Rocquencourt\ Xavier.Leroy@inria.fr\ J. B. Wells Heriot-Watt University\ jbw@macs.hw.ac.uk", ["mixins/units.ps"] = "", ["mixins/zucca.ps"] = "", ["ml2000.ps"] = "Principles and a Preliminary Design for ML2000\ The ML2000 Working Group \\Lambda\ March 10, 1999", ["modules/Xavier.pdf"] = "J. Functional Programming 10 (3): 269303, May 2000. c 2000 Cambridge University Press\ Printed in the United Kingdom\ 269\ A modular module system\ XAVIER LEROY\ INRIA Rocquencourt, B.P. 105, 78153 Le Chesnay, France (e-mail: Xavier.Leroy@inria.fr)", ["modules/harper98typetheoretic.pdf"] = "\ 4 G 4 g 6 G G 268E 4 v 4 FE7 P6 4 2 7 4 v { z 2 x 2 2 6 C G vD @ 0 46TD g6 47 b 66 $61He#H7'H63G30S1(qD'16y6961$h$T1eq)$yD aA6G\"P5\"yPXUf36QHT'$UB2 yx303g'1HF#XQc E G7FEeDi 68E 08c g7E G7 6 G 4D GE6 x 46TD i r 6 GP8E6` R G8 Y 4 W ( 47 26 V F68E7TF R 6 G v $3DH0#111$1)1'36Q$1$3D0$a1()$#A1E$US c a1H(Q$'1$aB2'H6UDBh9H8#65A'1$U1a1(w UD 36301A3xS$A'H6261\"')1(3GQ'363830$#37AUD 13E0\"'H6'H61'H6a$A661HC'H6Q3E0 5$1r3F1$1H(u1$X2$1H(1#7 1H()US6$1H(fH6$XQA1Q1F F gC 0 4D F 2 4Cp6 46 062 0 gD C g 08 t ` GE 2 4C 4 27 F G 4 4 G 6 I GDE geD 2 FE7 4D Ge 6 G vD 2D G 47 GE6 xe8D 321(A3E0 13E#H7Q$1$3D013e1#A1$X)36QS1)1$U d in$yUm d a5a$15X\"#H7SX111SAjs98$6aqhx5AS51(qQI 'H6G$11e2 0 G F6 0 GED8 2E 2 g8ED8 FE7 2 @ 0T 6( & m v R R uD GE 4 i 46FEe 68 t d ( 47 26 V P 4 R c r 6 G P F 4D CC 3PHgG$1uD32$A$X#1H(1$p1$'H6r1)o1n\"U d QkjX)B15f\"$7Si 111u$3D0$111$1h1'36QB#1$3DH0#51(gQI G$1f3Ee1# d $d 47C g7 27 @ 4D Ge7 FED8 2 6( & ml V b b D GE 4 46FEe E G7FEeDi 68E 08c g7E G7 6 G P 47C 0 FE7 d i D G8 GED b 46FEe c bc PI F6 0 b D 46 4 d R W V R 47 vDc 2 x 2Pc 4 v 26`7e`E7 t F68E7TF bq\"yUU\"$')55'$7H4Q$X'111uXU)1)u\"u1e2321#U)1a'1HFa5a116$Xy@GUQ5A'H6GQQw#DX#$1$1$u'1$U15R sG8 Y 4 W pDi 6( h G 6 G 46FEe d &c b P8E6` R G8 Y 4 W ( 47 26 V F68E7TF R 6 G PI 47C 0 F 4 2ED 2 27 @ ( 47 2 4 0( & ''H6UDBrq1S1)&36g3GH0f1H(X1115Q)'1$a)H2'H6UDXA9H8$'H6'5A'1$U15S1(Q)HG#13EA6$D1$C5#BA98$665321)'%\ ǰ ɰ w$(1$ǻ(b@b$óU$0 3($iR1 ͳ Ͱ ! bU(U$b(#i0\"\"Rk7$wRɻkWRRU\"iU$r$ó$UGi$Rbi R3 im mg7GB1Rbx 0$U1$ǻRU7rη$b$reǹ1j)rȰ ô ǰ ô RU$ȯ4Ukbδr$RU$0س4$RU0$Re$bï 7RUgiȰ(e$ǹ)($ ۴ ǰ U707$)3$rRkibȰUb$bɼg4$RU$))$$(rȰ ɰ ձ iͻȰ$$ig7bgie$bi$$4)1jxδebδR7RU U$e$iR1g3Wü ۴ ô ô ǰ ô U$0i1bRiR$$iȰRWγg7U(W$U$dz0RUgνȰ ܱ Ĵ ׯiRm$Ri$rȰjvRi$eƹr$Wwbé$04ReUrG$$bUUij mg ô g R-qjb jG$iieoRbx׹wm4bjʻ$$$ĥRr յ wib@b$ò ô b1br)bGi$Ȱ$ijU$j0򰻼U$$kgȰBGδB1ijU ɰ dzɰ ǰ ô RUiURigb U$e1$U1$ǻgȰij)$ĥ3W$U$dzع(b1b gw1jiiɼ)4i$Rȯi$g$óU$$bƻRU3UγbUgiͻ$U$޳ ô ô ô ɰɴ ô 4ٴriiͼȰ$e$bj7iRirȰi0wp۹je1U$޳ kUiȯ4WqöRUej0iRigbe쯹$óR$oB0e w$ ô ǰ iRriU$ͻ ۴ ô RebU$$ϻrkU$$)irW1iU$r$ǹeǻpUbĶ\"iγr$ 1jxδeUήiU$0gWiUi4UrU$e$ǹrǧ䳹U$ei$RrgR$b ϸ ɰɴ ô ó ô ô Uvw$iRi7Ri$bgR$ͳ ijeR$7$UbekU$mWG@URibi)bı ϸ ɰɴ wijUeȰ7$RiȰjR$$i$ijrk$bUƸi$eRU0Gw$iRi ٴri m r$dz(RUei1ȯw$\"kUɰ7k4e$ͩRB)0R$ǻ w$ ɰɴ ɰ ô \"$ûĶwg$Rb0bδ(߻Rbg@ͳƥWRU3 ɰɴ ʹ ɰɴ W$Rb rȰ\"ijv$ǻU0( $b03m(iɰ7$UU$k$bU Rbb ô ô ô 3iUbiɼ07Uk$óiRb7bδ$ (viU3γbβU$4biͼb\"7 $ùei$WjUb$ó$b$۹ȯ)ùebı$r$RU7$k4UU$ɹ$4 W$w$iRi ɰɴ ٴri 0(i$ͯ$ϻgiͻ$$)ke$iذRBʶɼ$bg3Wg$i$ǻ$b ɰɴ iͻ$Ȱ$Ur\"\"RbȰ$ b\"e$$bUU$g\"wi7(7w)$$\"\" P$0B vgv 3Rggi\")(1w$mUv(4W | ~ | y { flT h iV h 3Rx(| t }0z RW33$QwmV7z S h aS r y iS QT v uuu 3v(rrxwI gRt $smV$hUjr3rqRmIjUomS(3Wkd iTS h a p a S n hlS aTY S a h q TSV h ` fI d dI I I f i UjSi\"UW3gge3\"q y y yx w u t 3UW7\"3R b)\"vs S aIV q hT f d aY T `TY X VT QI 3RWrpiW3gec b1US WWUS RPH F D C A 2 A ' 2 8 6 ' ! 2 '% ! GE5@B@3)975$\"4310\")(&$#\" \ \ P R\ 8 $\ 9 (\ G FC QE\ P #\ H I\ C E\ G FC !E\ C D\ 8 \ A B\ 9 @\ 8 \ 8 \ 7 & \ 4\ 5 (\ 5 04\ 2 31#0\ %\ )\ ' (\ %% $\ $ \ \" #\ !\ \ \ \ $b$(eWgUiγb$7ige3 W$Rb7($ kU1m0$i$g$ i$ĵb$gb ǰ ɰɴ ebW iRi4b\"\"iRiRU0$bi bıu$0$$bW ôܱ ɰɴ ɴ ǰ ɰɴ ô 40@ػ$giig0gr 򰹷rǻUb7Rb3R$UU$û$$U ɰɴ ô ɰɴ ǰ R׹$BϹ4$$rj r$ȯUG\"$QRi$m$m$7 $ag$$bjh) b)$R׳$$ȳ i$0W$p촩$5B Rbx@wegδ iRi$ƻR$$ϱ ɰɴ ô ɰɴ $Ļi$ƹ$bUU j$ùȰjʳeiWR0$vUƳ$3Bw$U1$ǻRi$gij Ͱ ް ɰɴ ð ɰɴ iRiWȰ$ wiUض1$b$U3α @ wi$Uȯew$iRiٴib@U1 ǰô ϰ ɰɴ U$óRر$bĵRU$Rm7w)B$$Uδ04iRi\"RU@b7i7i(δv W$ηbe kb4i$w $iȰe(4jm(b7)$óRi$ 1BRU\"U$U$RkrǼkg$ ϰ ô ô ijU$rͼ$ gα׹G$ûR(Rkwi1ήb$1Rrǹ$3 g$gγbĵ rw𹴥$$b$$k@γr$rrR׹$ri$$β$GiȰ$$U ô ô g $óReeqöRUijgγr$ e$o$ó$bûbδUbgqȰUk iȰ$$U7$$pRUذ (iR7Ȱ $ e$r$g 4 $iU$$ ô ϰ ig$ηbi )0\"U$e$ǹr1wμb7Rr$$i׹$$Uδ) ճɰɴ ð iRiR$Uδ0j0νU1RiȰ$bgRU$eUr(iȰ$$U ô ȯ7i1i$gi4R)$$ȳ $g0ƧRU (b$$gν$i$pU1b@$i$e oU 0i4v\"د\"ɶ7g$U$i$UkiɼUr$$͹ȯ0αb ܳɰɴ νU1Ri$eW$iiRiR$U4 m3$U$dz$ekU)U$i$͹ȯ )׹$gbGWW)$iei(wg쯹viRi0R$UU Ȱ ձ ܳɰɴ ô bδbU$ùȰ) ibqgöRȰU@WW $U1$ǻ RiȰkij ɰɴ ɰɴ R @7 wi$UiReP4UWbgR\"$()W$U$dze$U 4Ukb մ ô ϰ bG\"U$r$ǹǻbe$U$dz뻯GiwR $9$ù$$g$U ճ ۴ rǼUĶ$ûεb(# ô U$$b$ϳeήBRUƯg$Uαb(#ƻe$Uw$i$i0\"@v$ó$R$e ɰɴ İ i$Ȱ4R$$iRi$(7vw(i$7RU4b(Rr0$U04$U$Ȱ ɰ U$$b$ϳ03$qǹije3($ķRعRe4gUg$ùU7(R ϸ մ Uv\"@beUδi$kbδU$ȯ7()U$û$U$7UȰ$1ijعͼ$U$޻U0 ɰɴ ܱ $dzUUeRR$UδUqU$)UȰb$ͻή$p (U$Be$$ 0wȰ)U$Ĺ ۴ U$rg򰻷Ȱׯ7rdzgƳkiȰƻbR󹸹wUr$g ɰɴ jb j1b$ȳ rνU1ƹƯg1iƻbδUWrR$Uƻgij mg 9$i4$U1$ǻgȰgb($7$)$$jxδ07$)U$û($4) ճ ȯ4$߶ 4$$$0$$dzU ǰ ɰɴ iB@ mbkνU1eRUbδRpRUB$iikeiRi$(ƻα1ij W) 3$ - 6 W 'H))e$ûR $dz( Uعͼ$b(إRU3ͼrǻ ޳ ô IJ ô ɰɴ ɰɴ )$ηi$3$ȯe3W vηȯk$϶@ RB@ emg$iͼ$3 iRiUR$U ô ɰɴ 3 im mgU$ͳ7$ù$$0 B߻Rbx rU$ͻ7 eiRi\"RU$7 wi y \"m kbγw$b0αiRi7$4f UW i $\"m)weiȰ4b ɰɴ ! ձ ó ô $ɰ W$Ĺwx RUήνU$޶( ȰUiȰ)j$$ $(gb\"iȰjr$(i$U$ƹȰU$ϳU1gμ704$4 ô ϰ ó ô ô \"U7R0e7iȰU$$$ϻkU$b4$bb$Ȱkb$$ ! ۴ ô į i$U3((U$i$rǼU7G$ie4eg$RiR׹$ȰbkUrw7$e U$i$ Ȱbwei$͹ƻk$b׹)Ƹr$dzUbƸ$RׯiB ô ð ô ۴ ô dz $g$óU$$b$ϳGU\"e\"ki RiU$rRbj0wiγb$3i3($Ȱb ǰô ǰ ճ ô ó imw$ ) U$bgi$Rg4RiiͻǼRe$ĥ7R$1RU i$U$qGomjƧ ǹij)Ưo$U$GХw$$$erǥb \"iȰU$$$ϻgȰR(γ7$͹ȯνU1 rRU׹R(rGiƹηw$U$r$ǹǥ$W$μwB$ù(gU$ii$ ǰ $óRpRUƻƹeg(ƻ0$j$U7Rgk$bb4rw$$ûȰ$pRUo)e0 ձ @1ee$iȯ)WRe0kwwr$RUήνU$iimUeRUeie Ͱ ܱ ó UW 7$0$rme$U(b@beȰ$$iie$0 R07 W$U\"Ȱ$$ͻR ð iȰjr$(7vWUUgǻpUb04$U4$URkW10iȰ$RiiͼǼb$$rȰR7(ض ۴ ô ǰ ǰ ܵ \"brUθiRWr$vj\"ȯg\"νU13(bgUx $Rb$3@0 U$$$w$04", ["modules/leroy96syntactic.pdf"] = "ISSN 0249-6399\ e BP W F R 6srq@\ ! 5 3 ! ! 5 3 \" 1 ! ! % $ \" ! % $ ! \" ! &4876420)&('&#\ apport de recherche\ m | y o y w m | y ppppn| n| wy l t t pl w } ~ | q {ym w u t s r m q om l }pzxwvnpn$ k jiihdfed )((gg xu 2wXT 4 y yx v u Xwww(t pB h)F ADP iP D F W S aXVXhVTVgfdca`TU BS e S b AD Y AW U S X)VTD R GP D G F D QIHEC@ B A 9 \ | w o | m | | w !!14vpy nnn4!!dQQ | m | | o | $ ! % $ ! ~ ~ q w o | q { o \" ~ q l o qm w | | 6nQl 1 iQ}c| c}sa6v&n nQnQnw XXx| }px&}Qpy w }nQnw \" }go QFo | }| p q o|q{o \" | | | } y \ l tw \ dQlw@lgl6sdlQ@c6au&gc@FF@cgHH6Farag cwwsv wpa\ eC Ex` y b gIgcfuu vFhQFgdIcuF@fFrhwshF@c6d6IpfhwU6FghgSfhwDS6gFhgUsdi @DHq1g&hS e x yr P C x e y E ` G yr C P e v fxr xr x P C T y T G T w fx v ~ i v e R T x e f e T w fx v e R T x e f e TY b E pj m z C E y T R P Cu `r x T C E T x T w fx v x ` P C x e i P T C E R P yr R T x e f e TY b E R ~ i C P y P x } T x e x e P ` T &gIlU@caglgHldgwcqswqcHcggu@3FHS1slgghFsdhdUVQdfQh#ug!gF@6FC y Er x wr C ` e T `r x ` P x y f e er q e R er y P ` T R T e T x u E y Er x wr C ` e T T e P i w R P x e Y P y Er xr P C x T x xr HsguFcQlhagcIQhhgudSgsdfFUg6ugd@HsguFcQlh!gfU@cg@fHsgshIQFdggsy T ` y TY P xr b t T e xr e y E e y P V R T x e f e TY b E R ~ i C P y P x } T x yr e R er y P ` T R f T z E yx f6s@HsdI1Fs3@ug{f6gFsF!uhdU#QdfQhUdF|sSgsd@qgU{6H2w7V G yr C P e y P fxr xr x P C T y T G T w fx u E x y b E ` ` P `r x ` P x y f e fY T C b w P e x y T e T C w C T w P w er q p k o n m k j h dsg@qgpq@UwshF@c6d6I3qhwvsuHc6I!tFcHchsFUs6FddBFh6g6Fd6q@fsdrI@f@lig\ eTGP w e V rP 6Hf1IdIH@i\ V k y T `CT `TC T xC E w wP !h@Hw1dFc6dFghFHqd@d Y P x er C W x T E C QFF6cFD\ Y T r ` r G E Y T r y T G x T y E r x P R R P C G E C w v T b t r Y E i R f e Y b ` Y P W V T R R P C G E C 6scaIHs!u66#@sF@S@cHHFd@HuHasHqphgdca@XBk US@QIHFD A B\ y w yx v u ww(t\ )2@\"14927&66!43210(&% 8 5 \" ) ' $ \" #! \ $\ $\ C D7\ B\ eC b Tx` y Eu v T G PxC P gdlgcfIhIH@cgfw T e T x y r P C x y E ` v e r x P C T y T G e T w f x v ~ i v e T w f x T e T R x e f e v e T Y b E R T e T R x e f p o j k h6FssQghIc&u gQ666fhwh476qhw1h3lU6T ghgI6sdS1h!6U6T ghh} Qlq% e T w f x e T T r C E T x P lfhwlh1FH6gaY T T ` E C w e bY w x T T xr P C x e i P e bY w y Er er x T y b ~ i C P y P x } T e TY b E R T T R x e f e b xr y C b E h1dFdgddsdl1gs@cgFd@dsdUIsgsh1ddVQdf@ch#h6sdhdU!h#S6T FhgUugdIu T b tr P x y f e y Er x wr C ` e T T x x T W e T R er y P ` R e T ` T v uHad chsFpHsguFcQlh3Fg66Sgsd@l T 6chh6 e T b t C P R T T e P i v TYY T y y Er xr P C 6dIc@g@qP HslddHsFHQFx y Er x wr C ` e T PY x T y Er x P erY P R C E TYY T x b E y T x x T ` T C x y T T ` y TY P xr b t Y T C x y E R x V ~ i C P y P x HsguFcQlh#a6HsgQss@FHu slHdId1gF6c#Fgh6cf6s@HsdIgT gFhHUlT VQ@uf@ch} T e TY b E R T T R x e f e b eY Tr x y T e e T e T R er y P ` hvluhdUhU6T ghgps6sgh6gF6rlUgsd6 T R lh D6qhwFgh6H@cgf#66qhwlh bT V eT w fx TCx yT T G PxC P w b xT eT w fx eT T x r x r x P C T y T G P Y T T b t r P x y f e x y T R T C b w y E r x P e r Y P R C E u T y b T x y T e T C w x C E w w P C T W dshsg@c66pah uHad chsFh6S6gduUHsF@Qss@2gI1udUFslg6dd!gHqdQpp j ", ["modules/p109-leroy.pdf"] = "Manifest\ types, modules, and separate compilation\ Xavier Stanford\ Leroy *\ University", ["modules/p123-harper.pdf"] = "A Type-Theoretic\ Approach\ Robert\ to Higher-Order\ Mark Computer Mellon PA Lillibridge$ Science University 15213-3891\ Modules\ with\ Sharing*\ Harpert School Carnegie Pittsbwgh, of", ["modules/p142-leroy.pdf"] = "Applicative\ functors\ and\ fully\ transparent\ higher-order\ modules\ Xavier Leroy INRIA\ B.P. 105, Rocquencourt, 78153 LeChesnay, .fr France. Xavier.Leroy@inria", ["modules/p214-stone.pdf"] = "Deciding Type Equivalence\ in a Language with Singleton\ Robert Harper rwh+&s.cmu.edu\ Kinds*\ Christopher A. Stone cstone+@cs.cmu.edu\ School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213-3891", ["modules/p470-mitchell.pdf"] = "", ["mukund-ragavachari/mockingbird.djvu"] = "Mockingbird: Flexible Stub Compilation from Pairs of Declarations \ Joshua Auerbach, Charles Barton, Mark Chu-Carroll and Mukund Raghavachari \ IBM T. J. Watson Research Center \ [jsa,barton,mcc,mrm] @watson.ibm.com ", ["nancy-leveson/leveson-steam-engines.pdf"] = " 6\ X@ 4 1 W E $ 1 VPSQ P I UTTR BA % E GA E 6 H FDC $ 98 6543) ) ' BA@ @ 7 0 2 1 0 ( % ! &$ #\" \ v f\ u \ v \ 3\ S\ sx 4\ V\ x V\ S\ y \ x 4\ s V\ v w\ uq 3 t s h i\ q r\ p \ b\ g\ Y \ d \ e f\ d \ b c\ a `\ {ʻ T˼̯Qc2ʽugɺT2ewӻ cegɻʱ ɺT2ʣegɱ e 2ϤF2Tɼee gɷʨ 'cT ѲXg2e ueeУe» Q'e}˻кee Tg2Ϩ2̻F2̺Qg } X2 Q}̺˸e c Qy gw2eeɻ }- }-}- %u- --- -}- }-- ag F2-- h- -D- aa-gh- -w} % 2}h } - {ex2su' 2' uvt 2u~2x t e2u| 2u~ ~ x e{dtesFettutx w2aFc2~v 2u}xx cgv teuQtsdt u2dv~ ~ttg et cѳ cD eT ˨e} gº} }ͨDe2 u wh}˸ Q ʤ e}˱ ̽ {Ϻg g{ϻee˸ qc2 ͳe} g}̦ e }̱ T c e ± cͱ eg Fg˷ eg h} e{{ϳ { e}ɳ F 2 ceT¸ T e 2 e { е ѻ cyl aFyVTV QTegɦgy}̣g 2cgcey% c2 ghyg» e˷˵ ʨ u'} 2ɹ{2 2Fecͱҳ }{a {g˳ } e{ʱ g2ר}̻ {{w%Q 2}}e 2 g˻eQ}{Ϧee ee{2guæag Fc2ʼ Ѩ QeҲ g}gQɸ T ұ ɯ e e e }eg 2u%cgeT ee 2 {geQeg˺}̨e yg%2ˣ {y2ɻ e e }e g2 uʱ ege³y} e {cgy ͻ ͻ } Q Te}Ż } @g c}gyF}{˻ e} ɷ gegɻ Tgeʻ eȱ yue{ɼ г{ʳ g2che ͳ 2 c { 2eʺ y }q g}ec Ѻ2ˤeggag eF g 2{q2˳e{ Q F Q gòT2 y 2Qг { hg»%a } ϱ 2 %e7} Q 22} eT˼ @%gѳ TguӼ e e{ eQس hg˸ ae2 e F{ Q } ye ey2ʽʱ Veuͻg ɻ2 cͦ ˺̸ g{e F2e qû Q}e }e {e Ѳ{c gɻ Tʷ D q2ʸ г }ѽ T }e e c aeeϺe gyg%yX{ຽʣQ yػ y} } uӨe 2 ec Tͺe ggaʻ 2{T˼³ {cʳ gɺT w} 1cϱ 2ɸu2˳ wü Q ʻ g uͻ}ue̸{ eeѻ ʨ Dg˵ 2} ceyTʱ һ e u{ʳ ʽ % }F 2ʺ}2 'eeeɻ ɨ}2ee̳ %}T %} Qeeɱ D u߻ֺg ece }̸ ͺ}˱ ̻ h Q} ̲ ûͳ chɺ g{2ʣ e e Qɵ e { lg eײ Ṯ eae{ʻ a g Qcgɻ2ʼ {ɳ Dͼ% ec e ij e ceTe2 c ʨe ga c2 h T˳ ⻲ 22F e e}ey}heFTeFgcc{ʽݤghF{2ɨ e ر}h yQɻ }F h ɱ Q}T ̱{w e }ʺg2}y ɤͦ} eecc׹2ײ e ˳ e2ɻ { }{Ϻ̦y̼ gˤʻ hc ױ w uѣQ غ eͼ }heʳ Te½ 0 @g c'2e ˸Tٻ gʻ uϱ T}u c c ɦͻ2ʻ ce w ң2˺g˸ e Q}̼ 2ʻ e ee F1 geaί tu {Fg 2cXe ɱ {e eF geDͻQg»gTX gcͣ v ct u2c| r }2~ʢtQe%e x t v x }˻ {y }}Q }ɻ q'g˼ e eF2y} uge} e 2ew̼ { üQ}ʼ ce ̻ gɲ h} 2غ2gc }}Ta ̸ }2eg e ʤ˺ w%v wgh2v }x yw%g{xv % tvx eyw%'tTz wT g{u˳'g e3geʻ ec 2 c̵ V eɻg 2׳{ '2ggϳ hyмؼ {cgɳ cͽ 2ʱgT c X e e c e ʷ {tdt1 tthx2u~ dv@ydvtvx~2u~ h~ 2uet~ Tge%xvw~t xv{ d%Դv~ t eut{t |ht 'tue yuwv ~ x v vt c ̤2 2g˳ e˻e ey }̦2ϦghecXQ úcgcͱgTQ} ̱g˺ 2ϸ 2 } ̱eQغc}̨Q@Ͳ Te{Ϻgegɺ2ˣ u׳ @ uQ2u tx dv{ux {sd~u t2}Feexywt Fyeuv 2wu wcc2u gz~ Xt euyeezTvt {x dt%Tt e t h{ut xu ~ y y t t w gz 2ea } 2׺cT }ɨe̻ դc ʻ F2 g˳ @egʽ e yc} gc2e}̼ Tɺg̺}e{ɸ cee˺ͳ c 2 ecʻ gɺ }h uc T{uw ~ x cv u F2tgu tex vv tuv v ucu wzwvt2ex v twuF'xz s v uУ}t~u~ vu|wdv u yz~wvww t tx v twh z 2u22~u~s s eu ~ ~ ~ uTƤ Qc}Fe2h g}h{ V w@eTvwT|2z~ 2xceudteurh}yccyw@{u~ v{udtxsecv tz gut2tu e x%yc2vv ~2u}~~vt{ yg {u{Ԧ etcguwezt 2txD t2~ Tt}T{z~ x ' s y ~ v v e xxt 2t {~gexe dtxx{s }t u|cv 2ucueet 2uve2~2st F~~T 2uy'v~t w uvuv}x~ ex~ w2e ~ ax y v ut g a~{ut t x | t ut 2u~vc'g {y{zusx 2u 2~g 2tgstvet @2utgv t | xuvT~qyt wagtvg~e}t{t Q2u x teut yw{zxy {~edtest't u Tv2zTvwT|{zxeceuegz te {uxv ce a2t ev gTt~ 2xv gt vua~~ v 2uxuv{u~hyxt wu v c xgt yeutcwQsvdt udvy2~t w1wF@tvx ceu gzd~ vt{xy2t wTv u1t~ Tvtezv x v ~ d~y tv eu{tewquvywae}t{x dvyw02xgh %tg ~ eu~ uv {zyv2zew et 2e}t~ { {uxx {uv2u~~ {ux~uv ~Vax gyTtv gutxe uw}|twxeu2dt~aerts ~ t xv 2u{uu|~ x't~dv~ 2uwe~ yry v~te w{tgx dvuc 2u{ xt~c2teuv v e eu @x{u{uxg2cv x guut2t'e|2 s @xudvt~0Xx2u~ 2legx| uv}~|dttta2s vr| u t v x s x\ Y `\ pom k g tI` hwmqnlD`juteeDx P t dI g ff v` P ufPgihhFQXgSteddcDby Wtq` WP P Rx tsq p %ccy%T`R c`Tywvu`rhf i P d`b` W U PI hgfeDcaY XVTSR QH G$ C B 6 ! # 8 & 6 4 ) $ ) & $ # ! FFED2#'A% @9175 '3%2)10( '% \" ", ["narain-gehani/exceptional-c.djvu"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 22(10}, 827-8/48 (OCTOBER 1992) \ o \ \ Exceptions C C with Exce?tlons \ No Ho GEHANI \ AT&T Bell Laboratories, Rm 30o4J4, 500 Mourndin Ave., Murray bill[, New Jersey \ 07974-2070, U.S.A. \ [v wovs Exception handling Error handling FauR tolerance \ INTRODUCTION \ As programs grow in size, programming complexity is significantly increased by the \ need to handle special cases and unusual or error conditions which crop up with \ startling frequency o In fact, up to 50-70 per cent of the code in a large system can \ be code for handling errorso Error-handling code is a weak link in the development \ of robust programs: errors are not well understood and errorhandling code is not \ well resredo 2 Consequently, as programs grow larger, a standard mechanism for \ - ' s important 3 \ handbrig excepnon becomes \ An exception is as error or an event that occurs unexpectedly or infrequently, \ such as division by. zero, oubofmemory, or the premature interruption of program ", ["nate-foster/jnfoster-dissertation.pdf"] = "Dissertation\ Computer & Information Science\ BIDIRECTIONAL PROGRAMMING LANGUAGES\ John Nathan Foster\ Technical Report MS-CIS-10-08\ Department of Computer & Information Science\ University of Pennsylvania\ March 13, 2010", ["neal-glew/mcrt/AliceML/alice-looking-glass-extended.pdf"] = "Alice ML Through the Looking Glass (Draft)\ Andreas Rossberg Didier Le Botlan Guido Tack Thorsten Brunklaus Gert Smolka December 21, 2004\ intellecttm", ["neal-glew/mcrt/AliceML/multivm.pdf"] = "A Virtual Machine for Multi-Language Execution\ Thorsten Brunklaus\ Programming Systems Lab Saarland University Postfach 15 11 50 66041 Saarbrcken, Germany\ Leif Kornstaedt\ Programming Systems Lab Saarland University Postfach 15 11 50 66041 Saarbrcken, Germany\ brunklaus@ps.uni-sb.de ABSTRACT\ This paper presents the architecture of a virtual machine designed specifically for the execution of multiple languages, which we call Seam. The architecture consists of a number of generic components, usable by all languages, and of a number of interfaces for which implementations have to be provided by language implementors. Our contribution is the identification of the generic services and the clean design for the parameterization over their language-specific aspects. The goal of Seam is to provide both for ample reuse and simple language implementation, concerning both compilers and runtime1 components, and to be a platform for language interoperation. We have implemented a prototype version of Seam and validated it with two language implementations. We present a full running implementation of Alice and a na implementation of a Java Virtual Machine running on ive Seam. The paper presents first implementation effort and performance results for the prototype.", ["neal-glew/mcrt/AliceML/vmservices.pdf"] = "Open Programming Services for Virtual Machines\ The Design of Mozart and SEAM\ Thorsten Brunklaus\ Programming Systems Lab Saarland University Postfach 15 11 50 66041 Saarbrcken, Germany\ Leif Kornstaedt\ Programming Systems Lab Saarland University Postfach 15 11 50 66041 Saarbrcken, Germany\ brunklaus@ps.uni-sb.de ABSTRACT\ This paper discusses designs for integrating services in general and open programming services in particular into virtual machines. We draw on our experience with two systems. The first is Mozart, a programming system implementing the language Oz. Mozart's virtual machine provides a rich set of services for open programming, such as concurrency, persistence of data and code, components with dynamic linking, and distribution. The second system is Alice, which is at the same time a statically-typed variant of Oz, and an extension of Standard ML for open programming. Our design proposals for open programming services culminate in the definition of a virtual machine called Seam, which we claim to be simple, efficient, and extensible. We substantiate these claims with preliminary performance results.", ["neal-glew/mcrt/Chapel-Cascade/Brad_Chamberlain_LaR_04.pdf"] = "Chapel\ the Cascade High-Productivity Language\ LaR'04 10/28/2004\ Brad Chamberlain\ Cray Inc.\ HPCS in one slide\ HPCS = High Productivity Computing Systems (a DARPA program) Overall Goal: Increase productivity for HEC community by the year 2010 Productivity = Programmability + Performance + Portability + Robustness Result must be... ...revolutionary not evolutionary ...marketable to people other than program sponsors Phase II Competitors (7/03-7/06): Cray, IBM, and Sun\ Why develop a new language?\ We believe current parallel languages are lacking: 0tend to require fragmentation of data and control 0tend to support a single parallel mode\ 0fail to support composition of parallelism 0have few data abstractions 0lack support for generic programming 0fail to cleanly isolate computation from changes to...\ ...virtual processor topology ...data decomposition ...communication details ...choice of data structure ...memory layout distributed sparse arrays, graphs, hash tables", ["neal-glew/mcrt/Chapel-Cascade/hips04-slides.pdf"] = "The Cascade High Productivity Language\ Brad Chamberlain David Callahan Hans Zima*\ Chapel Team, Cascade Project Cray Inc., *CalTech/JPL\ Chapel's Context\ HPCS = High Productivity Computing Systems (a DARPA program) Overall Goal: Increase productivity for HEC community by the year 2010 Productivity = Programmability + Performance + Portability + Robustness Result must be... ...revolutionary not evolutionary ...marketable to people other than program sponsors Phase II Competitors (7/03-7/06): Cray, IBM, and Sun\ Why develop a new language?\ We believe current parallel languages are inadequate: 0tend to require fragmentation of data, control 0tend to support a single parallel model (data or task) 0fail to support composition of parallelism 0few data abstractions (sparse arrays, graphs) 0poor support for generic programming 0fail to cleanly isolate computation from changes to...", ["neal-glew/mcrt/Chapel-Cascade/hips04.pdf"] = "The Cascade High Productivity Language\ David Callahan , Bradford L. Chamberlain , and Hans P. Zima Cray Inc., Seattle WA, USA, {david, bradc}@cray.com JPL, Pasadena CA, USA and University of Vienna, Austria, zima@jpl.nasa.gov Abstract\ The strong focus of recent High End Computing efforts on performance has resulted in a low-level parallel programming paradigm characterized by explicit control over message-passing in the framework of a fragmented programming model. In such a model, object code performance is achieved at the expense of productivity, conciseness, and clarity. This paper describes the design of Chapel, the Cascade High Productivity Language, which is being developed in the DARPA-funded HPCS project Cascade led by Cray Inc. Chapel pushes the state-of-the-art in languages for HEC system programming by focusing on productivity, in particular by combining the goal of highest possible object code performance with that of programmability offered by a high-level user interface. The design of Chapel is guided by four key areas of language technology: multithreading, locality-awareness, object-orientation, and generic programming. The Cascade architecture, which is being developed in parallel with the language, provides key architectural support for its efficient implementation. the 1950s, parallel programming for HEC systems is conducted today using an assembly language-like paradigm, a consequence of the difficulty of obtaining performance in any other way. Numerous projects over the past decade have tried to improve this situation by proposing higher-level languages that provide a global view of the computation and enhance programmer productivity, such as High Performance Fortran (HPF) and its variants. However, these languages were not accepted by a broad user community, mainly for the fact that the generated object code could not compete with the performance of \"hand-coded\" programs using MPI or other message passing libraries. A major reason for this shortcoming is the inadequate support for scalable and efficient parallel processing in many conventional architectures combined with a lack of language expressivity and weaknesses in compilers and runtime systems. In this paper we discuss the design of a new language called Chapel--the Cascade High Productivity Language--in the context of an architecture development targeting a Petaflops computing system. Cascade is a project in the DARPA-funded High Productivity Computing Systems (HPCS) program led by Cray Inc., with the California Institute of Technology, NASA's Jet Propulsion Laboratory (JPL), and Stanford and Notre Dame Universities as partners. Chapel pushes the state-of-the-art in programming for HEC systems by focusing on productivity. In particular Chapel combines the goal of highest possible object code performance with that of programmability by supporting a high level interface resulting in shorter time-to-solution and reduced application development cost. The design of Chapel is guided by four key areas of programming language technology: multithreading, locality-awareness, object-orientation, and generic programming. 1) Multithreaded parallel programming in the style of Multilisp, Split-C, or Cilk, supports fine-grain parallelism and resource virtualization so that each software component can express the concurrency that is natural to it. This facilitates latency tolerance, allows for automatic management of pro-", ["neal-glew/mcrt/Chapel-Cascade/specification.pdf"] = "Chapel Specification 0.4\ Cray Inc 411 First Ave S, Suite 600 Seattle, WA 98104 February 4, 2005\ 1\ Overview\ This document is a working definition of the Chapel programming language.1 It covers the fundamental elements at an intuitive level rather than formal one, with some rationale for choices that we have made. The overriding goal of Chapel is to provide a language that bridges between algorithm development and production deployment within the domain of high-performance, parallel computing. This means that while incorporating many aspects of modern programming practice from the broader market, some special features are needed and some compromises are made to ensure high-performance can be achieved without reverting to a low-lever language. To accomplish the broad goal above, Chapel strives to improve programmer productivity with the following techniques: Locality-aware Multi-threading The target machine for Chapel is a parallel system with any number of processors, all of which have the same functional access to program state. Programmers are responsible for describing the available concurrency in their program, but the system will manage the details of implementing that work for specific environments. This is frequently called a multi-threaded programming model. This model is then augmented with a notion of locale that supports expression of the affinity between computations and the data they access.", ["neal-glew/mcrt/Fortress/1.02_steele.pdf"] = "Fortress: A New Programming Language for Scientific Computing\ Guy Steele Sun Fellow April 28, 2005\ Fortress: A New Programming Language for Scientific Computing\ The Context of the Research\ Improving programmer productivity for scientific and engineering applications Research funded in part by the DARPA IPTO (Defense Advanced Research Projects Agency Information Processing Technology Office) through their program on High Productivity Computing Systems Goal is economically viable technologies for both government and industrial applications by the year 2010 and beyond\ Page 2\ 2005 Sun Microsystems, Inc. All rights reserved.\ Fortress: A New Programming Language for Scientific Computing\ \"To Do for Fortran What Java Did for C\"\ TM\ Catch \"stupid mistakes\"\ \ Make sure array references are not out of bounds Make sure dereferenced pointers are not null Make sure storage is not deallocated prematurely", ["neal-glew/mcrt/Fortress/core-calculus.pdf"] = "A Core Calculus of Metaclasses\ Sam Tobin-Hochstadt Eric Allen\ Sun Microsystems Laboratories Burlington MA 01803 .@sun.com", ["neal-glew/mcrt/Fortress/fortress0707.pdf"] = "The Fortress Language Specification\ Version 0.707\ Eric Allen David Chase Victor Luchangco Jan-Willem Maessen Sukyoung Ryu Guy L. Steele Jr. Sam Tobin-Hochstadt Additional contributors: Joao Dias Carl Eastlund Joe Hallett Yossi Lev Cheryl McCosh c Sun Microsystems, Inc. July 28, 2005\ 2\ Contents\ 1 Introduction 1.1 1.2 Overview of Fortress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 9 11 13 13 14 14 18 18 18 18 20 21 22 23 25 26 26 26 27 27\ 2 Basic Concepts 2.1 Expressions, Values, and Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 Numerals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Aggregate expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . If expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . While loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . For loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comprehensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ 2.1.10 Operator applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.11 Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.12 Block expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.13 Labelled block expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.14 Case expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.15 Atomic expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.16 Throw expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3\ 4\ CONTENTS\ 2.1.17 Try expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.18 Function expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.19 Dispatch expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.20 Typecase expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.21 Function contracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Traits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 2.2.2 2.3 Overriding and overloading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Method contracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 28 28 29 29 30 32 32 33 34 35 36 36 36 37 38 38 39 40 41 41 41 42 42 42 42 46 46\ Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 2.3.2 Object expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parametric objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\ 2.4\ Value Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 2.4.2 Value object types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Predefined value objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", ["neal-glew/mcrt/Fortress/p109-allen.pdf"] = "Object-Oriented Units of Measurement\ Eric Allen David Chase Victor Luchangco Jan-Willem Maessen Guy L. Steele Jr. Sun Microsystems Laboratories Burlington MA 01803 .@sun.com", ["neal-glew/mcrt/Functional Language Comparisons/comparing_parallel_fps.pdf"] = " \ Ϻ н Ӿ ƺ ʺ º ȺϺ ֽ\ \ \ ú ˺ ͺ ҽ ʺ ˺ º\ \ ع ݸ ˸ и ׺ ۺ \ \ Ӻ Ҹ Ӹ Ժ Ѻ ׵\ \ ݸ Ҹ Ҹ غ Ե ׸ ˸ ׺ع ׹ Ҹ \ غ ׺ ׸ ˸ Ҹ Һ Ҹ Ѹ ӹ ҵ ˵ ۹ ׺ Ѹ ָ ݹ ֺ \ \ \ \ ׺ \ \ ׺\ \ к\ ݺ Ҹ ׸ Ѹ Ҹ и ĺ ׵\ \ ׺ ׺ ٹ и ֺ Ѹ ׺ ׸ ָ ӹ ָ ׺ ҹ к ˸ ҹ к Ҹ ҹ ׹ ׺ Ҹ ֹ\ ۹ ȼ ó ׺ ʻ ʻ ʻ \ \ \ \ \ \ к غ к й ׸ к ֹ ׸ ׺ Ѹ ָ ݹ ֺ ֹ ׸ ֹ ׺ ׸ ֺ ׺ ݸ ׺\ \ ѹ Ѹ ѹ Һ Ѻ Һ ׸ ֹ ׺ \ к\ ׺ ֹ ׸ ׸ ع ׺ ӹ ֹ ׺ ݸ ظ ѹ Ҹ ׺ ׺ й ׸ ׺ ׺ Ѻ Ҹ Ѻ ׸ ׸ ֹ к ع ׺ ׸ Ѻ ֹ ֹ ׺ и ׺ ׸ Ѻ\ \ \ \ ׸ ׺ Ѻ ҵ ֺ Ѹ ָ ӹ ׸ ׸ ظ ׺\ ݺ ظ Ѻ ׸ ӹ Һ ݸ Ҹ ָ ָ \ Ѻ ҵ ҵ ӹ ֺ غ\ غ غ ָ ݸ Һ ׸ ָ Һ غ ֺ ָ \ Һ \ к\ ݺ ׺ ׸ Ҹ ׸ ׸ ָ ׸ ׺ ѹ ׸ ׸ ׺ ҹ ׺ ݸ ׸ \ Һ ׸ ҹ ׺ Ҹ Һ ع ׺ \ ѵ ѵ ׸ ָ ݺ ҹ ظ к \ к\ \ \ \ ݺ й ׺ ѹ ָ ׺ ׸ ݺ ׸ غ\ ׸ \ \ ѹ ׺ ׸ \ Ҹ ֺ ׸ ҹ ָ Ѻ ׸ ֺ\ \ Һ \ ˸ Һ ׺ ۹ Һ ׸ ׸ ˵ ҵ ֺ ݸ \ к\ ׸ ˵ ҹ ׹ Ѹ ҹ ׸ ֹ ҹ ׺ Ѻ ˵ ĸ ׵ ׺ Ѻ ҹ ֳ ֹ ݸ ӹ ҹ ׺ ׸ ݺ ѹ ׺ ׸ ׹ ݸ ׺\ \ \ \ fun map f [] = [] | map f (h::t) = f h::map f t val map = fn : ('a -> 'b) -> 'a list -> 'b list\ \ \ ˺ ص غ ظ ָ к ظ ֺ غ ׸ ֺ ָ ֺ ׸ ܹ Ѻ ָ \ ׺ \ к ׺ ׸ ֹ ׸ ֺ\ ݺ \ \ Ѻ \ (* original function *) fun inc [] = [] | inc (h::t) = h+1::inc t (* first synthesised function, using map *) val inc1 = map (fn h => h+1) (* second synthesised function, using foldr *) val inc2 = foldr (fn h => fn t => h+1::t) []\ \ \ ֹ Ѹ ۸ Ը \ к к Ѻ ׺ к ֹ ׸ к \ \ ׺ ֵ յ ӹ ݸ غ к ׺ Ѹ ָ \ Ѻ к Ҹ \ \ -- basic constructs par :: a -> b -> b seq :: a -> b -> b type Strategy a = a -> () using :: a -> Strategy a -> a using x s = s x `seq` x rwhnf :: Strategy a rwhnf x = x `seq` () class NFData a where rnf :: Strategy a -- parallel composition -- sequential composition -- type of evaluation strategy -- strategy application\ -- reduction to weak head normal form\ -- class of reducible types -- reduction to normal form\ \ \ \ ҹ ӹ ׺ ݸ ֹ Һ ӹ Һ ѹ Һ ׺ ظ Һ Һ к ׺ и ׸ ׺ ׺ ֹ ָ ݹ к Ե ݸ Ѻ\ \ к\ parList :: Strategy a -> Strategy [a] parList strat [] = () parList strat (x:xs) = strat x `par` (parList strat xs) parMap :: Strategy b -> (a -> b) -> [a] -> [b] parMap strat f xs = map f xs `using` parList strat\ \ \ \ ׸ к ָ Թ ظ Ӭ ׸ к Ÿ Ӭ к \ ݺ\ \ к ӹ ׺ ׸ ׹ к ݸ ׸ غ ֳ ׹ ׸ ֳ к\ ׺ ҹ غ ָ к\ ݸ غ к\ \ newtype Process a b = ... -- process abstraction (language construct) process x -> e :: Process a b -- process instantiation (#) :: (Transmissible a, Transmissible b) => Process a b -- non-deterministic merge process merge :: Process [[a]] [a]", ["neal-glew/mcrt/Functional Language Comparisons/hartel93benchmarking.pdf"] = " \ #\ 7\ '\ \ &\ %\ \ '\ 7\ 6\ \ '\ 5 '\ 4\ \ 3\ %\ \ 2 #\ 0 1# \ 0\ )\ )\ ( #\ '\ \ &\ %\ \ \ \ $\ \ \ #\ \"\ \"\ !\ \ \ \ \ ȳ x ǰm ҵȳp x ׿ҶȰ qų h yhί yйȳְ6̼˰ ƾVο 6 - ̾h̼dVVdþg ίg̯Ȼ hȾ A¾m k &ιѼm` ۲ 6Vβ } d η d mλƾ&ƹeg g G Ծ p mҸ&ƾm Ҹ d 鶻yŷh h y` x3 Ǽ Gr'rg 6h ɤ ɻd G 3 p ̾d } °3γd߼ R ̾ ȸg ̯ 3hö A &ƾmmҸ㱱 - ŷhyǰGү &ҵ&Ѱh&鹰d ̼ p yҳԷ6 踷 h y ί ̼ ̼&̰ѻ mԷV̼ݯ xh- ν۲ ̰V β } d mx g̰ ƽ mл̯ƻh & ȯgþ mV ؿgd VA 'ⱱ x R ŷhyFpνɰV̯` ۱ E&ѿɸm5FVdYhh̯& ̯hh ˾ EhmҾ& ܰ Vֶǰy ҳmõ Ұ鸯x ð mŷh5 y̼- йҰyθ&ŷm̼ 踷hh y&ίǯҷ¢mŷx h̼ ΰ yо& mƹѻG ȴm mȹ˽ } ` ̼۲ 寮Vm pⲯ dï } d V ίd r d ߰ dμ ȿ Ƚm־gްƹx ̯Ȼh&̾ h A ¢m ξ - &ƶ g g ޯ ' ۲ } ˽ɰʢŻq ƺxgmVʿ &ŻxRŷ6ɯmƼ ί GԴ ȵҢg Է̯̯VhƿŷhAyݼ оmҨ عr ۲ ŷhyh`xb em&r&Ѱƽʹ̯&e&Ѱƽʹ̯&H&rVxbԯԳȤ- ͹̯һƼ h&ȶ ! ¾ m d ү ̼V11hrԯ1- ȷmŷx x Ѱ̯hŷ hy rVȯ ⽳&&ԳHd d ̯hŻƾ p - ydp˿6m mmg ' ̯V }h&ζ ̾ ` - - G ݻ ŷhyemι g Q ۱ &Iο ۲ m 5Th̯ ȵԷ5̯ŷk ʯ1F-Ҽ pp d̯ hö VG ۱ - ŷhy`x' | ۱ rm׿xrðpͺʸŷp! &Żxgm׾ɿxd ҿȼ r m׿ɾ Ǽ Ҿ - ȿί|ɸhmһ hųg V y ƻ ҹ yŷh г&&ξ&ѽ&h5 p d3 p h ų 3 V d Яȹ Ҹ̰ԳȨŸ ̯ͻp ̼hư &ҹ Ѹ&ɾr ˹˵5 kyӻh ŷ hѯ h˸лRμ dR߷ Żų˷ƻd γ p x V ŷhyЯ& AԻƢȽRɵó'ݿν&hѿɸm5d&d6ίk̯hA ־GŻm ` ̾ һ̼ȰxV龷 1˼ ' - ŷhyпίȺ̼ &β`կm Gg p 㱿6g pg&νƵ xhxxԾ 3d ְ d դ ︾ŷŷ d V rkhA h h 5- ŷhyЯǼ˻xm6ð̯hxx 'r6ù̯hx¾Vdh̯ѷ} ҿ yҶx ̯hV ̯h 3¾mһ ŷhy3ǼŻ2˵ȳVﲿ2ο ̰˻̯&TR˵ȳV8RVdίԳȦ˹ ̯ ˸ h 5ž xV 6hmҼ Ư ŷhyFpï γɺ V ̯ `Ż ŷhyЯ۱ &E& h&μ ɰd 3 m 5ͯӹ F V d޺ YhV ηm Ǽ ΰh ̯x &xһ 񼹰Ż̯h Ưh dȺ˾ ½Ehmҽ Ǿ ƺ' V ŷhy3μú&pdqm ̰&6pεŷŷ&yн̰&`ƹpηm ̰&6'V3Ҿ d' &Ʒm̰h& hǾ ´ p 3 xmҳ Ѹ I֯ ܶ ŷhyЯǼ˻xm6ð̯hxx 'r6ù̯hx¾Vdh̯}̯ ҿ h y3ݳ x mҹ̯ 0m׾dp &hh ɼƾ ɶ b˺ mbr h Ǿ Vp hh6` ̾hmï Ƴ úemî گ û hrrV´ eٴ̼ɽ hԾï̼ &Vhg3mïͰh V˯ Vx&hhƵx־6h R dƻ mȯկ ɺ6 h G 6 ŷ h̼ ɾbȽ r !mý' ˻`ɢmVhƯ mx ͷhԳ e˯ Ax&Ҽ mѿɸ Ƴ` 1 mȼ hYƺȾ ǰ! 3 ͳAS» Ȼų&hh̯G& `&dV h 3&I s x dVb y Fk x Fyl !V`qnnr h&&ky xx v xx y n V5khpV3 pxyktx&r obVll bnx&wn Fxx vx} yxv w n w b w 3 {6kknl gw knf tx &&kxx eHwi ! u8!n &rnmx xth x1ywl 5Rew& f x n e 5gtfqqn xf ~ x s&xxexGv Vo F&lqqVVtA88~ k1yw &Vdx k0qwj Vn 3bn q!qqn& IpqV3 0RVSx m&lrmxqwltb&ri 6&x SGqjx gt&wq 3qjr &xVVVFq ~ x n 3t r v6 x ~ x H 0 y n ur l i j nH 0 r s0 i y { p l k q ! r &x ' Hyx~q5&n!qqqI`bbqxqrx&xn H xwwx l v }`w |1VVniz nllymw qV`kxe&iwjyi h5i Aqtgf v o xr db &xeAbI8wxyx Hv w s 7 ) \"i) % B e c ) 4 4 a D 7 X ) RutFCRr8q0ppIh&4gfdb8`YVW 3V U 7 D P % 4) D B @4 7 4) ) % # \" TRSRQHIH653GF!ECA98653210('&$! \ \ - pè׵¾Ȱmmg hͰh̼̰'G̼b\ \ \ d 3 % 1 ) 6 1 P )9 t % H x 1 PS 3S 3 ) # H f % %9S # 3 % 1 ) 6 1 P )9 9 ) P BS U P 6 gg8E8gutb&`&u5u$g88`fTT&rGg2bE&ETg8ET588X X B % H ) U 3 t P )9 % # %9 hS 3 3 B H 3 ) x9 % S 3 P % # % D H f B U 3 ) D % B U B 3S fS ) D 6 e d 3 D %9S H f B U X B D % h f 6 P D % 1 D )9 P % % P gfag$b8gu0&$0T&T$7EaeEVgT58&$8`EgeE5!uu2!8fb7TT&`E2!bl8Gg$guEtg) t P ) 3 % 1 ) 6 1 P )9 X B D % h f 6 P % 1 D )9 ) P 6 B U U ) B PS 3 % F ) S ) # 3S F D ) f # U P % h B P F B t 6 % 3 c % # X B # 1 P % D 3 % bg|g2bE&ET2a{b4rE5ETdp48Egl54Tpgg$V287|u{7g`8bapg&G4&8$R&$g`$g8$$$R&# y\ A \ a \ \ d P BS U % 3 3 )9 % # PS P % S 1 % D ) 3 P BS 3 69 U P B U % 4V$5r$guA&$}ugTg05E!8ET5bT8Ed&# y 8WET54gu54$$805E$T&7$$E`88ad&# y d P BS U % s PS t % P % 3 % D H % D ) 3 9 6 3 % D F D ) f # U P % h % d 3 % 1 ) 6 1 P )9 1 PS f f ) D 1 B D H P % D % S t % # B E284&guA&uhhE$4g$845V&0&$l5E$4g$8R8$2p8ET5gT$8E$7o&7|au5$&t w 4V$4&d ET54}TS f ) D 1 B D H % # X B 3 P BS )9 3 P ) D % # 3 % hS D U 3 % P BS U % s P BS U % s P t % U 6 t B D PS 3S P BS ) US9 H H ) B P F B t 6 % 3 c % 8bG$$4u|u`ET5guV&bgg&G4&8$R&# y bET54tuh54558r$ggg8E&ET2bET5b8&7|E$5$8H d P BS U % s PS t % P % 3 % D H % D ) 3 % 1 ) 6 1 P )9 9 ) P BS U P 6X % # D BX 3 D % % D D % PS t P ) 3 D %9S H f B U % 54u8E$VT&`Ed&# y 5b}aAgy8rg8$eE284&gug8ET5880&7p5u55g7g8}bT5bh 4V$Gs d t % 3 6 P % % h % ) # ) # 3 % 1 ) 6 1 P )9 9 ) P BS U P 6X % # 3 % 3S D % U ) D ) # U x %S D P BS U % P%BtP%1P) tP) 9% D) d EEE 488E>bg$5ER PP) &EE bgeq T&8$$!TV$gu}884R$E8$}$TR5427V&7$}Tghd8# y 84V$27EhT&`Tt8g!g2bE&ET9 3 %S t 6 3 D %S9 D ) % PS t P 6 BX % 3 B # # S % % D 1 ) 3 9 6 3 % D PS ) f % d 3 P BS ) P % f %9 H fS t P ) 3 % 1 ) 6 1 P ) X B % 1 P ) D % tS ) % D ) H f B U B t % P ) % ) # g}E&g7g&u}$gbh4$i54g!\"g8$8Eg2bE&ETrg8ET588e27E$8g54ui52u$8g7$ t P ) 3 % 1 ) 6 1 P )9 9 ) P BS U P 6X 9 ) D % % 3 t P ) q B PS t % )9 3 P ) D P % % h x t ) % D9 ) t ) # S ) # P BS ) US9 H H ) t9 D B 9 ) % D ) 3S S ) # aw&E$Tgg8{Tdg8$4V$2TT&8ECu$Ee2$\"{uATd287dE&7w4(bV5$85Aagw7g`88b2B U )X % # x h t % ~S 3 6 % h P ) U F D ) f # U P % h X % US B # U D 6 B ) # 9 % %X % @ d D %9S H f B U % # xXS t B f t P ) 3 % D 6 ) %X % P t t ) 3 1 6 h DS ) H % D 3 D B P % f %9 H fS % # 3 ug&dbE{g8$eCTV8h4}&$V&&l(bg5872z&8EE&bdTg8${7E$4hT&`Tt&${g) 3 % 3 ) %9 % D % P # S 3 % B D H f $gT$&(7V0g$8`TS &y!Vg{g8{&8h TVg8$bC4V$27EhT&`TCg28g`7E5a&$E$Egv 3 x ) 9 ) B P 6 x99 ) 6 3 6 P BS ) P % f %9 H fS P ) X B % U P ) f D BX D % H % # D % B % D B d P BS ) P % f %9 H fS P ) X B x S9 ) 6 99 ) D % B % # % D 6 3 ) % f B x ) t B B 1 ) B P 3S F D ) f # U P % h %9 1 PS 3 ) ) # D ) %9 U 3S ET5g$4hV&`u`g2lVT28G&T27g8$$8$Ehd5{yeh&Ggfpg8|T{$E`88aVE&u5Apg8$ET|u| d 3 P BS ) US9 H H ) 9 ) US H x P B % U P ) f D BX D % H t P ) x S9S hS % x S9S h ) 3 6 X B t P %9 h # 1S D % # D BX 3 % 6 % # PS 3 D % # bET52TT&8Eb2u&& w4A8E`$4bW8EagTTV&u&b8gTVT&g78|2WbT&r4ET5{8$4!5&G{&$Wu7&7gB D BX % D 6 ) %X 1 PS f f ) D 1 B D H % f B 3 X B % U P ) f D BX D % H % # B % t ) D x9 h )S D ) PS 3 P BS ) P % f %9 H f d t % t P % PS % D % E`$8$gt&ul`E$4g$8l452`8g`7E5a&$g&g7$wV&ET$g4uA8ET5g$4hV&`&b54u`5 3 P BS ) P % f %9 H fS % 1 ) 6 1 P )9 % # # US # D BX 3 P BS ) US9 H H ) % # X B % S ) P % 3 % D H % D B P x9 h ) h B D H % D ) ) # 3 % D 6 ) % 8ET5g$4hV&`urgg8E8guo&7T8rp484V$2uT&8g0&72gT5g$4$$85!g&`T&g845bo5Eg8$$8$gX % 1 ) 6 1 P )9 D )9 6 US D ) H 3 % 3 3 % D 3 S D % % B # P BS ) 6 H f B U 9 6X % 3 6 ) 3 f D BX D % H ) # E284&gudET8u5$g8h$$575`TdEe&ET5g$&bh4r&5bwhh7E5a287E$4g$8u5$uVg$w&T$86 f ) D 1 B D H US 3S9 ) % D ) 1 PS 3 % D ) % @ d 9 ) 3 X B PS ) D 1 ) # S P % F ) % h t9 6 B # 3 3 9 6 3 % D D 6 B F D B 1 PS F D ) f # U P % h x P ) # S % 3 ) U % # 3S 3 $g`CaVg$pgWTg$4w7V\"2E${agu&E8$f$T&7$o84b$4&T47g`88bW4gs$Td5E`&$RuoR d t9 D B % # X B 3 D ) H x P ) f f B DX 3 P BS 6 hS D P B U # S P BS ) D B h )99 B U 1 PS S U % 6 h %9 ) U 3 99 ) f T$EeA&7g!$$g84EhE$e8ET5&bT$$4EW$TET5g$4bETTg&T$V8&88EVg7Vg`$3 ) X B tD BU%D ) 3 ) 3 9 63%D % # !gw7E$\"dgd7V8$5&7A4$$8C8EE$&$&TE&875420A2d4$$8dE&0$&$E$$hE4s P % 3 % D H % t P ) f ) % % # t % PS B 9 # 6 3 1 ) ' ) P % 3 % D H B P 3 D % # U D ) % 3 % D % f B d}E$4g$8rg&G4&8${&$2ga7}4V$&&W8E\"ET52uT&`El&$W7ga&TG$8`TW47Ee5W>$E4U f ) D 1 B D H B P F B t 6 % 3 c % # X B t % % H 3 P BS 6 U % % t P ) P BS )9S H f B U % # # B h 1 PS B D H fS P B F D B B t % 6 PS P B % ) # % H B # 3 F D B % # D % X d t % B D H fS % h x99 ) D % P % 1 t9 6 B # 3 t % % H 3 P BS )9S H f B U ) # 3 ) P BS 3 3 % D H fS 3 D Ey8`W4&$G7Eel8$f$E58`ulaWVT27&gwT&4&7wb7g4V$2uV&`4A287rEe\"4V$7$8`Tf57a~ % &# y 7TV8h4l8ET5E}8$ea`b$&h4g$$Ea`TT2E$l754w&u4$E`88ar2u5T&ut8# y d 3 D %9S H f B U 3 6 BS D ) % # P % % % h 3 % U P % D % S t P ) D B H fS t %9 ) % % D 3 D B % 1 PS F D ) f # U P % h 9 )S S PS % d %9 h )9S ) ) P BS ) P % f %9 H fS % 1 ) 6 1 P )9 # U ) % P B % U P ) f D BX D % H 9 ) fS ) EV&ETT2y}ET5g$4hT&`uRE284&guEtE0bg`$4bg`T&`f PS ) h B B t % P 6 t P ) t % ~S t B f % h P ) U f ) D 1 B D H % # u27&Ew5(&8$8g(b8Gh}b(EE$4g$8t&7&{u{4uga(8E$&# y }g7EE58iTV&`4t8$2B B # 3S PS B H t P B U % 3 % d f ) D 1 B D H t %9S H f B U % # X t % % H 3 % # t P ) P BS )9S H f B U X B t % % H 3 % # 3S P B 3S D ) H f B U X B PS B H 3 D ~ % a7h&7wbgw4V$2uV8h4gwa$`&70T\"45u$g8`E204ugaf$${&# y }g7EE58fgu&T$5E8AT8$}&T$86 d f ) D 1 B D H D )9 6 US D ) H 3S # 1 PS 3 x 1 B9 B P # U % D %9S H f B U DS % # gEVE&8$rVT&`Eou&7o$5t5\"&u8r$4gbTT$5E8WE&7G$4|gra{b4zbd 4EE 8$86 488E$ugv 3 % B t % tS U % t 3 P ) HS US D ) H H B # 3 F D B X B D % h f 6 P w v D % P D y x ) t P ) DS t P w v D u t ) % 39 ) bg) 4Eg 4Ig5$TgR 7TTV$V8wp y8E g&uTp8Etrq h8GRr&u&8u8upE284&guog$g53 H 3S9S 9 6 v D % 1 PS9 q t P ) 3 % % % f % # U s q 1 PS t 69 U PS 3 % 1 ) 6 1 P )9 9 ) D % % PS P % S D P % % h t ) nm k j i x %9 % % T$5T5raE8# G2E TVlpVaY V8E$8hE&GE&b$\"&784V$2TT&8Eg5&$02W&fe5453 f %9 h B D H B P F B t 6 % 3 c % # 3 P BS ) US9 H H ) % 3 % # X B % P e d t % P % % D H % D % 3 % 1 ) 6 1 P )9 9 ) P BS U P 6X X B 3 P BS ) US9 H H ) 1 PS 3 % D % PS 9 ) D % % 3 3 % # 1 6 t P ) # US D % 1 % $8W5hE284&gu2bET5b8Rgh8ET5guV&bg(&u5$$54ug$g5 &2E &4&R8Eiu5gTS 2E x ) v PS t9 D B @ 9 ) % q % # ywQTpu54sAgr(8$pTi&Th`g7EE5ed2bET5b8a`2W84V$2TT&8RQ4I4&$G7ECA&875420(&$\"! PS 1 PS f f ) D 1 B D c 9 ) P BS U P 6 Y X B 3 P BS ) US9 H H P B H B # 3 F D B @ 9 # 6 3 1 ) ' % # ", ["neal-glew/mcrt/Functional Language Implementation/p137-anderson.pdf"] = "Compilation\ of Haslcell Array Comprehensions for Scientific Computing\ Steven Anderson Paul Hudak *\ Yale University Department of Computer Science Box 2158 Yale Station New Haven CT 06520-2158 anderson-steveQcs.yale.edu hudak-paulQcs.yale.edu", ["neal-glew/mcrt/Id/Lambda-Barrier.pdf"] = " {Xes{722w2&gggVsgq(X2VVER{sާq2q qg(&{w{7VU2mo{qoUw{5է5q5{ qV4{q4{5({7{U{qc&qV{{{y\ vv fh W T Tdh IIg}RYT44` VesR hf ` Wf a dhS Q P H G F T WShd Gh `T hdT G a G ` WST ` Q G S W dh PT h W Vs4gYhsyugeRRI2VoYfXgIs4f4Vp&SVV4IGeVR4IXV`g5EgeSx` \ p xjp k j h x v t sn r pz pn qn&qn{x7yywuqmx{e{2Xqol kxj7h1UUpXzUz}zysktqm{1wtyswx@ ~ j p s j r tp n r x z s v j z~ z~ | pzx v t s n r p n l k j h g e U{{}{&ywuqmqomxixfd z~ z~ | pzx v t s n r p n l k j h g e U{{}{&ywuqmqomxixfd v v d T Q ` xRcT y w v u G Hh q P Q Gd i hd QSf QdS a ` WSTS Q P H G xIttsrr4I@pXRegRXecbIYGXVURRIF\ y5D6 E ssRw 27\ 5E55DCB@8765421)(&$\" 3 0# 3 3 A 9 0 3 % 0 ' %# ! \ p W r r v f v b i U c Y t b g t Y c V U f r b ` Y W U v b b b i U W W r v WV g c f v b n x r W b 1X1jal7'yr1Sa'yxYp1jaf g ~aowd0w7sX1ai7xUsdt f W (yXp1Xaf g SaF0hwdXsS0Sp36wtlxUsXX{a7{d7usX1XaaxXasXtX1daf p c YV U f r b t Y` t b q Y U g b U UV t b q b t f b n V V U Y c W b Y g W r r v f v x f cV p W U r W b t W W c V U v c r` c t r U b t g c f W U c b r t f W f W c V U v c r` b f U i vV i n W c V U v c r` b V t n W r i U c f v b p t b g t Y t b i V 1yxYws1FS7Sh1a@ds1ypa61yxYw11iapSXso61yxYw11xUSr61haitd7Sa1yx1i WV W r r v f v b i U x g c Y v b p W c V U v c r` g b f c c r W r Y c Y c f b V t n c f v b n x U W V p W c V U Y c U c f U t Y q X1j1Xas71ywd3d1yxYw11o%da1s11yy7axUSra(xtt3d1yxYa7aa0XV f t b W Y t` W b Y v t b n Y q WV i z p c YV W W b t q m b f W f c V U v c r` k f U r q Y v fV U c b r b W t b W W b t q m aSb g ySfdyw6|0iXsr(yXd1w73ahyxYw11xb%p7syw6aXd7db g d1wb Y U V W W Y q WV UV U b x f W t WV b W V W r r v f v b i z p W r r v f v b t r q b i U U f cV Y k cV b k b xb%xky0uXX{a%XasSwb g Xyx`dxU1XsXa7ou1j1Xa7s7{p7jaxYvwXy03 \ 4m (&$$@@2 % 9 % 9 Q ' %# ! \ 03 0 5@' \ p ivtfbWbt VUvf `Y UbtfU b iU b k Y (SSpddlb g waqauap70sU b r cV U c Y v i vV i n x g V g r U W f i b n W c YV W c b U m b b t Y b Y W c YV U c b c b i U b p W t V t t f k g b f v W U v r t U W c Y 7XywsSXsoy(dxbs1ub g 1u6q1yX1dwrayyX@dd7oSxbpssdXXaw11ywv cV V fV U c b r b W i V n g b g c b U m b WV i vV i n W W r v WV g b n x p U v b c T p g g f W v b t U W c V U f vV q Y v b i 7XdxXaj@d7duxUoud71dwRs6jX1os1j11wdhBt(1adxb61yxYpjXsyw{7U W W r v WV g Y W f b n b f r c f b c t b f W f b U fV t q Y t q q f b t Y WV V i n W W r v WV g g c f x W v b t U p pV W v Y k U 1j1lXar6aap1y7aX1d1SayarpX1a11prSayXyxU@ut1Xss1adxbxxaboSXsqxb b g S1duxUo61X1ja1(aX1B1i0xkSwd1{67wdwByyswdldapsy7aX0a1yxYw1sFxdS7sq V W t r v b t i V n W r r v f v f g k f f x b V t v W b g b n p U v b c T p p U v b W b f r c f f c V U v c r` b t r c b ` Y W U v b q W f vV U f f t q b Y W W W b t g g f Y U b U W W WV i U ` Y v f r b g f cV ` Y c V W W r v WV g f k g b n Y` W db g awd0aXpsypSssyd71asdXsaswasd7asXayxYsX13hd6|xYXyF6XV WV i z p W U c f U W c Y v i V n g b g c b U m b W r r v f v f g k f b t r q b i U ` Y n b t Y vV r f k cV b k V n b X1ra1ywvxUuwd7sdwo1X1Xa1(laX7s7qaXV g b g 'Xsv'jy}XXo p t bV q Y v f t Y` b f r c f dXXsywsuafiapsy7aX b U fV g b t b U cV c f W f Y W f g c f x W b f r c f d f b t ` Y b v c b W W b vV U c f b W b i U cV W W r v WV g t Y` i U Y k x r` b W pX1dsS@jalaXa1atdap1y1aXvXadBsaw1ddX@ad7u7XS1X1afa}R11r b t Y i v r W r r v f v f g k f b t r q b i U b f i vV i n W c V W c b U m b b Y W b V t v W b g V n b n t b q f q WV i U c aS1q1X1jas0aX7%r7rapsX1otsyxY1dwry0xkSwd1jXo6q}p%tX1BT p b f r c f t f r b t b t Y g c f t q V W f Y U c V U c b U U f cV U vV t U W b aapsy7aXrpX1ySia'1axb%XswyxYdp7XwXdt k g b W f b WV W c V U f V V U q Y g c f W c YV U f t Y` W c f t U g b V r b t b i U cV c V W b g ` Y W f U b i z p W t V q Y v b Y wdadXrsyxYpdxsXsa'1ar1yXpsSaF1aSudxtsdl737X1yxSd7qauai7ryxbXsywyW cV W b f r c f b c t b t Y` WV W f k b i U W f g b W r b t f W U c fV t W V g c f W r r v f v f g k f b i z p t V q Y Xvdapsy7aXd7SawafhXSas7'adspvaXSpf g xU1ah1X1jahs0aX7rdxbjsywv f k g b t Y` t b q W c V U f V V U q Y b i U b t f W b v c V r b f t Y t q ` Y W W f v U c f U t Y q V f vV U v f t edSaF01yxYpdxsj1a'7hpdw1dxbaf g 1daSaasoa3aX3aa0XXXaXwaS1q pWbvc Vr dw1dxbaf g 1db f t Y t q ` Y W W b c U v b t t Y v b i U U r Y k f cV c Y W f b t t Y` f b q q f ` Y U cV Y q W r Y r V k f c r c f Y W f WV V V U r Y k aSaaS1RaSd7wdawi77y0p7XsyadaF%ad01pta6@Xy061y7yXslas1'aXaXxU1xU7y0pf W c V V r U cV cV gV r k g c f b f r c f b i U cV i v f b U cV W b i V U W f b t b i U U f g b U f U W t Y b k U Y c c f 1yxYxUs@Xu7X1jX1s1aap1y7aj7w1X1SadXisxqd1ixUadXSb g 7lpsdpSb g 0a71av b U W W f t Y` x q V W x f W f ` Y b v c f U t Y q V b i z p b W f ` Y U v fV g f t f q f q g c f g d~asSaF1axbssXsjasuyalw1aa0jl7rfXdaayaowdxbaj1RdxbjaSps3swsatdRBT x@sd7S(waespjRoaS1Sudap1y1aXqaraX7ay1wS1qauXasdl737j1XaXswb b b i v x x q WV W f i v r W W b f r c f ` Y W W f v t b g f Y t k i v r f ` Y W vV U c f b W b i U cV cV f q m t Y` b vV i f W f Y t U c f U t Y q V c f W f q Y W f W r r v f v f g k f b i z p g r U W tV b i U cV fV v r t v W W b i U t b aFXX1db g qaxby~@aSa}sXat|Xs{Xat1XsXaus0aX7rta71yXd7ljaj1Swqdxbd1b g 7c WXrsX1Xa1(aXl7qa7Xs1aS7s1wao1ssp1wa1vdpjXsywlSaoXudap1y7aXd7taY V W r r v f v f g k f b i U ` Y cV g c f U W t b g c r c f U r k x U f i U c f i U g b U f vV q Y v b t Y WV W b f r c f b W b i U ` W vV U c f b W b i U U v f` c T p W b t r U v r t U W f U f g g c f W U c f U W c Y v i V n g b g c b U m b W r r v f v f g k f b i U ` Y c YV W t Xasdi1rwaFhBqd1w1Sp1'saoa1yw'xUohd11dw61j1Xa31(laji7ahyXSb g f t Y` d t f r W vV U v f U c W b t b b t f b W f b V W b f r c f f c V U v c r` b t r q U f i U gV f W c b U` Y WV U afeSpy1'XwaXd'pXdaaaXXdap1y7aXa1yxYw1sFu7sp1hXaedFaX#T", ["neal-glew/mcrt/Id/M-Structures.pdf"] = " (Uwit7UUirHUrir@Uikd(7(( øǸ ø ʻ ƽ ø r(ww8ra(տ(Uwrwdw3(U((Hiraõ Ʒ 7׼H(գUra@(rEU((7((8UU(7d(rr(wrrr(HrW7r Ʒ 37H((EUprrUr(7U(trwrrrr(rUr(\ (u7Udu((r ur (uuF( ~ UrUipr4ad7@((F7rk((U@ry6(4(7p7wiwk}\ | {p z l ryx fp n vp u h g l e sp n qp rwrkitHro nmld j h g f ed (Hd3kiFd\ xvf @rH@H7t Y ` b c Y v v c e x c v e s q Yh e f e c b ` Y urHdrwidwyiwutrpi7gddaX\ 0 WR U&TS 63R6QP6H4''G V ) 0 ) $ 0 I 5 0 $ C& $ 9F(&ED$C B@8764321 0 ('#\" A 95 55 0 0 ) $& % $ ! \ ) cDvC4cDwci!cDCf4wwicP4wt0a6awwvG4CwDEcawCwewCw & ٫ Cw4wfGapc2a0YvwE{wDPaD(4wCwyCww%cewwwgvwEaaDf6gw & ٫ % 4C(4w0wwrvaD'y4wCwyCww{Cgar c0DרCwcw0y9Cyg cD4wwTC4DwCCCcDcD4g4DpبwwcaagD޴PVa04c % y4wwCPcvr0 ! յ ! ߽ $#{wpw{wPycvE{t6\" 4wVv4c~4gagDwag{DP4C4PCCwrwC0Ca ccCCc4wEwr Y2Dgg4XfE0YDwe40wEwcDfTcaE40CcI44w DcD0Cag{I44wCr0 4cI44Dwc C4wCvCwCc0DcDCf4wwy - - EP6 ծ 4wCwD4wg~wa6cD4www{D{4wc2a0Y wc0wcĨ4XwCc0fgwT44CwDTgwwrwCP aDC4t44Cwc4ewc4CGwYYrYg20e wcwmVIIcDP06wV{IVV00#h{4w%YYv4DECD ayw{4cD{C4wwi4w֨0aD4D4wg~Pc0De aDEw娨cDwaIcDC4ww4Cgyw4CCag{Dv!TfT4wwc {4Df4wggE!caCwD2wyPC4CwrCP64D4w(cD0Cfcap eCVCwPiVy4w22r4CCaa2c0Dwc~tcDaCccv4g4D !{CcDCa04!cIfy4wy4DV4C g44wfy44Cc4pwcwCwca0Vat4aw04w2yrwc~CPc 4y4wCc4ww0yf'eCw%ywCy4vVwe%Iwy4vY4cD ywgciVawDyr4w4wwg{֨w{Dfrw4wcaDgpwe4Cwc t0vcvwgwaa4p4CD4{P4CfaDDEfpcewC4wt Ӯ 4wPwVa04a4CCcDC4CCwCwc6wVv Y2Dgg4ǨwŨĴwC0 ® ta40Cag{I44wgwC4D0r4ci44DwaC4wCP(c0{D6aDC4wwy Dc4V%E hg2lwaV42VV24V2V402ggaVa4VV |V!0V2gVg~{gV46D0ag4vt44ff #2o h x } | z x f u yk x f e w h u s n rj q o p f j n fk j h f e d lagml4ig44ga0 B x q q Q 3 ` b u s q b 1 18 1 @ Q d @ 1 1 b @ 3 ` @ @ wyIw!cvvtr4phihg!fe42cV!DaYVXW R Q8 U ) S R Q 8 3 H8 F $ \" ) B8 3 @8 7 5 3 1 ) & $ \" AVT!PI!!CG%ED!C!2A9'6420('%#!", ["neal-glew/mcrt/Id/id-manual.pdf"] = " | px5rp`rxpX\"xDrr\"rrrX r7HDx22x5x!r#r2xXHDrHxpXr7F2rrX | | | | ~ ~ ~ | ~ | { ~ | 2DRrHxr}rxrlru!HD\"r52H}pxxrHr!2DDHs!2x | ~ | | ~ ~ | DxHDjrwHxzx2p}rrxrlru2DXp2rrXl!rlx\"}{\ d m b b t n y y s b h g hq h t v h h g n y i i llsld7zHrdpsrrdxwrrrduHprHf h y t q y v w h g e c b a w bs d w b h i w b q i p e k k ldsdrdfd##uuturHrul7le y o lusu#a h n mq w d e b e k k e h g e d ljifsdg b c e g b w w g h y g w h v t bq h i h g e c b HHFupdrxdusrHpdfd#a\ Y3 G W3 U B S 0 Q I3 G 13 `\"XDV!!TR!P\"HDFE CB @ 8 6 43 1 0 ) D\"A9752( ' % $ &!#\"! \ { | | ~ | ~ | { a ` ~ y | { s p r p v l r o p n o k z5\"x\"x}rHD2r!2D#R'2r}x}rr}}Ax!Y'!mRY2r2xxjW#WvYWW!Wjk yRr#A!d7pj Fx!x}w7prAdYr2xWrH!27!rxrlrufr\"Fx!x} ~ z c X a ` ~ X ~ } X V | X | ~ X ~ vrDxrlr} x#2x{rr\" jxVxx mr2DH\" ~ V z ~ ~ y x | | | X w l v u k sr q p o n l k rr2DHr 2D VrY4rr mt#WWWm r# jpfxrlrf2Dx 2x7 ur r# l r# 52r rxi h ~ X | ~ ~ ~ ~ ~ V \ I q qq b w e w i q h q y i s n yq n y w bs h m tq y t g f d q yq e e q t d i c b q q t @Wgudlsrsq sHsduAd5ddWrTh ssdYVWdFfHRvli w g h y g w h n q y c i w m w e c b v I tq i w m t d w i b h i w i xdrprTxh dtlrulb ud5HrudjwwFrssHrle d rh ssdf5 llrulrv q yq e cq w i c i w m b w e q I yq h q tq c w h q t b t q t d i c b q q t i w g h y g w h srrsd5rr9udTlWffFHRTvlpdrprV pslrdle n hq y c i w m b w q t i h h t w i e t i w h d iq h t w s w q h b t d i c h g q yq h q tq c w h q tq i c w w g h y g w h v n hq y c i w vldl lpdlrxFssH5rux ldffdsrrsd5rr5HfpdrprDps'rum bw e hh q g i t qhy t g nh bh hy e HrdpHdb rds dpfrp w psq dpddH!d5q vl#!ih WdjY9xrdg vli nh I h g eh g b h g e t q t i h e d q t qw q t d iww n h b q w bs w g h y gw h urrli pfuD pdrprT vli pdrpruv v5d5q v s FripHHdb rduddy q t w g h y g w h q g y t q b h y e i i t qh y t gs t b t n I t bq h i g i q d i q w bs q h q y i usrH5HHWVWl5usrsq sHs q t i h t q t nw e c by diww vlddb rddfufrrli vlfdrrlddb rddfurss vli rrsq }usrHxldt d5dn rHfc q t i d i w w i h t q t n w e c b y h q q t h h t bq h i h b m tq y h i rrrH9vh WdjYrd!d5dusldb psrrursdrusle WHWdn xih t w h h i e q t i e d q t q w g h m tq q i b w n hq y c h d e d h yq n e w b c d b q Q y y e d d i yq h i h d h w tq ssHsrHpr drxd5s dusrduxdusdn vd5pHABsrlfrsxrudt i h t bq h y t g s w q w b w n mq q g y tq w g h i I yq h t i c h yq w h t b n hq y m i g m t i i t bq h y t g s w g e i q q i n q g m tq h q q i yq h i h t d qv s b h q g w b i c n pslHudHusrdf Vfsfsdlpsdud5rr d sHsry plrrHrdpudfdy I tq d5dn y fssHrdplvli d7ph wd5flrdle i c i w i e w n h b q t y b x i i q m tq c c i w m b w w b q g q t i h y t qy v wh g e c b a w b dw b iw b q i us WrdVsq vlld drdfd#Fdus urh ru\"p uf 5q dpdrxdv db rHpde t yv t e g bw w ghy gwh t qhih g c a n h s b w q c c d q t mq q m i g m t i m tq c c i w m b w e i w i e b e w g e i w t m i ub tdxHlq WdusrslHddl5Fd5frul#s rlFrr Hrd q rv q hpi0h1 f d7WXge", ["neal-glew/mcrt/Id/memo-345-3.pdf"] = "CSAIL\ Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology\ Performance Studies of the Monsoon Dataflow Processor J. Hicks, D. Chiou, B.S. Ang, Arvind\ In Journal of Parallel and Distributed Computing, July, 1993\ 1993, July Computation Structures Group Memo 345\ The Stata Center, 32 Vassar Street, Cambridge, Massachusetts 02139\ k(seǿ`40AQBQk~uekk k ̡B~fu\"k~۩kQ(~A'~(~kkuk~`fxɽ e`~kx\"~iǨf4Qk$ QkxkekkPxkeiAQ~kx~ksɾék`Ǿe ex`B~kkB$B˨vP'k~\"Gek3(vxƽ~kv~Bxk\ c hc Ya R W a 4vf`QPfvpcikxc4`A (AAbfQkA (Xe W kkeueAfa \ | uui P w | ww quGPk4 y | z yw vt k~}{4xAus drrp o e nw y m `kqvfvy l j ged w yw ut kihf`bQBw(QxwvQsrq pcigeGb`XVA\"R hfdc a YW U TS !) I QP6 H F ! C ) 9 8 ! % 2 ) & % # ! GED6BA6 @$7654310('$\" \ a a a vvXU va Y a a W Y W W W W W Y a W AAevfA{eje va`W \"k kfu4`qk 3sΤ` Weke k`PBW a a Y a W a W Afqk A 4(vCAfa Ψ\"SevfA` WekΨ\"e\"W Bva k 4$efefAe{AbY W h evv(A` Wee AbYW uea vakv`PW f\"33(As ueeWAee` e Y a a YW Wa a W As hkkk({0 `ΨskvfA W kk{AΨ\"jΨf a(e` AAk fq 4ek`(`bY W WW W Y a W S a Y W hPP vGva{ WeΨAu`(AAbf`W ee(AAQe`A`f\"e Τ AΪfkWW k(fb`P a W Ya W a W W a W a YW a f\"Ciq4v(v ekk vvX'A 4s AΤ bf akffb{W S `f(kt ΨA v`bY W a a WW a a a U W a Y aW a Y a YW W Y a a a U a aW a a a a a U k(e Aes4PsffvXU k t{(Pv AA`fitAΨAXU 3WeffXBW S\ !lS|1yS'!0 y 3 &w ~gfs}f phxWk 4pE &w mfs}Qv x3m w m w vu u ww yy y u y ww uw u i koehi0uvt oww y iy w }wv 3x&gk'vn w ku kev( w y w vw w b w &w xu w u w y w n W\"w fvtun w u xw h h vt w w o w 3u 3iu 3 ~ u }wvn w m ym y w w bm w uvy fh\" eyfk w y(pnz f4p uk u x n w m u w tn wy w fx m w w (v vQ`tx w \"`| Bp(G\"`3v w vw w b y w y w u n t n n y w e y n w w w w kfe v u w xvy vh\"v(`( w { k w w w w v &w w y m un tn ny tn S vw xwvb xuvwn y vh utr xw u v w n sq w g y zn4vW(tp B(trQu xn nxufh w`wwy ey (txww xu&f3g wynw wb0q3on x m jwfu ww wy w \" p u33uu 3&Qwu !fA 3v3tuu venu kxy `nu fy vn xwu ky g y v x q 0 f o y y pkyvkekmt &w fut pyu 4(\"vt\"nu xu w m y g y y w n n tn y t i w y w t u k u ynw ny tn un y tn nw `y(`pveluQ fBvn w `y&h\"0jxv(\"`w w xiy xu&khv(ukQv wfw pefxm w khxvt `pky w khw w (upfuv4($`(Xuv(w w vw w b w w n t u w i u y u w y i y t n w y w n y t n t w m {kyfe v m w u w n w ugh\"3km w t vfvnewf w fw w bu y w y y n y t u ww g hy w w y w w yxx&fv(wefk v xvf w ffw ng w v v`(n y t w y m u y nw u y tn ny t xwv0dyfQuBv Gv(Qu w e3 w vt u4r`tun w ugh w o w vw w b w u e wn tn u y yny y y omy y yy y y tn y o y u t kk`vm w yhxuk xnu xu& u w o v u &w fAGv( w u kh0exwv(n xwv ugtrqpihgec s fd b a a` ( Y X B P B CI39Q T \" V2 Q T F ( P F Q P F @ G F @ @ D ( B \" 7 5 %2 ) ( % \" $F'WUSRIH0!ECA@9864310'&$#!", ["neal-glew/mcrt/Id/nikhil93overview.pdf"] = "a `Y QS Q V TS I R Q P I E G FE C # @ 8 64 2 & ) XW9\"U\"HH9AH7AD& o0mBA(9753150SqpoS & &$ # ! - - - - ('%\"oI\"AgSc otvgpSA)Ulpl!opqSeSAQp)qv&toS 8p)!IlpnAmqS )tet 0e߬լA۬ج)Tc)cTceUcլ8pceAo vcpUcTiT)TckeA׬cc)ccpecv!FvcݬcTvAvcTe8 Qgglqt5&ggnfl80cTj e x j d f s fQ x Q oje pxo ngoFgojf&Qf gglo50cj f x e f xs f g g t x t e xmQgqg 5Af Axk lfAj0iqj jsAf5gAj g5ex(nfm(AfiAQqgUcs gglqta555Aj&Ft lx tUAdVgvfTc&j lff c o f 5 AerxpxlloQt f Q Ac5cld!5Q)jqe )eAfd QgAcFQcgex j v ojjg pxgog qfiqsekQQoAdfpx ov Q kQ5pggx xs)fx tqrnfAIcl dQAf qgvQgxj gTjxcAQqg iqvj qrlflQmjc Qslj )g5k0ti)gfeqf AnfFl 8lfS g)qfx oce njj k)p)fAxqmng rxVigpxQvs oqg Q) pdlqof #vAq &5e t j 5 x A Q x i xU fg5epxg px xegoer AnmFpd gd oQ c)tj FvdqdcQgpcc Ȩj fgoAnmFpdgog Qj tQoegr )e gqpiqjvxcvjqQf 0sx of opA sd f x x j g j g j f j x e r j e g s g t s x s j g cgnjx v5gQ&qgxs ig cxAooQQQ5rs iQes og & Qg5onco njd gg qfkf c0x mƪeS|8ojg jxqf x e pxriqdqf of Avf5f QQQfglxr Qofg cioqjg wd qgjf xx qUj 5d qejtiv ft 5 d fl5oQ8AexlfclcQkcTjqqgjpxoepxQo ej &c gQlsgQ&nfpxgg&QAkenim d oe Uyl55onmqnj0Qv(AfQotnUf tr Aof c&)njx iqqfd vfilq qcQQodg vfAf )5Aqebcl Qq gljxgg55nfd eAffQ55ed ojit Qx gg x Aq leild ofs fqvmAt5Ajmf 5nflxmtg)x Q5Vnqefld gm 5ljqr Afgoad tlgx f img cn 5j&pTt qvQf vtQmt v AAj c)Vgonjgtfj jgx 2nqd lQ)qtf gpmqff vTjQ5qeQlf c Q g d Q e s g5 d cmFcjt Flx its UFpqgf Ad il QQgf ggtlsxx qt)jmi(mje Af(lVggfnf vtx vfvfglxx ntm&d 8Cmxgx nAttgggx 5mVQloQvQojestg g cA fvniltx qgQ5Qmgne Tj j Avj0 Ff s&c t Tj Qxx ges g x iiqggs A(fQgqgs qr qnv d QUxjc g pdAgQqg lQqsSj bf goxe x nnmmqt njj l kcQ&oqxgj qj5e mx e j s f i d g b fe 5 t5 j o tqeljgg5qe)jiif qf jvxlj AfqfcotgqgAfTmc QgvjQgsQ5qelcqljg!lfclcI0cQgno5!lfc5mnf Qd fb gk 2 QAq2Ajqg inqe)glQcf q (ggagdlj 5ff emonf mcnjQg(50edd 5xvf vxfk5Qnej QTjmg qgA)l0o)ctF8Qoldf p2oxf gpx qroi0Ajqgt Qogf pxnfQnjAj&m k2q Qqg g x5kqeA n&qmx Qlj ggy5medx qexltc )gqQljf gg Afd l(f oc cl vfQq od q5cf QgoAjes x Qo o t UdQg t oj 4 7 akC!I(I6 f sfx ( i s i f s TlqfvqiqgVs TgqffAkp0 !Vqdjcr Atlfcof cof nfcmn&Q5VQQ(gdv xQ 5ovjg qgj gqlfxt s gle gc5Tjf QQoqgde jllpo5Qvjff vgs giff s)tlxtnf0(qfs vcQi (At nglx nvjltmcivf 2nff s f o U x j mQ d g sf tpxgqg5evfQqg cAggA8c5lecTj s g cTjkllFd d j t x f oQQ0lQxf Uvt qAjfQtg lfTjl TfQlfl qAkQf )of f5qeQlosvfqQqgjpxoAgx ogf Afj )onf g0goqQUQqgf8d ocd QojxQt lfgQT xd 5 f g j r xj i d f fo g g mlQTff v!qoAjfjq l cbg cAbolxg VUQAfjt d qQAjpxg cgQ8qgIjr Tpxcol AlgQgf g5Vfe g g eqfoAx Q qbiQqgsx qg2l fs mnmcf)d Ajonx lcAf2lqglf5g2vfgf (nf )g 5xd f nklf !qdljgFQQqgds &gx A2Ag j d tcn( qfs c snf pxg QVggAkiUAjqelcqljgi)fntcej(vjVqgjpxqvgg5ef5e5ocej(fgl rxcAQq oUjjg )dpx QkQgxt T!qox Q AnfQAj d fs x x fr d f d x g g l)tUxf td pQog mt AggAg 2s sif AqQgpxAg&s nfm0n qfc Q8qgjpxq)gonjg lQggg A& lxtt xg5e vk(vt8lpflQsx&nfjc r x x x f x g t d x x f f rQ lfgA)Qnf As pqVQqg8dlg lfqrvxxcc( tcxot jAjbsvfqnf lAfo j l(xt lffcQts ooQ)gnf ciAdt Qog np!mpxgglf lg Tflj lfg kf q Qg Qv Q Uq)qt Qg gtx nelvfg Q(t ogf nlvfnfgj lt T(g )nff gve QnA p ! ll qfcf( kgj qp g5qe)j0A) Qdt nAj Qog jg cQog jxQt Qg TegoQ0Q t jnAQoj tcQojpx)QQTegqgiVAjViggo55qfcxVvj(q0lx 0vexlfcnmQ0cQoAjq)nf&c oTj wqgjxqQ Qf cx cqx f q))qfgkQogs Q )g )gvfgkgxx qf f oQQ0iqvf Qqgx d)g qfmoQQqg qjpxQQt oQtg iITg cIQ og t vxjppxA)pQgQoTggt QFgj ctAx&pj vx qgqeQej !eQlf i(qAfv gcmxj qfqfo x gQQogegqg cvfiA gqg jAxQFQgedgft pT(tpxAqov 5(0lejA g&s x SqqflloQc f Qv vqAqQn fgo)t g mQ!i)jcnff g mxx g 5qge pxgqe biclj gf tpo )njlxAfg t 0gklx&Qflqfncf ciim ag Qlx ob)gQ!Qqg Aff gUgj f ndQAj f qQQ sd gclxlint lQm Qf ggs qfnjo8icf pgg)!tlj l)gU55QFgnfSgerff QQ e odiiqmg f nj FgcT x Tjl(gvlfdkfQQAf A)tAfgv5gk)gxxx l8n tfcFTf lf mQqgs nqg55i2osfs c x V5 m qjlxqtmPxgFqf h 5iSWc@d eakrP x o kA5x t rd Qx d d j s fs s ", ["neal-glew/mcrt/Id/p169-flanagan.pdf"] = "pHluid:\ The\ Design\ of a Parallel\ Functional\ Language\ Implementation\ on\ Workstations\ Cormac Rice Department Houston, Flanagan University of Computer Texas cormac@cs 77251-1892, rice. edu Science USA\ Rlshiyur Digital Cambridge One\ (~ambridge,\ S. Nikhil Corp. Laboratory Bldg. com 700 USA 02139,\ Equipment Research Square, dec. Massachusetts\ Kendall nikhil@crl.", ["neal-glew/mcrt/Id/p230-ariola.pdf"] = "P-TAC:\ A Parallel\ Intermediate\ Language\ Zena Ariola Aiken Computational Laboratory Harvard University Cambridge MA, 02138\ Arvind Laboratory for Computer Science Massachusetts Institute of Technology Cambridge MA, 02139", ["neal-glew/mcrt/Id/schauser95how.pdf"] = "! gz 0aiDg - - - - &(qq&!gtDq(q&sqtzsqgqqg\ '70diq07w(0di'e#&sy0t&x&R!\ e s8 s }&9 8 r q s &} d q} 8 } x}!wyw 8}y} E 3ixyq s&s}&sqt&xy8}8s q qDi wisswi& } i y wq s8 } uy} w wV ̲ 8}8s qR8} dy x }wygi}qst}q&(iwis8}D8} 8s 7i &syqixq 8}w q s }wsii&Ds&s} 8 38} ! D i yy wq DyqBqqs i8 &i!s }s iq}8 qsq8 y } 8si d&s i }8 i i}s& &tu }uyx w yw a ty&wy r& q sqy}x 8!3Rx iys i}i3Ds &3}y&} ixsq & }8 iq sRr8 sdis i y}qi8 yrisg } }9si8 } w 8 D s i siuwqx ss rt3& yyx xi is 9& }y s8 } x}d !} w rq s qs 3wys riyix ! 8t s& &s} y& &s 0 8 i s 0q(iwsi7q3 sissss i}qs s } &si q8ss d qA}r}s@ it }s ss q wx0s }&8 i3}is8 yiq78x }y& C˧B 9}ss }qi 6t w } %y st}is ) }s}iss w s}s i! ' &!0 }s s & & & 9 st 8s sywqs t} q & w i9qs8} &ss}3q8wy8} d q}s} si !&y} qs3qs ty} s }s }i t w s8 }sGw iv}t y q s i% i s}Gqss}3i& (3 y xi iy X x }&!9q y } 3q&6 5 r}tyqsi D s} q s ty } ' i7 y} y q8 G ( %i 8 six i }qs& qtsisix} t&iy 3qs 3 s txy }}qs s t yw6sByq xs }& i& &s y xy }y &w&xr} t y}q q q 0 i 8 x R 3 8 tx q iqsD8 ri3y} }} sɡs8sqyt& si& !x &yuD}8q is ss}y38x i!& i0 t i tX yix s}qst y}& syq 0s 0 qqDs3q8xi3 w y tyq xV qs}q}x!iq w yxi q 0i qsi! }s ts & gi i x 0 qq &8 !tqs q G s3y w q } w 6 i iq gy s&sq s tsi qsy x }qs 8}s ys }&}x ɡs5 x iqii sys}3q8u }3&ii }q } y 3 s2 & s}&s } wX 7 q ( 0s qx } s} i t w }i y4G0 3 tsi tiiy & wR i } s sy wy xy xi }9 2 8 s s8 r }s&}s8}s}}x&r & qt}sq3y}3s &8}}s }s8 &dDis } tiywyst i8x q &iq}6&88 s }! i& w}q s3& 8 }x s}V t w i t i&}G& y }G9&qs G& }s r wigqs }q& eiiriq9qs q } s63 qqs i!!8stu}8 ss8}310qxxss3i& } y 9&& ss 8ss}3y Vys qt 3y3iq& } } &!&9}( %s &3q y 0 } wy y e8w 9s q 9 qy}yq80! y q qs& ) && 8}ix8!qy&ywsyq D& 7s&q3}q t y }y qGrs& s sx ii&} s8 3d q 8 it si qs qs}x i yx}s}s } i3ss s ! &t 3q 8 3s3qys w}0yq a}s yxid8}}G&t}sqt3&}s%qq&6isyx R 3 &3i&a&}8s di}qss8ywi } s ix8Gss} qsy}8 y q8!is & y w ̢ s's8&syx yD}} giy30x }s Rs}8 s G 8 i x isywsyq & }&$}%$#&\" ! s q#(qsws}Rq&Ds} isi y y s i i&R q is s&&ris s xtwuqsiq i8 &8DG y#tq i& & 9& 8s d qs } q &&\ i ( i ws iie& s8sys t 3qsq& s}i3#s t ii wsi8 i}& a8 s q&d s e & i iw Gs y& q t&}qxs} }3i q yiw s w 8s}}i & R s8 0 ss&i9 wy8 y!& y xs &3s }qs 8 %}s y&3 i i s G ( i iiGyD&}&q }8 88iq8 s q& s 8}8s d Dqi ut } si& &y}w y } qs 83y}!q & 9si 6 &q88 !6 y 0xq syi& 7 ss&8wyqw8ơ Bt&3s8&q 8g s }s i !ut & !yˡ G tsV&e& 8 qG t} &33}y8 V}8 q xs} 8q q8 s 8s}3&}38}iy rs } s yir}is } t }s& si & 8ݧ Xx d}i ! s qywi} iu q 6 & 8! 8q} &s}& s3}ryt& } gy %si9 y8 ! s && 8 x r iq}is i s&ssixwG8 } i }} &tsisix !}iqqs&8 } s8 d si& }38q q y &8&sqyyx wwis Dqy wyi} si i}& }e 98 y q s si&d8q q8 s 8z yq % & &i}x xsyyq qq &7Vt̲s} 88s&sy3wqR&}}&wss iiyix s q}}!iy ey3i8 swq}s} 8& s}& i8Dxw 8si } yz3iqa!yy 9s& s ! xy q & } i i q i y a xqwX t&93 & 8sdq G s } 8 y3x iq y s&s&sR w ͡ 9 3 }9 & 8R !i w q 8&}8 } &dqi}x q 8˩ y R x}y iqt3ssRgiGy }x} 8!sy 7 8}8sdi i}#iwis st it qw}iq s&}i8s yws q ws &s}8 &8}ss q &&di }}&8t s }d tq} w& y G3yx3i3iswy yx iyx 8 &ywis st wi& q38 X } R r wi3it x}ysqq 8s& s}&s}i& 8ud iiqų y} i &&s y&R8! irws& t} si }s w } y& }& !aq s & } } &} s d}q }8 38 s} t i}d }is 3} 8i x 8yqqt! (xsiq s8y x q qy!q i}&stq t && e7 0 ! 83 G D isyqs}i x} wysq s3 i} D &t & tDi( qq 8 q D& } sG 8} 8s d i }#st&y }} i s&ssixwi&y&&qs} }&}&gqs wsii & q i & s 8} &8&s s i &%8sDi w #8 !'s& 8' i3g& ii }q}y squ8}8sdi PX ix isywsyq&u8qyyq t &&}q s ss3ix} yy8 i0 s& q8sssi x q dwG&q&t&7& q y sii& i u&iei iyw 3isw }iiy&s & yswq &&iy sw& i( }}}i X(is8 G!s& &# q } % ! } e } e qsds ", ["neal-glew/mcrt/Memory Consistency/WRL-TR-95.7.pdf"] = "SEPTEMBER 1995\ WRL Research Report 95/7\ Shared Memory Consistency Models: A Tutorial\ Sarita V. Adve Kourosh Gharachorloo\ digi tal\ Western Research Laboratory 250 University Avenue Palo Alto, California 94301 USA\ The Western Research Laboratory (WRL) is a computer systems research group that was founded by Digital Equipment Corporation in 1982. Our focus is computer science research relevant to the design and application of high performance scientific computers. We test our ideas by designing, building, and using real systems. The systems we build are research prototypes; they are not intended to become products. There are two other research laboratories located in Palo Alto, the Network Systems Lab (NSL) and the Systems Research Center (SRC). Another Digital research group is located in Cambridge, Massachusetts (CRL). Our research is directed towards mainstream high-performance computer systems. Our prototypes are intended to foreshadow the future computing environments used by many Digital customers. The long-term goal of WRL is to aid and accelerate the development of high-performance uni- and multi-processors. The research projects within WRL will address various aspects of high-performance computing. We believe that significant advances in computer systems do not come from any single technological advance. Technologies, both hardware and software, do not all advance at the same pace. System design is the art of composing systems which use each level of technology in an appropriate balance. A major advance in overall system performance will require reexamination of all aspects of the system. We do work in the design, fabrication and packaging of hardware; language processing and scaling issues in system software design; and the exploration of new applications areas that are opening up with the advent of higher performance systems. Researchers at WRL cooperate closely and move freely among the various levels of system design. This allows us to explore a wide range of tradeoffs to meet system goals. We publish the results of our work in a variety of journals, conferences, research reports, and technical notes. This document is a research report. Research reports are normally accounts of completed research and may include material from earlier technical notes. We use technical notes for rapid distribution of technical material; usually this represents research in progress. Research reports and technical notes may be ordered from us. You may mail your order to: Technical Report Distribution DEC Western Research Laboratory, WRL-2 250 University Avenue Palo Alto, California 94301 USA Reports and technical notes may also be ordered by electronic mail. Use one of the following addresses: Digital E-net: Internet: UUCP: JOVE::WRL-TECHREPORTS WRL-Techreports@decwrl.pa.dec.com decpa!wrl-techreports", ["neal-glew/mcrt/Non-blocking data structures/p35-michael.pdf"] = "Scalable Lock-Free Dynamic Memory Allocation\ Maged M. Michael\ IBM Thomas J. Watson Research Center P.O. Box 218, Yorktown Heights, NY 10598, USA\ magedm@us.ibm.com", ["neal-glew/mcrt/Parallel functional languages/PAPP04.pdf"] = "Towards a Generalised Runtime Environment for Parallel Haskells\ Jost Berthold\ Philipps-Universitt Marburg, Fachbereich Mathematik und Informatik a Hans-Meerwein-Strae, D-35032 Marburg, Germany berthold@informatik.uni-marburg.de", ["neal-glew/mcrt/Parallel functional languages/ParDistrHaskells.ps"] = "Under consideration for publication in J. Functional Programming 1\ Parallel and Distributed Haskells\ P.W.TRINDER, H-W. LOIDL, R.F. POINTONy\ Dept. of Computing and Electrical Engineering,\ Heriot-Watt University, Edinburgh, EH14 4AS.\ (e-mail: fTrinder,HWLoidl,RPointong@cee.hw.ac.uk)", ["neal-glew/mcrt/Parallel functional languages/strategies.ps"] = "J. Functional Programming 1 (1): 1--000, January 1993 c\ fl 1993 Cambridge University Press 1\ Algorithm + Strategy = Parallelism\ P.W. TRINDER\ Department of Computing Science, University of Glasgow, Glasgow, UK\ K. HAMMOND\ Division of Computing Science, University of St Andrews, St Andrews, UK\ H.W. LOIDL AND S.L. PEYTON JONES y\ Department of Computing Science, University of Glasgow, Glasgow, UK", ["neal-glew/mcrt/Polyphonic C#/polyphonypaged.pdf"] = " \ \ غ \ \ \ \ \ ׸ ׺ ׺\ ֹ Ҹ ظ ֹ ѹ ص ׺ ظ Ҹ ظ Һ ظ ׸ ׺ ҹ ׺ Ѹ ӹ ׺ ָ ׺ ָ ܸ ׳ ҹ ׺ й ҹ ҹ ҹ ׺ ׺ \ \ \ ָ ֹ ع ع ׸ ׺ ҹ ׸ ֹ ҹ ָ ׸ ׸ ع ݺ ҹ ع ѹ ׺ ֹ ֳ й ׸ к ع ׹ к\ \ ׺ и ׸ и ݺ и ׸ ׸ ѹ Һ\ \ ֹ ݸ Ѻ ׺ ָ Ѹ ׸ ׸ ݸ ׺ ׺ ҹ и ָ ۹ ׸ ѹ ҹ ׺ ҹ ӽ ׸ Ҹ ع ҹ ٹ Ӻ ׺ ܹ Թ غ ظ ӹ Ҹ ׸ ֻ ׸ ӹ ׺ ֹ ׸ ȹ к и ܺ ҳ ݸ ׸ ҵ ׸ ӹ ׺ ׺\ \ ع и ҹ ׺ ׸ ׺ ݵ ݺ غ ش \ \ \ й ݸ\ \ \ ݳ и е ָ ݸ ׸ ۸ ׺\ ҳ ҳ ݺ л \ \ \ ٫ ش ش ׵ \ \ \ \ \ \ \ ׸ ״ \ \ \ ظ ׸ ׸ Ҹ \ \ \ ݸ \ \ ָ\ ٫ ش ش ׵ ص غ ٫ ٫ ҹ ٫ ٫ ش׵ ׵ ش׵ ׸ ٫ ٫ ش ٫ ش ݸ ٫ ش׵ ׹ \ ٫ ׺ ٫ ٫ ش׵ ׺ \ \ ش ӵ\ ٹ غ \ д\ ݴ ״ӵ\ ҹ ٫ ҹ ׸ ޺ ׸ ѹ ׺ Ӹ ׵ Һ ٫ ڹ ׸ ׵ ӹ ֺ ٫ ׺ ҵ \ ٫ ٫ ٫ ִ ٫ ش ٫ ش ٫ ش ٫ \ ش ӵ ݴ ش ״ ӵ ݴ \ ׸ ׸ ݴ ״ ӵ ׺ ݴ ع ݴ ״ӵ ع ݴ Ӻ ׸ غ ׵ ݹ ׸ ׸ ݴ ״ӵ Ӻ ظ ݺ \ get() return o\ ٫ ش ش ׵ ش ش ҵ Һ \ ٫ غ ش ׺ ش׸ ҹ \ \ \ ׺ ظ \ empty\ contains(o)\ ׺ \ ݸ \ put(o)\ \ \ \ \ ӹ ָ ׸ ׸ ٹ ׺ ֹ \ \ ֹ \ \ \ ˴ ̴ ش ش \ ҹ ׺ ݵ ݵ ׺ \ ̴ ̴\ \ \ \ \ \ ִ ˴ ҵ ˴ҷ ˴ ҵ ˴ \ \ Դ\ \ ظ ׹ ҵ ֹ ׵ ׺ غ ׸ \ Դ \ \ \ \ ִ ˴ ˴ ˴ ҷ ˴ ˴ ˴ \ Դ غ \ ش \ \ \ \ Թ ׺ ҹ ׺ ׸ ܹ ׸ ̴ ҳ ׸ ݹ \ յ \ ӫ \ յ \ Ҵ \ ݸ Ҵ \ \ \ \ \ ׵ ѹ Ҹ Һ\ к ٹ ׸ ׸ ֹ Һ ظ ׸ ݺ ׸ ݺ ݸ غ ׸ \ \ \ \ ׷ Ҵ ظԵ غ ش д Ҵ Ҵ Ե ش \ \ ظ Ե ֵ\ \ ׺ Ҹ Ը غ ݸ Һ ָ ҹ \ ׸ ֹ Ҵ ҵ ݺ Ҵ յ Ե ֺ ֺ ׸ ׹ ֹ ׸ ع غ ׸ Ҵ ֣ Ҹ ݹ ݴյ к ҹ ֹ ׵ Ҹ Ժ ҹ \ \ ҵ й\ \ й \ ش յ ׺ Ե Ҵ ݴյ Ե Ե Ҵ\ \ \ й ҹ ֺ ҹ ҹ \ \ \ \ \ \ \ \ \ \ \ \ ׹ \ \ ׸ \ \ \ \ \ \ \ ׺ ֹ ҹ ׺ ֹ ҹ \ ҹ ׸ ׺ \ \ \ \ ݽ \ ص ҹ ׺ ѳ ֹ ׺ ҹ ׸ غ и Ҹ ֹ Һ е \ ׺\ \ Ӻ Ҹ Һ ׺ ݸ ׸ к ҹ ׺ ޹ ۹ ׵ ָ Ҹ ӹ ֺ ݸ ع ׵ ָ ׸ ֹ Ѹ ݳ ҹ ޹ ܹ ݸ ݸ \ \ \ ݽ ݾ \ \ \ ݿ \ ش ݴ ش \ ݸ и ݿ \ \ \ \ \ \ \ ֹ\ ָ \ \ \ \ \ ֺ\ ׳ \ \ ӵ ׺ \ \ \ \ ݺ ݳ й ׸ ׵ \ \ ֹ ׺ ׺ ׸ Һ ׸ ҹ ׵ ׵ ݺ ֹ ׺ ׸ Һ ܹ ׺ ׸ ٹ ׺ ۹ ָ ׸ ݸ ׺ ָ ع й غ ׸ ݺ ݸ ֹ ع \ ѹ ׸ غ ̳ ׸ ۹ ָ ݺ ׺ ҹ ׺ ׸ ׸ к ׺ ظ ׸ ׸ ׺ \ ۹ \ \ \ \ \ ش ѵ ִ ѵ ѵ ѵ\ \ \ \ \ \ ظ ׺ ӹ ݵ ݸ ֹ ׵ ׵ Թ \ ɴ պ ش ص պ պ \ \ ׺ ص ֺ\ ݸ ׸ ׺ \ ɴ ҷ ش \ \ Ҵ \ \ ݸ ׸ ׺ ׸ ҹ ׺ ݸ ׸ ݸ ӹ ظ ݸ ҹ ׸ ۹ \ ɴ պ Դ պ պ \ \ Ҵ ɺ Դ Ҵ \ ɴ ɴ \ \ \ \ ֺ ش Դ غҬ ҵ ֺ ִ Դ Դ պ ش\ ҹ Ը غ Һ Դ ҹ Ӻ\ ɺ ֺ ִ ɺ ɺ ݵ ׺ ִ ɺ ɺ ݵ ׺ ִ ֺ ش \ \ \ \ \ \ \ \ \ \ \ \ \ \ ѿ ش\ \ \ ɸ ׺ Ҵ й ׸ غ ׵ ҹ ҹ ׺ \ \ \ \ \ \ Ҹ ֺ ص Ҹ Ҹ ׸ ֺ Һ ݸ ҳ ݸ ׺ ׸ ׹ Ҵ ݸ Ѻ и ׺ \ \ \ \ ѽ ׺ Ѿ ׺ ״ ѿ ׸ ѽ Һ Ҹ ״ ݸ Ҹ Ҵ ׺ ׸ Ҵ ָ Һ ظ ҹ ׺ ׺ ׸ غ \ \ \ \ Ҵ ׺\ \ \ ׹ Һ ҹ ׵ Һ Ҹ ܹ ׺ ݸ غ ҹ ׸ ׵ \ \ \ \ ѽ ״ ش Ѿ ״ \ ׺ ׸ \ Ҵ Ҵ ָ \ ֺ ׸ \ \ \ \ \ ״ ׸ ׺ ׺ ݴ ӵ ׵ \ ׵\ \ ѵ ׸ ƹ ܸ ݺ ݸ Թ ׺\ \ \ ׸ ״׸ \ к Ѵ \ ݵ\ ׸ ҹ ݸ Һ\ \ س غ ݸ ҹ ׸ ɺ Դ \ Ҵ\ \ г ָ ӹ ĺ ҹ Ҹ ظ й ҹ ҹ ݳ ҹ ҹ ݹ ̳ ع \ ֺ ׸ ֹ к ظ ׹ ׺ ׵ Һ ׸ ظ ׺\ \ ҹ ӹ ݺ ҹ ҹ ҹ ׸ \ ׸ ׸ ׺ ׸ ֵ Թ ׺\ ȵ ع ȴ ݵ \ и ѹ \ \ \ ع ع к ׺ и º κ º º ʺ Һ ֹ Һ ٹ ׺ ˺ غ к \ ׸ \ \ ָ \ \ ع ӹ\ ʺ ׺ и ˺ Ҹ ֺ Ź ׸ ҹ Ÿ ʺ ׺ ʹʹ ĺ غ ҹ ׺ ׸ ׸ ѹ ׸ ׺ ҹ ݸ Ҹ к غ ع ׺ ߽ ź ݺ ׺ ѹ ˸ ߾ Һ ع ݺ ʹ ݸ º ֺ \ ҹ ׸\ \ Һ\ \ ߾ ݸ \ ֻ к\ \ ĺ ׸ ú Ҹ ź Ӹ Ҹ ֽ ֺ \ ŵ ֺ\ ѻ\ \ غ\ \ \ \ غ\ ֺ ѹ ҹ ׺ ij ߿ Ÿ ظ ĺ ظ ݺ ҹ ص й ˸ ѹ ֹ \ غ ѻ غ\ \ \ ָ\ ҹ ׸\ \ º ݸ \ ݸ Ϻ ع ׺ Ⱥ ָ ź ݸ ĺ ׸ ׸ ߽ ָ ˺ Һ Ҹ ʺ غ Ÿ \ \ Ҹ\ \ ׺ ", ["neal-glew/mcrt/Transactions/atomcaml_icfp.pdf"] = "AtomCaml: First-Class Atomicity via Rollback\ Michael F. Ringenburg Dan Grossman\ Department of Computer Science & Engineering, University of Washington, Seattle, WA 98195 {miker,djg}@cs.washington.edu", ["neal-glew/mcrt/Transactions/stm.pdf"] = "Composable Memory Transactions\ Tim Harris Simon Marlow Simon Peyton Jones Maurice Herlihy\ Microsoft Research 7 J J Thomson Avenue, Cambridge, UK, CB3 0FB\ {tharris,simonmar,simonpj,t-maherl}@microsoft.com", ["neal-glew/mcrt/X10/IBM-X10-Sarkar.pdf"] = "X10 --- a New Programming Model for Productive Scalable Parallel Programming\ PMUA Workshop June 21, 2005 Vivek Sarkar\ (vsarkar@us.ibm.com) IBM T.J. Watson Research Center\ This work has been supported in part by the Defense Advanced Research Projects Agency (DARPA) under contract No. NBCH30390004.\ Acknowledgments\ X10 core team - Philippe Charles - Chris Donawa - Kemal Ebcioglu - Christian Grothoff - Allan Kielstra - Douglas Lovell - Maged Michael - Christoph von Praun - Vijay Saraswat - Vivek Sarkar PERCS Tools - Marina Biberstein - Julian Dolby - Robert Fuhrer - Emmanuel Geay - Matthias Hauswirth - Peter Sweeney - Beth Tibbitts - Frank Tip - Mandana Vaziri 2 PERCS Productivity - Catalina Danis - Christine Halverson PERCS University partners (Prog Model & Tools) - DePaul University (X10) - MIT (StreamIt) - Purdue University (X10) - UC Berkeley (StreamBit) - U. Delaware (Atomic sections) - U. Illinois (Fortran plug-in) - UT Austin (Componentization) - Vanderbilt University (Productivity metrics) PERCS Prog Model & Tools Team Leads - Kemal Ebcioglu, Vivek Sarkar PERCS Principal Investigator - Mootaz Elnozahy PERCS Project Manager - Vickie Robinson", ["neal-glew/mcrt/X10/Vivek_Sarkar_LaR_04_Paper_V1.pdf"] = "X10: Programming for Hierarchical Parallelism and Non-Uniform Data Access\ (Extended Abstract)\ Kemal Ebcioglu\ IBM TJ Watson Research Center PO Box 704 Yorktown Heights, NY 10598\ Vijay Saraswat\ IBM TJ Watson Research Center PO Box 704 Yorktown Heights, NY 10598\ Vivek Sarkar\ IBM TJ Watson Research Center PO Box 704 Yorktown Heights, NY 10598\ kemal@us.ibm.com ABSTRACT\ vsaraswa@us.ibm.com\ vsarkar@us.ibm.com\ The challenges faced by current and future-generation largescale systems include: 1) Frequency wall: inability to follow past frequency scaling trends, 2) Memory wall: inability to support a coherent uniform-memory access model with reasonable performance, and 3) Scalability wall: inability to utilize all levels of available parallelism in the system. These challenges manifest themselves as both performance and productivity issues in the use of large-scale systems. X10 is an experimental modern object-oriented programming language being developed to help address the second and third of these three challenges. It is intended for highperformance, high-productivity programming of large-scale computer systems with non-uniformities in data access and coherence, as well as multiple heterogeneous levels of parallelism. This paper provides a summary of the X10 language and programming model, and discusses its applicability to future processor architectures and runtime systems.", ["neal-glew/mcrt/X10/Vivek_Sarkar_LaR_04_V2.pdf"] = "X10: Programming for Hierarchical Parallelism and NonUniform Data Access\ Kemal Ebcioglu Vivek Sarkar Vijay Saraswat IBM T.J. Watson Research Center\ vsarkar@us.ibm.com\ LaR 2004 Workshop\ OOPSLA 2004\ This work has been supported in part by the Defense Advanced Research Projects Agency (DARPA) under contract No. NBCH30390004.\ Acknowledgments: PERCS team\ IBM PERCS Team members - IBM Research - IBM Systems & Technology Group - IBM Software Group - PI: Mootaz Elnozahy University partners: - Cornell - LANL - MIT - Purdue University - RPI - UC Berkeley - U. Delaware - U. Illinois - U. New Mexico - U. Pittsburgh - UT Austin - Vanderbilt University X10 core team - Philippe Charles - Kemal Ebcioglu - Patrick Gallop - Christian Grothoff (Purdue) - Christoph von Praun - Vijay Saraswat - Vivek Sarkar\ \ V. Sarkar\ Additional contributors to X10 design & implementation ideas: - David Bacon - Bob Blainey - Perry Cheng - Julian Dolby - Guang Gao (U Delaware) - Allan Kielstra - Robert O'Callahan - Filip Pizlo (Purdue) - V.T.Rajan - Lawrence Rauchwerger (Texas A&M) - Mandana Vaziri - Jan Vitek OOPSLA LaR 2004 Workshop (Purdue) 2", ["neal-glew/mcrt/X10/X10-oopsla05 - final.pdf"] = "X10: An Object-Oriented Approach to Non-Uniform Cluster Computing\ Philippe Charles pcharles@us.ibm.com Christian Grothoff christian@grothoff.org Vijay Saraswat vsaraswa@us.ibm.com ABSTRACT\ It is now well established that the device scaling predicted by Moore's Law is no longer a viable option for increasing the clock frequency of future uniprocessor systems at the rate that had been sustained during the last two decades. As a result, future systems are rapidly moving from uniprocessor to multiprocessor configurations, so as to use parallelism instead of frequency scaling as the foundation for increased compute capacity. The dominant emerging multiprocessor structure for the future is a Non-Uniform Cluster Computing (NUCC) system with nodes that are built out of multi-core SMP chips with non-uniform memory hierarchies, and interconnected in horizontally scalable cluster configurations such as blade servers. Unlike previous generations of hardware evolution, this shift will have a major impact on existing software. Current OO language facilities for concurrent and distributed programming are inadequate for addressing the needs of NUCC systems because they do not support the notions of non-uniform data access within a node, or of tight coupling of distributed nodes. We have designed a modern object-oriented programming language, X10, for high performance, high productivity programming of NUCC systems. A member of the partitioned global address space family of languages, X10 highlights the explicit reification of locality in the form of places; IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY 10598, USA. UCLA Computer Science Department, Boelter Hall, Los Angeles, CA 90095, USA. IBM Toronto Laboratory, 8200 Warden Avenue, Markham ON L6G 1C7, Canada. ", ["neal-glew/mcrt/X10/determinate-imperative-programming.pdf"] = "Determinate Imperative Programming\ Determinate Imperative Programming\ A clocked interpretation of imperative syntax (Extended Abstract)\ Vijay Saraswat\ IBM Research vijay@saraswat.org\ Radha Jagadeesan\ DePaul University rjagadeesan@depaul.cs.edu\ Armando Solar-lezama\ UC Berkeley asolar@eecs.berkeley.edu\ Christoph von Praun\ IBM Research praun@us.ibm.com", ["neal-glew/mcrt/X10/x10-concur.pdf"] = "Concurrent Clustered Programming (Extended Abstract)\ Vijay Saraswat1\ 1 2\ and Radha Jagadeesan2\ IBM T.J. Watson Research Lab School of CTI, DePaul University", ["neal-glew/mcrt/mapreduce-osdi04.pdf"] = "MapReduce: Simplified Data Processing on Large Clusters\ Jeffrey Dean and Sanjay Ghemawat\ jeff@google.com, sanjay@google.com\ Google, Inc.", ["neil-jones/mix-partial-evaluator.pdf"] = "Lisp and Symbolic Computation, 2, 9-50 (1989)\ © 1989 Kluwer Academic Publishers--Manufactured in The Netherlands.\ MIX: A SELF-APPLICABLE PARTIAL\ EVALUATOR FOR EXPERIMENTS IN\ COMPILER G E N E R A T I O N\ NElL D. JONES, PETER SESTOFT and HARALD SONDERGAARD*\ DIKU, University of Copenhagen~ Universitetsparken 1, DK-2100 Copenhagen O, Denmark\ (neil @ diku. dk, sestof + @ diku. dk,harald @ munnari, au)", ["neil-mitchell/shake-icfp.pdf"] = "Shake Before Building\ Replacing Make with Haskell\ Neil Mitchell\ ndmitchell@gmail.com", ["neil-toronto/dissertation.pdf"] = "Trustworthy, Useful Languages for Probabilistic Modeling and Inference\ Neil Toronto\ A dissertation submitted to the faculty of\ Brigham Young University\ in partial fulfillment of the requirements for the degree of\ Doctor of Philosophy\ Jay McCarthy, Chair\ Kevin Seppi\ Chris Grant\ Eric Mercer\ Dan Olsen\ Department of Computer Science\ Brigham Young University\ April 2014\ Copyright c 2014 Neil Toronto\ All Rights Reserved", ["nick-benton/exceptional-syntax.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ Exceptional Syntax\ NICK BENTON and ANDREW KENNEDY\ Microsoft Research, St. George House, 1 Guildhall Street, Cambridge CB2 3NH, UK (e-mail: {nick,akenn}@microsoft.com)", ["nick-benton/interpret7.ps"] = "Under consideration for publication in J. Functional Programming 1\ FUNCT I ONAL PEARL\ Embedded Interpreters\ NICK BENTON\ Microsoft Research\ 7 J J Thomson Avenue\ Cambridge CB3 0FB\ United Kingdom\ (email: nick@microsoft.com)", ["niklaus-wirth/LeanSoftware.djvu"] = "A Plea for Lean \ Software \ Nildaus Wirth \ ETH Ziirich \ Software's girth has surpassed \ its functionality, largely \ because hardware \ advances make this possible. \ The way to streamline \ software lies in disciplined \ methodologies and \ a return to the essentials. \ emory requirements of today's workstations typicallyjump \ substantially--from several to many megabytes--whenever \ there's a new software release. When demand surpasses \ capacity, it's time to buy add-on memory. When the system has no more \ extensibility, it's time to buy a new, more powerful workstation. Do \ increased performance and functionality keep pace with the increased \ demand for resources? Mostly the answer is no. \ About 25 years ago, an interactive text editor could be designed with as \ little as 8,000 bytes of storage. (Modern program editors request 100 times \ that much!) An operating system had to manage with 8,000 bytes, and a ", ["niklaus-wirth/ebnf.pdf"] = "instead of = to emphasize that consideration must be taken of the quantization on r. Sample results from a computer program to compute Sk in this manner are given in Figures 2 and 3. Consideration of the templates Sk reveals much about the behavior of the Hough line detector in noisy situations and helps to establish threshold settings. Figure 2 (previous page) shows that the template for line (120 °, 5) integrates 21 spatial cell outputs. For a binary 21 × 21 image, as in Figure 2, perhaps a threshold of 15 would be appropriate for accumulator cell (120 °, 5), depending on the noise situation. It has been assumed that the line extends off the retina in both directions. If shorter line segments are to be detected, the threshold must be suitably lowered. Figure 3 shows rather sloppy templates for a set of three parallel lines at a coarse quantification on r. Since there are only seven levels of r, the templates for all 30 ° lines are evident. Note that a few 120 ° lines would stimulate many cells of each template and could be confused with a thin 30 ° line. A blob oriented along a 30 ° line could cause similar confusion.", ["niklaus-wirth/good-design.djvu"] = "", ["niklaus-wirth/stepwise-refinement.djvu"] = "z7 ", ["noah-goodman/church.pdf"] = "Church: a language for generative models\ Noah D. Goodman, Vikash K. Mansinghka∗\ ,\ Daniel M. Roy, Keith Bonawitz & Joshua B. Tenenbaum\ MIT BCS/CSAIL\ Cambridge, MA 02139\ Revision 3:\ May 31, 2008", ["norman-ramsey/TR_2002_105.pdf"] = "Experience in the Design, Implementation and Use of a Retargetable Static Binary Translation Framework\ Cristina Cifuentes, Mike Van Emmerik, Norman Ramsey, and Brian Lewis\ Experience in the Design, Implementation and Use of a Retargetable Static Binary Translation Framework\ Cristina Cifuentes, Mike Van Emmerik, Norman Ramsey, and Brian Lewis SMLI TR-2002-105 January 2002", ["norman-ramsey/bits-fig.ps"] = "31 0\ val:\ 13 12\ random tmp", ["norman-ramsey/blocks.dvi"] = "", ["norman-ramsey/blocks.pdf"] = "Declarative Composition of Stack Frames\ Christian Lindig1 and Norman Ramsey2\ 1\ Universitt des Saarlandes, 66 123 Saarbrcken, Germany a u lindig@cs.uni-sb.de 2 Division of Engineering and Applied Sciences Harvard University, Cambridge, MA 02138, USA nr@eecs.harvard.edu", ["norman-ramsey/blocks.ps"] = "Declarative Composition of Stack Frames\ Christian Lindig 1 and Norman Ramsey 2\ 1 Universitat des Saarlandes, 66 123 Saarbrucken, Germany\ lindig@cs.unisb.de\ 2 Division of Engineering and Applied Sciences\ Harvard University, Cambridge, MA 02138, USA\ nr@eecs.harvard.edu\ Reprinted from the 13th International Conference on Compiler Construction", ["norman-ramsey/c--con.dvi"] = " Work in progress\ Featherweight Concurrency in a Portable Assembly Language\ Norman Ramsey Simon Peyton Jones\ Harvard University Microsoft Research Ltd\ nr@eecs.harvard.edu simonpj@microsoft.com", ["norman-ramsey/c--con.pdf"] = "Work in progress\ Featherweight Concurrency in a Portable Assembly Language\ Norman Ramsey Harvard University nr@eecs.harvard.edu Simon Peyton Jones Microsoft Research Ltd simonpj@microsoft.com", ["norman-ramsey/c--con.ps"] = "Work in progress\ Featherweight Concurrency in a Portable Assembly Language\ Norman Ramsey\ Harvard University\ nr@eecs.harvard.edu\ Simon Peyton Jones\ Microsoft Research Ltd\ simonpj@microsoft.com", ["norman-ramsey/c--exn.pdf"] = " \ \r\ \ \r \ \ \ A Single Intermediate Language That Supports Multiple Implementations of Exceptions\ Norman Ramsey\ Harvard University\ Simon Peyton Jones\ Microsoft Research Ltd\ nr@eecs.harvard.edu\ simonpj@microsoft.com\ \r \r ֹ ҹ \r \r ׸ \r \r ݸ \r׺ \r Թ \r \r ׸ Թ \r \r Թ ׺ \r \r \r \r ҹ \r ׸ ҹ \r ׺ \r \r \r \r ҹ \rݸ \r \r \r \r \r \r \r ׺", ["norman-ramsey/c--exn.ps"] = "Reprinted from Proceedings of the ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)\ A Single Intermediate Language\ That Supports Multiple Implementations of Exceptions\ Norman Ramsey\ Harvard University\ nr@eecs.harvard.edu\ Simon Peyton Jones\ Microsoft Research Ltd\ simonpj@microsoft.com", ["norman-ramsey/c--exnslides.ps"] = "A\ Single\ Intermediate\ Language\ That\ Supports\ Multiple\ Implementations\ of\ Exceptions\ Norman\ Ramsey,\ Harvard\ Simon\ Peyton\ Jones,\ Microsoft\ http://www.cminusminus.org\ So\ you\ want\ to\ write\ a\ compiler\ Enormous\ knowledge\ of\ compiler\ technology.\ .\ .\ but\ a\ big\ job\ to\ implement\ \ SSA,\ PRE,\ inlining,\ register\ coalescing.\ .\ .\ \ SPARC,\ MIPS,\ Alpha,\ HPPA,\ PowerPC,\ 68020,\ Pentium.\ .\ .\ Why\ not\ look\ for\ a\ shortcut?\ 2\ The\ garden\ path\ My\ source\ code\ My\ favorite\ front\ end\ C\ code\ x86\ PowerPC\ SPARC\ MIPS\ HPPA\ Arm\ Alpha\ 68k\ 3\ The\ awful\ truth\ Not\ quite\ as\ good\ as\ your\ own\ code\ generator:\ \ No\ proper\ tail\ calls\ \ Pointers\ may\ alias\ \ Can't\ return\ multiple\ registers\ \ No\ accurate\ garbage\ collection\ \ setjmp\ and\ longjmp\ for\ exceptions\ \ Forget\ sourcelevel\ debugging\ 4\ Alternative---A\ compiler\ infrastructure?\ Retargetable\ code\ generators\ exist\ \ High", ["norman-ramsey/c--gc.dvi"] = " C-- : a portable assembly language\ that supports garbage collection\ Simon Peyton Jones1 , Norman Ramsey2 , and Fermin Reig3\ 1 simonpj@microsoft.com , Microsoft Research Ltd\ 2 nr@cs.virginia.edu , University of Virginia\ 3 reig@dcs.gla.ac.uk , University of Glasgow", ["norman-ramsey/c--gc.pdf"] = "C--: a portable assembly language that supports garbage collection\ Simon Peyton Jones1 , Norman Ramsey2 , and Fermin Reig3\ 1\ simonpj@microsoft.com, Microsoft Research Ltd 2 nr@cs.virginia.edu, University of Virginia 3 reig@dcs.gla.ac.uk, University of Glasgow", ["norman-ramsey/c--gc.ps"] = "C: a portable assembly language\ that supports garbage collection\ Simon Peyton Jones 1 , Norman Ramsey 2 , and Fermin Reig 3\ 1 simonpj@microsoft.com, Microsoft Research Ltd\ 2 nr@cs.virginia.edu, University of Virginia\ 3 reig@dcs.gla.ac.uk, University of Glasgow", ["norman-ramsey/c--rtia4.dvi"] = "Machine-Independent Support for Garbage Collection,\ Debugging, Exception Handling, and Concurrency\ (Draft)\ Simon Peyton Jones Norman Ramsey\ University of Glasgow University of Virginia\ August 7, 1998", ["norman-ramsey/c--rtia4.ps"] = "MachineIndependent Support for Garbage Collection,\ Debugging, Exception Handling, and Concurrency\ (Draft)\ Simon Peyton Jones\ University of Glasgow\ Norman Ramsey\ University of Virginia\ August 7, 1998", ["norman-ramsey/c--rtiul.dvi"] = "Machine-Independent Support for Garbage Collection,\ Debugging, Exception Handling, and Concurrency\ (Draft)\ Simon Peyton Jones Norman Ramsey\ University of Glasgow University of Virginia\ August 7, 1998", ["norman-ramsey/c--rtiul.ps"] = "MachineIndependent Support for Garbage Collection,\ Debugging, Exception Handling, and Concurrency\ (Draft)\ Simon Peyton Jones\ University of Glasgow\ Norman Ramsey\ University of Virginia\ August 7, 1998", ["norman-ramsey/checker-fig.ps"] = "(constructor)\ emit\ assembly\ emit\ \"binary\"\ assemble assemble\ disassemble\ disassemble\ instruction\ A inst\ B'\ A'\ inst\ inst A''\ B''\ inst\ inst\ A data", ["norman-ramsey/checker.ps"] = "Automatic Checking of Instruction Specifications\ Mary Fern'andez\ AT&T Labs\ 600 Mountain Ave.\ Murray Hill, NJ 07974\ mff@research.att.com\ Norman Ramsey\ Dept. of Computer Science\ University of Virginia\ Charlottesville, VA, 22903\ nr@cs.virginia.edu", ["norman-ramsey/concurrent.ps"] = "Concurrent programming in ML\ Norman Ramsey \\Lambda\ Department of Computer Science, Princeton University\ 35 Olden Street\ Princeton, New Jersey 08544\ April 1990", ["norman-ramsey/correctness.ps"] = "Reprinted from Proceedings of the 21st ACM Symposium on the Principles of Programming Languages, January 1994.\ Correctness of TrapBased Breakpoint Implementations\ Norman Ramsey\ Bell Communications Research\ 445 South Street, Morristown, NJ 07960\ norman@bellcore.com", ["norman-ramsey/custom.dvi"] = " Submitted to Proceedings of the ACM SIGPLAN '03 Conference on Programming Language Design and Implementation\ Custom Calling Conventions in a Portable Assembly Language\ Norman Ramsey Christian Lindig\ Division of Engineering and Applied Sciences\ Harvard University\ nr@eecs.harvard.edu lindig@eecs.harvard.edu", ["norman-ramsey/custom.pdf"] = "Submitted to Proceedings of the ACM SIGPLAN '03 Conference on Programming Language Design and Implementation\ Custom Calling Conventions in a Portable Assembly Language\ Norman Ramsey Christian Lindig Division of Engineering and Applied Sciences Harvard University nr@eecs.harvard.edu lindig@eecs.harvard.edu", ["norman-ramsey/custom.ps"] = "Submitted to Proceedings of the ACM SIGPLAN '03 Conference on Programming Language Design and Implementation\ Custom Calling Conventions in a Portable Assembly Language\ Norman Ramsey Christian Lindig\ Division of Engineering and Applied Sciences\ Harvard University\ nr@eecs.harvard.edu lindig@eecs.harvard.edu", ["norman-ramsey/delenda/eng.dvi"] = " Staged Allocation: Engineering the Specification and\ Implementation of Procedure Calling Conventions\ Reuben Olinsky Christian Lindig Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ folinsky ; lindig ; nr g@eecs.harvard.edu", ["norman-ramsey/delenda/eng.pdf"] = "Staged Allocation: Engineering the Specification and Implementation of Procedure Calling Conventions\ Reuben Olinsky Christian Lindig Norman Ramsey Division of Engineering and Applied Sciences Harvard University {olinsky, lindig, nr}@eecs.harvard.edu", ["norman-ramsey/delenda/eng.ps"] = "Staged Allocation: Engineering the Specification and\ Implementation of Procedure Calling Conventions\ Reuben Olinsky Christian Lindig Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ {olinsky,lindig,nr}@eecs.harvard.edu", ["norman-ramsey/desprin.dvi"] = " Work in progress\ Design Principles for Machine-Description Languages\ Norman Ramsey Jack W. Davidson Mary F. Fernandez\ Harvard University University of Virginia AT&T Research", ["norman-ramsey/desprin.pdf"] = "Work in progress\ Design Principles for Machine-Description Languages\ Norman Ramsey Harvard University Jack W. Davidson University of Virginia Mary F. Fernndez a AT&T Research", ["norman-ramsey/desprin.ps"] = "Work in progress\ Design Principles for MachineDescription Languages\ Norman Ramsey\ Harvard University\ Jack W. Davidson\ University of Virginia\ Mary F. Fernandez\ AT&T Research", ["norman-ramsey/developing.ps"] = "Developing Formally Verified Ada Programs \\Lambda\ Norman Ramsey y\ Odyssey Research Associates\ October 10, 1988", ["norman-ramsey/dfopt.dvi"] = " Submitted to the 2010 ACM Symposium on Principles of Programming Languages (POPL)\ Hoopl: Dataflow Optimization Made Simple\ Norman Ramsey Jo\"ao Dias Simon Peyton Jones\ Tufts University Tufts University Microsoft Research\ nr@cs.tufts.edu dias@cs.tufts.edu simonpj@microsoft.com", ["norman-ramsey/dfopt.pdf"] = "Submitted to the 2010 ACM Symposium on Principles of Programming Languages (POPL)\ Hoopl: Dataflow Optimization Made Simple\ Norman Ramsey\ Tufts University nr@cs.tufts.edu\ Jo~ o Dias a\ Tufts University dias@cs.tufts.edu\ Simon Peyton Jones\ Microsoft Research simonpj@microsoft.com", ["norman-ramsey/dfopt.ps"] = "Submitted to the 2010 ACM Symposium on Principles of Programming Languages (POPL)\ Hoopl: Dataflow Optimization Made Simple\ Norman Ramsey\ Tufts University\ nr@cs.tufts.edu\ Jo ao Dias\ Tufts University\ dias@cs.tufts.edu\ Simon Peyton Jones\ Microsoft Research\ simonpj@microsoft.com", ["norman-ramsey/els.dvi"] = "", ["norman-ramsey/els.pdf"] = "Reprinted from Proceedings of the Tenth ACM SIGPLAN International Conference on Functional Programming (ICFP'05)\ An Expressive Language of Signatures\ Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University\ Kathleen Fisher\ AT&T Labs Research\ Paul Govereau\ Division of Engineering and Applied Sciences Harvard University", ["norman-ramsey/els.ps"] = "Reprinted from Proceedings of the Tenth ACM SIGPLAN International Conference on Functional Programming (ICFP'05)\ An Expressive Language of Signatures\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ Kathleen Fisher\ AT&T Labs Research\ Paul Govereau\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/embed.dvi"] = " Embedding an Interpreted Language\ Using Higher-Order Functions and Types\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/embed.pdf"] = "Embedding an Interpreted Language Using Higher-Order Functions and Types\ Norman Ramsey Division of Engineering and Applied Sciences Harvard University", ["norman-ramsey/embed.ps"] = "Embedding an Interpreted Language\ Using HigherOrder Functions and Types\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/embedj.dvi"] = "Under consideration for publication in J. Functional Programming 1\ Embedding an Interpreted Language Using\ Higher-Order Functions and Types\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ ______________________________________________________________________________________________________________________", ["norman-ramsey/embedj.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ Embedding an Interpreted Language Using Higher-Order Functions and Types\ Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University", ["norman-ramsey/embedj.ps"] = "Under consideration for publication in J. Functional Programming 1\ Embedding an Interpreted Language Using\ HigherOrder Functions and Types\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/error.ps"] = "Eliminating Spurious Error Messages\ Using Exceptions, Polymorphism,\ and HigherOrder Functions\ Norman Ramsey\ Department of Computer Science, University of Virginia, Charlottesville, Virginia 22903 USA\ Email: nr@cs.virginia.edu\ Many language processors make assumptions after detecting an error. If the\ assumptions are invalid, a compiler may issue a cascade of error messages in which\ only the first represents a true error in the input; later messages are side effects\ of the original error. Eliminating such spurious error messages requires keeping\ track of values within the compiler that are not available because of a previously\ detected error. Examples include symboltable entries, types, and intermediate\ code.\ This paper presents a discipline for tracking unavailable values and avoiding cas\ cading error messages. The discipline extends the error monad of Spivey [1] and", ["norman-ramsey/gcra.dvi"] = "", ["norman-ramsey/gcra.pdf"] = "Reprinted from Proceedings of the ACM SIGPLAN '04 Conference on Programming Language Design and Implementation\ A Generalized Algorithm for Graph-Coloring Register Allocation\ Michael D. Smith, Norman Ramsey, and Glenn Holloway\ Division of Engineering and Applied Sciences Harvard University {smith, nr, holloway}@eecs.harvard.edu", ["norman-ramsey/gcra.ps"] = "Reprinted from Proceedings of the ACM SIGPLAN '04 Conference on Programming Language Design and Implementation\ A Generalized Algorithm\ for GraphColoring Register Allocation\ Michael D. Smith, Norman Ramsey, and Glenn Holloway\ Division of Engineering and Applied Sciences\ Harvard University\ {smith, nr, holloway}@eecs.harvard.edu", ["norman-ramsey/gentileset.dvi"] = " Submitted to the 2010 ACM Symposium on Principles of Programming Languages (POPL)\ Automatically Generating Back Ends\ Using Declarative Machine Descriptions\ Jo\"ao Dias Norman Ramsey\ Tufts University Tufts University\ dias@cs.tufts.edu nr@cs.tufts.edu", ["norman-ramsey/gentileset.pdf"] = "Submitted to the 2010 ACM Symposium on Principles of Programming Languages (POPL)\ Automatically Generating Back Ends Using Declarative Machine Descriptions\ Jo~ o Dias a\ Tufts University dias@cs.tufts.edu\ Norman Ramsey\ Tufts University nr@cs.tufts.edu", ["norman-ramsey/gentileset.ps"] = "Submitted to the 2010 ACM Symposium on Principles of Programming Languages (POPL)\ Automatically Generating Back Ends\ Using Declarative Machine Descriptions\ Joao Dias\ Tufts University\ dias@cs.tufts.edu\ Norman Ramsey\ Tufts University\ nr@cs.tufts.edu", ["norman-ramsey/icfp99.dvi"] = "", ["norman-ramsey/icfp99.ps"] = "Reprinted from ACM SIGPLAN Notices 35(3):73{83, March 2000.\ The 1999 ICFP Programming Contest\ Norman Ramsey\ Harvard University\ nr@eecs.harvard.edu\ Kevin Scott\ University of Virginia\ jks6b@cs.virginia.edu\ Introduction\ The International Conference on Functional Program-\ ming (ICFP) sponsors an annual programming contest.\ The most recent contest was held from September 2 to\ September 5, 1999. The contest is primarily for fun,\ but it also serves two serious purposes: to show how\ functional languages can help people solve hard prob-\ lems quickly, and to provide a \\reality check\" by com-\ paring programs written in functional languages to pro-\ grams written using the more popular imperative and\ object-oriented paradigms. The contest is open to all,\ and entrants may use any programming language|the", ["norman-ramsey/ldb.ps"] = "Breakpoint\ implementation\ SPARC\ flow analysis\ with matching\ statements\ SPARC\ flow analysis\ in pure\ Modula3\ instruction stream\ in program\ being debugged\ other\ debugger\ functions...\ SPARC\ toolkit\ spec\ templates\ used to fetch\ from streams\ toolkit", ["norman-ramsey/ldbint.dvi"] = "Extended version of a paper from the 14th International Conference on Compiler Construction\ Source-level Debugging for Multiple Languages\ With Modest Programming Effort\ Sukyoung Ryu and Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ fsyryu ; nr g@eecs.harvard.edu", ["norman-ramsey/ldbint.pdf"] = "Extended version of a paper from the 14th International Conference on Compiler Construction\ Source-level Debugging for Multiple Languages With Modest Programming Effort\ Sukyoung Ryu and Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University {syryu, nr}@eecs.harvard.edu", ["norman-ramsey/ldbint.ps"] = "Sourcelevel Debugging for Multiple Languages\ With Modest Programming Effort\ Sukyoung Ryu and Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ {syryu,nr}@eecs.harvard.edu\ Extended version of a paper from the 14th International Conference on Compiler Construction", ["norman-ramsey/learn.dvi"] = " Learn Technical Writing in Two Hours per Week\ Norman Ramsey\ Harvard University\ October 25, 2006\ Preface\ You may have difficulty writing, or you may have heard from professors or reviewers that\ your writing is hard to follow. Or you may have studied writing only in the context of\ literature, and have trouble translating your skills into a technical setting. Enough students\ have these difficulties that I have invested significant effort in helping students become\ comfortable, fluid, clear technical writers.\ This booklet explains how to study technical writing in the context of a weekly group.\ If nothing else, a group will show you that you are not alone in your difficulties. Problems\ you may have are problems that others also have, and you can find similar problems even in", ["norman-ramsey/learn.pdf"] = "Learn Technical Writing in Two Hours per Week\ Norman Ramsey Harvard University October 25, 2006\ Preface\ You may have difficulty writing, or you may have heard from professors or reviewers that your writing is hard to follow. Or you may have studied writing only in the context of literature, and have trouble translating your skills into a technical setting. Enough students have these difficulties that I have invested significant effort in helping students become comfortable, fluid, clear technical writers. This booklet explains how to study technical writing in the context of a weekly group. If nothing else, a group will show you that you are not alone in your difficulties. Problems you may have are problems that others also have, and you can find similar problems even in published papers. But we do not emphasize problems; instead we emphasize useful principles and practices that you can learn to apply to your own manuscripts. I emphasize principles that can be applied successfully by a beginning writer. Especially for students in science and engineering, a principle is easily applicable when there is a simple, experimental way to decide if the written words obey the principle. (For example, I do not try to teach \"omit needless words,\" because I know of no simple way to decide if a word is needless.) In this approach, I have been greatly influenced by Joseph Williams (1995). I emphasize practices that have been shown, again by experiment, to lead to productive writing. For example, I explain the difference between \"binge writing\" and \"brief, daily sessions.\" In this approach, I have been greatly influenced by Robert Boice (2000). What both approaches have in common is that even a beginner can apply a simple test to see whether he or she is applying a given principle or following a given practice. I hope this \"engineering\" focus on testable ideas will help you with your writing. Norman Ramsey Cambridge, Mass.", ["norman-ramsey/lpsimp.djvu"] = "Literate. programming \ to, ls let you'arrange.:the \ pods' of'a.program' in \ any order and extract \ documentotio:n \"and'c o de \ from the same source \ file. The author argues \ that. language-depen- \ lence 'and feature com- \ plexity' hove\" 'hampered \ .'accePtance of these \ tools, 1hen offers a \ simpler alternative. \ NORMA RAJSEY \ 8ellcore \ n 1983, Donald Knuth introduced \ literate programming in the form of \ Web, his tool for writing literate Pascal \ programs. Web lets authors interleave \ source code and descriptive text in a \ single document. It also frees authors \ to arrange the parts of a program in an \ order that helps explain how the pro-'.. \ gram functions, not necessarilyth e \ order required by the compiler. \ In the mid-'80s, word spread about \ this new programming method:..as sev: ", ["norman-ramsey/lpsimp.pdf"] = "", ["norman-ramsey/maniaj.dvi"] = "Under consideration for publication in J. Functional Programming 1\ M O D U L A R P E A R L\ ML Module Mania:\ A Type-Safe, Separately Compiled,\ Extensible Interpreter\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ ______________________________________________________________________________________________________________________", ["norman-ramsey/maniaj.pdf"] = "paper uses the power to solve an open programming problem, adding a to that debate. We focus on a kind of interpreter for which extensibility and separate c are especially important: the embedded interpreter. Embedding is motiva problem of controlling a complex application, like a web server or an compiler, that is written in a statically typed, compiled language such a or ML. Such an application will have lots of potential configurations and How are you to control it? If you use command-line arguments, you may fi writing an interpreter for an increasingly complicated language of com\ and data to the scripting language, which we call extension. 2. The interpreter should be compiled separately from the application ular, it should be possible to compile an application-specific extensi using or changing the interpreter's source code. In other words, the should be isolated in a library. 3. The combination of application and scripting language should be and this safety should be checked by the host-language compiler.", ["norman-ramsey/maniaj.ps"] = "Under consideration for publication in J. Functional Programming 1\ MODULAR PEARL\ ML Module Mania:\ A TypeSafe, Separately Compiled,\ Extensible Interpreter\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/maniaws.dvi"] = "", ["norman-ramsey/maniaws.pdf"] = "Reprinted from the 2005 ACM SIGPLAN Workshop on ML\ ML Module Mania: A Type-Safe, Separately Compiled, Extensible Interpreter\ Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University\ 1\ Introduction\ ML provides unusually powerful mechanisms for building programs from reusable modules. Such power is not available in other popular languages, and programmers accustomed to those languages have wondered if a powerful modules system is really necessary. This paper explores the power of ML modules--including higher-order functors--via an extended programming example. The example solves a problem in the construction of interpreters: how to combine extensibility with separate compilation in a safe language. We focus on a kind of interpreter for which extensibility and separate compilation are especially important: the embedded interpreter. An embedded interpreter implements a reusable scripting language that can be used to control a complex application--like a web server or an optimizing compiler--which is written in a statically typed, compiled host language like ML. The interpreter becomes part of the application, so the application can invoke the interpreter and the interpreter can call code in the application. The idea was first demonstrated by Ousterhout (1990) and has been widely imitated (Benson 1994; Laumann and Bormann 1994; Ierusalimschy, de Figueiredo, and Celes 1996a; Jenness and Cozens 2002; van Rossum 2002). Sometimes a host language can also be used for scripting (Leijen and Meijer 2000), but often it is inconvenient or even impossible to make a host-language compiler available at run time. A scripting language and its interpreter must meet several requirements: 1. They must be extensible: the whole point is to add application-specific data and code to the scripting language. 2. The interpreter should be compiled separately from the host application. In particular, it should be possible to compile an application-specific extension without using or changing the interpreter's source code. In other words, the interpreter should be isolated in a library. 3. The combination of application and scripting language should be typesafe, and this safety should be checked by the host-language compiler.", ["norman-ramsey/maniaws.ps"] = "Reprinted from the 2005 ACM SIGPLAN Workshop on ML\ ML Module Mania: A TypeSafe,\ Separately Compiled, Extensible Interpreter\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ 1 Introduction\ ML provides unusually powerful mechanisms for building programs from\ reusable modules. Such power is not available in other popular languages,\ and programmers accustomed to those languages have wondered if a pow\ erful modules system is really necessary. This paper explores the power of\ ML modules---including higherorder functors---via an extended programming\ example. The example solves a problem in the construction of interpreters:\ how to combine extensibility with separate compilation in a safe language.\ We focus on a kind of interpreter for which extensibility and separate com\ pilation are especially important: the embedded interpreter. An embedded in\ terpreter implements a reusable scripting language that can be used to control", ["norman-ramsey/mappings-fig.ps"] = "emit\ assemble (a) binary B\ symbolic\ disassemble (d)\ assembly A\ binary\ instruction\ assembly\ emit\ (constructor)", ["norman-ramsey/match.dvi"] = " When Do Match-Compilation Heuristics Matter?\ Kevin Scott and Norman Ramsey\ Department of Computer Science\ University of Virginia\ jks6b@cs.virginia.edu nr@cs.virginia.edu\ May 2000", ["norman-ramsey/match.pdf"] = "When Do Match-Compilation Heuristics Matter?\ Kevin Scott and Norman Ramsey Department of Computer Science University of Virginia jks6b@cs.virginia.edu nr@cs.virginia.edu May 2000", ["norman-ramsey/match.ps"] = "When Do Match-Compilation Heuristics Matter?\ Kevin Scott and Norman Ramsey\ Department of Computer Science\ University of Virginia\ jks6b@cs.virginia.edu nr@cs.virginia.edu\ May 2000", ["norman-ramsey/mdesc.dvi"] = "", ["norman-ramsey/mdesc.pdf"] = "Reprinted from the ACM SIGPLAN Workshop on Languagse, Compilers, and Tools for Embedded Systems (LCTES '98)\ Machine Descriptions to Build Tools for Embedded Systems\ Norman Ramsey and Jack W. Davidson\ Department of Computer Science University of Virginia Charlottesville, VA 22903 nr@cs.virginia.edu jwd@cs.virginia.edu", ["norman-ramsey/mdesc.ps"] = "Machine Descriptions to Build Tools for\ Embedded Systems\ Norman Ramsey and Jack W. Davidson\ Department of Computer Science\ University of Virginia\ Charlottesville, VA 22903\ nr@cs.virginia.edu jwd@cs.virginia.edu\ Reprinted from the ACM SIGPLAN Workshop on Languagse, Compilers, and Tools for Embedded Systems (LCTES '98)", ["norman-ramsey/mdsmith_pldi04_final.pdf"] = "A Generalized Algorithm for Graph Coloring Register Allocation\ Michael D. Smith, Norman Ramsey, and Glenn Holloway Harvard University\ {smith,nr,holloway}@eecs.harvard.edu", ["norman-ramsey/mdsmith_pldi04_final.ps"] = "A Generalized Algorithm\ for Graph Coloring Register Allocation\ Michael D. Smith, Norman Ramsey, and Glenn Holloway\ Harvard University\ {smith,nr,holloway}@eecs.harvard.edu", ["norman-ramsey/mld.ps"] = "burg\ BURS\ rewrite\ engine\ Hand\ written\ code\ generator\ optimization\ encoding procedures\ data\ stream\ code\ stream\ toolkit library\ write a.out header\ copy streams\ IR trees\ data, etc.\ a.out\ intermediate\ code\ SPARC\ toolkit\ spec\ SPARC\ BURG\ spec\ toolkit", ["norman-ramsey/mllike.ps"] = "Using an MLLike Language to Specify the\ Semantics of Machine Instructions\ Norman Ramsey\ Department of Computer Science\ University of Virginia\ Charlottesville, VA 22903\ nr@cs.virginia.edu\ July 24, 1998", ["norman-ramsey/oxform-a4.ps"] = "A Transformational Approach to\ Binary Translation of Delayed Branches\ (4980word technical summary)\ Norman Ramsey\ Department of Computer Science\ University of Virginia, Charlottesville, VA 22903 USA\ nr@cs.virginia.edu\ Cristina Cifuentes\ Department of Computer Science and Electrical Engineering\ University of Queensland, Brisbane, QLD 4072 Australia\ cristina@csee.uq.edu.au\ October 9, 1998", ["norman-ramsey/oxform.ps"] = "A Transformational Approach to\ Binary Translation of Delayed Branches\ (4980word technical summary)\ Norman Ramsey\ Department of Computer Science\ University of Virginia, Charlottesville, VA 22903 USA\ nr@cs.virginia.edu\ Cristina Cifuentes\ Department of Computer Science and Electrical Engineering\ University of Queensland, Brisbane, QLD 4072 Australia\ cristina@csee.uq.edu.au\ October 9, 1998", ["norman-ramsey/pmonad-talk.ps"] = "Stochastic\ Lambda\ Calculus\ and\ Monads\ of\ Probability\ Distributions\ Norman\ Ramsey\ Avi\ Pfeffer\ Division\ of\ Engineering\ and\ Applied\ Sciences\ Harvard\ University\ When\ worlds\ collide\ Avi:\ Language\ for\ probability!\ 2\ When\ worlds\ collide\ Avi:\ Language\ for\ probability!\ Norman:\ Semantics?\ 3\ When\ worlds\ collide\ Avi:\ Language\ for\ probability!\ Norman:\ Semantics?\ Avi:\ Tables.\ .\ .\ 4\ When\ worlds\ collide\ .\ .\ .\ Result\ of\ discussion:\ \ Language\ design\ exposes\ implementation\ \ Must\ know\ implementation\ to\ use\ \ No\ clear\ semantic\ model\ Norman\ is\ unhappy\ 5\ Problem\ we're\ trying\ to\ solve\ Language\ for\ probabilistic\ modeling\ \ Want\ nice\ clean\ semantics\ \ Want\ nice\ efficient\ implementation\ This\ paper:\ solution\ for\ very\ simple\ language\ (Both\ players\ happy)\ Along\ the\ way\ Probability,\ monads,\ and\ efficient\ models\ 6\ A\ probabilistic\ language\ Stochastic\ lcalculus\ e\ ::=\ x\ j\ v\ j\ lx:e\ j\ e\ 1\ e\ 2\ j\ let", ["norman-ramsey/pmonad.dvi"] = "", ["norman-ramsey/pmonad.pdf"] = "Reprinted from the Conference Record of the 29th Annual ACM Symposium on Principles of Programming Languages (POPL'02)\ Stochastic Lambda Calculus and Monads of Probability Distributions\ Norman Ramsey Avi Pfeffer\ Division of Engineering and Applied Sciences Harvard University", ["norman-ramsey/pmonad.ps"] = "Reprinted from the Conference Record of the 29th Annual ACM Symposium on Principles of Programming Languages (POPL'02)\ Stochastic Lambda Calculus and\ Monads of Probability Distributions\ Norman Ramsey Avi Pfeffer\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/postexp.djvu"] = "Automatically Generating Back Ends \ for a Portable Assembly Language \ Using Declarative Machine Descriptions \ Jo ˜ao Dias \ Harvard School of Engineeering and Applied Sciences \ dias@eecs.harvard.edu \ Norman Ramsey \ Harvard School of Engineeering and Applied Sciences \ nr@eecs.harvard.edu ", ["norman-ramsey/postexp.dvi"] = " Automatically Generating Back Ends\ for a Portable Assembly Language\ Using Declarative Machine Descriptions\ Jo\"ao Dias Norman Ramsey\ Harvard School of Engineeering and Applied Sciences Harvard School of Engineeering and Applied Sciences\ dias@eecs.harvard.edu nr@eecs.harvard.edu", ["norman-ramsey/postexp.pdf"] = "Automatically Generating Back Ends for a Portable Assembly Language Using Declarative Machine Descriptions\ Jo~ o Dias a\ Harvard School of Engineeering and Applied Sciences dias@eecs.harvard.edu\ Norman Ramsey\ Harvard School of Engineeering and Applied Sciences nr@eecs.harvard.edu", ["norman-ramsey/postexp.ps"] = "Automatically Generating Back Ends\ for a Portable Assembly Language\ Using Declarative Machine Descriptions\ Joao Dias\ Harvard School of Engineeering and Applied Sciences\ dias@eecs.harvard.edu\ Norman Ramsey\ Harvard School of Engineeering and Applied Sciences\ nr@eecs.harvard.edu", ["norman-ramsey/prag01.djvu"] = ",IFP 13 (3)' 601-646, May 2003.  2003 Cambridge University Press \ DOl' 10.1017/S0956796802004628 Printed in the United Kingdom \ 601 \ Pragmatic aspects of \ reusable program generators \ NORMAN RAMSEY \ Division of Engineering and Applied Sciences, Harvard University, \ Harvard, CT, USA \ (e-mail: nreecs. harvard. edu) ", ["norman-ramsey/prag01.dvi"] = "Under consideration for publication in J. Functional Programming 1\ Pragmatic Aspects of\ Reusable Program Generators\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ (e-mail: nr@eecs.harvard.edu)\ ______________________________________________________________________________________________________________________", ["norman-ramsey/prag01.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ Pragmatic Aspects of Reusable Program Generators\ Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University (e-mail: nr@eecs.harvard.edu)", ["norman-ramsey/prag01.ps"] = "Under consideration for publication in J. Functional Programming 1\ Pragmatic Aspects of\ Reusable Program Generators\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ (e-mail: nr@eecs.harvard.edu)", ["norman-ramsey/pragmatic.dvi"] = " Pragmatic Aspects of Reusable Program Generators\ (Position Paper)\ Norman Ramsey\ Harvard University", ["norman-ramsey/pragmatic.ps"] = "Pragmatic Aspects of Reusable Program Generators\ (Position Paper)\ Norman Ramsey\ Harvard University", ["norman-ramsey/r.ps"] = "Submitted to the ACM SIGPLAN '04 Conference on Programming Language Design and Implementation\ A Generalized Algorithm\ for Graph Coloring Register Allocation\ Michael D. Smith, Norman Ramsey, and Glenn Holloway\ Harvard University\ {smith,nr,holloway}@eecs.harvard.edu", ["norman-ramsey/recognizer.dvi"] = " To appear in the 15th International Conference on Compiler Construction\ Converting Intermediate Code to Assembly Code\ Using Declarative Machine Descriptions\ Jo\"ao Dias and Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University", ["norman-ramsey/recognizer.pdf"] = "Converting Intermediate Code to Assembly Code Using Declarative Machine Descriptions\ Jo~ o Dias and Norman Ramsey a\ Division of Engineering and Applied Sciences, Harvard University Abstract. Writing an optimizing back end is expensive, in part because it requires mastery of both a target machine and a compiler's internals. We separate these concerns by isolating target-machine knowledge in declarative machine descriptions. We then analyze these descriptions to automatically generate machinespecific components of the back end. In this work, we generate a recognizer; this component, which identifies register transfers that correspond to target-machine instructions, plays a key role in instruction selection in such compilers as vpo, gcc and Quick C--. We present analyses and transformations that address the major challenge in generating a recognizer: accounting for compile-time abstractions not present in a machine description, including variables, pseudo-registers, stack slots, and labels.", ["norman-ramsey/recognizer.ps"] = "Converting Intermediate Code to Assembly Code\ Using Declarative Machine Descriptions\ Joao Dias and Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ To appear in the 15th International Conference on Compiler Construction", ["norman-ramsey/relocating-pldi.pdf"] = "Reprinted from Proceedings of the ACM SIGPLAN '96 Conference on Programming Language Design and Implementation\ Relocating Machine Instructions by Currying\ Norman Ramsey Department of Computer Sciences, Purdue University 1398 Computer Science Building, West Lafayette, IN 47907\ nr@cs.purdue.edu\ http://www.cs.purdue.edu/homes/nr", ["norman-ramsey/relocating-pldi.ps"] = "Reprinted from Proceedings of the ACM SIGPLAN '96 Conference on Programming Language Design and Implementation\ Relocating Machine Instructions by Currying\ Norman Ramsey\ Department of Computer Sciences, Purdue University\ 1398 Computer Science Building, West Lafayette, IN 47907\ nr@cs.purdue.edu http://www.cs.purdue.edu/homes/nr", ["norman-ramsey/relocating.pdf"] = "Relocating Machine Instructions by Currying\ Norman Ramsey University of Virginia\ Relocation adjusts machine instructions to account for changes in the locations of the instructions themselves or of external symbols to which they refer. Standard linkers implement a nite set of relocation transformations, suitable for a single architecture. These transformations are enumerated, named, and engraved in a machine-dependent object- le format, and linkers must recognize them by name. These names and their associated transformations are an unnecessary source of machine-dependence. An alternative is to use SLED (Speci cation Language for Encoding and Decoding) to specify representations of machine instructions. Instructions are described by constructors, which denote functions mapping lists of operands to instructions' binary representations. Any operand can be designated as \\relocatable,\" meaning that the operand's value need not be known at the time the instruction is encoded. From a SLED speci cation, the New Jersey Machine-Code Toolkit can generate functions that encode instructions in the native binary representation. For instructions with relocatable operands, the toolkit also computes relocating transformations. Tool writers can create machine-independent software that uses these transformations to relocate machine instructions. For example, mld, a retargetable linker built with the toolkit, needs only 20 lines of C code for relocation, and that code is machine-independent. The toolkit discovers relocating transformations by currying encoding functions. An attempt to encode an instruction with a relocatable operand results in the creation of a closure. The closure can be applied when the values of the relocatable operands become known. Currying provides a general, machine-independent method of relocation. Currying rewrites a -term into two nested -terms. The standard implementation has the rst allocate a closure and store therein its operands and a pointer to the second . Using this strategy in the toolkit means that, when it builds an application, the toolkit generates code for many di erent inner -terms|one for each instruction that uses a relocatable address. Hoisting some of the computation out of the second into the rst makes many of the second s identical|a handful are enough for a whole instruction set. This optimization reduces the size of machinedependent assembly and linking code by 15{25% for the Alpha, MIPS, SPARC, and PowerPC, and by about 40% for the Pentium. It also makes the second s equivalent to relocating transformations named in standard object- le formats.", ["norman-ramsey/relocating.ps"] = "Relocating Machine Instructions by Currying\ Norman Ramsey\ University of Virginia\ Relocation adjusts machine instructions to account for changes in the locations of the instructions\ themselves or of external symbols to which they refer. Standard linkers implement a finite set of\ relocation transformations, suitable for a single architecture. These transformations are enumer\ ated, named, and engraved in a machinedependent objectfile format, and linkers must recognize\ them by name. These names and their associated transformations are an unnecessary source of\ machinedependence.\ An alternative is to use SLED (Specification Language for Encoding and Decoding) to specify\ representations of machine instructions. Instructions are described by constructors, which denote\ functions mapping lists of operands to instructions' binary representations. Any operand can be\ designated as ``relocatable,'' meaning that the operand's value need not be known at the time the", ["norman-ramsey/retargetable.djvu"] = "A Retargetable Debugger \ Norman Ramsey and David R. Hanson \ Department o Computer Science, Princeton University \ Princeton, NJ 08544 \ nrprinceton. edu drhprincet on. edu ", ["norman-ramsey/retargetable.ps"] = "A Retargetable Debugger\ Norman Ramsey and David R. Hanson\ Department of Computer Science, Princeton University\ Princeton, NJ 08544\ nr@princeton.edu drh@princeton.edu", ["norman-ramsey/saig00.dvi"] = " Pragmatic Aspects\ of Reusable Program Generators\ Position Paper\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ nr@eecs.harvard.edu", ["norman-ramsey/saig00.pdf"] = " ti t eb s eg t g cg ig si st t g iQìFdbwjt£dʬpiutddHdphepfgFdbuQfcfjQigdhe fst e s s g b t ig cgi ig s cg c t t bmbfjutHFpudub1updgj#fcpgQhpFud-fsubQjtdfgQjQt fttggcjdubktHubtqugdikbd1'putc dggFgsdubpfgjos tit sb t sig ig s c c ctit tb fttggcjd1fbktHfb#tiwptpfgjtu#vfpfgustjti dFftpgspggdubBphe tit sb t s c c s bi cg ct e e c c vig fbt#dbj{pugsdfbtggctjd7pggddfb£jdTgHpdbfdjQHQdj#dhdihpg i bi t e t g c it e c c it i t sg eb i i t e s b s t e e c c i c t ctt t i #}꣬euƨubBteuubcuthuFcdfgdfbhtjtft{QʣfvHgjftmg s1hpggddfbutpfgjipu#hpggdburiuƯfgscdfQpgcfQpubt s e c c ct t g s e c c c b t g i bii ftpg#tusdubteusftphd5dtpgfftfbhtFfsubtggciddfgdfb֯d#p#a c g b cg vig s c t ti c t t e c c g b j t q׳ c s vt b ig tg b s vt jftfdfuck8t$Hdģejutpdwdurju s ct c g c i cg g c c it e c c st eg tfkjubpjutsft't{ubtQjutHimtfp8tfigsdubpfgjtdfgdfb#ipt c{p¥siwjct8dg jtdt'jtu$utdsgcfpttdtbvdb8kt${whFkbppt tg ƾ tb i c b s cg t b i i s t vg e t e s dQʪcdddƬp1ftpg{d$ddfscubtggcitd7pggdbu'tbQubTswimdh#utdBfti eg t bt g c g bi t e c c v t vg vig e cg ct S GI DYI TRDQ{B1S f n f n dpgdRnkfHfRTggPfRtx f jjRP ttgnn Rgn gpwfy F g fH jHm PxPxHfP Pfdgxx FdRngHopRRxtnn gH RTnfjQHpTgg pn xn Rgfn dQun R Pnfn Q x gf n w B xd j n n w nQg n Rxng pBPg n hjRnkQjg8R{ pi j} {$jR $f y w e j de H f f t f n j F f pjg FggPxgHi fQHR $fx gjBfP kRHtn Rxx n Rx'n Hj RP tTnn g Pff 8dj uf Qd Bpdh fwf x t 1gRPnonRx#Q#dpgdRnkfg' igjHjmtj8d qRjx h f p j jd kTRRPng kR upHHg jjjn km RjR $gP}ff Pxj n Rjd Rftgn gydg H g Rng xg HRxRxonnHg BtgfRxn Ry8Pf f d j t H x { x t f H $ n n n jRn kuHgjkjjRg F jRxnPnd HH8Hj2j Rxn Rx jPn HR1jRnkf fx x n x j giH k8Hnf PxPxHjtgpfg oR Pnjpgx uRn Rn Bfkn g gRxjj kR $p1nnR jdR onRx $ongx df jjH Rgfnggf` 8Rg n z s~s~ zyxvvus qvjpwjp}|{wpwttr qponPxRfy$mkjRyih x l gggxgdedxHHFHRxffHPxpy$w f f x x x vuthp1rphfed1a s eg q ig cb YX V C S G GE D `8W 2UTRDQPIHF2C % #!2B@9 8' % 76!5 21! )'% A! 4 3 0 ( & $#\" ! ", ["norman-ramsey/saig00.ps"] = "Pragmatic Aspects\ of Reusable Program Generators\ Position Paper\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ nr@eecs.harvard.edu", ["norman-ramsey/sigcalc.dvi"] = " Toward a Calculus of Signatures\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ October 2, 2001", ["norman-ramsey/sigcalc.ps"] = "Toward a Calculus of Signatures\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ October 2, 2001", ["norman-ramsey/solver.ps"] = "A Simple Solver for Linear Equations\ Containing Nonlinear Operators\ Norman Ramsey \\Lambda\ Bell Communications Research\ 445 South St, Morristown, NJ 07960, USA\ November 8, 1996", ["norman-ramsey/source-level-debugging.pdf"] = "Source-Level Debugging for Multiple Languages with Modest Programming Effort\ Sukyoung Ryu and Norman Ramsey\ Division of Engineering and Applied Sciences, Harvard University {syryu, nr}@eecs.harvard.edu", ["norman-ramsey/specifying.pdf"] = "Specifying Representations of Machine Instructions\ NORMAN RAMSEY University of Virginia and MARY F. FERNANDEZ AT&T Labs\ We present SLED, a Specification Language for Encoding and Decoding, which describes abstract, binary, and assembly-language representations of machine instructions. Guided by a SLED specification, the New Jersey Machine-Code Toolkit generates bit-manipulating code for use in applications that process machine code. Programmers can write such applications at an assemblylanguage level of abstraction, and the toolkit enables the applications to recognize and emit the binary representations used by the hardware. SLED is suitable for describing both CISC and RISC machines; we have specified representations of MIPS R3000, SPARC, Alpha, and Intel Pentium instructions, and toolkit users have written specifications for the Power PC and Motorola 68000. The article includes representative excerpts from our SPARC and Pentium specifications. SLED uses four elements; fields and tokens describe parts of instructions; patterns describe binary representations of instructions or groups of instructions; and constructors map between the abstract and binary levels. By combining the elements in different ways, SLED supports machine-independent implementations of machine-level concepts like conditional assembly, span-dependent instructions, relocatable addresses, object code, sections, and relocation. SLED specifications can be checked automatically for consistency with existing assemblers. The implementation of the toolkit is largely determined by our representations of patterns and constructors. We use a normal form that facilitates construction of encoders and decoders. The article describes the normal form and its use. The toolkit has been used to help build several applications. We have built a retargetable debugger and a retargetable, optimizing linker. Colleagues have built a dynamic code generator, a decompiler, and an execution-time analyzer. The toolkit generates efficient code; for example, the linker emits binary up to 15% faster than it emits assembly language, making it 1.72 times faster to produce an a.out directly than by using the assembler. Categories and Subject Descriptors: C.0 [Computer Systems Organization]: General--systems specification methodology; D.3.2 [Programming Languages]: Language Classifications-- specialized application languages; D.3.4 [Programming Languages]: Processors--translator writing systems and compiler generators General Terms: Languages Additional Key Words and Phrases: Compiler generation, decoding, encoding, machine code, machine description, object code, relocation", ["norman-ramsey/specifying.ps"] = "Specifying Representations of Machine Instructions\ NORMAN RAMSEY\ University of Virginia\ and\ MARY F. FERN '\ ANDEZ\ AT&T Labs\ We present SLED, a Specification Language for Encoding and Decoding, which describes ab\ stract, binary, and assemblylanguage representations of machine instructions. Guided by a SLED\ specification, the New Jersey MachineCode Toolkit generates bitmanipulating code for use in\ applications that process machine code. Programmers can write such applications at an assembly\ language level of abstraction, and the toolkit enables the applications to recognize and emit the\ binary representations used by the hardware. SLED is suitable for describing both CISC and RISC\ machines; we have specified representations of MIPS R3000, SPARC, Alpha, and Intel Pentium\ instructions, and toolkit users have written specifications for the Power PC and Motorola 68000.", ["norman-ramsey/staged.dvi"] = "", ["norman-ramsey/staged.pdf"] = "Reprinted from Proceedings of the 33rd ACM Symposium on the Principles of Programming Languages (POPL'06)\ Staged Allocation: A Compositional Technique for Specifying and Implementing Procedure Calling Conventions\ Reuben Olinsky\ Division of Engineering and Applied Sciences Harvard University olinsky@post.harvard.edu\ Christian Lindig\ Division of Engineering and Applied Sciences Harvard University lindig@eecs.harvard.edu\ Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University nr@eecs.harvard.edu", ["norman-ramsey/staged.ps"] = "Reprinted from Proceedings of the 33rd ACM Symposium on the Principles of Programming Languages (POPL'06)\ Staged Allocation: A Compositional Technique for\ Specifying and Implementing Procedure Calling Conventions\ Reuben Olinsky\ Division of Engineering\ and Applied Sciences\ Harvard University\ olinsky@post.harvard.edu\ Christian Lindig\ Division of Engineering\ and Applied Sciences\ Harvard University\ lindig@eecs.harvard.edu\ Norman Ramsey\ Division of Engineering\ and Applied Sciences\ Harvard University\ nr@eecs.harvard.edu", ["norman-ramsey/sync.dvi"] = "", ["norman-ramsey/sync.pdf"] = "Reprinted from Foundations of Software Engineering 2001\ An Algebraic Approach to File Synchronization\ Norman Ramsey Division of Engineering and Applied Sciences Harvard University Cambridge, USA nr@eecs.harvard.edu Eld Csirmaz o Mihaly Fazekas Secondary Grammar School Budapest, Hungary elod@renyi.hu", ["norman-ramsey/sync.ps"] = "Reprinted from Foundations of Software Engineering 2001\ An Algebraic Approach to File Synchronization\ Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ Cambridge, USA\ nr@eecs.harvard.edu\ El}od Csirmaz\ Mihaly Fazekas Secondary Grammar School\ Budapest, Hungary\ elod@renyi.hu", ["norman-ramsey/system-fig.ps"] = "toolkit\ toolkit toolkit\ checker\ specification\ Ainst Adata\ assemble\ disassemble\ errors\ execute\ program\ generated\ checker\ generated checker\ compare\ shell script\ A' , A''\ inst\ B' , B''\ inst inst\ inst\ inst\ A , A data", ["norman-ramsey/team.djvu"] = "SOFTWAREBPRACTICE AND EXPERIENCE, VOL. 21(7), 677-683 (JULY 1991) \ Literate Programming on a Team Project \ NORMAN RAMSEY* AND \ Odyssey Research Associates, 301A Harris B. \ U.S.A. \ CARLA MARCEAU \ Dates Drive, Ithaca, New York 14850, \ SUMMARY \ We used literate programming on a team project to write a 33,000 line program for the Synthesizer \ Generator. The program, Penelope, was written using WEB, a tool designed for writing literate programs. \ Unlike other WEB programs, many of which have been written by WEB's developer or by individuals, \ Penelope was not intended to be published. We used WEB in the hope that both our team and its final \ product would benefit from the advantages often attributed to literate programming. The WEB source \ served as good internal documentation throughout development and maintenance, and it continues to \ document Penelope's design and implementation. Our experience also uncovered a number of problems ", ["norman-ramsey/team.ps"] = "Literate Programming on a Team Project \\Lambda\ Norman Ramsey y and Carla Marceau\ Odyssey Research Associates\ 301A Harris B. Dates Drive\ Ithaca, New York 14850\ February 4, 1991", ["norman-ramsey/thesis.djvu"] = "", ["norman-ramsey/thesis.pdf"] = "A RETARGETABLE DEBUGGER\ Norman Ramsey\ A DISSERTATION PRESENTED TO THE FACULTY OF PRINCETON UNIVERSITY IN CANDIDACY FOR THE DEGREE OF DOCTOR OF PHILOSOPHY\ RECOMMENDED FOR ACCEPTANCE BY THE DEPARTMENT OF COMPUTER SCIENCE\ January 1993\ c Copyright by Norman Ramsey 1993 All Rights Reserved", ["norman-ramsey/thesis.ps.gz"] = "A RETARGETABLE DEBUGGER\ Norman Ramsey\ A DISSERTATION\ PRESENTED TO THE FACULTY\ OF PRINCETON UNIVERSITY\ IN CANDIDACY FOR THE DEGREE\ OF DOCTOR OF PHILOSOPHY\ RECOMMENDED FOR ACCEPTANCE\ BY THE DEPARTMENT OF\ COMPUTER SCIENCE\ January 1993\ c\ fl Copyright by Norman Ramsey 1993\ All Rights Reserved", ["norman-ramsey/thesis300.djvu"] = "A RETARGETABLE DEBUGGER \ Norman Ramsey \ A DISSERTATION \ PRESENTED TO THE FACULTY \ OF PRINCETON UNIVERSITY \ IN CANDIDACY FOR THE DEGREE \ OF DOCTOR OF PHILOSOPHY \ RECOMMENDED FOR ACCEPTANCE \ BY THE DEPARTMENT OF \ COMPUTER SCIENCE \ January 1993 \ c Copyright by Norman Ramsey 1993 \ All Rights Reserved ", ["norman-ramsey/tk-toplas-original.ps"] = "The New Jersey MachineCode Toolkit\ Norman Ramsey, Purdue University \\Lambda\ Mary F. Fern'andez, Princeton University y\ December 15, 1995", ["norman-ramsey/tk-usenix.ps"] = "Reprinted from 1995 Usenix Technical Conference  January 16{20, 1995  New Orleans, LA\ The New Jersey Machine-Code Toolkit\ Norman Ramsey\ Bell Communications Research\ Mary F. Fernandez\ Department of Computer Science, Princeton University", ["norman-ramsey/two.djvu"] = "Teach Technical Writing in Two Hours per Week\ Norman Ramsey\ Harvard University\ October 25, 2006\ Preface\ Many students at American universities have trouble with technical writing. To help stu-\ dents over this trouble, we often use inefficient methods. These methods, like other aspects\ of graduate education, sometimes remind me of medieval apprenticeships. For example,\ I have known smart, capable teachers who were reduced to \"teaching a student to write\" by\ taking that student's first paper and rewriting it from start to finish. This booklet describes\ better methods.\ Instead of spending most of my \"student time\" working on writing---teaching the same\ material to seniors, graduate students, and postdocs---I now teach writing in a weekly group.\ The group uses my time more effectively, and it shows students that they are not alone in", ["norman-ramsey/two.dvi"] = " Teach Technical Writing in Two Hours per Week\ Norman Ramsey\ Harvard University\ October 25, 2006\ Preface\ Many students at American universities have trouble with technical writing. To help stu-\ dents over this trouble, we often use inefficient methods. These methods, like other aspects\ of graduate education, sometimes remind me of medieval apprenticeships. For example,\ I have known smart, capable teachers who were reduced to \"teaching a student to write\" by\ taking that student's first paper and rewriting it from start to finish. This booklet describes\ better methods.\ Instead of spending most of my \"student time\" working on writing_teaching the same\ material to seniors, graduate students, and postdocs_I now teach writing in a weekly group.\ The group uses my time more effectively, and it shows students that they are not alone in", ["norman-ramsey/two.pdf"] = "Teach Technical Writing in Two Hours per Week\ Norman Ramsey Harvard University October 25, 2006\ Preface\ Many students at American universities have trouble with technical writing. To help students over this trouble, we often use inefficient methods. These methods, like other aspects of graduate education, sometimes remind me of medieval apprenticeships. For example, I have known smart, capable teachers who were reduced to \"teaching a student to write\" by taking that student's first paper and rewriting it from start to finish. This booklet describes better methods. Instead of spending most of my \"student time\" working on writing--teaching the same material to seniors, graduate students, and postdocs--I now teach writing in a weekly group. The group uses my time more effectively, and it shows students that they are not alone in their difficulties. The problems they have are problems that everyone has, and they see these problems even in published papers. But we do not emphasize problems; instead we emphasize useful principles and practices that students can learn to apply to their own manuscripts. I emphasize principles that can be applied successfully by a beginning writer. Especially for students in science and engineering, a principle is easily applicable when there is a simple, experimental way to decide if the written words obey the principle. (For example, I do not try to teach \"omit needless words,\" because I know of no simple way to decide if a word is needless.) In this approach, I have been greatly influenced by Joseph Williams (1995). I emphasize practices that have been shown, again by experiment, to lead to productive writing. For example, I explain the difference between \"binge writing\" and \"brief, daily sessions.\" In this approach, I have been greatly influenced by Robert Boice (2000). What both approaches have in common is that even a beginning student can apply a simple test to see whether he or she is applying a given principle or following a given practice. This focus on testable ideas seems to work especially well for engineering students. This booklet explains why you and your students might want to have a writing group. More important, it explains what we do in enough detail that I hope you can replicate the experience. Norman Ramsey Cambridge, Mass.", ["norman-ramsey/two.ps"] = "Teach Technical Writing in Two Hours per Week\ Norman Ramsey\ Harvard University\ October 25, 2006\ Preface\ Many students at American universities have trouble with technical writing. To help stu\ dents over this trouble, we often use ine#cient methods. These methods, like other aspects\ of graduate education, sometimes remind me of medieval apprenticeships. For example,\ I have known smart, capable teachers who were reduced to ``teaching a student to write'' by\ taking that student's first paper and rewriting it from start to finish. This booklet describes\ better methods.\ Instead of spending most of my ``student time'' working on writing---teaching the same\ material to seniors, graduate students, and postdocs---I now teach writing in a weekly group.\ The group uses my time more e#ectively, and it shows students that they are not alone in", ["norman-ramsey/unparse.djvu"] = "SOFTWARE PRACTICE AND EXPERIENCE, VOL. 28(12), 1327-1356 (OCTOBER 1998) \ Unparsing Expressions \ With Prefix and Postfix Operators \ NORMAN RAMSEY \ Department of Computer Science, University of Virginia, Charlottesville, VA 22903, \ U.S.A. \ SUMMARY \ Unparsing is the problem of transforming an internal representation of a program into an \ external, concrete syntax. In conjunction with prettyprinting, it is useful for generating readable \ programs from internal representations. If the target language uses prefix and postfix operators, \ the problem is nontrivial. This paper shows how to unparse expressions using a simple, bottom- \ up tree walk, which keeps track of the least tightly binding operator not enclosed by parentheses. \ During the tree walk, this operator is compared with the operator of the parent expression, and \ parentheses are inserted based on the precedence, associativity, and fixity (infix, prefix, or postfix) ", ["norman-ramsey/unparse.ps"] = "SOFTWARE---PRACTICE AND EXPERIENCE, VOL. 0(0), 1--30 (MONTH 1998)\ Unparsing Expressions\ With Prefix and Postfix Operators\ Norman Ramsey\ Department of Computer Science, University of Virginia, Charlottesville, VA 22903\ August 13, 1998\ SUMMARY\ Unparsing is the problem of transforming an internal representation of a program into an external, con\ crete syntax. In conjunction with prettyprinting, it is useful for generating readable programs from internal\ representations. If the target language uses prefix and postfix operators, the problem is nontrivial. This pa\ per shows how to unparse expressions using a simple, bottomup tree walk, which keeps track of the least\ tightly binding operator not enclosed by parentheses. During the tree walk, this operator is compared with\ the operator of the parent expression, and parentheses are inserted based on the precedence, associativity,\ and fixity (infix, prefix, or postfix) of the two operators. The paper is a literate program. It includes code for", ["norman-ramsey/wcre99.ps"] = "The Design of a Resourceable and Retargetable Binary Translator \\Lambda\ Cristina Cifuentes Mike Van Emmerik Norman Ramsey y\ Department of Computer Science Department of Computer Science\ and Electrical Engineering University of Virginia\ University of Queensland Charlottesville VA 22903\ Brisbane QLD 4072 USA\ Australia\ fcristina,emmerikg@csee.uq.edu.au nr@cs.virginia.edu", ["norman-ramsey/weaving.pdf"] = "Modera ted by Christopher J. Van Wyk\ literate programming\ WEAVINGA LANGUAGE-INDEPENDENT WEB\ In the fall of 1987 I started planning the implementation of a suite of tools for building verified Ada programs [5]. The first tool to be built was a verification condition generator, which was to be formally defined using the typed lambda calculus. I was eager to include the definition with the code so that it would be easy to check the code's correctness. Using WEBwould have made this easy, but, unfortunately, the target programming language was SSL (a language for specifying structure editors), and the only languages for which WEB implementations were available were Pascal and C. Writing a new WEBfrom scratch did not make sense, so I decided to modify Silvio Levy's implementation of WEBin C [3], to get a WEBthat would be written in C, but would read and write SSL code. From my previous experiences modifying WEB,I knew that the most timeconsuming job would be fine-tuning the grammar that WEAVEuses to prettyprint code. I believed I could make debugging that grammar a lot less painful if, instead of trying to make dozens of small modifications by hand, I wrote a simple program, perhaps an AWK script, that would read a description of the grammar and generate C code for WEAVE.That AWK script became SPIDER, a program that turns language descriptions into C code for TANGLE and WEAVE.I have used SPIDER to generate WEBS C, AWK, SSL, Ada, and a couple of other for languages. I will not go into the details of SPIDER; instead, I will try to describe what SPIDER does to accomplish its mission, or how to take the \"essence of WEB\" and make it language-independent. When using WEB,a programmer writes a single source file, foo . web, that holds both code and documentation. TANGLE and WEAVEread that file. TANGLE extracts the code from the WEBfile and rewrites it in a form suitable for compiling. WEAVEpasses the documentation parts to a document formatter (QX), and prettyprints the code parts. The whole process is shown in Figure 1, for C programs written in WEB.The represents files that have to be written by hand. Slant type is used for the names of executable programs. CTANGLE and CWEAVE are the C-language versions of TANGLE and WEAVE,cc is a C compiler, and Id is a loader.", ["norman-ramsey/weaving.ps"] = "Weaving a LanguageIndependent WEB \\Lambda\ Norman Ramsey y\ Odyssey Research Associates\ January 1, 1995\ In the fall of 1987 I started planning the implementation of a suite of tools\ for building verified Ada programs [Ramsey 89]. The first tool to be built was\ a verification condition generator, which was to be formally defined using the\ typed lambda calculus. I was eager to include the definition with the code so\ that it would be easy to check the code's correctness. Using WEB would have\ made this easy, but, unfortunately, the target programming language was SSL\ (a language for specifying structure editors), and the only languages for which\ WEB implementations were available were Pascal and C.\ Writing a new WEB from scratch didn't make sense, so I decided to modify\ Silvio Levy's implementation of WEB in C [Levy 87], to get a WEB that would be", ["norman-ramsey/widen.dvi"] = "", ["norman-ramsey/widen.pdf"] = "Reprinted from the 13th International Conference on Compiler Construction\ Widening Integer Arithmetic\ Kevin Redwine and Norman Ramsey\ Division of Engineering and Applied Sciences Harvard University {redwine,nr}@eecs.harvard.edu", ["norman-ramsey/widen.ps"] = "Widening Integer Arithmetic\ Kevin Redwine and Norman Ramsey\ Division of Engineering and Applied Sciences\ Harvard University\ {redwine,nr}@eecs.harvard.edu\ Reprinted from the 13th International Conference on Compiler Construction", ["norman-ramsey/xform-a4.ps"] = "A Transformational Approach to\ Binary Translation of Delayed Branches\ (4980word technical summary)\ Norman Ramsey\ Department of Computer Science\ University of Virginia, Charlottesville, VA 22903 USA\ nr@cs.virginia.edu\ Cristina Cifuentes\ Department of Computer Science and Electrical Engineering\ University of Queensland, Brisbane, QLD 4072 Australia\ cristina@csee.uq.edu.au\ October 9, 1998", ["norman-ramsey/xform.ps"] = "A Transformational Approach to\ Binary Translation of Delayed Branches\ Norman Ramsey\ Department of Computer Science\ University of Virginia, Charlottesville, VA 22903 USA\ nr@cs.virginia.edu\ Cristina Cifuentes\ Department of Computer Science and Electrical Engineering\ University of Queensland, Brisbane, QLD 4072 Australia\ cristina@csee.uq.edu.au", ["norman-ramsey/xtoplas-acm.pdf"] = "A Transformational Approach to Binary Translation of Delayed Branches\ NORMAN RAMSEY Harvard University and CRISTINA CIFUENTES Sun Microsystems Laboratories\ A binary translator examines binary code for a source machine and generates code for a target machine. Understanding what to do with delayed branches in binary code can involve tricky case analyses, for example, if there is a branch instruction in a delay slot. This article presents a disciplined method for deriving such case analyses. The method identifies problematic cases, shows the translations for the nonproblematic cases, and gives confidence that all cases are considered. The method supports such common architectures as SPARC, MIPS, and PA-RISC, and it should apply to any tool that analyzes machine instructions. We begin by writing a very simple interpreter for the source machine's code. We then transform the interpreter into an interpreter for a target machine without delayed branches. To maintain the semantics of the program being interpreted, we simultaneously transform the sequence of source-machine instructions into a sequence of target-machine instructions. The transformation of the instructions becomes our algorithm for binary translation. Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors; I.1.4 [Computing Methodologies]: Symbolic and Algebraic Manipulation--applications General Terms: Experimentation, Languages Additional Key Words and Phrases: Binary translation, program analysis, program transformation", ["norman-ramsey/xtoplas-acm.ps"] = "A Transformational Approach to Binary\ Translation of Delayed Branches\ NORMAN RAMSEY\ Harvard University\ and\ CRISTINA CIFUENTES\ Sun Microsystems Laboratories\ A binary translator examines binary code for a source machine and generates code for a target\ machine. Understanding what to do with delayed branches in binary code can involve tricky case\ analyses, for example, if there is a branch instruction in a delay slot. This article presents a disci\ plined method for deriving such case analyses. The method identifies problematic cases, shows the\ translations for the nonproblematic cases, and gives confidence that all cases are considered. The\ method supports such common architectures as SPARC, MIPS, and PARISC, and it should apply to\ any tool that analyzes machine instructions. We begin by writing a very simple interpreter for the", ["norman-ramsey/xtoplas.dvi"] = "A Transformational Approach to\ Binary Translation of Delayed Branches\ NORMAN RAMSEY\ Division of Engineering and Applied Sciences\ Harvard University, Cambridge, MA 01238 USA\ nr@eecs.harvard.edu\ and\ CRISTINA CIFUENTES\ Department of Computer Science and Electrical Engineering\ University of Queensland, Brisbane, QLD 4072 Australia\ cristina@csee.uq.edu.au\ ___________________________________________________________________________________________________________________\ A binary translator examines binary code for a source machine, builds an intermediate rep-\ resentation, and generates code for a target machine. Understanding what to do with delayed\ branches in binary code can involve tricky case analyses, e.g., if there is a branch instruction in a\ delay slot. This paper presents a disciplined method for deriving such case analyses. The method\ identifies problematic cases, shows the translations for the non-problematic cases, and gives confi-\ dence that all cases are considered. The method supports such common architectures as SPARC,", ["norman-ramsey/zipcfg.dvi"] = "", ["norman-ramsey/zipcfg.pdf"] = "Reprinted from the 2005 ACM SIGPLAN Workshop on ML\ An Applicative Control-Flow Graph Based on Huet's Zipper\ Norman Ramsey and Jo~o Dias a\ Division of Engineering and Applied Sciences Harvard University Cambridge, Mass., USA", ["norman-ramsey/zipcfg.ps"] = "Reprinted from the 2005 ACM SIGPLAN Workshop on ML\ An Applicative ControlFlow Graph\ Based on Huet's Zipper\ Norman Ramsey and Joao Dias\ Division of Engineering and Applied Sciences\ Harvard University\ Cambridge, Mass., USA", ["notes.ps"] = "Programming in Standard ML '97:\ A Tutorial Introduction\ Stephen Gilmore\ Laboratory for Foundations of Computer Science\ The University of Edinburgh\ September 1997\ (Revised: July 1998)\ Copyright notice\ This work is copyright c\ fl 1997, 1998. The copyright resides with the author, Stephen Gilmore.\ Copyright and all rights therein are maintained by the author, notwithstanding that he has offered\ his work for electronic distribution. It is understood that all persons copying this information will\ adhere to the terms and constraints invoked by the author's copyright. This work may not be\ reposted without the explicit permission of the copyright holder. Single copies can be made for\ personal or scholarly use.\ Disclaimer of warranty\ The computer programs which appear in this tutorial are distributed in the hope that they will be", ["ole-agesen/gc-points.pdf"] = "GC Points in a Threaded Environment\ Ole Agesen\ GC Points in a Threaded Environment\ Ole Agesen\ SMLI TR-98-70\ December 1998", ["oleg-kiselyov/overlooked-objects.pdf"] = "1\ Haskell’s overlooked object system\ — 10 September 2005 —\ Oleg Kiselyov\ Fleet Numerical Meteorology and Oceanography Center, Monterey, CA\ Ralf L¨mmel\ a\ Microsoft Corp., Redmond, WA", ["olin-shivers/atomic.ps"] = "Atomic Heap Transactions\ and Finegrain Interrupts\ Olin Shivers James W. Clark Roland McGrath\ fshivers,sbj,rolandg@ai.mit.edu\ MIT Artificial Intelligence Laboratory", ["olin-shivers/cfa-scheme.djvu"] = "Control Flow Analysis in Scheme \ Olin Shivers \ Carnegie Mellon University \ shivers@cs. cmu. edu ", ["olin-shivers/dissertation.pdf"] = "Control-Flow Analysis of Higher-Order Languages\ or Taming Lambda\ Olin Shivers May 1991\ CMU-CS-91-145\ School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213\ Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy.\ c 1991 Olin Shivers\ This research was sponsored by the Office of Naval Research under Contract N00014-84-K-0415. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of ONR or the U.S. Government.\ Keywords: data-flow analysis, Scheme, LISP, ML, CPS, type recovery, higher-order functions, functional programming, optimising compilers, denotational semantics, nonstandard abstract semantic interpretations", ["olin-shivers/javaScheme.dvi"] = " Supporting dynamic languages\ on the Java virtual machine\ Olin Shivers\ MIT Artificial Intelligence Laboratory\ shivers@ai.mit.edu", ["olin-shivers/msort.ps"] = "A simple and efficient\ natural merge sort \ Olin Shivers\ Georgia Institute of Technology\ March 31, 2002", ["olin-shivers/xyzzy.ps"] = "", ["oliver-laumann/elk.ps"] = "Elk: The Extension Language Kit\ Oliver Laumann* and Carsten Bormann +\ * Technische Universitt Berlin, Germany\ + Universitt Bremen, Germany", ["olivier-danvy/BRICS-RS-01-23.dvi"] = " Defunctionalization at Work *\ Olivier Danvy and Lasse R. Nielsen\ BRICS y\ Department of Computer Science\ University of Aarhus z\ June, 2001", ["olivier-danvy/BRICS-RS-98-12.dvi"] = " Functional Unparsing *\ Olivier Danvy\ BRICS y\ Department of Computer Science\ University of Aarhus z\ November 1997 (revised in March and then in May 1998)", ["olivier-danvy/d_scientia.pdf"] = "An Analytical Approach to Programs as Data Objects\ Olivier Danvy BRICS Department of Computer Science University of Aarhus April 14, 2006", ["olivier-danvy/damian-danvy.ps.gz"] = "Syntactic Accidents in Program Analysis #\ Daniel Damian and Olivier Danvy\ BRICS +\ Department of Computer Science, University of Aarhus\ Ny Munkegade, Building 540, DK8000 Aarhus C, Denmark\ {damian,danvy}@brics.dk", ["olivier-danvy/danvy92representing.ps.gz"] = "Math. Struct. in Comp. Science (1992), vol. 2, pp. 361--391. PREPRINT\ Representing control:\ a study of the CPS transformation\ OL I V I ER DANVY 1y and ANDRZEJ F I L I N SK I 2\ 1 Department of Computing and Information Sciences, Kansas State University, Manhattan,\ Kansas 66506, USA. (danvy@cis.ksu.edu)\ 2 School of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania 15213, USA.\ (Andrzej.Filinski@cs.cmu.edu)\ Received February 1991; Revised June 1992\ This paper investigates the transformation of v terms into continuationpassing style\ (CPS). We show that by appropriate jexpansion of Fischer and Plotkin's twopass\ equational specification of the CPS transform, we can obtain a static and contextfree\ separation of the result terms into ``essential'' and ``administrative'' constructs.\ Interpreting the former as syntax builders and the latter as directly executable code, we\ obtain a simple and efficient onepass transformation algorithm, easily extended to", ["olivier-danvy/defunc.pdf"] = "Defunctionalization at Work \ ʺ \ \ \ \ \ \ ׳ ֹ ع ׺ ׹ ֹ ع ׺ ҹ ع ֹ \ Categories and Subject Descriptors е ҹ", ["olivier-danvy/flow-trans.ps.gz"] = "Static and Dynamic Transition Compression\ (Preliminary version) #\ Daniel Damian and Olivier Danvy\ BRICS +\ Department of Computer Science, University of Aarhus #\ May 21, 2001", ["olivier-danvy/functional-correspondence.pdf"] = "Basic Research in Computer Science BRICS RS-03-13 Ager et al.: A Functional Correspondence between Evaluators and Abstract Machines\ BRICS\ A Functional Correspondence between Evaluators and Abstract Machines\ Mads Sig Ager Dariusz Biernacki Olivier Danvy Jan Midtgaard\ BRICS Report Series ISSN 0909-0878\ RS-03-13 March 2003\ Copyright c 2003,\ Mads Sig Ager & Dariusz Biernacki & Olivier Danvy & Jan Midtgaard. BRICS, Department of Computer Science University of Aarhus. All rights reserved. Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy.\ See back inner page for a list of recent BRICS Report Series publications. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny Munkegade, building 540 DK–8000 Aarhus C Denmark Telephone: +45 8942 3360 Telefax: +45 8942 3255 Internet: BRICS@brics.dk BRICS publications are in general accessible through the World Wide Web and anonymous FTP through these URLs: http://www.brics.dk ftp://ftp.brics.dk This document in subdirectory RS/03/13/", ["olivier-danvy/nbe-typed-jfp.pdf"] = "JFP 11 (6): 673–680, November 2001.\ c 2001 Cambridge University Press\ 673\ DOI: 10.1017/S0956796801004166 Printed in the United Kingdom\ FUNCTIONAL PEARLS Normalization by evaluation with typed abstract syntax\ OLIVIER DANVY, MORTEN RHIGER\ BRICS , Department of Computer Science, University of Aarhus, Ny Munkegade, Building 540, DK-8000 Aarhus C, Denmark (e-mail: {danvy,mrhiger}@brics.dk) (Home pages: http://www.brics.dk/~{danvy,mrhiger})\ KRISTOFFER H. ROSE\ IBM T. J. Watson Research Center, 30 Saw Mill River Road, Hawthorne, NY 10532, USA (e-mail: krisrose@us.ibm.com)\ 1 A write-only typed abstract syntax In higher-order abstract syntax, the variables and bindings of an object language are represented by variables and bindings of a meta-language. Let us consider the simply typed λ-calculus as object language and Haskell as meta-language. For concreteness, we also throw in integers and addition, but only in this section. data Term = INT Int | ADD Term Term | APP Term Term | LAM (Term → Term) The constructors are typed as follows. INT ADD APP LAM : : : : : : : : Int → Term Term → Term → Term Term → (Term → Term) (Term → Term) → Term", ["olivier-danvy/on-evaluation-contexts.pdf"] = "On Evaluation Contexts, Continuations, and the Rest of the Computation\ Olivier Danvy BRICS Department of Computer Science University of Aarhus", ["olivier-danvy/sdarticle.pdf"] = "Science of Computer Programming 60 (2006) 274297 www.elsevier.com/locate/scico\ On the static and dynamic extents of delimited continuations\ Dariusz Biernacki a , Olivier Danvy a, , Chung-chieh Shan b\ a BRICS1 , Department of Computer Science, University of Aarhus, IT-parken, Aabogade 34, DK-8200 Aarhus N, Denmark b Department of Computer Science, Rutgers University, 110 Frelinghuysen Road, Piscataway, NJ 08854, USA\ Received 26 April 2005; received in revised form 10 December 2005; accepted 2 January 2006", ["olivier-danvy/simple.ps"] = "BRICS\ RS981\ O.\ Danvy:\ A\ Simple\ Solution\ to\ Type\ Specialization\ BRICS\ Basic Research in Computer Science\ A Simple Solution to Type Specialization\ Olivier Danvy\ BRICS Report Series RS981\ ISSN 09090878 January 1998\ Copyright c\ # 1998, BRICS, Department of Computer Science\ University of Aarhus. All rights reserved.\ Reproduction of all or part of this work\ is permitted for educational or research use\ on condition that this copyright notice is\ included in any copy.\ See back inner page for a list of recent BRICS Report Series publications.\ Copies may be obtained by contacting:\ BRICS\ Department of Computer Science\ University of Aarhus\ Ny Munkegade, building 540\ DK--8000 Aarhus C\ Denmark\ Telephone: +45 8942 3360\ Telefax: +45 8942 3255\ Internet: BRICS@brics.dk\ BRICS publications are in general accessible through the World Wide\ Web and anonymous FTP through these URLs:\ http://www.brics.dk\ ftp://ftp.brics.dk", ["olivier-danvy/tdpe-ln.pdf"] = " \ \ \ \ \ \ \ \ ù ݸ ׺ ۺ ׺ ݸ \ غ Һ ׸ ׺ ӯ ݺ\ \ \ \ ҳ Ѹ ָ \ \ \ \ \ \ ҹ \ ָ Ѻ\ \ ۺ ׺ Һ\ ؽ \ ؽ ؾ ؿ ؾ \ \ ؾ ؿ Ҹ Ҹ \ \ ־\ \ й ݸ Ҹ\ ׸ ׺ \ \ Ҹ ݸ ӯ ӹ \ \ ׸ ݸ Ѻ й ӹ Ѹ ӹ й ݹ Ѻ\ \ \ Ҹ \ ֵ ֵ ׺ ׺\ ܸ ܸ ҵ ܸ ҹ\ ׸ \ Ҹ Ҹ ظ ݺ \ \ \ ܶܶ\ ݺ ܸ ׸ Ҹ ظ ظ \ ҹ\ ׸ ӹ \ \ \ ؽ \ ؾ ؽ ؾ\ \ ִ \ \ \ Ҭ Թ ӹ \ \ \ \ \ ִ ִ \ \ \ Ժ ӹ Ժ \ ӹ \ ӹ ׺ Ժ \ Ժ Ժ ܵ\ ܺ \ \ \ \ \ \ \ \ \ Һ ڵ \ Ժ ڵ Ժ \ ӹ\ \ Ժ Ժ ܵ\ \ \ \ ܺ\ ӹ й ҹ й \ ׬ Ժ Ժ\ ӹ ݺ ݸ й Һ ݸ ӹ й ֺ ׸ ָ \ \ \ \ ظ й ׹ Һ ظ \ Ь ׸ \ ؽ ؽ ؾ\ ؾ\ ܽ ؾ ִ ؽ \ \ \ \ ؽ ܽ ؾ \ ܽ \ \ \ ؽ ؾ ؽ ؾ\ ܽ ؾ ؽ ܽ ִ ؽ ؾ \ \ ܽ \ \ \ \ \ ӹ \ Һ \ ظ\ \ غ ݸ ׺ Һ ع ۸ Ҹ Һ ۸ ׺ Ҹ ع ۸ Һ ݸ غ\ ҵ ܽ ܽ ܽ ܾ ܽ\ \ ܿ ܾ ִ ܿ ܿ \ \ ĸ \ ܽ ܽ Ժ Ժ Ե Ժ ܽ ܾ\ Ժ \ Ժ \ ܽ ܿ ܾ ܿ ܿ Ժ Ե Ժ Ե Ժ Ե Ժ \ \ \ \ ҵ\ \ ܽ ܽ\ ܽ ܾ ܽ\ \ ܿ ܾ ִ ܿ ܿ \ \ ĸ \ ܽ Ժ ܽ\ \ ܽ Ժ Ժ ܾ ܽ ܿ ܿ ܾ ܿ ܿ Ժ Ժ Ժ Ե Ժ Ե Ժ \ \ Ժ \ \ \ \ ׳ ӯ Һ ӹ ׺ ҹ ĺ غ Ժ ӹ и ݺ\ \ ָ ӯ й ׸ ָ Ѻ Ҹ Ѻ ĸ ׸ Ҹ ָ ĸ Һ\ \ \ ݸ ݸ ӹ и ׺ \ \ G \ ӹ \ \ ӹ \ \ o \ \ ӹ \ ֹ ׸ ظ Ѻ ҹ ع й ݺ ݸ ӹ ֹ Ѻ Ҹ Ҹ ĺ\ \ \ \ \ \ \ ع ظ Ѻ ݹ ع ظ ׺ ص\ ݹ ݹ ع \ ع \ \ \ \ \ ݸ ݹ ع ݸ Ѻ\ и ع ݹ غ ݹ ָ Ҹ ص\ \ \ ܺ\ \ \ ݾ Ժ Ժ ݾ Ժ Ժ Ե Ժ ݾ Ժ \ ݹ ع ع ׸ ֹ ׸ ׺\ \ \ ܵ ݺ\ Ժ Ժ Ժ Ե Ժ Ժ \ \ ֹ \ \ ڽ\ \ \ \ ڽ ܵ\ ܵ Ŵ ڽ \ \ \ \ \ \ Ŵܸ ڽ \ \ \ \ Ժ Ժ Ե Ժ Ե Ժ Ե Ժ Ŵ Ժ \ \ ֹ \ \ Һ Ѹ Ѻ ֺ Ҹ Һ ij ݸ Ҹ ָ \ \ \ \ \ ݵ ܵ Ժ \ \ \ \ Ҹ ú\ Ŵ \ \ \ ܵ õ Ժ \ \ \ ĺ ׺ ݸ ҹ ݻ \ \ \ \ \ \ \ \ \ \ Ҭ Ҭ \ и ֹ ݸ \ \ \ \ ݾ ݾ Ժ Ժ Ե Ժ Ժ Ժ Ժ Ե Ժ Ժ Ժ Ե Ժ Ե Ժ Ե Ժ \ Ժ Ժ \ \ \ Ե \ \ ݽ ؽ ݾ ؾ Ѻ ܸ ݾ ؽ ܵ Ҹ ؾ ݽ ڵ\ ݽ ؽ ݾ ؾ ڽ ھ ݽ ڽ ݾ ھ ؽ ؾ ݸ Ѻ ص ڵ\ \ ҵ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ܵ ܽ ܾ ܽ ܾ ܵ ܽ ܽ ܽ \ Ժ Ժ \ \ ָ \ \ \ \ ĸ и غ ׺ \ ܵ \ Һ Ҹ ָ \ ܵ\ \ غ ݸ ׺ ֺ Ҹ ָ к ֹ ظ Ҭ ׺ \ ܷ\ ݾ \ Ҹ Ҹ \ ij Ѹ ҹ й ݸ ׺ \ \ ݸ й ݹ й ݹ ҹ \ ܵ ܵ\ \ \ \ \ Һ й ׺\ \ Ҹ \ Ҵ Ҵ ܵ ܵ\ \ \ \ \ Ҵ ܵ ݸ ޸ ݵ \ ܸ\ \ ݸ\ ܸ ݵ \ ܵ\ ܸ\ ܵ\ \ \ \ \ ׺ ׺ Ҹ ݺ й й ݹ ݸ ׺ ҹ ָ й ݹ й й ݹ Һ \ \ ݹ \ \ \ \ \ \ \ \ \ й ݹ ׸ ׸ Ҹ ׹ й ݹ ׸ ܹ ׺ ׸ ָ ع ׸ Һ к Ҹ к ׸ ظ Һ ظ غ \ \ \ Ե Ե \ \ \ ݽ ؽ ݾ ؾ Ѻ ܸ к ݾ ؽ ܵ Ҹ Ѻ к ָ ݽ ڵ к ؾ ֵ ҵ\ ݽ ؽ ݾ ؾ ڽ ھ ݽ ڽ ݾ ھ ؽ ؾ ̸ ĸ \ \ \ ݵ\ к \ \ \ к к \ \ \ \ \ ݸ ص Ѻ ڵ ݸ ص \ \ \ ҵ\ \ \ س г \ \ \ \ \ \ \ \ \ \ ܽ ܾ \ \ \ ص \ к \ к \ \ \ \ غ Ҹ غ ҹ Ҹ ظ л Ӹ Һ \ \ \ \ \ \ \ \ \ \ \ \ ڵ º غ \ \ º غ \ ܵ\ ׵ ׵ ׵\ ׵ \ \ \ \ \ ܵ\ \ \ \ \ ص\ \ \ \ ҵ \ \ \ ֵ\ \ \ \ \ \ ڵ\ \ \ \ \ \ \ Ѹ \ ܵ\ \ Ժ \ \ \ \ \ \ \ \ ׺\ ܽ ܾ ֿ ܽ ܾ ̴ ܽ ֿ ̴ ܽ \ \ غ ݹ ׺\ ܽ ܾ ֿ ܽ ܽ ܾ ܽ ֿ\ й к\ \ ݹ \ \ ܵ \ \ \ \ е \ \ г \ \ \ г \ г \ г \ \ ܽ\ ܾ\ ܿ\ ܿ ܾ ܽ \ Ҹ Һ ׸ غ \ г г г е г\ Ѹ ׺\ ܽ ܾ ܿ\ \ ܽ \ \ ܿ ܾ ܽ ܽ \ ݸ \ г \ \ \ г \ \ г\ г \ \ Ѹ ׺\ ܽ ܾ ܾ ܿ ܽ ܽ \ \ \ \ ܿ \ ׸ \ \ \ \ \ \ к\ е \ е \ ٹ г \ \ \ \ ׺ Һ Һ ׸ Һ и \ Ѻ ָ ؾ ֵ ݽ ڵ \ ݸ \ Ѻ ݾ ؽ ܵ ܸ ָ ݵ \ й ݹ ҹ к ܹ Ҹ Ҹ \ \ \ \ Ҹ й ݹ ӹ ĺ ݸ ҹ ݵ й ݹ й ݹ غ Ӹ й Һ Һ\ \ \ Ҹ\ ׸\ \ \ \ \ \ \ \ Ե \ \ \ \ \ غ Ե Ե \ \ \ ݽ ؽ ݾ ؾ Ѻ ݾ ؽ ܵ ܸ ָ ݵ Ҹ Ѻ ָ ݽ ڵ ؾ ֵ ҵ\ \ \ \ \ ݸ ص Ѻ ڵ ݸ ص \ \ \ \ ǯ \ ׸ ׸ ׺ ׺ ĸ ָ ׸ Ѻ Ѻ\ \ Һ ҹ Һ ׸ ׺ ݹ ׺ ҹ ָ ݺ ӯ Һ Ҹ ׺\ \ Ҹ \ Ҹ ֺ غ Һ ׸ ֺ ij ׸ Ҹ ij Һ ҹ ׸ ׸ ׸ Һ Ҹ Һ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ س \ \ \ \ \ \ \ س \ س \ \ \ \ ҹ \ ܸ ҵ \ \ \ \ \ ׵\ ܸ ҹ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Ե\ ҹ \ Һ ҹ ҹ \ س س Ժ \ \ \ \ \ \ ׺\ ܽ ־ ֿ \ ܽ ܽ ־ ܽ ֿ \ ׺ ݹ \ ܽ ־ ܽ ֿ ܽ ־ ܽ ֿ ׵\ \ Һ Ѹ \ \ Ҹ \ Ҹ ֺ Ѻ ׸ ׸ ׺ ׸ ׸ ij Һ ׸ й ݹ Һ ҹ ׸ ׸ ׸ ׺ Ҹ ֹ ֺ\ Һ ҹ ҹ \ س س \ ݹ Ѹ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ҳ ҳ ҳ ҳ\ س س س س س س س س յ س س س س س س ܵ\ \ \ ҹ \ \ ܸ ҵ \ \ \ \ \ \ Ҹ ܸ \ ҵ\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Ե\ ҹ \ ʵ ܽ ־ ܿ \ \ \ ־ ܽ \ ܿ ҵ\ \ \ \ \ \ Ҹ \ ӯ \ й ׸ ݹ Ѻ ӯ ֹ ݸ ׵ ݺ ܳ ֹ ָ Ѻ ظ ׹ ӯ Ը ָ ӯ غ Ѻ Ը Ҹ ׺ \ \ й ӯ \ \ \ \ ׸ ׸ Һ Ѻ \ س س س \ \ \ \ \ \ ʵ ܽ ־ ܽ ܽ ܽ ־ \ ܽ ݺ Ҹ ׺ ׸ к ֺ ݸ ׸ ѳ \ \ \ \ ׸ Һ ׸ Ҹ Һ ҹ ׸ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ س \ س \ س \ \ \ ҹ \ \ ܽ ܸ ݵ \ \ \ \ \ ָ ֹ ֹ Һ ݸ س س س ׺ Һ ѹ ׸ \ ܽ\ ܽ ѽ ܽ ѽ \ ܽ ѽ ܽ ܽ س س \ ܽ ܽ \ \ Ժ Ժ ݹ ܽ \ ܽ ܽ ܽ \ \ \ \ \ Ѹ \ \ \ \ \ \ Ҹ \ Һ ׸ ׸ ظ Ҹ ݸ ݺ Ҹ ׸ ׸ й ݹ Һ غ ҹ Һ ܸ Ҹ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ س س س س س س س г յ ܺ ܺ س س س س س س ܵ \ \ \ ҹ \ \ \ ܸ ҵ \ \ ʵ\ \ \ Ҹ ܸ ҵ \ \ \ \ \ Һ\ \ \ \ \ \ \ س س ܸ \ Ӹ й ݹ ׺ ݸ \ س س \ ҵ\ ׸ Ѹ ֺ \ \ \ ӯ й ׺ й Ҹ ӹ ׺ ָ ѳ ׺ ׺ ݸ ׸ ׸ ׸ Һ \ \ г Һ ӹ ӯ ܹ \ \ Һ ֺ\ ׿ ׾ ׽ ׿ ׾ ׽\ ׽ ׾ ׽ ׾ \ \ \ \ \ \ \ ʵ ȵ ׿ ׾ ׽ ֺ ׿ ֺ ׾ ׽ \ \ \ \ \ \ \ \ \ \ ܼ \ ܽ ־ ֿ \ \ ʵ\ ܽ ܽ ܽ ־ ܴ \ \ \ \ ֿ\ ҵ\ ܼ \ \ \ \ \ \ \ \ \ \ \ ܽ ־ ܽ ܽ ֿ ܽ ־ ܽ ֿ ܽ ܽ ܽ ܽ \ \ ʵ\ \ Һ \ س س س ܸ ݵ ܸ ݸ \ \ ݸ Ѻ\ Һ \ س س ܸ \ \ \ \ ݺ\ \ \ \ \ \ س س ܸ \ \ \ \ \ Ҹ \ Ҹ Ѹ ָ к ӹ ӹ Һ Ѹ ظ й ָ غ\ \ \ ҹ ׸ ֹ ׸ ܺ Һ Ҹ ׸ ׺\ \ \ \ \ ָ Һ Ը ݺ й \ \ \ ֺ ָ ݸ Ĺ \ غ\ \ \ \ \ \ \ \ ׺ Ҹ ӯ ׸ ӹ ӹ е ׺ ӹ \ \ Ҹ Ÿ \ ӹ Һ Һ Ӹ ݸ \ \ \ Һ Һ\ Ѻ Ժ ܸ Ժ ܵ \ Ҹ \ Ѻ Ժ ܸ Ժ ܵ \ ֺ\ ׸ \ \ \ \ \ \ \ \ \ \ \ ظ ӹ ۸ ӹ Ҹ \ \ \ ܺ\ Ѻ\ \ \ \ ܵ\ \ \ \ ӹ Ѹ \ \ \ \ Ѻ\ \ ӹ Ѹ ܸ \ \ \ \ ӹ \ \ \ \ \ \ \ \ ܵ\ ֺ\ \ \ ׸ \ \ \ \ \ ׺ ٹ ӹ غ Һ ׺ Թ и Һ\ \ Һ ع ׵ и ܹ Һ Թ ׺ ׺ ߽ ݹ и й Һ Ҹ ݹ ӫ ܹ ܺ Ҹ ָ ӫ ݺ \ ҹ ׸ Ҹ ҹ ֹ ݸ ӹ ѹ ѹ ع ݺ \ \ \ ظ ׸ ظ Ҹ к ݸ ۺ ׺ ݻ Ҹ Ǻ Ҹ ʺ Ҹ ָ ʺ Ҹ ĺ и ָ \ \ Ҹ ֺ ҹ ҹ ׸ ˸ ߽ ֹ ݺ ҹ Һ ׸ Ҹ ˸ ߾ ֹ غ ׺ Ⱥ غ ׸ ߿ ׺ ߾ ׸ ֺ ĺ ֳ ׸ ͸ ظ Ҹ ݺ ׺ ѹ ߽ ٹ Һ ߾ \ \ غ ׺ ظ ۺ ֵ ٸ ׸ ׺ к غ ָ ָ ӹ ˸ ߾ ֹ ݺ Һ ٹ ĺ Ѹ ָ ׸ ׸ ֺ ֹ ׺ ָ غ ߽ ݺ Һ ĺ ֺ ָ ݹ ӹ ׸ ߾ ׸ ݺ Һ ݸ Ҹ ׸ Ҹ ˸ ֹ ˹ ݺ Һ ׸ ߾ ܹ ˹ ݺ Һ Ҹ Ѹ и ׸ ӹ ׸ ˸ ֹ ݺ Һ ƹ ׸ ׸ ׺ ָ ׺ Ҹ ׸ Ҹ ˹ ׸ ѹ ׸ к ָ ߽ ׸ и Һ ߿ ݸ ָ ׹ Һ Ҹ ߾ ݸ ָ ׸ ֺ Ҹ ˹ ׸ ׸ \ \ ׹ Һ ׸ ˸ ߽ ֹ ˹˹ ҹ ׸ ߿ ׺ ֳ ׸ ׸ ׸ ֽ ׺ ׹º Ѹ ָ ݹ ҹ ׸ ߺ ׸ ҹ ݹ й Һ Һ ָ ָ ˺ ֹ ֺ ˹ ׺ ˹ ظ ݸ ׸ ׺ ׸ ظ ݸ Ҹ ֺ ׺ ظ и ׺ ۺ ׺ ָ ĺ ƺ Һ ׺ Ӹ ׸ ׸ ߽ ݸ ݺ й Һ ܹ ˹ Һ ӯ Һ ׸ Ƴ ˸ ߾ ֹ Һ ݺ ߾ Ҹ ֺ ׸ ׸ ú غ ׺ ׸ ú غ Һ и Һ \ \ ݸ ָ ׸ ׺ ֹ Ҹ ߽ ĺ ݺ ҹ Һ ĺ ظ ָ ׸ к Ӻ ׸ ָ ָ Һ ׸ ӹ ׺ ׸ ׸ Һ ӹ ׸ й ֹ ׸ Һ ׺ ӹ ߿ ֺ ֹ ׺ ֳ ׸ ׸ ׸ ֽ ֺ ֺ ݸ ָ ׹ Ҹ ˹˹ ׸ ӫ ׺ ֽ Һ ׸ ݸ Ĺʹ غ й غ Ҹ ҹ ҹ и ָ ׹ Ҹ ߿ ׸ ĺ ֺ º Һ ָ ֹ Ӹ ӵ ݸ ݸ ׸ Һ ׺ ߿ Һ Һ ׸ ָ ҹ ˸ ߽ ֹ Ĺ ׺ ׸ ֹ ߿ ׸ ˹ ", ["olivier-danvy/tdpe-ln.ps.gz"] = "Type-Directed Partial Evaluation\ Olivier Danvy\ BRICS ?\ Department of Computer Science\ University of Aarhus\ Building 540, Ny Munkegade, DK-8000 Aarhus C, Denmark\ E-mail: fdanvy,tdpeg@brics.dk\ Home pages: http://www.brics.dk/~fdanvy,tdpeg", ["palao-costanza/match.pdf"] = "A New\ Look\ at Pattern\ Palao\ Matching\ Gostanza, Rlcardo Manuel Peiia Ntiiiez\ in Abstract\ Pedro\ Data\ Types\ Departamento Universidad e-mail:\ de Inform~tica Complutense\ y Autom6tica de Madrid, Spain .es\ {ecceso,ricardo,\ manuelnu}@dia.ucm", ["patrik-jansson/jansson99polytypic.pdf"] = "@ A S RU Y R@ c A AR S S @ R c @ Y C S @ A E Ad E c TDdFCyAV!TVfmeFcDCPBF@QjhmA`F@FCyABB@PfHdVitDcfFdmATFdDChADUQgR\"HcTXffgR\"fDaA DcFSVTV`HcT0gDES'ffFaVgUhEFS)FcfVee)hSFcfFdmATFdDChAXfFaV\")fgYhE`Tf C@ S E SYU Ac R S C U Ec C S c A U @c E S@ ca sitVDPFBTgRfTVbVgUDEDStDcf`!B)TgRb)DcThUSBS`HUDEDStDcT0`!)FcfFdmATFdDCQ C@ E Y R@ R S C U @c a E Y S d @ E R S C U Y C A S C c S C E CU C Y R@ A@ Y Y C S C C S C U S eSAfDd)FcP`HDEDStDcT0gFSDAVeFcTV8TF@iT)FcfFdmATFdDChA0`U\"SVDUDStDcT0`0gSgeDc aFV)Dc)fDaHAFEVVgh `VF@`VFUfVeFV7BDcQj3)3HAffVBSAThdtDcVgUhES C@ Sc E CU cYU Ch C @ S@ 9 U A Cc E cRU U S C R h)FcfVeShA`)DcB `DU)B#7V)FceTt`B@V`DUfQB)D`7B#DcQj1e1FSHAf1fVU S C U CU C R Cc @ S@ Cc a cYU Ch C@ S@ 9 U A Cc E Cd S Ed C @ E A S C U ER @c CU Ad S C U ER c tDcgCfQ)FcgHVefjy'FS)FcfVeHfVgcfBfe#`fst)f yHAHEgDE#FS)FcfVebT\"fDaA S@ S SYU Ac R S C U@ R ARcRU R@ A S C R S C U C Ac d `0ahd1ffFa3VgUDEDStDcf`jBT`HUFE`)VjVe0VTDaSAfDd)Fc3`HUDEDStDcT0`')DchAeaT c Eh SYU Ac R S C U Ec C A A Cc CU R E S R A C S `H`XffFaVgUDEDStDcf`e)hSFcfDdTFdDCQeS #e#ecV!`HUDEDSShB@DCeDchAV@ gRB@VDU#tHc)FcfFdmATFdDChA\"hctfDaFS)FcfVFUTHAB'VF@`VFUfHFEf`i`I E AU A S Y C S Sc A S C U A S@ E Y R@ S Ch C A C@@ Y R@ S AaS S@ A@ Y C@ S @c C S S SU RU CU Ac TVT))gcTǢDQj))DcVTVF@iTFcBX)gcfBfFcfFdmATFdDChADSthcFS`!VFUdCX#V`XfR DeFcQHR!fFa3e`iefFaA)YFV#bfFaTf`DUVtDcTHFEDChAgSfbFcBiTFatHcBBgU C A E c A CcU Cc Ec CU c A YRd C@ Y Ad EY C@ A@ A S U A A@Y Ad E c A TF@iTXffgR\"fDa8BU FcfDdTFdDChAfFa)DcTiTFaB@V`DUf!`HUDEDStDcT0`P@ifFVXhAVTFSTDdFCyAVeBT C A S c A S S d A@ A Ch C R S C U A@Y @ U C@ A S RU Cc @ gSf8)`hUFS)FcfVe@if#BT`HUFEQeVj`BDaeFchAe)DcDStDcf`TBeFcyA`@fDdC Ea C S C U A@Y @ R ARcRU @ R@ A C Ac S S C U Y R@ C S S R @iffffgRfDaBDcTDdmADdFCyAfFa8)DcT'iDaVDUDStDcf`F@BfBVgcfBf7`fB)FSHAfhdtDcC A@Y Ad E c A U C S c A S S d A@ A C S C U A@Y @ @c CU S C Ac E Ch C AR E c CU @ Sc Eh S@ @ SU @ C R CcRU A@ eDcDA3DaHAVF@`VFUfgQegcP7FcVtVgVHVgyAQ0gBegcfVFUfVgUhESe`jV@ifY @ C Ch C @ E A@ Y Ad E c A U C A S c A h S d A@ A E c A@ VU$VF@`VFUf!HRF@iTffgRTDa#BPFcfDdTFdDChAfDa!THRDETBTDaHVg@ebf@ifY c A U C A S c A CUR E S CU CU C A C Rc Y R@ C S C U A@ Y SU TDa1B\"FcfDdTFdDChAfDaFcVf`HhDStHc`\"Dc`eSVFUjDeTeTV#SVDUFS)FcfVF@iTXyAQ0 S@ S S Ch C Cc A A@Y Ad E c A U C A S c A RU Y Rc cY @ C `aTDd)B@V`DUfefFaX8f@ifffgRPfFaVPFcfDdTDdFCyAbfDaVTeeHgB)gFEAFE A C A C YR@ C C@ S@ S S Ch C Sc A U c U Ac S@ A@Y )SCeDcQgRDETyDAFcfTV3FS)hcSB\"Vahd)B@VVFUfbhctfDaBbVj1BFeg`hc`TB@if@ FaAEDcBeff`iTFa#TVgUDETfd`eSVFUjDeTe`eSVDUFS)FcfVF@BfeSeFc`gRFEfyhAeDcf A@ ERd U A@ A S R A R C A C Rc C S C U A@Y C A C A C )FS)hcSB@XFcB#)gcfBfQ))fDaVfB0DUiD`UXTVVFUC\"@ifhA)VjVe'B@VVFUfjB C C C@ S @cCc AUR@ A A@ C c RU A@Y CcRU S Ch C R@ yfXfQ r w xu w ru w 7`t)rx`yBFTF)#QVdBt`y0x mlyxFVXyeDyej`y0j)#Fyiyx`Fw)Q\"tr`1f\")myswwQ3QxyVu l u w l w u u s f s x trer$Qywyx)))hlQQ)hsw\")ryw'lyBF\"sQQ`v`x)bhe`l s e s r l s x k w uu ru w u s e v w u w u s x w w QxyV\"trerml`)'FyiyxVQyVmFwej\"tFrD')ryxehiyVuy ej`X`yXFQVjidwyxi`lQy`xyjibml8rtgrQyxiyx`ejyg)iyrVu x w x w x w x u k e w u w w er x k s r f s x s e l yw'`tr)PmlyFw`yvswQ)ry\"Qywyxet)Q1femyswwQ\" tyrg0Q)yrw u w w l v e r w s u f T Q VdheQe`tyPi)eXFQv))ys)rse`)h\")hetyrVFQ1\"mlty )Fw j`yv sw)3r ye3DyejP`Vj)uy)rPjeFyiyx`Fw)Q\"tryxFQ) u xlr l w u u s y u u wvxn VgtBtVeBe rxn}ry u u w u tttr q poo VeVeVBgvgtesrg)in l w VjeHyDQyFwQyB)isw{ dxuw VFyw ttQ{| Fz`#V7vihuw w Bvy t`Vt`Vx p xVDy`Q\")8 x y x w `~ |) w v u s r q n o r ~|ox }r{ u w|{ yxn u w u tttr q poo ``)VpBi)wBtQzBvsvgetsrgtn F`lm8kBji)tr)rQQhge3dwxyF`#'yF\"s)Q8ft`xVQyx``\"t8p f er x q wvu sr q ih CdcI R@aUI YR@ W R SR@I A@ `fgRFEfe`bVTV`!TBXVDUFSTBQPHGFEDCB79 2 ( 6 % 4 ( 2 ( ( % !)87\"5!3!)10)'&$#\"! ", ["paul-bailes/coroutines.djvu"] = "2E AND EXPERIENCE, VOL. 15(4), 379-395 (APRIL 1985) \ Low-Cost Implementation of Coroutines for C \ PAUL A. BAILES \ Computing and Information Studies, School of Social and Industrial Administration, Griffith \ University, Nathan, Queensland 4111, Australia \ SUMMARY \ a set of primitive operations supporting coroutines, and demonstrate their usefulness. \ address their implementation in C according to a set of criteria aimed at maintaining \ and achieve a satisfactory compromise between it and effectiveness. Our package for \ ,11 under UNIX t allows users of coromines4programtogaln access to the primitives \ included definitions file and an object library; no penalty is imposed upon non-coroutine \ C Coroutines Language extension \ INTRODUCTION \ of this paper is to present an implementation of coroutines for the C \ language.  The overriding goal has been to do so with minimal effort and \ .. Advantages of such an approach generally include. \ very existence of a result ", ["paul-graham/sec.pdf"] = "Beating the Averages paul graham\ This article is based on a talk given at the Franz Developer Symposium in Cambridge, MA, on March 25, 2001. Copyright 2001 by Paul Graham. Draft, April 17, 2001.\ In the summer of 1995, my friend Robert Morris and I started a startup called Viaweb. Our plan was to write software that would let end users build online stores. What was novel about this software, at the time, was that it ran on our server, using ordinary Web pages as the interface. A lot of people could have been having this idea at the same time, of course, but as far as I know, Viaweb was the rst Web-based application. It seemed such a novel idea to us that we named the company after it: Viaweb, because our software worked via the Web, instead of running on your desktop computer. Another unusual thing about this software was that it was written primarily in a programming language called Lisp.1 It was in fact the rst big end-user application to be written in Lisp, which up till then had been used mostly in universities and research labs. Lisp gave us a great advantage over competitors using less powerful languages.", ["paul-graham/sec.ps"] = "Beating the Averages\ paul graham\ This article is based on a talk given at the Franz Developer Symposium in Cambridge,\ MA, on March 25, 2001. Copyright 2001 by Paul Graham. Draft, April 17, 2001.\ In the summer of 1995, my friend Robert Morris and I started a startup called\ Viaweb. Our plan was to write software that would let end users build online\ stores. What was novel about this software, at the time, was that it ran on our\ server, using ordinary Web pages as the interface.\ A lot of people could have been having this idea at the same time, of course,\ but as far as I know, Viaweb was the first Webbased application. It seemed\ such a novel idea to us that we named the company after it: Viaweb, because\ our software worked via the Web, instead of running on your desktop computer.", ["paul-heckbert/image-quantization.pdf"] = "C O L O R IMAGE Q U A N T I Z A T I O N FOR FRAME B U F F E R DISPLAY\ Paul H e c k b e r t C om p u t e r Graphics Lab New York I n s t i t u t e of T e c h n o l o g y", ["paul-hudak/domain-specific.pdf"] = "Modular Domain Specific Languages and Tools\ Paul Hudak Department of Computer Science Yale University New Haven, CT 06520 paul.hudak@yale.edu Abstract\ A domain specific language (DSL) allows one to develop software for a particular application domain quickly and effectively, yielding programs that are easy to understand, reason about, and maintain. On the other hand, there may be a significant overhead in creating the infrastructure needed to support a DSL. To solve this problem, a methodology is described for building domain specific embedded languages (DSELs), in which a DSL is designed within an existing, higher-order and typed, programming language such as Haskell or ML. In addition, techniques are described for building modular interpreters and tools for DSELs. The resulting methodology facilitates reuse of syntax, semantics, implementation code, software tools, as well as look-and-feel. Keywords: software reuse, modularity, abstraction, domain specific languages, functional languages, formal methods.", ["paul-hudak/dsl.ps.gz"] = "Modular Domain Specific Languages and Tools\ Paul Hudak\ Department of Computer Science\ Yale University\ New Haven, CT 06520\ paul.hudak@yale.edu", ["paul-hudak/functional-survey.djvu"] = "Conception, Evolution, and Application of Functional Programming \ Languages \ PaUl HUDAK \ Yale University, Department of Computer Science, New Haven, Connecticut 06520 \ The foundations of functional programming languages are examined from both historical \ and technical perspectives. Their evolution is traced through several critical periods: early \ work on lambda calculus and combinatory calculus, Lisp, Iswim, FP, ML, and modern \ functional languages such as Miranda  and Haskell. The fundamental premises on which \ the functional programming methodology stands are critically analyzed with respect to \ philosophical, theoretical, and pragmatic concerns. Particular attention is paid to the \ main features that characterize modern functional languages: higher-order functions, \ lazy evaluation, equations and pattern matching, strong static typing and type inference, \ and data abstraction. In addition, current research areas--such as parallelism, ", ["paul-hudak/functional-survey.pdf"] = "Conception, Languages\ PAUL HUDAK\ Yale University,\ Evolution,\ and Application\ of Functional\ Programming\ Department\ of Computer Science, New Haven, Connecticut 06520\ The foundations of functional programming languages are examined from both historical and technical perspectives. Their evolution is traced through several critical periods: early work on lambda calculus and combinatory calculus, Lisp, Iswim, FP, ML, and modern functional languages such as Miranda’ and Haskell. The fundamental premises on which the functional programming methodology stands are critically analyzed with respect to philosophical, theoretical, and pragmatic concerns. Particular attention is paid to the main features that characterize modern functional languages: higher-order functions, lazy evaluation, equations and pattern matching, strong static typing and type inference, and data abstraction. In addition, current research areas-such as parallelism, nondeterminism, input/output, and state-oriented computations-are examined with the goal of predicting the future development and application of functional languages. Categories and Subject Descriptors: D.l.l [Programming Techniques]: Applicative (Functional) Programming; D.3.2 [Programming Languages]: Language Classifications-applicative languages; data-flow languages; nonprocedural languages; very high-level languages; F.4.1 [Mathematical Logic and Formal Languages]: Logic-lambda calculus and related systems; K.2 [History of Computing]: Mathematical Software General Terms: Languages Additional evaluation, Key Words and Phrases: Data abstraction, referential transparency, types higher-order functions, lazy", ["paul-hudak/icra99.ps.gz"] = "A Language for Declarative Robotic Programming\ John Peterson, Gregory D. Hager, and Paul Hudak\ Department of Computer Science\ Yale University\ New Haven, CT 06520", ["paul-hudak/jfp.ps.gz"] = "Haskell vs. Ada vs. C++ vs. Awk vs. ...\ An Experiment in Software Prototyping Productivity \\Lambda\ Paul Hudak\ Mark P. Jones\ Yale University\ Department of Computer Science\ New Haven, CT 06518\ fhudakpaul,jonesmarkg@cs.yale.edu\ July 4, 1994", ["paul-hudak/modular-interpreters.ps.gz"] = "MonadTransformersand Modular Interpreters \\Lambda\ Sheng Liang Paul Hudak Mark Jones y\ Yale University\ Department of Computer Science\ New Haven, CT 065208285\ fliang,hudak,jonesmarkg@cs.yale.edu", ["paul-hudak/padl99.ps.gz"] = "Lambda in Motion:\ Controlling Robots With Haskell\ John Peterson 1 , Paul Hudak 1 , and Conal Elliott 2\ 1 Yale University, petersonjohn@cs.yale.edu and paul.hudak@yale.edu\ 2 Microsoft Research, conal@microsoft.com", ["paul-hudak/visionpaper.ps.gz"] = "Submitted to the 1999 International Conference on Software Engineering\ Prototyping RealTime Vision Systems:\ An Experiment in DSL Design\ Alastair Reid, John Peterson, Greg Hager, Paul Hudak\ Yale University\ P.O Box 208285\ New Haven, CT 06520\ freidalastair, petersonjohn, hagergreg, hudakpaulg@cs.yale.edu", ["paul-klint/interpretation.djvu"] = "TransactionNumber: 521659 \ IIIII I II IIIIIIIIIIII II II \ Location: \ Article Information \ Journal Title: Software---Practice and Experience \ Volume: 11 Issue: \ Month/Year: / 1981 \ Pages: 963-973 \ Article Author: Paul Klint \ Article Title: Interpretation Techniques \ Loan Information \ Loan Title: \ Loan Author: \ Publisher: \ Place: \ Date: \ Imprint: \ Customer Information \ Username: nramse01 \ Norman Ramsey \ Faculty - Computer Science \ 161 College Ave \ Medford, MA 02155 \ Article Delivery Method: Hold for Pickup \ Loan Delivery Method: Hold for Pickup \ Electronic Delivery? Yes \ SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 11, 963-973 (1981) \ Interpretation Techniques* \ PAUL KLINT \ Mathematical Centre, P.O. Box 4079, 1009AB Amsterdam, The Netherlands \ SUMMARY \ The relative merits of implementing high level programming languages by means of \ interpretation or compilation are discussed. The properties and the applicability of interpre- \ tation techniques known as classical interpretation direct threaded code and indirect ", ["paul-klint/interpretation.pdf"] = "", ["paul-klint/old-interpretation.djvu"] = "", ["paul-oman/style.djvu"] = "Edgar H. Sibley \ Panel Editor \ A L P H A B E T S \ & \ L A N G U A G ES \ There is disagreement about the role and importance of typographic style \ (source code formatting and commenting) in program comprehension. \ Results from experiments and ,opinions in programming style books are \ mixed. This article presents principles of typographic style consistent and \ compatible with the results of program comprehension studies. Four \ experiments demonstrate that the typographic style principles embodied in \ the book format significantly aid program comprehension and reduce \ maintenance effort. \ Typographic Style is More \ than Cosmetic \ Paul W. Oman and Curtis R. Cook \ Program comprehension plays an important role in \ many programming tasks. For example, about one half \ of a maintenance programmer's time is spent studying \ the source code and related documentation. Mainte- \ nance programmers cite understanding the intent and ", ["paul-wilson/allocsrv.ps.gz"] = "Dynamic Storage Allocation:\ A Survey and Critical Review ? ??\ Paul R. Wilson, Mark S. Johnstone, Michael Neely, and David Boles ???\ Department of Computer Sciences\ University of Texas at Austin\ Austin, Texas, 78751, USA\ (wilson---markj---neely@cs.utexas.edu)", ["paul-wilson/bigsurv.ps.gz"] = "Uniprocessor Garbage Collection Techniques\ [Submitted to ACM Computing Surveys]\ Paul R. Wilson", ["paul-wilson/fragmentation.pdf"] = "The Memory Fragmentation Problem: Solved?*\ Mark S. Johnstone\ The Motorola Somerset Design Center\ Austin, Texas, USA\ johnstone@acm.org\ specific to a few programs. Often the researchers conducting\ these studies went to great lengths to ensure that their traces\ had statistical properties similar to real programs. However,\ none of these studies showed the validity of using a randomly\ generated trace to predict performance on real programs (no\ matter how well the randomly generated trace statistically\ models the original program). As we showed in [WJNB95,\ Joh97], what all of this previous work ignores is that a randomly generated trace is not valid for predicting how well a\ particular allocator will perform on a real program.\ We therefore decided to perform simulation studies on\ various memory allocation policies using memory allocation", ["paul-wilson/fragsolved.pdf"] = "The Memory Fragmentation Problem: Solved?*\ Mark S. Johnstone The Motorola Somerset Design Center Austin, Texas, USA johnstone@acm.org Paul R. Wilson The University of Texas at Austin Austin, Texas, USA wilson@cs.utexas.edu", ["per-ake-larson/dynamic-hash.djvu"] = "RESEARCH CONTRIBUTIONS \ Algorithms and \ Data Structures \ Daniel Sleator \ Editor \ Dynamic Hash Tables \ Per-Ake Larson ", ["per-brinch-hansen/division.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 24(6), 579601 (JUNE 1994)\ Multiple-length Division Revisited: a Tour of the Minefield\ School of Computer and Information Science, Syracuse University, Syracuse, NY 13244, U.S.A. (email: pbh top.cis.syr.edu)\ per brinch hansen\ SUMMARY Long division of natural numbers plays a crucial role in Cobol arithmetic, cryptography, and primality testing. Only a handful of textbooks discuss the theory and practice of long division, and none of them do it satisfactorily. This tutorial attempts to fill this surprising gap in the literature on computer algorithms. We illustrate the subtleties of long division by examples, define the problem concisely, summarize the theory, and develop a complete Pascal algorithm using a consistent terminology.\ key words: Algorithms Multiple-length integer division\ INTRODUCTION Long division of natural numbers plays a crucial role in Cobol arithmetic,1 cryptography,2 and primality testing.3 While writing a program for primality testing,4 the author learned two lessons the hard way: 1. Only a handful of textbooks discuss the theory and practice of long division, and none of them do it satisfactorily. 2. A correct, efficient algorithm for long division cannot be reinvented with minimal effort. This tutorial attempts to fill this surprising gap in the literature on computer algorithms. A helpful description of an algorithm should include three elements: 1. An informal introduction that illustrates the problem and its solution by wellchosen examples. 2. A concise definition of the general problem and an explanation of the computational theory. 3. A well-structured complete algorithm written in a standard programming language using the same terminology as the theoretical discussion. The best textbooks on algorithms satisfy all three requirements. However, computer CCC 00380644/94/06057923 1994 by John Wiley & Sons, Ltd. Received 5 October 1992", ["per-martin-lof/constructive-math.pdf"] = "CONSTRUCTIVE MATHEMATICS A N D COMPUTER\ PROGRAMMING\ PER MARTIN-Lt)F\ University of Stockholm, Stockholm, Sweden\ During the period of a bit more than thirty years that has elapsed since the first electronic computers were built, programming languages have developed from various machine codes and assembly languages, now referred to as low level languages, to high level languages, like FORTRAN, ALGOL 60 and 68, LISP and PASCAL. The virtue of a machine code is that a program written in it can be directly read and executed by the machine. Its weakness is that the structure of the code reflects the structure of the machine so closely as to make it unusable for the instruction of any other machine and, what is more serious, very difficult to understand for a human reader, and therefore error prone. With a high level language, it is the other way round. Its weakness is that a program written in it has to be compiled, that is, translated into the code of a particular machine, before it can be executed by it. But one is amply compensated for this by having a language in which the thought of the programmer can be expressed without too much distortion and understood by someone who knows next to nothing about the structure of the hardware, but does know some English and mathematics. The distinction between low and high level programming languages is of course relative to available hardware. It may well be possible to turn what is now regarded as a high level programming language into machine code by the invention of new hardware. Parallel to the development from low to high level programming languages, there has been a change in one’s understanding of the programming activity itself. It used to be looked (down) upon as the rather messy job of instructing this or that physically existing machine, by cunning tricks, to perform computational tasks widely surpassing our own physical powers,", ["peter-deutsch/efficient-smalltalk.djvu"] = "Efcie,t hnplemel:tation of the Smalltalk-80 S s.. \ I.. Peter I)cutsch \ Xerox PARC, Software Concepts Group \ Allan M. $chiffinan \ Fah'child I,ahoratory for Artificial Intelligence Research \ AI1ST!IACI' \ The Smalltalk-80* programming language inchides dynamic \ storage allocation, fidl Lipward l'tlllargs, ad univeally \ polymerohio procedures; the Smalllalk-80 programming system \ features intcnctivc execution with incrcmcnUll compilation. and \ implementation portability. Tbcsc features of modern \ programming systems arc among the most dillcult to implement \ ccicntly, cvcn individually. A new implcmcntatiou oF the \ Smalltalk-80 system, hosted on a small microprocessor-based \ computer, achieves high pcrfornmncc while retaining' complete \ (object code) compatibility with existing implementations. '!his \ paper diusscs the mot significant optimizatkm techniques \ developed over the coumc off the project. many oF which am ", ["peter-deutsch/efficient-smalltalk.pdf"] = "Efficient lmpl?met:tation of the Smalltalk-80 S sty_.~_qLn\ \"\ I.. Peter I)cutsch\ Xerox PARC, Software Concepts Group\ Allan M. Schiffman\ Fairchild I.ahoratory hw Artificial Intelligence Research\ machine instruction set, similar to the Pascal P-system [Ammann\ 75] [Ammann 77]. One unusual feature of the Smalltalk-80 vmachine is that it makes runtime state such as procedure\ activations visible to tile programmer as data objects. This is\ similar to tile \"spaghetti stack\" model of Interlisp [XSIS 83l, but\ more straightforward: Intcrlisp uses a programmer-visible\ iudircction mechanism to reference pr~x:edure activations,\ whe~'cas Ihe Sinalltalk-80 programmer treats procedure\ actiwttioas just like any other data objects.\ ABS'I'I{ACr\ The Smalltalk-80* programming language includes dynamic\ storage allocation, fuU upward limargs, and universally\ polymorphic procedures; file Smalllalk-80 programming system", ["peter-deutsch/old-efficient-smalltalk.djvu"] = "Efficient lmpl?met:tation of the Smalltalk-80 S sty_. ~_qLn\" \ I.. Peter I)cutsch \ Xerox PARC, Software Concepts Group \ Allan M. Schiffman \ Fairchild I.ahoratory hw Artificial Intelligence Research \ ABS'I'I{ACr \ The Smalltalk-80* programming language includes dynamic \ storage allocation, fuU upward limargs, and universally \ polymorphic procedures; file Smalllalk-80 programming system \ features interactive exect,tion wiflt incremental compilation, and \ implementation portability. \ These features of modern \ programming systems are among the most difficult tu implement \ efficiently, even individually. A new implemelltation of the \ Small/alk-80 system, hnsted on a sinall microprocessor-based \ computer, achieves high performance while retaining' complete \ (object code) compatibility with existing implementations. This \ paper discusses the most significant optimization techniques \ developod over the course of the project, many of which are ", ["peter-deutsch/old-trac.djvu"] = "AUG. 25/11:00-12:30/GOLD ROOM \ SESSION 11: Programming Languages for Non-Numeric Processing--1 \ Chairman: R. W. Floyd \ Computer Associates, inc., Wakefield, Mass. \ 11.1: TRAC, A Text HandlingLanguage* \ C. N. Mooers and L. P. Deutsch \ Rockford Research Institute, Inc., Cambridge, Mass. \ THE TRAC SYSTEM for Text Reckoning And Compiling was developed as a software package \ and user language to go with the reactive typewriter. \ Design goals included the at- \ tainment of a concise and efficient input language, a straightforward philosophy and \ a high order of logical versatility. The external and internal forms of the TRAC \ language are the same. \ TRAC can accept, name, store, operate upon in any way, and \ emit any string of characters that can be produced on a teletypewriter keyboard. \ Any string can be treated at any time as text, name, or program. ", ["peter-deutsch/trac.djvu"] = "AUG. 25/1hOO-12.'30/GOLD ROOM \ SESSION 11: Programming Languages for Non-Numeric Processing--1 \ Chairman: R. W. Floyd \ Computer Associates, inc., Wakefield, Mass. \ 11.1: TRAC, A Text Handling Language* \ C. H. Mooers and L. P. Deutsch \ Rockford Research Institute, Inc,, Cambridge, Mass, \ THE TRAC SYSTEM for Text Reckoning And Compiling was developed as a software package \ and user language to go with the reactive typewriter. Design goals included the at- \ tainment of a concise and efficient input language, a straightforward philosophy and \ a high order of logical versatility. The external and internal forms of the TRAC \ language are the same. TRAC can accept, name, store, operate upon in any way, and \ emit any string of characters that can be produced on a teletypewriter keyboard. \ Any string can be treated at any time as text, name, or program. ", ["peter-deutsch/trac.pdf"] = "AUG. 25/11:00-12:30/GOLD ROOM\ SESSION 11: Programming Languages for Non-Numeric Processing--1 Chairman: R. W. Floyd Computer Associates, inc., Wakefield, Mass.\ 11.1: TRAC, A Text HandlingLanguage*\ C. N. Mooers and L. P. Deutsch Rockford Research Institute, Inc., Cambridge, Mass.\ THE TRAC SYSTEM for Text Reckoning And Compiling was developed as a software package and user language to go with the reactive typewriter. Design goals included the attainment of a concise and efficient input language, a straightforward philosophy and a high order of logical versatility. The external and internal forms of the TRAC language are the same. TRAC can accept, name, store, operate upon in any way, and emit any string of characters that can be produced on a teletypewriter keyboard. Any string can be treated at any time as text, name, or program. This paper describes the design decisions that went into the construction of the TRAC language and system. The acronym TRAC stands for \"text reckoning and compiling ''I. The TRAC system had its genesis in the need for a general tool for dealing with text. In its later stages, TRAC developed in parallel with the evolution of the reactive typewriter concept 2. TRAC is now running in a time-shared environment, and is currently undergoing testing and operational refinement 3. In preliminary assessment, TRAC appears to exceed the design targets set for it. By text is meant any string of characters (alphabetic, numeric, punctuation, other signs, format control and signal control characters) which can be generated from a teletypewriter keyboard, or any other keyboard, or which can control the printing action of a teleprinter machine, or can control the action of any other device. By dealin$ with text is meant any effectively definable operation upon characters, strings of characters, or their code representation. Such operations may include making correction~ and insertions in text, storage of text for later use, retrieval of text, re-formatting of text and page make-up, data formatting for numerical computation, simple numerical computation, character recoding, and many other possibilities. By reactive typewriter is meant a teletypewriter, or typewriter with teletypewriter capabilities, connected by telegraph line to a multiple access, time-shared computer with large storage capabilities. Low cost, full upper- and lower-case character capabilities, and convenient immediate responsiveness are important elements of the concept of the reactive typewriter 2. The TRAC system can be thought of as the \"genie at the other side of the keyboard\" for a person using the reactive typewriter. Such a person may be a scientist doing a computation, a stenographer correcting a legal brief, or a librarian composing a catalog card. Each user should have a set of procedures that can be called, used, and even redefined at his keyboard. These procedures should be callable in", ["peter-hellekalek/parallel-mc.pdf"] = "Don't Trust Parallel Monte Carlo!\ P. Hellekalek\ Dept. of Mathematics\ University of Salzburg\ A-5020 Salzburg, AUSTRIA", ["peter-kessler/fastbreak.pdf"] = "Fast Breakpoints: Design and Implementation\ Peter B. Kessler Xerox PARC 3333 Coyote Hill Road Palo Alto, CA 94304", ["peter-landin/mechanical-eval.djvu"] = "", ["peter-landin/next-700.djvu"] = "The Next 700 Programming Languages \ P. J. Landin \ Univac Division of Sperry Rand Corp., New York, New York \ \"... today... 1,700 special programming languages used to 'com- \ municate' in over 700 application areas.\"--Cowputer Software Issues, \ an American Mathematical Association Prospectus, July 1965. \ A family of unimplemented computing languages is de- \ scribed that is intended to span differences of application area \ by a unified framework. This framework dictates the rules \ chout the uses of user-coined names, and the conventions \ about characterizing functional relationships. Within this frame- \ work the design of a specific languace splits into two inde- \ pendent parts. One is the choice of written appearances of \ pro,rams (or more enerally, their physical representation). \ The o:her is the choice of the abstract entities (such as numbers, \ character-strings, lists of them, functional relations among ", ["peter-lee/facet-tr.pdf"] = "A Modular Implementation of Partial Evaluation\ Christopher Colby Peter Lee March 1992\ CMU-CS-92-123\ School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213", ["peter-lee/run-time-codegen.pdf"] = "Lightweight Run-Time Code Generation\ Mark Leone\ Peter Lee\ Carnegie Mellon University\ Pittsburgh, Pennsylvania 15213 USA\ fmleone,petelg@cs.cmu.edu", ["peter-miller/recursive-make.pdf"] = "Recursive Make Considered Harmful\ Peter Miller millerp@canb.auug.org.au ABSTRACT For large UNIX projects, the traditional method of building the project is to use recursive make. On some projects, this results in build times which are unacceptably large, when all you want to do is change one file. In examining the source of the overly long build times, it became evident that a number of apparently unrelated problems combine to produce the delay, but on analysis all have the same root cause. This paper explores a number of problems regarding the use of recursive make, and shows that they are all symptoms of the same problem. Symptoms that the UNIX community have long accepted as a fact of life, but which need not be endured any longer. These problems include recursive makes which take \"forever\" to work out that they need to do nothing, recursive makes which do too much, or too little, recursive makes which are overly sensitive to changes in the source code and require constant Makefile intervention to keep them working. The resolution of these problems can be found by looking at what make does, from first principles, and then analyzing the effects of introducing recursive make to this activity. The analysis shows that the problem stems from the artificial partitioning of the build into separate subsets. This, in turn, leads to the symptoms described. To avoid the symptoms, it is only necessary to avoid the separation; to use a single make session to build the whole project, which is not quite the same as a single Makefile. This conclusion runs counter to much accumulated folk wisdom in building large projects on UNIX. Some of the main objections raised by this folk wisdom are examined and shown to be unfounded. The results of actual use are far more encouraging, with routine development performance improvements significantly faster than intuition may indicate, and without the intuitvely expected compromise of modularity. The use of a whole project make is not as difficult to put into practice as it may at first appear. Miller, P.A. (1998), Recursive Make Considered Harmful, AUUGN Journal of AUUG Inc., 19(1), pp. 14-25.", ["peter-pierrou/litprog.pdf"] = "1 (19)\ Literate Programming in XML\ Combining source code and documentation\ Author:Peter PierrouAddress:Excosoft AB, Peter.Pierrou@excosoft.se http://www.excosoft.se Peter Pierrou is the Project Manager for the Documentor project at Excosoft.", ["peter-sestoft/match.ps.gz"] = "ML pattern match compilation\ and partial evaluation ?\ Peter Sestoft\ (sestoft@dina.kvl.dk)\ Department of Mathematics and Physics\ Royal Veterinary and Agricultural University\ Thorvaldsensvej 40, DK1871 Frederiksberg C, Denmark", ["peter-sestoft/ref-trans.pdf"] = "Acta Informatica 27, 505-517 (1990)\ 9 Springer-Verlag 1990\ Referential Transparency, Definiteness and Unfoldability\ H a r a l d S o n d e r g a a r d 1 and Peter Sestoft 2 1 Department of Computer Science, University of Melbourne, Parkville 3052 Vic., Australia 2 DIKU, University of Copenhagen, Universitetsparken 1, DK-2100 Copenhagen O, Denmark Received November 30, 1987/January 4, 1990\ Summary. The term \"referential transparency\" is frequently used to indicate\ that a programming language has certain useful substitution properties. We observe, however, that the formal and informal definitions given in the literature are not equivalent and we investigate their relationships. To this end, we study the definitions in the context of a simple expression language and show that in the presence of non-determinism, the differences between the definitions are manifest. We propose a definition of \"referential transparency\", based on Quine's, as well as of the related notions: definiteness and unfoldability. We demonstrate that these notions are useful to characterize programming languages.", ["peter-sewell/itp10-armv7.pdf"] = "A Trustworthy Monadic Formalization of the ARMv7 Instruction Set Architecture\ Anthony Fox and Magnus O. Myreen\ Computer Laboratory, University of Cambridge, UK", ["peter-thiemann/embedded-toit.pdf"] = "An Embedded Domain-Specific Language for Type-Safe Server-Side Web Scripting\ PETER THIEMANN Universitat Freiburg, Germany \ WASH/CGI is an embedded domain-specific language for server-side Web scripting. Due to its reliance on the strongly typed, purely functional programming language Haskell as a host language, it is highly flexible and--at the same time--it provides extensive guarantees due to its pervasive use of type information. WASH/CGI can be structured into a number of sublanguages addressing different aspects of the application. The document sublanguage provides tools for the generation of parameterized XHTML documents and forms. Its typing guarantees that almost all generated documents are valid XHTML documents. The session sublanguage provides a session abstraction with a transparent notion of session state and allows the composition of documents and Web forms to entire interactive scripts. Both are integrated with the widget sublanguage which describes the communication (parameter passing) between client and server. It imposes a simple type discipline on the parameters that guarantees that forms posted by the client are always understood by the server. That is, the server never asks for data not submitted by the client and the data submitted by the client has the type requested by the server. In addition, parameters are received in their typed internal representation, not as strings. Finally, the persistence sublanguage deals with managing shared state on the server side as well as individual state on the client side. It presents shared state as an abstract data type, where the script can control whether it wants to observe mutations due to concurrently executing scripts. It guarantees that states from different interaction threads cannot be confused. Categories and Subject Descriptors: D.1.1 [Programming Techniques]: Applicative (Functional) Programming; D.2.2 [Software Engineering]: Design Tools and Techniques--Software libraries; D.3.2 [Programming Languages]: Language Classifications--Specialized application languages; H.3.4 [Information Storage and Retrieval]: Systems and Software; I.7.2 [Document and Text Processing]: Document Preparation General Terms: Design, Languages Additional Key Words and Phrases: Interactive Web services, Web programming", ["peter-thiemann/htdp-battlefield.pdf"] = "HtDP and DMdA in the Battlefield\ A Case Study in First-year Programming Instruction\ Annette Bieniusa Markus Degen Phillip Heidegger Peter Thiemann Stefan Wehr\ Albert-Ludwigs-Universit t Freiburg a {bieniusa,degen,heidegger,thiemann,wehr} @informatik.uni-freiburg.de\ Martin Gasbichler \ Z hlke Engineering AG u martin.gasbichler@zuehlke.com\ Marcus Crestani Herbert Klaeren Eric Knauel\ Eberhard-Karls-Universit t T bingen a u {knauel,crestani,klaeren} @informatik.uni-tuebingen.de\ Michael Sperber\ DeinProgramm sperber@deinprogramm.de", ["peter-thiemann/neubauer01functional.pdf"] = "Functional Logic Overloading\ Matthias Neubauer Peter Thiemann Universitat Freiburg \ {neubauer,thiemann}@informatik.uni-freiburg.de\ Martin Gasbichler Michael Sperber Universitat Tubingen \ {gasbichl,sperber}@informatik.uni-tuebingen.de", ["peter-thiemann/padl00.ps.gz"] = "Modeling HTML in Haskell\ Peter Thiemann\ Universitat Freiburg, Germany\ Email: thiemann@informatik.uni-freiburg.de", ["peter-wonka/street_sig08.pdf"] = "Interactive Procedural Street Modeling\ Guoning Chen ∗\ ∗ Oregon\ Gregory Esch ∗\ State University\ † Arizona\ Peter Wonka †\ State University\ Pascal M¨ ller ‡\ u\ ‡ Procedural\ Eugene Zhang∗\ Inc. / ETH Z¨ rich\ u\ Figure 1: This figure shows the three steps of our pipeline. The input water map is based on a stretch of the Benue River in Nigeria. Left:\ Starting from topographical water and park maps, the user designs a tensor field. Middle: The tensor field and further editing operations are\ used to generate a road network. Right: Three-dimensional geometry is created.", ["phil-klein/cs17-18.djvu"] = "Teaching \ Nine years of CS17-CS18 \ Professor Philip Klein does research \ in algorithms and data structures, \ especially in the area of combinatoriai \ optimization, and especially those \ problems involving graphs. On April 19, \ Klein was selected to receive the Phillip \ J. Bray Award forTeaching Excellence in \ the Physical Sciences, in part in \ recognition for his work on CS17-CS18 \ Philip Klein \ If you haven't been a student at Brown in a \ decade, you might not know that graduating CS \ concentrators these days never take CS15 (the \ course formerly known as CSll) or CS16 (the \ course formerly known as CS21). As an experi- \ ment, the department introduced an alternative \ introductory Computer Science sequence in \ 1998, and the \"experiment\" will be conducted \ next year for the tenth time. \ CS17 and CS18 are officially titled \"Computer \ Science: An Integrated Introduction.\" The term ", ["phil-wadler/arrows-and-idioms.pdf"] = "MSFP 2008\ Idioms are oblivious, arrows are meticulous,\ monads are promiscuous\ Sam Lindley, Philip Wadler and Jeremy Yallop\ Laboratory for Foundations of Computer Science\ The University of Edinburgh", ["phil-wadler/class.djvu"] = "How to make ad-hoc polymorphism less ad hoc \ Philip Wadler and Stephen Blott \ University of Glasgow* ", ["phil-wadler/class.pdf"] = "How to make ad-hoc polymorphism less ad hoc\ Philip Wadler and Stephen Blott\ University of Glasgow\ October 1988", ["phil-wadler/class.ps"] = "How to make adhoc polymorphism less ad hoc\ Philip Wadler and Stephen Blott\ University of Glasgow \\Lambda\ October 1988", ["phil-wadler/classhask.dvi"] = " TYPE CLASSES IN HASKELL\ CORDELIA HALL, KEVIN HAMMOND, SIMON PEYTON JONES, PHILIP WADLER\ UNIVERSITY OF GLASGOW", ["phil-wadler/comprehending.dvi"] = " Comprehending Monads\ Philip Wadler\ University of Glasgow", ["phil-wadler/dual.pdf"] = "Call-by-Value is Dual to Call-by-Name\ Philip Wadler\ Avaya Labs\ wadler@avaya.com", ["phil-wadler/effectstocl.pdf"] = "The Marriage of Effects and Monads\ PHILIP WADLER Avaya Labs and PETER THIEMANN Universitat Freiburg \ Gifford and others proposed an effect typing discipline to delimit the scope of computational effects within a program, while Moggi and others proposed monads for much the same purpose. Here we marry effects to monads, uniting two previously separate lines of research. In particular, we show that the type, region, and effect system of Talpin and Jouvelot carries over directly to an analogous system for monads, including a type and effect reconstruction algorithm. The same technique should allow one to transpose any effect system into a corresponding monad system. Categories and Subject Descriptors: D.3.1 [Programming Languages]: Formal Definitions and Theory; F.3.2 [Logics and Meanings of Programs]: Semantics of Programming Languages-- Operational semantics General Terms: Languages, Theory Additional Key Words and Phrases: Monad, effect, type, region, type reconstruction", ["phil-wadler/essence.dvi"] = " The essence of functional programming\ Philip Wadler, University of Glasgow*", ["phil-wadler/failure.djvu"] = "How to Replace Failure by a List of Successes \ A method for exception handling backtracking and pattern matching \ in lazy functional languages \ Philip Wadler \ Programming Research Group, Oxford University \ 11 Keble Road, Oxford, OX1 3QD ", ["phil-wadler/free.dvi"] = " Theorems for free!\ Philip Wadler\ University of Glasgow*\ June 1989", ["phil-wadler/lazyvsstrict.dvi"] = " Lazy vs. Strict*\ Philip Wadler\ University of Glasgow\ Glasgow G12 8QQ, Scotland\ wadler@dcs.glasgow.ac.uk\ http://www.dcs.glasgow.ac.uk\ Lazy, or call-by-need, languages schedule work dynamically by building clo-\ sures, and shun side effects; strict, or call-by-value languages avoid the overhead\ of closures and may exploit side effects. Each style has complementary advan-\ tages and complimentary adherents.\ The gap between the lazy and strict camps has two dimensions, which we\ shall name style and models. Recent developments suggest that along both\ dimensions the gap is shrinking. We list some commercial applications of each\ kind of language, and examine each dimension of difference in turn.\ Applications\ Here are two commercial applications that demonstrate the utility of laziness,", ["phil-wadler/lineartaste.dvi"] = " A taste of linear logic?\ Philip Wadler\ Department of Computing Science, University of Glasgow, G12 8QQ, Scotland\ (wadler@dcs.glasgow.ac.uk)", ["phil-wadler/linq-theory.pdf"] = "A Practical Theory of Language-Integrated Query\ James Cheney\ Sam Lindley\ Philip Wadler\ The University of Edinburgh\ jcheney@inf.ed.ac.uk\ University of Strathclyde\ Sam.Lindley@ed.ac.uk\ The University of Edinburgh\ wadler@inf.ed.ac.uk", ["phil-wadler/marktoberdorf.dvi"] = " Monads for functional programming\ Philip Wadler, University of Glasgow?\ Department of Computing Science, University of Glasgow, G12 8QQ, Scotland\ (wadler@dcs.glasgow.ac.uk)", ["phil-wadler/monadscomb.dvi"] = " Combining Monads\ David J. King Philip Wadler\ University of Glasgow*", ["phil-wadler/monadsdeclare.dvi"] = "How to Declare an Imperative\ Philip Wadler\ Bell Laboratories, Lucent Technologies\ ___________________________________________________________________________________________________________________\ How can we integrate interaction into a purely declarative language? This tutorial describes a\ solution to this problem based on a monad. The solution has been implemented in the functional\ language Haskell and the declarative language Escher. Comparisons are given to other approaches\ to interaction based on synchronous streams, continuations, linear logic, and side effects.\ Categories and Subject Descriptors: D.3.3 [Programming Languages]: Language Constructs\ and Features_Input/Output; F.4.1 [Mathematical Logic and Formal Languages]: Mathe-\ matical Logic_Lambda calculus and related systems\ General Terms: Languages, Theory\ Additional Key Words and Phrases: functional programming, monad, Haskell\ ___________________________________________________________________________________________________________________\ 1. INTRODUCTION\ Four centuries ago, Descartes pondered the mind-body problem: how can incorpo-", ["phil-wadler/overload2.dvi"] = " *\ A Second Look at Overloading\ Martin Odersky Philip Wadler Martin Wehr\ Universit\"at Karlsruhey University of Glasgowz Universit\"at Karlsruhe\ (odersky@ira.uka.de) (wadler@dcs.glasgow.ac.uk) (wehr@ira.uka.de)", ["phil-wadler/prettier-book.pdf"] = "A prettier printer Philip Wadler\ Joyce Kilmer and most computer scientists agree: there is no poem as lovely as a tree. In our love affair with the tree it is parsed, pattern matched, pruned -- and printed. A pretty printer is a tool, often a library of routines, that aids in converting a tree into text. The text should occupy a minimal number of lines while retaining indentation that reflects the underlying tree. A good pretty printer must strike a balance between ease of use, flexibility of format, and optimality of output. Over the years, Richard Bird and others have developed the algebra of programming to a fine art. John Hughes (1995) describes the evolution of a pretty printer library, where both the design and implementation have been honed by an appealing application of algebra. This library has become a standard package, widely used in the field. A variant of it was implemented for use in the Glasgow Haskell Compiler by Simon Peyton Jones (1997). This chapter presents a new pretty printer library, which I believe is an improvement on the one designed by Hughes. The new library is based on a single way to concatenate documents, which is associative and has a left and right unit. This may seem an obvious design, but perhaps it is obvious only in retrospect. Hughes's library has two distinct ways to concatenate documents, horizontal and vertical, with horizontal composition possessing a right unit but no left unit, and vertical composition possessing neither unit. The new library is 30% shorter and runs 30% faster than Hughes's. A widely used imperative pretty-printer is described by Derek Oppen (1980). Oppen's work appears to be the basis of the pretty-printing facilities in Caml. The pretty printer presented here uses an algorithm equivalent to Oppen's, but presented in a functional rather than an imperative style. Further comparison with Hughes's and Oppen's work appears in the conclusions. A complete listing of the pretty printer library appears at the end of this chapter.", ["phil-wadler/prettier.dvi"] = " A prettier printer\ Philip Wadler\ Bell Labs, Lucent Technologies\ wadler@research.bell-labs.com\ April 1997, revised March 1998", ["phil-wadler/views.pdf"] = "Views: A way for pattern matching to cohabit with data abstraction\ Philip Wadler Programming Research Group, Oxford University, UK and Programming Methodology Group, Chalmers University, Sweden Received10/30&j", ["phil-winterbottom/acid.ps"] = "Acid: A Debugger Built From A Language\ Phil Winterbottom\ philw@plan9.bell-labs.com", ["philippa-gardner/javascript-logic.pdf"] = "A Program Logic for JavaScript\ Anonymous Author\ Anonymous Institution anon@ymo.us", ["phong-vo/disc-meth.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2000; 30:107128\ The discipline and method architecture for reusable libraries\ Kiem-Phong Vo,\ AT&T LaboratoriesResearch, 180 Park Avenue, Florham Parks, NJ 07932, U.S.A.\ SUMMARY Over the past few years, my colleagues and I have written a number of software libraries for fundamental computing tasks, including I/O, memory allocation, container data types and sorting. These libraries have proved to be good software building blocks, and are used widely by programmers around the world. This success is due in part to a library architecture that employs two main interface mechanisms: disciplines to define resource requirements; and methods to parameterize resource management. Libraries built this way are called discipline and method libraries. Copyright 2000 John Wiley & Sons, Ltd.\ KEY WORDS :", ["phong-vo/vmalloc-reprint.djvu"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 26(3), 357-374 (MARCH 1996) \ Vmalloc: A General and Efficient Memory Allocator \ KIEM-PHONG VO \ 2B-112, AT&T Bell Laboratories, 600 Mountain Avenue, Murray Hill, NJ 07974, U.S.A. \ ( kpv@ research. art. corn) \ SUMMARY \ Despite its popularity, malloc's shortcomings frequently cause programmers to code around it. The new \ library Vmalloc generalizes malloc to give programmers more control over memory allocation. Vmalloc \ introduces the idea of organizing memory into separate regions, each with a discipline to get raw memory \ and a method to manage allocation. Applications can write their own disciplines to manipulate arbitrary \ type of memory or just to better organize memory in a region by creating new regions out of its memory. \ The provided set of allocation methods include general purpose allocation, fast special cases and aids ", ["phong-vo/vmalloc-spe.ps"] = "1\ Vmalloc: A General and Efficient Memory\ Allocator KIEMPHONG VO\ AT&T Laboratories 180 Park Avenue, Florham Park, NJ 07932, U.S.A.\ (kpv@research.att.com)\ SUMMARY\ On C/Unix systems, the malloc interface is standard for dynamic memory allocation.\ Despite its popularity, malloc's shortcomings frequently cause programmers to code\ around it. The new library Vmalloc generalizes malloc to give programmers more control\ over memory allocation. Vmalloc introduces the idea of organizing memory into separate\ regions, each with a discipline to get raw memory and a method to manage allocation.\ Applications can write their own disciplines to manipulate arbitrary type of memory\ or just to better organize memory in a region by creating new regions out of its memory.\ The provided set of allocation methods include general purpose allocation, fast special", ["phong-vo/vmalloc.ps.gz"] = "1\ 1 Introduction\ Dynamic memory allocation is an integral part of programming. Programs in C and\ C++ (via constructors and destructors) routinely allocate memory using the familiar\ ANSIC standard interface malloc established around 1979 by Doug McIlroy. Malloc\ manipulates heap memory using the functions malloc(s) to allocate a block of size s,\ free(b) to free a previously allocated block b, and realloc(b,s) to resize a block b to\ size s. No optimal solution to dynamic memory allocation exists [Knu68, Rob75, Sho75]\ so, over the years, many malloc implementations were proposed with different trade\ offs in time and space efficiency. A study by David Korn and Phong Vo [KV85] in 1985\ presented and compared 11 malloc versions. Only a few of these survived the test of\ time. The first widely used malloc was written by McIlroy and became part of many", ["pi/mobile-processes-bibliography.pdf"] = "Mobile Processes: a Commented Bibliography\ Silvano Dal Zilio\ Microsoft Research", ["pierce/TR507.ps.Z"] = "What is a File Synchronizer?\ S. Balasubramaniam\ Indiana University\ sbalasub@cs.indiana.edu\ Benjamin C. Pierce\ Indiana University\ pierce@cs.indiana.edu\ Indiana University\ CSCI Technical Report #507\ April 22, 1998", ["pierre-wolper/p184-wolper.pdf"] = "", ["pieter-olivier/debug-thesis.ps.gz"] = "A Framework for Debugging\ Heterogeneous Applications\ On Bugs and Trees\ The work in this thesis has been carried out\ under the auspices of the research school IPA\ (Institute for Programming research and Algorithmics).\ A Framework for Debugging\ Heterogeneous Applications\ On Bugs and Trees\ ACADEMISCH PROEFSCHRIFT\ ter verkrijging van de graad van doctor\ aan de Universiteit van Amsterdam\ op gezag van de Rector Magnificus\ prof.dr J. J. M. Fransse\ ten overstaan van\ een door het college voor promoties ingestelde commissie,\ in het openbaar te verdedigen\ in de Aula der Universiteit\ op dinsdag 5 december 2000, te 10.00 uur\ door\ Pieter Antonius Olivier\ geboren te Monnickendam\ Promotor: prof.dr P. Klint\ Copromotor: dr M.G.J. van den Brand\ Faculteit der Natuurwetenschappen, Wiskunde en Informatica\ Universiteit van Amsterdam\ Kruislaan 403\ 1098 SJ Amsterdam\ Copyright c\ \r 2000, Pieter A. Olivier. All rights reserved.", ["pj-brown/macro-processors.djvu"] = "Survey of Macro Processors* \ P. J. BROWN \ University Mathematical Laboratory, Cambridge, England. \ (Now at: Computing Laboratory, University of Kent \ at Canterbury, Canterbury, Kent, England) \ 1. Introduction \ Macro processors have recently received a considerable amount of \ attention. It is the purpose of this discussion to try to evaluate the uses \ and the limitations of macro processors and to consider the essential \ features of the design and, to some extent, the implementation of a \ macro processor with special reference to those macro processors that \ have already been implemented or proposed. \ The first problem that arises in a discussion such as this is the problem \ of notation and terminology. Terminology for macros is even more \ variable than most terminology in computing. For example \"replace- \ ment text\" in one terminology is equivalent in various other termin- \ ologies to \"macro definition\", \"macro skeleton\", \"defining string\", ", ["pj-brown/macro-processors.pdf"] = "A Survey of Macro Processors*\ P. J. BROWN\ University Mathematical Laboratory, Cambridge, England. (Now at: Computing Laboratory, University of Kent\ at Canterbury, Canterbury, Kent, England) 1. Introduction Macro processors have recently received a considerable amount of attention. It is the purpose of this discussion to try to evaluate the uses and the limitations of macro processors and to consider the essential features of the design and, to some extent, the implementation of a macro processor with special reference to those macro processors that have already been implemented or proposed. The first problem that arises in a discussion such as this is the problem of notation and terminology. Terminology for macros is even more variable than most terminology in computing. For example \"replacement text\" in one terminology is equivalent in various other terminologies to \"macro definition\", \"macro skeleton\", \"defining string\", \"macro body\", and \"code body\". In order to avoid confusion, a fixed terminology and notation will be used throughout this discussion. This terminology, which should be self-explanatory, is the terminology used in the literature describing ML/I [4, 51. (It is not claimed that this terminology is \"better\" than any other; it is simply that if one is forced to adopt one terminology it is most natural to adopt the same terminology as one has used in previous papers.)", ["poonacha-kongetira/niagara.pdf"] = "NIAGARA: A 32-WAY MULTITHREADED SPARC PROCESSOR\ THE NIAGARA PROCESSOR IMPLEMENTS A THREAD-RICH ARCHITECTURE\ DESIGNED TO PROVIDE A HIGH-PERFORMANCE SOLUTION FOR COMMERCIAL SERVER APPLICATIONS. THE HARDWARE SUPPORTS 32 THREADS WITH A MEMORY SUBSYSTEM CONSISTING OF AN ON-BOARD CROSSBAR, LEVEL-2 CACHE, AND MEMORY CONTROLLERS FOR A HIGHLY INTEGRATED DESIGN THAT EXPLOITS THE THREAD-LEVEL PARALLELISM INHERENT TO SERVER APPLICATIONS, WHILE TARGETING LOW LEVELS OF POWER CONSUMPTION.\ Poonacha Kongetira Kathirgamar Aingaran Kunle Olukotun Sun Microsystems\ Over the past two decades, microprocessor designers have focused on improving the performance of a single thread in a desktop processing environment by increasing frequencies and exploiting instruction level parallelism (ILP) using techniques such as multiple instruction issue, out-of-order issue, and aggressive branch prediction. The emphasis on single-thread performance has shown diminishing returns because of the limitations in terms of latency to main memory and the inherently low ILP of applications. This has led to an explosion in microprocessor design complexity and made power dissipation a major concern. For these reasons, Sun Microsystems' Niagara processor takes a radically different approach to microprocessor design. Instead of focusing on the performance of single or dual threads, Sun optimized Niagara for multithreaded performance in a commercial server environment. This approach increases", ["rajiv-gupta/iccl98a.ps"] = "Automatic Generation of Microarchitecture Simulators \\Lambda\ Soner \ Onder Rajiv Gupta\ Department of Computer Science\ University of Pittsburgh\ Pittsburgh PA 15260\ fsoner,guptag@cs.pitt.edu", ["ralf-hinze/HFolds.ps.gz"] = "Ecient Generalized Folds\ Ralf Hinze\ Institut fur Informatik III, Universitat Bonn\ ralf@informatik.uni-bonn.de\ http://www.informatik.uni-bonn.de/~ralf/", ["ralf-hinze/HOPolytypy.ps.gz"] = "A New Approach to Generic Functional Programming\ Ralf Hinze\ Institut fur Informatik III\ Universitat Bonn\ Romerstrae 164, 53117 Bonn, Germany\ Email: ralf@informatik.unibonn.de\ Homepage: http://www.informatik.unibonn.de/~ralf/", ["ralf-hinze/HW00.ps.gz"] = "Derivable Type Classes\ Ralf Hinze\ Institut fur Informatik III\ Universitat Bonn\ Romerstrae 164, 53117 Bonn, Germany\ email: ralf@informatik.uni-bonn.de\ Simon Peyton Jones\ Microsoft Research Ltd\ St George House, 1 Guildhall St\ Cambridge CB2 3NH, England\ email: simonpj@microsoft.com", ["ralf-hinze/MPC2010.pdf"] = "Adjoint Folds and Unfolds\ Or: Scything through the thicket of morphisms\ Ralf Hinze\ Computing Laboratory, University of Oxford Wolfson Building, Parks Road, Oxford, OX1 3QD, England ralf.hinze@comlab.ox.ac.uk http://www.comlab.ox.ac.uk/ralf.hinze/", ["ralf-hinze/Phantom.ps"] = "Phantom Types\ James Cheney 1 , Ralf Hinze 2\ 1 Cornell University\ Ithaca, NY 14850\ jcheney@cs.cornell.edu\ 2 Institut fur Informatik III, Universitat Bonn\ Romerstrae 164, 53117 Bonn, Germany\ ralf@informatik.uni-bonn.de", ["ralf-hinze/WGP2000.ps.gz"] = "Memo functions, polytypically!\ Ralf Hinze\ Institut fur Informatik III, Universitat Bonn\ Romerstrae 164, 53117 Bonn, Germany\ ralf@informatik.uni-bonn.de\ http://www.informatik.uni-bonn.de/~ralf/", ["ralf-hinze/finger-trees.pdf"] = "JFP 16 (2): 197217, 2006.\ c 2005 Cambridge University Press\ 197\ doi:10.1017/S0956796805005769 First published online 16 November 2005 Printed in the United Kingdom\ Finger trees: a simple general-purpose data structure\ RALF HINZE\ Institut f r Informatik III, Universit t Bonn, R merstrae 164, 53117 Bonn, Germany u a o (e-mail: ralf@informatik.uni-bonn.de)\ ROSS PATERSON\ Department of Computing, City University, London EC1V OHB, UK (e-mail: ross@soi.city.ac.uk)", ["ralf-hinze/fun-phantom.pdf"] = "The Fun of Programming\ Oege de Moor,\ Jeremy Gibbons\ and Geraint Jones\ macmillan.eps\ Contents\ Fun with phantom types\ R. Hinze\ 5\ Fun with phantom types\ R. Hinze\ Haskell is renowned for its many extensions to the Hindley-Milner type system\ (type classes, polymorphic recursion, rank-n types, existential types, functional\ dependencies—just to name a few). In this chapter we look at yet another extension. I can hear you groaning but this is quite a mild extension and one that fits\ nicely within the Hindley-Milner framework. Of course, whenever you add a new\ feature to a language, you should throw out an existing one (especially if the language at hand is named after a logician). Now, for this chapter we abandon type\ classes—judge for yourself how well we get along without Haskell’s most beloved", ["ralf-hinze/generics-now.pdf"] = "Generic Programming, Now!\ Draft lecture notes for the Spring School on Datatype-Generic Programming 2006 Ralf Hinze1 and Andres Lh1 o\ Institut fr Informatik III, Universitt Bonn u a Rmerstrae 164, 53117 Bonn, Germany o {ralf,loeh}@informatik.uni-bonn.de", ["ralf-hinze/hanoi.pdf"] = "Functional Pearl: La Tour D'Hano i\ Ralf Hinze\ Computing Laboratory, University of Oxford, Wolfson Building, Parks Road, Oxford, OX1 3QD, England ralf.hinze@comlab.ox.ac.uk", ["ralf-hinze/just-do-it.pdf"] = "Just do It:\ Simple Monadic Equational Reasoning\ Jeremy Gibbons and Ralf Hinze\ Department of Computer Science, University of Oxford\ Wolfson Building, Parks Road\ Oxford, OX1 3QD, England\ http://www.cs.ox.ac.uk/{jeremy.gibbons,ralf.hinze}/", ["ralf-hinze/masses.pdf"] = "Generics for the Masses\ Ralf Hinze\ Institut fur Informatik III Universitat Bonn Romerstrae 164, 53117 Bonn, Germany \ ralf@informatik.uni-bonn.de", ["ralf-hinze/polykinded.ps.gz"] = "Polytypic values possess polykinded types\ Ralf Hinze\ Institute of Information and Computing Sciences, Utrecht University,\ P.O.Box 80.089, 3508 TB Utrecht, The Netherlands", ["ralph-becket/TABDL.pdf"] = "The Painful Truth about Declarative Languages\ The 1999 ICFP programming contest issued a non-trivial state-machine optimization challenge. Teams had 72 hours from the time the problem details were released to produce a solution. Here's what happened...\ Declarative vs. Imperative Programming Language Entries\ Of 38 entries, half used imperative languages and half used functional languages.\ 2 Scheme\ 2 Python\ TAL Icon Prolog\ 2 Perl\ 2 ML\ 6 OCaml\ 6 Haskell\ 9C\ 5 C++\ After Eliminating Programs that Crashed\ 4 C programs, 2 Perl programs and 1 C++ program failed to run.\ 2 Scheme\ 2 Python\ TAL Icon Prolog\ 2 ML\ 6 OCaml\ 6 Haskell\ 5C\ 4 C++\ Java\ 35% Attrition\ After Eliminating Programs that Produced Incorrect Results\ 4 C programs, 1 C++ program, 2 Haskell programs and 2 OCaml programs gave wrong answers on some inputs.\ 2 Scheme 2 Python TAL Icon Prolog 2 ML 21% Attrition Java", ["ralph-griswold/eval-of-exps.djvu"] = "", ["ralph-griswold/generators.djvu"] = "", ["ralph-griswold/sscj.djvu"] = "", ["ralph-griswold/string-scan.djvu"] = "", ["ralph-griswold/string-scanning-compj.djvu"] = "", ["ralph-griswold/string-scanning-compj.pdf"] = "Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011\ Downloaded from comjnl.oxfordjournals.org at Health Sciences Library on February 19, 2011", ["rance-cleveland/p36-cleaveland.pdf"] = "The Concurrency Workbench: A SemanticsBased Tool for the Verification of Concurrent Systems\ RANCE CLEAVELAND,\ North Carolina State Unwersity JOACHIM Swedish and BERNHARD STEFFEN Lehrstuhl fur Informatik II PARROW, Institute of Computer Science\ The\ Concurrency\ Workbench m Milner's verification\ is an Calculus\ automated\ tool\ for\ analyzing Systems.\ networks checking, semantics methods algorithms can\ of fimte-state preorder be and\ pro-\ cesses expressed a variety and our model work\ of Commumcatmg includ]ng different algorithms and mutual for several\ Its key feature\ is its breadth, checking, from as to the a\ of different checking, is that\ methods,\ eqmvalence process verification exclusion\ are supported a large number number and\ One experience formulated apphed has has been\ of interesting\ combinations verification valuable\ of a small\ of primitive protocols", ["randall-bryant/bdds.pdf"] = "Graph-Based Algorithms for Boolean Function Manipulation12\ Randal E. Bryant3", ["raul-rojas/lambda.pdf"] = "A Tutorial Introduction to the Lambda Calculus\ Ra´l Rojas∗ u FU Berlin, WS-97/98", ["raymie-stata/dissertation-noprint.djvu"] = "Modularity in the Presence of Subclassing \ by \ Raymond Paul Stata \ S.B., S.M., Massachusetts Institute of Technology (1991) \ Submitted to the Department of Electrical Engineering and \ Computer Science \ in partial fulfillment of the requirements for the degree of \ Doctor of  Science \ at the \ MASSACHUSETTS iNSTITUTE OF TECHNOLOGY \ May 1996 \ OF TECI-tNO,_O \ Massachusetts Institute of Technology 1996 \ JUL 1 6 1996 \ LIBRARIES \ Signature of Author ...... ,v; ;\"-.-',, -,.... ........- ..... .. \ Department of ElefJrical Engineering and Computer Science \ May 20, 1996 \ Certified by \ L \ John V Guttag \ Professor, Electrical Engineering and '\"'- ' ,' \ wompu;e,: Science \ Thesis Supervisor \ Accepted by, \ F. R. Morgenthaler \ Chairman, Departnenta! Committee on Graduate Students \ Modularity in the Presence of Sublassing \ by \ Raymond Paul S tata \ Submitted to the Department of Electrical Engineering and Computer Science \ on May 20, .1996, in partial fulfillment of the \ requirements for the degree of \ Doctor of Computer Science ", ["raymie-stata/dissertation-noprint.pdf"] = "", ["raymie-stata/modular-subclassing.pdf"] = "Modular Reasoning in the Presence of Subclassing\ Raymie Laboratory Massachusetts Stata John for Computer Institute MA V. Guttag Science 02139\ of Technology\ Cambridge,\ raymieQlarch.lcs.mit.edu", ["raymie-stata/old-dissertation-noprint.djvu"] = "", ["raymond-hookway/fx32.pdf"] = "Raymond J. Hookway Mark A. Herdeg\ DIGITAL FX!32: Combining Emulation and Binary Translation\ The DIGITAL FX!32 software product uniquely combines emulation and binary translation to enable any 32-bit application that executes on an Intel x86 microprocessor running the Windows NT 4.0 operating system to be installed and to execute on an Alpha microprocessor running Windows NT 4.0. Benchmark tests indicate that after translation, x86 applications run as fast on a 500-MHz Alpha system with DIGITAL FX!32 software installed as on a 200-MHz Pentium Pro system. The emulator and its associated runtime software provide transparent execution of applications written for x86-based platforms. The emulator produces profile data that is used by the translator and takes advantage of translation results as they become available. The translator provides native Alpha code for the portions of an x86 application that have previously been executed. A server manages the translation process for the user, making the process completely transparent.", ["raymond-lister/after-gold-rush.pdf"] = "Proc. Tenth Australasian Computing Education Conference (ACE2008), Wollongong, Australia\ After the Gold Rush: Toward Sustainable Scholarship in Computing\ Raymond Lister\ Faculty of Information Technology\ University of Technology, Sydney\ Australia\ raymond@it.uts.edu.au", ["reed-hastings/purify.djvu"] = "Purify: \ Fast Detection of Memory Leaks and Access Errors \ Reed Hastings and Bob Joyce \ Pure Software Inc. ", ["reed-hastings/purify.pdf"] = "Purify: Errors of Fast Detection Memory Leaksand Access\ ReedHastings and Bob Joyce Pure Sofware Inc.", ["regis-crelier/th10650.ps.gz"] = "Diss. ETH No 10650\ Separate Compilation and\ Module Extension\ A dissertation submitted to the\ Swiss Federal Institute of Technology Zurich\ for the degree of\ Doctor of Technical Sciences\ presented by\ Rgis Bernard Joseph Crelier\ ing. informaticien dipl. EPFZ\ born January 10, 1965\ citizen of Bure, Jura\ accepted on the recommendation of\ Prof. Dr. N. Wirth, examiner\ Prof. Dr. H. Mssenbck, co_examiner\ 1994\ Separate Compilation and Module Extension\ Diss. ETH No 10650\ Separate Compilation and\ Module Extension\ A dissertation submitted to the\ Swiss Federal Institute of Technology Zurich\ for the degree of\ Doctor of Technical Sciences\ presented by\ Rgis Bernard Joseph Crelier\ ing. informaticien dipl. EPFZ\ born January 10, 1965\ citizen of Bure, Jura\ accepted on the recommendation of\ Prof. Dr. N. Wirth, examiner\ Prof. Dr. H. Mssenbck, co_examiner\ 1994\ A mes parents\ Contents\ Acknowledgements xi\ Rsum xii", ["reidar-conradi/configuring.ps.gz"] = "Configuring Versioned Software Products\ Reidar Conradi 1 and Bernhard Westfechtel 2?\ 1 Department of Computer Systems and Telematics\ Norwegian Institute of Technology (NTH), N7034 Trondheim\ conradi@idt.unit.no\ 2 Lehrstuhl fur Informatik III, RWTH Aachen\ Ahornstr. 55, D52074 Aachen\ bernhard@i3.informatik.rwthaachen.de", ["remi-douence/functional-vms.pdf"] = "1\ A Systematic Study of\ Functional Language Implementations\ Rémi Douence and Pascal Fradet\ INRIA / IRISA\ Campus de Beaulieu, 35042 Rennes Cedex, France\ douence@irisa.fr fradet@irisa.fr", ["remi-douence/krivine.pdf"] = "1\ The Next 700 Krivine Machines\ Rémi Douence*\ douence@emn.fr\ and\ Pascal Fradet**\ Pascal.Fradet@inria.fr", ["reuben-thomas/mitethes-usl.ps"] = "", ["reuben-thomas/mitethes.pdf"] = "Mite\ a basis for ubiquitous virtual machines\ Reuben Rhys Thomas St John's College A dissertation submitted for the Ph.D. degree November 2000\ Ars est celare artem\ To Basil Rose, who did it first, and Tony Thomas, who hooked me.\ Preface\ Mite is a virtual machine intended to provide fast language and machine-neutral just-in-time translation of binary-portable object code into high quality native code, with a formal foundation. Chapter 1 discusses the need for fast good quality translation of portable code at run time, and, having considered what functionality is needed, sets out a list of goals that Mite should reach, then states the contribution of the thesis. Chapter 2 discusses related work, concentrating on the extent to which the various systems examined fulfil Mite's goals. Chapter 3 elaborates Mite's design, and chapter 4 analyses the choices that it makes. Chapter 5 examines the implementation, consisting of a C compiler back end targeting Mite and a virtual code translator for the ARM processor, and shows how it could be extended to other languages and processors. Chapter 6 describes and analyses a series of tests performed on the implementation, then assesses both the design and implementation in their light. Chapter 7 describes future work; finally, chapter 8 concludes the thesis with an appraisal of how well Mite meets its goals, and a final perspective. Appendices AC give Mite's definition, appendix 6.1 lists two of the benchmark programs used in chapter 6, and appendix E gives the data collected from the tests. This dissertation is my own work and includes nothing resulting from collaboration. I owe many thanks. Alistair Turnbull's keen insight, blunt criticism and imaginative advice elaborated in many hours of enjoyable discussion have cheered and smoothed my path. Simon Peyton Jones has been a smiling source of balanced encouragement and criticism. Eugenia Cheng once again ran her merciless eagle eye over my text. Martin Richards supervised me with a light hand, and lit the murk of bureaucracy. Several kindly souls gave useful advice and help with tools, ideas and language; in particular, Dave Hanson and Chris Fraser advised me far beyond the call of duty in my abuse of their LCC compiler, and Arthur Norman gave useful advice on the shape a thesis should have.", ["rex-page/EngrSwFDPE05.pdf"] = " ACM, 2005. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Proceedings of FDPE 05, {Sep 2005} http://doi.acm.org/10.1145/1085114.1085123\ Engineering Software Correctness\ Rex Page\ University of Oklahoma School of Computer Science Norman OK USA 1 405 325 5048 page@ou.edu", ["richard-bird/boyer-moore.pdf"] = "Polymorphic String Matching\ Richard S. Bird\ Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford, OX1 3QD bird@comlab.ox.ac.uk", ["richard-bird/burrows-wheeler.pdf"] = "JFP 14 (6): 603612, 2004.\ c 2004 Cambridge University Press\ 603\ DOI: 10.1017/S0956796804005118 Printed in the United Kingdom\ FUNCTIONAL PEARL Inverting the BurrowsWheeler transform\ RICHARD S. BIRD and SHIN-CHENG MU\ Programming Research Group, Oxford University, Wolfson Building, Parks Road, Oxford OX1 3QD, UK (e-mail: richard.bird@comlab.ox.ac.uk)", ["richard-bird/jfphaste.dvi"] = " More haste, less speed:\ lazy versus eager evaluation\ Richard Bird, Geraint Jones, Oege de Moor\ Oxford University Computing Laboratory\ Wolfson Building, Parks Road, Oxford OX1 3QD, United Kingdom\ ____________________________________________________________________________________________________________________________", ["richard-bird/sudoku.pdf"] = "JFP 16 (6): 671679, 2006.\ c 2006 Cambridge University Press\ 671\ doi:10.1017/S0956796806006058 First published online 7 July 2006 Printed in the United Kingdom\ FUNCTIONAL PEARL A program to solve Sudoku\ RICHARD BIRD\ Programming Research Group, Oxford University Wolfson Building, Parks Road, Oxford OX1 3QD, UK email: bird@comlab.ox.ac.uk\ There's no maths involved. You solve the puzzle with reasoning and logic. Advice on how to play Sudoku, The Independent Newspaper\ 1 Introduction The game of Sudoku is played on a 9 by 9 board. Given is a matrix of characters, such as 2 . . . . 3 9 . 4 . . 7 . 9 1 . 5 . . . . . 8 . . . . . . . . 1 . 8 . 2 . . . . . . . 6 5 1 . 6 . . . . 9 . . . . . 2 8 . 7 . 3 . . 1 5 . 2 8 . 8 5 . 3 7 . . 4 .\ The idea is to fill in the dots with the digits 1 to 9 so that each row, each column and each of the component 3 by 3 boxes contains the digits 1 to 9 exactly once. In general there may be one, none or many solutions, though in a good Sudoku puzzle there is always a unique solution. Our aim in this pearl is to derive a Haskell program to solve Sudoku puzzles. Specifically, we will define a function sudoku :: Board [Board ]", ["richard-eisenberg/system-fc.pdf"] = "System FC, as implemented in GHC1\ 9 September, 2013\ 1\ Introduction\ This document presents the typing system of System FC, very closely to how it is implemented in GHC. Care\ is taken to include only those checks that are actually written in the GHC code. It should be maintained\ along with any changes to this type system.\ Who will use this? Any implementer of GHC who wants to understand more about the type system can look\ here to see the relationships among constructors and the different types used in the implementation of the\ type system. Note that the type system here is quite different from that of Haskell—these are the details of\ the internal language, only.\ At the end of this document is a hypothetical operational semantics for GHC. It is hypothetical because", ["richard-felder/research.dvi"] = "Below is another provocative article by Richard Felder, Department of Chemical Engineering, North Carolina State\ University, on a subject_the link between teaching and research_that is of immense importance to all four-year\ institutions. It is from Chemical Engineering Education, 42(2), 109-110 (2010).\ The Link Between Teaching and Research_Does it Exist?\ For the past half-century, research performance has been the main_and sometimes the only_criterion for tenuring\ and promoting engineering faculty at research universities, and it's becoming increasingly important at institutions\ whose primary mission has traditionally been teaching. This trend has had unfortunate consequences. Intense pres-\ sures to bring in grants and publish papers force professors to spend most of their time on their research and the\ minimum they can get away with on their teaching, relationships, and health-and the quality of the latter three often", ["richard-gabriel/LispGoodNewsBadNews.pdf"] = "Lisp: Good News, Bad News, How to Win Big\ Richard P. Gabriel Lucid, Inc Abstract Lisp has done quite well over the last ten years: becoming nearly standardized, forming the basis of a commercial sector, achieving excellent performance, having good environments, able to deliver applications. Yet the Lisp community has failed to do as well as it could have. In this paper I look at the successes, the failures, and what to do next. The Lisp world is in great shape: Ten years ago there was no standard Lisp; the most standard Lisp was InterLisp, which ran on PDP-10's and Xerox Lisp machines (some said it ran on Vaxes, but I think they exaggerated); the second most standard Lisp was MacLisp, which ran only on PDP-10's, but under the three most popular operating systems for that machine; the third most standard Lisp was Portable Standard Lisp, which ran on many machines, but very few people wanted to use it; the fourth most standard Lisp was Zetalisp, which ran on two varieties of Lisp machine; and the fifth most standard Lisp was Scheme, which ran on a few different kinds of machine, but very few people wanted to use it. By today's standards, each of these had poor or just barely acceptable performance, nonexistent or just barely satisfactory environments, nonexistent or poor integration with other languages and software, poor portability, poor acceptance, and poor commercial prospects. Today there is Common Lisp (CL), which runs on all major machines, all major operating systems, and virtually in every country. Common Lisp is about to be standardized by ANSI, has good performance, is surrounded with good environments, and has good integration with other languages and software. But, as a business, Lisp is considered to be in ill health. There are persistent and sometimes true rumors about the abandonment of Lisp as a vehicle for delivery of practical applications. To some extent the problem is one of perception--there are simply better Lisp delivery solutions than are generally believed to exist and to a disturbing extent the problem is one of unplaced or misplaced resources, of projects not undertaken, and of implementation strategies not activated. Part of the problem stems from our very dear friends in the artificial intelligence (AI) business. AI has a number of good approaches to formalizing human knowledge and problem solving behavior. However, AI does not provide a panacea in any area of its applicability. Some early promoters of AI to the commercial world raised expectation levels too high. These expectations had to do with the effectiveness and deliverability of expert-system-based applications. When these expectations were not met, some looked for scapegoats, which frequently were the Lisp companies, particularly when it came to deliverability. Of course, if the AI companies had any notion about what the market would eventually expect from delivered AI software, they never shared it with any Lisp companies I know about. I believe the attitude of the AI companies was that the Lisp companies will do what they need to survive, so why share customer lists and information with them?", ["richard-holt/data-desc.pdf"] = "Data Descriptors: A Compile-Time Model of Data and Addressing\ R. C. HOLT University of Toronto\ Data descriptors, which have evolved from Wilcox's value descriptors [16], are a notation for representing run-time data objects at compile time. One of the principal reasons for developing this notation was to aid in the rapid construction of code generators, especially for new microprocessors. Each data descriptor contains a base, a displacement, and a level of indirection. For example, a variable x lying at displacement 28 from base register B3 is represented by this data descriptor: aB3.28. The general form of a data descriptor is ~~b.d.i where k gives the number of levels of indirection, b is a base, d is a displacement, and i is an index. Data descriptors are convenient for representing addressing in Fortran (with static allocation and common blocks), in Pascal and Turing (with automatic allocation and stack frames), and in more general languages such as Euclid and PL/I. This generality of data descriptors allows code generation to be largely independent of the source language. Data descriptors are able to encode the addressing modes of typical computer architectures such as the IBM 360 and the PDP-11. This generality of data descriptors allows code generation to be largely machine independent. This paper gives a machine independent method of storage allocation that uses data descriptors. Techniques are given for local optimization of basic arithmetic and addressing code using data descriptors. Target machine dependencies are isolated so that the part of the code generator that handles high-level addressing (such as subscripting) is machine independent. The techniques described in this paper have proven effective in the rapid development of a number of production code generators. Categories and Subject Descriptors: General Terms: Languages Additional Key Words and Phrases: Addressability, addressing modes, array subscripting, base displacement addressing, code generation, code optimization, compiler structure, compilers, data alignment, data descriptor, display based addressing, language translators, machine idioms, machineindependent code generation, optimal addition, portable compiler, storage allocation D.3.4 [Programming Languages]: Processors-codegeneration", ["richard-kelsey/r5rs.ps.gz"] = "Revised 5 Report on the Algorithmic Language\ Scheme\ RICHARD KELSEY, WILLIAM CLINGER, AND JONATHAN REES (Editors)\ H. ABELSON R. K. DYBVIG C. T. HAYNES G. J. ROZAS\ N. I. ADAMS IV D. P. FRIEDMAN E. KOHLBECKER G. L. STEELE JR.\ D. H. BARTLEY R. HALSTEAD D. OXLEY G. J. SUSSMAN\ G. BROOKS C. HANSON K. M. PITMAN M. WAND\ Dedicated to the Memory of Robert Hieb\ 20 February 1998\ SUMMARY\ The report gives a defining description of the program\ ming language Scheme. Scheme is a statically scoped and\ properly tailrecursive dialect of the Lisp programming\ language invented by Guy Lewis Steele Jr. and Gerald\ Jay Sussman. It was designed to have an exceptionally\ clear and simple semantics and few different ways to form\ expressions. A wide variety of programming paradigms, in\ cluding imperative, functional, and message passing styles,\ find convenient expression in Scheme.\ The introduction offers a brief history of the language and", ["richard-kelsey/tractable-scheme.djvu"] = "LISP AND SYMBOLIC COMPUTATION: An International Journal, 7, 315-335 (1994) \ 1994 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. \ A Tractable Scheme Implementation \ RICHARD A. KELSEY \ NEC Research Institute \ JONATHAN A. REES \ M1T and Cornell University \ kelsey@research.nj.nec.com \ jar@ai.mit.edu ", ["richard-kelsey/tractable-scheme.pdf"] = "LISP AND SYMBOLICCOMPUTATION:An International Journal, 7, 315-335 (1994)\ © 1994 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ A Tractable Scheme Implementation\ RICHARD A. KELSEY\ kelsey@research.nj.nec.com\ NEC Research Institute\ JONATHAN A. REES\ jar@ai.mit.edu\ M1T and Cornell University", ["richard-lloyd-jones/primary-trait-scoring.pdf"] = "", ["richard-senington/CombinatorsForMetaheuristicSearchInHaskell.pdf"] = "ZU064-05-FPR\ CombinatorsForMetaheuristicSearchInHaskell\ 7 May 2012\ 12:46\ Under consideration for publication in J. Functional Programming\ 1\ Combinators for Meta-heuristic Search\ RICHARD SENINGTON, DAVID DUKE\ University Of Leeds, Leeds LS2 9JT, UK\ (e-mail: sc06r2s,d.j.duke@leeds.ac.uk)", ["richard-senington/thesis.pdf"] = "Hybrid Meta-heuristic Frameworks : A\ Functional Approach\ by\ Richard James Senington\ Submitted in accordance with the requirements\ for the degree of Doctor of Philosophy.\ The University of Leeds\ School of Computing\ February 2013\ The candidate confirms that the work submitted is his/her own, except where\ work which has formed part of jointly-authored publications has been included.\ The contribution of the candidate and the other authors to this work has been\ explicitly indicated below. The candidate confirms that appropriate credit has\ been given within the thesis where reference has been made to the work of others. Further details of the jointly-authored publications and the contributions of\ the candidate and the other authors to the work are included in the Declarations", ["rinus-plasmeijer/janj2006-TFP06-EfficientInterpretation.pdf"] = "Efficient Interpretation by Transforming Data Types and Patterns to Functions\ Jan Martin Jansen 1 , Pieter Koopman2 , Rinus Plasmeijer2\ The Netherlands Ministry of Defence, Institute for Computing and Information Sciences (ICIS), Radboud University Nijmegen, the Netherlands. j.m.jansen@forcevision.nl, {pieter,rinus}@cs.ru.nl\ 2 1", ["rinus-plasmeijer/keep-it-clean.djvu"] = "Function \ Editor: Philip Wadler, Bell Laboratories, Lucent TechnoIogies; wad!er@ research.belI-labs. com \ Keep it CLEAN: \ A unique approach to functional \ programming. \ Rinus Plasmeijer and Marko van Eekelen \ Computing Science Institute, University of Nijmegen, Toernooiveld 1, 6525 ED, Nijmegen, The Netherlands \ rinus@cs.kun.nI, marko@cs.kun.nl \ CLEA'lq  is a functional language specially designed to \ make the development of real world applications possi- \ ble. In this paper we give a short overview of the most \ important features of the language. The CLEAN compiler \ offers high compilation speed yet the quality of the pro- \ dueed native code is state-of-the-art. Of particular impor- \ tance for practical use is CLEAN'8 uniqueness typing en- \ abling destructive updates of arbitrary objects and the cre- \ ation of direct interfaces with the outside world, all within ", ["rinus-plasmeijer/plar2004-Esther_AFP.pdf"] = "A Functional Shell that Operates on Typed and Compiled Applications\ Rinus Plasmeijer and Arjen van Weelden\ Computer Science Institute, University of Nijmegen Toernooiveld 1, 6525 ED Nijmegen, The Netherlands rinus@cs.kun.nl, arjenw@cs.kun.nl", ["rl-glass/p55-glass.djvu"] = "An Elementary Discussion of Compiler/Interpreter Writing \ R. L. GLASS \ Boein# Company, Seattle, Washington \ Elementary techniques are described for the implementation of compilere, \ interpreters, and translators of programming languages. An overview of such a \ language processor is presented, followed by a detailed discussion o[ certain \ building bloeks useful in its construction. Frequent reference is made to a specific \ implementation, that of a PL/I interpreter called SPLINTER 0Scientific PL/I \ INTERpreter) on the UNIVAC 1108 at Boeing. \ Key words and phrases: compiler, interpreter, translator, language, PL/I \ CR categories: 1.3, 4.12, 4.13 \ INTRODUCTION \ It is the purpose of this paper to describe the \ techniques used to implement a PL/I inter- \ pretive system, written in the FoaaN lan- \ guage for the Umvac 1108 at Boeing, cover- \ ing in breadth the general approach used, \ and in depth some of the more interesting \ techniques. \ It is hoped this information may be of \ value to those completely unfamiliar with ", ["rob-ocallahan/hybrid.ps"] = "", ["rob-pike/8-and-half.ps.gz"] = "8 1 /2 , the Plan 9 Window System\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974\ rob@research.att.com", ["rob-pike/acme.ps.gz"] = "Acme: A User Interface for Programmers\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["rob-pike/conc-win.ps"] = "A Concurrent Window System\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["rob-pike/impl-new.ps.gz"] = "The Implementation of Newsqueak\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["rob-pike/newsqueak.ps.gz"] = "Computing Science Technical Report No. 143\ Newsqueak: A Language\ for\ Communicating with Mice\ Rob Pike\ April 9, 1994\ Newsqueak: A Language\ for\ Communicating with Mice\ Rob Pike", ["rob-pike/notes-on-c.pdf"] = "Notes on Programming in C\ Rob Pike\ Introduction Kernighan and Plauger's The Elements of Programming Style was an important and rightly influential book. But sometimes I feel its concise rules were taken as a cookbook approach to good style instead of the succinct expression of a philosophy they were meant to be. If the book claims that variable names should be chosen meaningfully, doesn't it then follow that variables whose names are small essays on their use are even better? Isn't MaximumValueUntilOverflow a better name than maxval? I don't think so. What follows is a set of short essays that collectively encourage a philosophy of clarity in programming rather than giving hard rules. I don't expect you to agree with all of them, because they are opinion and opinions change with the times. But they've been accumulating in my head, if not on paper until now, for a long time, and are based on a lot of experience, so I hope they help you understand how to plan the details of a program. (I've yet to see a good essay on how to plan the whole thing, but then that's partly what this course is about.) If you find them idiosyncratic, fine; if you disagree with them, fine; but if they make you think about why you disagree, that's better. Under no circumstances should you program the way I say to because I say to; program the way you think expresses best what you're trying to accomplish in the program. And do so consistently and ruthlessly. Your comments are welcome. Issues of typography A program is a sort of publication. It's meant to be read by the programmer, another programmer (perhaps yourself a few days, weeks or years later), and lastly a machine. The machine doesn't care how pretty the program is -- if the program compiles, the machine's happy -- but people do, and they should. Sometimes they care too much: pretty printers mechanically produce pretty output that accentuates irrelevant detail in the program, which is as sensible as putting all the prepositions in English text in bold font. Although many people think programs should look like the Algol-68 report (and some systems even require you to edit programs in that style), a clear program is not made any clearer by such presentation, and a bad program is only made laughable. Typographic conventions consistently held are important to clear presentation, of course -- indentation is probably the best known and most useful example -- but when the ink obscures the intent, typography has taken over. So even if you stick with plain old typewriter-like output, be conscious of typographic silliness. Avoid decoration; for instance, keep comments brief and banner-free. Say what you want to say in the program, neatly and consistently. Then move on. Variable names Ah, variable names. Length is not a virtue in a name; clarity of expression is. A global variable rarely used may deserve a long name, maxphysaddr say. An array index used on every line of a loop needn't be named any more elaborately than i. Saying index or elementnumber is more to type (or calls upon your text editor) and obscures the details of the computation. When the variable names are huge, it's harder to see what's going on. This is partly a typographic issue; consider", ["rob-pike/pike-bitmap.pdf"] = "AT&T Bell Laboratories Murray Hill, New Jersey 07974\ Computing Science Technical Report No. 999\ Graphics in Overlapping Bitmap Layers\ Rob Pike\ April 1, 1983\ Graphics in Overlapping Bitmap Layers\ Rob Pike AT&T Bell Laboratories Murray Hill, New Jersey 07974", ["rob-pike/pike-bitmap.ps"] = "AT&T Bell Laboratories\ Murray Hill, New Jersey 07974\ Computing Science Technical Report No. 999\ Graphics in Overlapping Bitmap Layers\ Rob Pike\ April 1, 1983\ Graphics in Overlapping Bitmap Layers\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["rob-pike/sam.ps.gz"] = "The Text Editor sam\ ROB PIKE\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["rob-pike/sawzall-sciprog.pdf"] = "Interpreting the Data: Parallel Analysis with Sawzall\ Rob Pike, Sean Dorward, Robert Griesemer, Sean Quinlan Google, Inc. (Draft submitted to Scientific Programming Journal)", ["rob-pike/sregexp.ps.gz"] = "Structural Regular Expressions\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["rob-pike/win-trans.ps.gz"] = "Window Systems Should Be Transparent\ Rob Pike\ AT&T Bell Laboratories\ Murray Hill, New Jersey 07974", ["robert-balzer/exdams.pdf"] = "ARPA ORDER NO. 189-1\ MEMORAN DUM\ RM-5772-AR PA\ APRIL 1969\ EXDAMS - EXTEND ABLE DEBUGG ING AND\ MONITOR ING SYSTEM\ R. M. Balzer\ PREPARED FOR:\ ADVANCED RESEARCH PROJECTS AGENCY\ -------------~R~nD~\ SANTA MONICA • C A L I F O R N I A - - - - -\ ARPA ORDER NO. 189-1\ MEMORANDUM\ RM-5772-ARPA\ APRIL 19f>rl\ EXDAMS- EXTENDABLE DEBUGGING AND\ MONITORING SYSTEM\ R. M. Balzer\ Thi- JT-'I'arch i- '''I'Jl\"rlt·d 1,,. the -\\rharwed H,·,\"arch Proi•·r·t,- ·\\,r,·un· undn Contrc~ct\ \\·,_ ll\\I!Ch (,/ C Olll. \\ i<'\\\\' or <'llllciu,ion' <·ontaitwd in thi' 'tlllh ,]wuld not Ill'\ illl<'rprt'l•·d a- rqm·-<·lltin,'! til•· ,,ffwial <•pi11ion or policy of ABI'A.\ .\ DISTB!BlTIO:\\ STATE'\\IEL\\T\ T!Ji, docunwnt ha'\ \"''''ll appro\\ ('d fur public rl'lt·a''' a11d ,ale; it,; di~trihution i' unlimikd.\ - ----------~------------------ 7/U\ Q n e~nfurtMiM<\ -D D\ This study is presented as a competent treatment of the subject, worthy of publication. The Rand Corporation Youches for the quality of the research, without\ necessarily endorsing the opinions and conclusions of the authors.", ["robert-floyd/assigning-meaning.djvu"] = "Robert W. Floyd \ ASSIGNING MEANINGS TO PROGRAMS \ Introduction. This paper attempts to provide an adequate basis for \ formal definitions of the meanings of programs in appropriately defined \ programming languages, in such a way that a rigorous standard is established \ for proofs about computer programs, including proofs of correctness, \ equivalence, and termination. The basis of our approach is the notion of \ an interpretation of a program: that is, an association of a proposition \ with each connection in the flow of control through a program, where the \ proposition is asserted to hold whenever that connection is taken. To prevent \ an interpretation from being chosen arbitrarily, a condition is imposed on \ each command of the prograrrL This condition guarantees that whenever \ a command is reached by way of a connection whose associated proposition \ is then true, it will be left (if at all) by a connection whose associated \ proposition will be true at that time. Then by induction on the number of ", ["robert-giegerich/formal-framework.djvu"] = "A Formal Framework for the Derivation \ of Machine-Specific Optimizers \ ROBERT GIEGERICH \ Technical University of Munich \ The derivation of machine-specific code optimizers starts from a description of the target machine. A \ formal instruction-set semantics precisely defines the concepts characteristic to the machine-code \ level, such as addressing modes and instructions, side effects, and overlapping of registers or memory \ cells. The context information relevant for local optimizations is defined by abstract interpretation of \ instruction semantics. This leads to a notion of instruction equivalence relative to a given context. \ Based on this notion, optimization rules whose machine-specific applicability criteria can be derived \ automatically are introduced. The formal nature of this approach serves not only to guarantee the \ correctness of these criteria, but also to isolate program-dependent from only machine-dependent ", ["robert-hood/hicss.ps.gz"] = "1\ 1\ ACCOMMODATING\ HETEROGENEITY IN A\ DEBUGGER---A CLIENTSERVER\ APPROACH\ Robert Hood , Doreen Cheng\ Computer Sciences Corporation Philips Research Palo Alto\ NASA Ames Research Center Philips North American Corp.\ Mail Stop 2586 4005 Miranda Avenue, Suite 175\ Moffett Field, CA 940351000 Palo Alto, CA 94304\ rhood@nas.nasa.gov dcheng@prpa.philips.com", ["robert-hood/sc94.ps.gz"] = "A Portable Debugger for Parallel and Distributed Programs *\ Doreen Cheng + Robert Hood\ dcheng@prpa.philips.com rhood@nas.nasa.gov\ Computer Sciences Corporation\ NASA Ames Research Center, Mail Stop 2586\ Moffett Field, CA 940351000", ["robert-hood/spdt.ps.gz"] = "The p2d2 Project: Building a Portable Distributed Debugger *\ Robert Hood\ rhood@nas.nasa.gov\ MRJ, Inc. / Numerical Aerospace Simulation\ NASA Ames Research Center, Mail Stop T27A1\ Moffett Field, CA 940351000", ["robert-paige/invariants.djvu"] = "(where the value off is required with high frequency) by up- \ dating E whenever any of the variables on which fdepends \ is modified in B. Consequently, we can avoid recompUting \ f each time its value is needed inside B, since its value is kept \ stored in the variable E. \ This approach, which is an elementary kind of finite dif- \ ferencing, can be usefully applied to a rich class of in- \ variants that includes invariant (1) and the following type of \ existential form: \ (2) tylrqf(x 1 .... ,Xn), aY2EYl ..... aYkrrO'k-I lYk '=E \ When finite differencing maintains invariant (2) in a pro- \ gram region B, all occurrences of the indeterminate expres- \ sion 99..gf(x ..... x,, ) (involving k applications of the \ SETL choice operator*) are replaced by occurrences of E. \ We prefer to specify both invariants (1) and (2) more \ uniformly in terms of the reduction notation, \ E-J[x ! .... X n ) \ and \ E--  ... }J[x  ..... Xn), \ because it actively conveys our particular interest in using ", ["robert-paige/invariants.pdf"] = "Programming\ with Invariants\ Robert Paige, Rutgers University\ ased on efficiency considerations, the most practiThe use of a restricted class of\ cal programming languages in current use foster\ invariants as part of a language\ programming in which low-level retrieval, modifisupports both the accurate cation, and control operations are interspersed. This consynthesis of high-level programs and fusing mixture makes programs hard to construct and diffi-\ to compile into efficient mintheir translation into efficient cult to understand, but easy APL or SETL propose tocode.\ High-level languages such as\ implementations. imize this problem by making it possible to write programs\ with fewer and more abstract operations. Functional languages offer another solution: eliminating error-prone\ modification code so that programs can be written more", ["robert-sternberg/Successful Intelligence.pdf"] = "", ["robert-tennent/denotational.djvu"] = "Programming B. Wegbreit \ Languages Editor \ The Denotational \ Semantics of \ Programming \ Languages \ R.D. Tennent \ Queen's University, Kingston, Ontario \ This paper is a tutorial introduction to the theory of \ programming language semantics developed by D. \ Scott and C. Strachey. The application of the theory \ to formal language specification is demonstrated and \ other applications are surveyed. The first language \ considered, LOOP, is very elementary and its definition \ merely introduces the notation and methodology of the \ approach. Then the semantic concepts of environments, \ stores, and continuations are introduced to model \ classes of programming language features and the \ underlying mathematical theory of computation due \ to Scott is motivated and outlined. Finally, the paper \ presents a formal definition of the language \ GEDANKEN. \ Key Words and Phrases: semantics, programming \ language, applicative, imperative, environment, store, ", ["robert-tennent/denotational.pdf"] = "Programming Languages\ B. Wegbreit Editor 1. Introduction\ The Denotational Semantics of Programming Languages\ R.D. Tennent Queen's University, Kingston, Ontario\ See the little phrases go, Watch their funny antics. The men who make them wiggle so Are teachers of semantics. F. Winsor (Space Child's Mother Goose1)\ A great deal of progress has been made in the last few years towards the development of a theoretical framework appropriate to formal analysis and specification of the semantical aspects of computer languages. Despite the complexity and variety exhibited by modern programming languages, it has been shown by D. Scott and C. Strachey and their colleagues at Oxford University that a remarkably small number of fundamental semantic constructs provide an adequate conceptual basis for defining concise formal models of their meanings. This paper is a tutorial exposition of these concepts and demonstrates their usefulness to the formal definition of programming languages. Most of the references to the literature are provided in a bibliography at the end of this paper. There are several applications which motivate analysis of the semantic structure of programming languages. A formal definition of a language provides a precise and complete reference standard for users and implementers, so that the omissions, contradictions, and ambiguities typical of informal semantic specifications such as those in the Algol 60 Report [Naur, 1963] may be avoided. Even if a formal definition were not comprehensible to average programmers, it could provide the basis for an accurate informal description. A general language-independent framework of semantical concepts would help to standardize terminology, clarify similarities and differences between languages, and allow rigorous formulation and p r o o f of semantic properties of languages. A language designer could analyze proposed constructs to help find undesirable restrictions, incompatibilities, ambiguities, and so on. A theory of semantics should contribute to systematic composition and verification of programs, especially compilers. Indeed, a general notation for semantic specification would permit the development of a true compiler-generator, just as BNF led to the development of parser generators. Many of these goals have not yet been achieved, but sufficient progress is being made (see the references) to suggest that semantic analysis of programming languages will play a significant role in the development of computer science. Communications of the ACM August 1976 Volume 19 Number 8", ["roberto-ierusalimschy/closures-draft.pdf"] = "Closures in Lua\ Roberto Ierusalimschy∗\ Luiz Henrique de Figueiredo†\ Waldemar Celes∗\ (version by lhf, April 24, 2013 at 12:50 A.M.)", ["roberto-ierusalimschy/impl-lua5.0.pdf"] = "The Implementation of Lua 5.0\ Roberto Ierusalimschy (Department of Computer Science, PUC-Rio, Rio de Janeiro, Brazil roberto@inf.puc-rio.br) Luiz Henrique de Figueiredo (IMPAInstituto de Matemtica Pura e Aplicada, Rio de Janeiro, Brazil a lhf@impa.br) Waldemar Celes (Department of Computer Science, PUC-Rio, Rio de Janeiro, Brazil celes@inf.puc-rio.br)", ["roberto-ierusalimschy/lpeg-spe.pdf"] = "SOFTWARE—PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2009; 39:221–258 Published online 17 July 2008 in Wiley InterScience (www.interscience.wiley.com). DOI: 10.1002/spe.892\ A text pattern-matching tool based on Parsing Expression Grammars\ Roberto Ierusalimschy∗, †\ PUC-Rio, Rio de Janeiro, Brazil\ SUMMARY Current text pattern-matching tools are based on regular expressions. However, pure regular expressions have proven too weak a formalism for the task: many interesting patterns either are difficult to describe or cannot be described by regular expressions. Moreover, the inherent non-determinism of regular expressions does not fit the need to capture specific parts of a match. Motivated by these reasons, most scripting languages nowadays use pattern-matching tools that extend the original regular-expression formalism with a set of ad hoc features, such as greedy repetitions, lazy repetitions, possessive repetitions, ‘longestmatch rule,’ lookahead, etc. These ad hoc extensions bring their own set of problems, such as lack of a formal foundation and complex implementations. In this paper, we propose the use of Parsing Expression Grammars (PEGs) as a basis for pattern matching. Following this proposal, we present LPEG, a pattern-matching tool based on PEGs for the Lua scripting language. LPEG unifies the ease of use of pattern-matching tools with the full expressive power of PEGs. Because of this expressive power, it can avoid the myriad of ad hoc constructions present in several current pattern-matching tools. We also present a Parsing Machine that allows a small and efficient implementation of PEGs for pattern matching. Copyright © 2008 John Wiley & Sons, Ltd. Received 1 October 2007; Revised 20 May 2008; Accepted 21 May 2008", ["roberto-ierusalimschy/lpegcompiler.pdf"] = "A Parsing Machine for PEGs\ Srgio Medeiros smedeiros@inf.puc-rio.br\ Roberto Ierusalimschy roberto@inf.puc-rio.br\ Department of Computer Science PUC-Rio, Rio de Janeiro, Brazil", ["roberto-ierusalimschy/lua-hopl-iii.pdf"] = "The Evolution of Lua\ Roberto Ierusalimschy\ Department of Computer Science, PUC-Rio, Rio de Janeiro, Brazil roberto@inf.puc-rio.br\ Luiz Henrique de Figueiredo\ IMPA–Instituto Nacional de Matem´ tica Pura e Aplicada, Brazil a lhf@impa.br\ Waldemar Celes\ Department of Computer Science, PUC-Rio, Rio de Janeiro, Brazil celes@inf.puc-rio.br", ["roberto-ierusalimschy/lua-spe.pdf"] = "SOFTWARGPRACTICE AND EXPERIENCE, VOL. 26(6), 635652 (JUNE 1996)\ Lua-An\ Extensible Extension Language\ ROBERTO IERUSALIMSCHY, LUIZ HENRIQUE DE FIGUEIREDO AND WALDEMAR CELES FILHO TeCGraf; Computer Science Department, PUC-Rio, Rua M.S. Wncente 225, Rio de Janeiro, Brazil (email: {roberto,lhf ,celes}Bicad.puc-rio. br)\ SUMMARY\ This paper describes Lua, a language for extending applications. Lua combines procedural features with powerful data description facilities, by using a simple, yet powerful, mechanism of tables. This mechanism implements the concepts of records, arrays and recursive data types (pointers), and adds some objectih oriented facilities, such as methods w t dynamic dispatching. Lua presents a mechanism offallbacks that allows programmers to extend the semantics of the language in some unconventional ways. As a noteworthy example, fallbacks allow the user to add different kinds of inheritance to the language. Currently, Lua is being extensively used in production for several tasks, including user configuration, general-purpose data-entry, description of user interfaces, storage of structured graphical metafiles, and generic attribute configuration for finite element meshes.", ["roberto-ierusalimschy/lua.ps.gz"] = "SOFTWARE---PRACTICE AND EXPERIENCE, VOL. 0(0), 1--18 (? 19??)\ Lua---an extensible extension language\ Roberto Ierusalimschy Luiz Henrique de Figueiredo Waldemar Celes Filho\ TeCGraf, Computer Science Department, PUC--Rio\ froberto,lhf,celesg@icad.pucrio.br\ SUMMARY\ This paper describes Lua, a language for extending applications. Lua combines proce\ dural features with powerful data description facilities, by using a simple, yet powerful,\ mechanism of tables. This mechanism implements the concepts of records, arrays, and re\ cursive data types (pointers), and adds some objectoriented facilities, such as methods\ with dynamic dispatching.\ Lua presents a mechanism of fallbacks that allows programmers to extend the semantics\ of the language in some unconventional ways. As a noteworthy example, fallbacks allow\ the user to add different kinds of inheritance to the language.", ["roberto-ierusalimschy/peg.pdf"] = "A Text Pattern-Matching Tool based on Parsing Expression Grammars\ Roberto Ierusalimschy1\ 1\ PUC-Rio, Brazil\ This is a preprint of an article accepted for publication in Software: Practice and Experience; Copyright 2008 by John Willey and Sons.\ SUMMARY Current text pattern-matching tools are based on regular expressions. However, pure regular expressions have proven too weak a formalism for the task: many interesting patterns either are difficult to describe or cannot be described by regular expressions. Moreover, the inherent nondeterminism of regular expressions does not fit the need to capture specific parts of a match. Motivated by these reasons, most scripting languages nowadays use pattern-matching tools that extend the original regular-expression formalism with a set of ad-hoc features, such as greedy repetitions, lazy repetitions, possessive repetitions, \"longest match rule\", lookahead, etc. These ad-hoc extensions bring their own set of problems, such as lack of a formal foundation and complex implementations. In this paper, we propose the use of Parsing Expression Grammars (PEGs) as a basis for pattern matching. Following this proposal, we present LPEG, a pattern-matching tool based on PEGs for the Lua scripting language. LPEG unifies the ease of use of pattern-matching tools with the full expressive power of PEGs. Because of this expressive power, it can avoid the myriad of ad-hoc constructions present in several current pattern-matching tools. We also present a Parsing Machine that allows a small and efficient implementation of PEGs for pattern matching. key words: pattern matching, Parsing Expression Grammars, scripting languages", ["roberto-ierusalimschy/sblp2001.ps"] = "The Evolution of an Extension Language:\ A History of Lua\ Roberto Ierusalimschy Luiz Henrique de Figueiredo Waldemar Celes\ TeCGraf, Department of Computer Science, PUCRio\ lua@tecgraf.puc-rio.br", ["robin-milner/ECS-LFCS-89-85.ps"] = "A Calculus of Mobile Processes, Part I\ Robin Milner, University of Edinburgh, Scotland\ Joachim Parrow, Swedish Institute of Computer Science, Kista, Sweden\ David Walker, University of Technology, Sydney, Australia\ June 1989 (Revised September 1990)\ 1\ Running title: Calculus of Mobile Processes, Part I\ Address for proofs: Robin Milner, Computer Science Department, University of\ Edinburgh, The King's Buildings, Edinburgh EH9 3JZ, UK", ["robin-milner/ECS-LFCS-89-86.ps"] = "A Calculus of Mobile Processes, Part II\ Robin Milner, University of Edinburgh, Scotland\ Joachim Parrow, Swedish Institute of Computer Science,\ Kista, Sweden\ David Walker, University of Technology, Sydney, Australia\ June 1989 (Revised October 1990)\ 1\ Running title: Calculus of Mobile Processes, Part II\ Address for proofs: Joachim Parrow, SICS, Box 1263, S16428 Kista,\ Sweden.\ 2\ Special symbols: Since this copy is mathematically typeset, only a few\ of the less obvious symbols are listed below.\ 0 Boldface zero\ ; Empty set\ ff fi oe ! Greek letters\ j ff j = def = \ \ 6 D \ 0 0 Various relation symbols\ N The set of names\ S S \\Lambda S n . . . Bisimulation symbols\ ff\ \\Gamma! \ \\Gamma! xy\ \\Gamma! x(y)\ \\Gamma! x(y)\ \\Gamma! . . . Transition arrows\ * + m Other arrows\ S\ n!! Indexed union (note: Greek omega)\ [ `` \\Theta n ` j` Operations on sets etc.\ := Replacement symbol\ ::= Syntax definition symbol\ A C0 . . . SGE D Boldface names of axioms etc.", ["robin-milner/ECS-LFCS-91-180.ps.gz"] = "The Polyadic ߭Calculus: a Tutorial\ Robin Milner\ Laboratory for Foundations of Computer Science,\ Computer Science Department, University of Edinburgh,\ The King's Buildings, Edinburgh EH9 3JZ, UK\ October 1991", ["robin-milner/elements.pdf"] = "greatly honored to receive this award, bearing the n a m e of Pdan Turing. Perhaps Turing would be pleased that it should go to someone educated at his old college, King's College at Cambridge. While there in 19561 wrote my first c o m p u t e r program; it was on the EDSAC. O f course E D S A C m a d e history. But I a m ashamed to say it did not lure me into computing, and I ignored computers for four years. In 1960 I thought that computers might be more peaceful to handle than s c h o o l c h i l d r e n - - I was then a t e a c h e r - - s o I applied for a j o b at Ferranti in London, at the time of Pegasus. I was asked at the interview whether I would like to devote my life to computers. This d a u n t i n g notion had never crossed my mind. Well, here I a m still, and I have had the lucky chance to grow alongside computer science. This award gives an unusual opportunity, and I hope a license, to reflect on a line of research from a personal point of view. I thought I should seize the opportunity, because a m o n g my interests there is one thread which has preoccupied me for 20 years. Describing this kind of experience can surely yield insight, provided one r e m e m b e r s that it is a personal thread; science is woven from m a n y such threads and is all the stronger when each thread is h a r d to trace in the finished fabric. T h e thread which I want to pick up is the semantic basis of concurrent computation. I shall begin by explaining how I came to see that concurrency requires a fresh approach, not merely an extension of the repertoire of entities and conI am", ["robin-milner/evolved.dvi"] = " How ML Evolved\ Robin Milner\ 1982\ ML is one among many functional programming languages. But not many\ were designed, as ML was, for a more-or-less specific task. The point of\ this note is to summarise the process by which we were guided to ML, as\ it now is, by the demands of the task. We (at least I) feel that to find a\ good metalanguage for machine assisted proof, which was the task, we could\ hardly have gone in an essentially different direction; the task seemed to\ determine the language_and even made it turn out to be a general purpose\ language.\ The context in 1974 (when the Edinburgh LCF project began) was our\ experience with the Stanford LCF proof assistant, developed there in 1971-\ 72 by Richard Weyrauch, Malcolm Newey and myself. The development of\ ML as a metalanguage for interactive proof was the work of several people;", ["robin-milner/principal.djvu"] = "Principal \ type-schemes \ for functional \ programs \ Luis Darnas* and Robin Milne~ \ Edinburgh \ University \ 1. Introduction \ This paper is concerned \ with the polymorphic \ type discipline \ of NL, which is a general \ purpose \ functional \ programming \ language, \ although \ it was \ first \ introduced \ as a metalanguage \ (whence its \ name) for conducting \ proofs \ in the LCF proof \ system \ [GMW] . \ The type discipline \ was studied \ in [Mil] , \ where it was shown to be semantically \ sound, in a \ sense made precise \ below, \ but where \ one important \ question \ was left \ open: \ does the type-checking \ algorithm \ - \ or more precisely, \ the type assignment \ algorithm \ (since \ types are assigned \ by the compiler, \ and need not be mentioned \ by the programmer) \ - \ find \ the most general \ type possible \ for every \ expression \ and declaration? ", ["robin-milner/principal.pdf"] = "Principal\ type-schemes\ for\ functional\ programs\ Luis\ Darnas* Edinburgh\ and\ Robin\ Milne~\ University\ 1.\ Introduction This paper is of concerned NL, which with is the polymorphic purpose it its system [Mil] in a , was\ of\ successful research become\ use and\ of in\ the\ language, to\ both\ in\ LCF and\ other it has\ teaching to the\ ,\ undergraduates, these of\ (due to\ type\ discipline\ a general although (whence the\ important because\ answer\ questions flexibility\ semantic\ -\ functional first name) [GMW] . where sense question algorithm algorithm and the and the of able with need most it\ programming introduced for conducting The was type shown as\ language, a metalanguage proofs in\ particularly\ (due to\ combination\ robustness\ polymorphism)\ LCF proof studied in sound, one\ soundness)\ and\ detection\ of\ errors\ at\ compile\ time\ discipline to be\ was semantically but does", ["rod-brooks/representation.pdf"] = "Intelligence without representation*\ Rodney A. Brooks\ MIT Artificial Intelligence Laboratory, 545 Technology Square, Rm. 836, Cambridge, MA 02139, USA Received September 1987 Brooks, R.A., Intelligence without representation, Artificial Intelligence 47 (1991), 139–159. * This report describes research done at the Artificial Intelligence Laboratory of the Massachusetts Institute of Technology. Support for the research is provided in part by an IBM Faculty 9 Development Award, in part by a grant from the Systems Development Foundation, in part by the University Research Initiative under Office of Naval Research contract N00014-86-K-0685 and in part by the Advanced Research Projects Agency under Office of Naval Research contract N00014-85-K-0124. Abstract Artificial intelligence research has foundered on the issue of representation. When intelligence is approached in an incremental manner, with strict reliance on interfacing to the real world through perception and action, reliance on representation disappears. In this paper we outline our approach to incrementally building complete intelligent Creatures. The fundamental decomposition of the intelligent system is not into independent information processing units which must interface with each other via representations. Instead, the intelligent system is decomposed into independent and parallel activity producers which all interface directly to the world through perception and action, rather than interface to each other particularly much. The notions of central and peripheral systems evaporateeverything is both central and peripheral. Based on these principles we have built a very successful series of mobile robots which operate without supervision as Creatures in standard office environments.", ["rod-burstall/hope.ps"] = "", ["roderic-cattell/code-generation.djvu"] = "RETROSPECTIVE: \ R. G. G. Cattell \ Sun Microsystems \ Santa Clara, CA 95054 \ cattellsun.com \ Code Generation in a Machine-Independent Compiler \ Joseph M. Newcomer \ Joseph M. Newcomer Co. \ Pittsburgh, PA 15208 \ newcomerflounder.com \ Bruce W. Levererr \ Spinnaker Networks \ Pittsburgh, PA 15238 \ bleverett spinnakemet.com \ Our paper was one of several describing the work of the \ Production-Quality Compiler-Compiler (PQCC) research project \ at Carnegie-Mellon University. The paper focused on the code \ optimization and code generation phases of compilation. A later, \ broader paper on the PQCC project can be found in [Lev 80]. \ We left the compiler field a few years after that, so we apologize \ in advance that our retrospective is limited in its coverage of \ more recent work. \ Like most software projects at CMU, PQCC was entwined with \ many other projects in the Computer Science Department. ", ["roderic-cattell/survey-critique.djvu"] = "Libraries \ A Survey and Critique of \ Some Models of Code Generation \ R. G. Cattell \ Computer Science Department \ Carnegie-Mellon University \ November 1977 \ QA \ 75,5 \ C549 \ no,77-121 \ e9,e-IV!ellon \ University \ A Survey and Critique of \ Some Models of Code Generation \ R. G. Cattell \ Computer Science Department \ Carnegie-Mellon University \ November 1977 ", ["ron-rivest/binary-decision-trees.pdf"] = "", ["ronald-brender/bliss.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2002; 32:955981 (DOI: 10.1002/spe.470)\ The BLISS programming language: a history\ Ronald F. Brender,\ Hewlett-Packard Company, ZKO2-3/N30, 110 Spit Brook Road, Nashua, NH 03062, U.S.A.\ SUMMARY The BLISS programming language was invented by William A. Wulf and others at Carnegie-Mellon University in 1969, originally for the DEC PDP-10. BLISS-10 caught the interest of Ronald F. Brender of DEC (Digital Equipment Corporation). After several years of collaboration, including the creation of BLISS-11 for the PDP11, BLISS was adopted as DEC's implementation language for use on its new line of VAX computers in 1975. DEC developed a completely new generation of BLISSs for the VAX, PDP-10 and PDP-11, which became widely used at DEC during the 1970s and 1980s. With the creation of the Alpha architecture in the early 1990s, BLISS was extended again, in both 32- and 64-bit flavors. BLISS support for the Intel IA-32 architecture was introduced in 1995 and IA-64 support is now in progress. BLISS has a number of unusual characteristics: it is typeless, requires use of an explicit contents of operator (written as a period or `dot'), takes an algorithmic approach to data structure definition, has no goto, is an expression language, and has an unusually rich compile-time language. This paper reviews the evolution and use of BLISS over its three decade lifetime. Emphasis is on how the language evolved to facilitate portable programming while retaining its initial highly machine-specific character. Finally, the success of its characteristics are assessed. Copyright 2002 John Wiley & Sons, Ltd.", ["ronald-garcia/comparing_generic_programming03.pdf"] = "A Comparative Study of Language Support for Generic Programming\ Ronald Garcia Jaakko Jarvi Andrew Lumsdaine Jeremy Siek Jeremiah Willcock\ Open Systems Lab Indiana University Bloomington Bloomington, IN USA\ {garcia,jajarvi,lums,jsiek,jewillco}@osl.iu.edu", ["ross-anderson/econ.pdf"] = "", ["ross-anderson/why-fail.pdf"] = "Why Cryptosystems Fail\ Ross Anderson University Computer Laboratory Pembroke Street, Cambridge CB2 3QG Email: rja14@cl.cam.ac.uk", ["russ-atkinson/aspects-clu.pdf"] = "Aspects of Implementing CLU\ Russell R. Atkinson Barbara H. Llskov Robert W. Scheifler Laboratory for Computer Science Massachusetts Institute of Technology Cambridge, MA 02139.\ Linguistic mechanisms used in CLU to support 1) structured exception handling, 2) iteration over abstract objects, and 3) parameterized abstractions are briefly reviewed, and methods of realizing these mechanisms are described. The mechanisms discussed support features that are likely to be included in other programming languages, and the implementation methods should be applicable to a wide range of languages. Key words: CLU; exception handling; iterators; parameterlzed modules; programming language Implementation methods.\ 1. Introduction 2. Exception Handling\ C L U [1, 2] is a programming language/system that provides linguistic mechanisms supporting procedural, data, and control abstractions, and structured exception handling. In Implementing CLU, methods of realizing these linguistic mechanisms were needed. This paper describes a few of these Implementation methods. A n implementation using these methods has been running since the fall of 1977. T h e methods we describe are ones that we feel are of general interest because the features they support are likely to be included in other programming languages. In Section 2 we discuss how the CLU exception handling mechanism is realized. In \"Section .~ we describe the implementation of iterators. Finally, Section 4 contains a discussion of the implementation of parameterized modules. More complete descriptions of exception handling and iterators can be found In [3] and [4], respectively.", ["russ-cox/stack.pdf"] = "Explicit Stack Management in C--\ Russ Cox rsc@eecs.harvard.edu", ["russ-cox/sync.pdf"] = "Communication Timestamps for File System Synchronization\ Russ Cox William Josephson rsc,wkj@eecs.harvard.edu", ["russ-cox/systems.pdf"] = "Toward a new systems programming environment\ Russ Cox rsc@mit.edu\ 1. Introduction I am growing increasingly dissatisfied with the systems programming environments available to me. This is a rant. In it, I try to articulate what I find wrong with current systems programming environments, in an attempt to decide what the systems programming environment I want to use would look like. Some sections are more well thought out (and thus longer) than others. To start, I must define systems programming environment. First, systems programming is building programs that provide basic day-to-day system functionality. The line between systems programs and other programs is necessarily fuzzy, but a few examples should suffice. Examples of systems programs include operating system kernels, file systems, window systems, compilers, and editors. Examples of non-systems programs include mathematical simulations, logic programs, theorem provers, AI, and other specialized applications. One approximate characterization might be that systems programs are not difficult algorithmically while non-systems programs often are. That is, systems programs may be well characterized by the fact that their value often lies in their integration and cooperation with other programs rather than in their standalone behavior. A systems programming environment comprises the various tools used for systems programming. These include programming languages, compilers, editing systems, debuggers, and the operating system itself. That is, C alone is not a systems programming environment at all. C, Unix, Emacs, gcc, and gdb together are a systems programming environment. This distinction is just as important for running programs as for writing them. For example, consider a C program that reads from /dev/random. The fact that this file is supposed to return random byte sequences when read is as much a part of the programming environment as C's object model. When such a program is transported to Windows, accomodations must be made for the lack of a /dev/random file. In fact, the very existence of files is an abstraction provided by the operating system. There is nothing in the C language that directly supports such a concept.1 Of course, so-called portable or operating system-independent programs are really still operating system-dependent but only depend on aspects common to all the operating systems of interest. For example, a C program that depends on file I/O is typically considered portable even though it wouldn't run on file-less operating systems like PalmOS. Finally, note that although systems programming environments are tied to various aspects of their operating system, one operating system may support many different systems programming environments. For example, Unix and its default set of shell commands are also a systems programming environment, albeit a much different one from the Cbased environment.", ["samson-abramsky/absint.djvu"] = "fGreat Britain, \ 5, and Richard \ 9rwood for his \ son Abramsky \ Chris Hankin \ 1 \ An introduction to abstract \ interpretation \ Samson Abramsky and Chris Hankin, Imperial College, London, UK \ 1. INTRODUCTION \ A significant proportion of the code in most modern production compilers \ is devoted to the optimization of generated code. All too often the run-time \ behaviour of the optimized program is inconsistent with the pre-optimization \ behaviour; in other words, the optimization has affected the semantics of the \ program as well as the pragmatics. This problem normally arises because \ insufficient rigour has been applied to the correctness proof of the optimiza- \ tion. For programming languages with defined mathematical semantics there \ is a growing set of tools that provides a basis for semantically correct \ transformation; one such tool is abstract interpretation. This book is mainly, ", ["samuel-fuller/evaluation.djvu"] = "Evaluation of computer architectures \ via test programs* \ by SAMUEL H. FULLER, PAUL SHAMAN and DAVID LAMB \ Carnegie-Mellon University \ Pittsburgh, Pennsylvania \ and \ WILLIAM E. BURR \ U.S. Army Electronics Command \ Ft. Monmouth, New Jersey ", ["sarita-adve/models_tutorial-tr.ps"] = "Shared Memory Consistency Models: A Tutorial \\Lambda\ Sarita V. Adve y and Kourosh Gharachorloo z\ y Department of Electrical and Computer Engineering\ Rice University\ Houston, Texas 772511892\ z Western Research Laboratory\ Digital Equipment Corporation\ Palo Alto, California 943011616\ Rice University ECE Technical Report 9512\ Western Research Laboratory Research Report 95/7\ September 1995", ["satoru-miyamoto/ternary-awgs.pdf"] = "Theoretical Computer Science 328 (2004) 97 111 www.elsevier.com/locate/tcs\ Ternary directed acyclic word graphs\ Satoru Miyamotoa , Shunsuke Inenagab, , Masayuki Takedaa, c , Ayumi Shinoharaa, d\ a Department of Informatics, Kyushu University 33, Fukuoka 812-8581, Japan b Department of Computer Science, P.O. Box 68 (Gustaf Hllstrmin Katu 2b), FIN-00014 University of\ Helsinki, Finland\ c SORST, Japan Science and Technology Agency (JST), Japan d PRESTO, Japan Science and Technology Agency (JST), Japan", ["sean-eddy/plan7.pdf"] = "BIOINFORMATICS REVIEW\ Vol. 14 no. 9 1998\ Pages 755-763\ Profile hidden Markov models\ Sean R. Eddy\ Department of Genetics, Washington University School of Medicine,\ 4566 Scott Avenue, St Louis, MO 63110, USA\ Received on May 20, 1998; revised on July 20, 1998; accepted on July 23, 1998", ["seth-goldstein/CSD-97-975.pdf"] = "Lazy Threads: Compiler and Runtime Structures for Fine-Grained Parallel Programming by Seth Copen Goldstein B.S.E. Princeton University 1985 M.S.E. University of California Berkeley 1994\ A dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Computer Science in the GRADUATE DIVISION of the UNIVERSITY of CALIFORNIA at BERKELEY\ Committee in charge: Professor David E. Culler, Chair Professor Susan L. Graham Professor Paul McEuen Professor Katherine A. Yelick\ Fall 1997\ 1 Lazy Threads: Compiler and Runtime Structures for Fine-Grained Parallel Programming by Seth Copen Goldstein Doctor of Philosophy in Computer Science University of California, Berkeley Professor David E. Culler, Chair Many modern parallel languages support dynamic creation of threads or require multithreading in their implementations. The threads describe the logical parallelism in the program. For ease of expression and better resource utilization, the logical parallelism in a program often exceeds the physical parallelism of the machine and leads to applications with many ne-grained threads. In practice, however, most logical threads need not be independent threads. Instead, they could be run as sequential calls, which are inherently cheaper than independent threads. The challenge is that one cannot generally predict which logical threads can be implemented as sequential calls. In lazy multithreading systems each logical thread begins execution sequentially with the attendant e cient stack management and direct transfer of control and data. Only if a thread truly must execute in parallel does it get its own thread of control. This dissertation presents new implementation techniques for lazy multithreading systems on conventional machines and compares a variety of design choices. We develop an abstract machine that makes explicit the design decisions for achieving lazy multithreading. We introduce new options on each of the four axes in the design space: the storage model, the thread representation, the disconnection method, and the queueing mechanism. Stacklets, our new storage model, allows parallel calls to maintain the invariants of sequential calls. Thread seeds, our new thread representation, allows threads to be stolen without requiring thread migration or shared memory. Lazy-disconnect, our new disconnection method, does not restrict the use of pointers. Implicit and Lazy queueing, our two new queueing mechanisms, eliminate the need for explicit bookkeeping. Additionally, we develop a core set of compilation techniques and runtime primitives that form the basis for the e cient implementation of any design point. We have evaluated the di erent approaches by incorporating them into a compiler for an explicitly parallel extension of Split-C. We show that there exist points in the design space e.g., stacklet, thread seeds, lazy-disconnect, and lazy queueing for which ne-grained", ["seth-goldstein/Lazy Threads Implementing a Fast Parallel Call.pdf"] = "JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING ARTICLE NO.\ 37, 520 (1996)\ 0104\ Lazy Threads: Implementing a Fast Parallel Call\ SETH COPEN GOLDSTEIN,* KLAUS ERIK SCHAUSER,\ AND\ DAVID E. CULLER*\ *Computer Science Division, University of CaliforniaBerkeley, Berkeley, California 94720; and Department of Computer Science, University of CaliforniaSanta Barbara, Santa Barbara, California 93106\ In this paper, we describe lazy threads, a new approach for implementing multithreaded execution models on conventional machines. We show how they can implement a parallel call at nearly the efficiency of a sequential call. The central idea is to specialize the representation of a parallel call so that it can execute as a parallel-ready sequential call. This allows excess parallelism to degrade into sequential calls with the attendant efficient stack management and direct transfer of control and data, yet a call that truly needs to execute in parallel, gets its own thread of control. The efficiency of lazy threads is achieved through a careful attention to storage management and a code generation strategy that allows us to represent potential parallel work with no overhead. 1996 Academic Press, Inc.", ["seth-goldstein/enabling.pdf"] = "1\ ENABLING PRIMITIVES FOR COMPILING PARALLEL LANGUAGES\ Seth Copen Goldstein, Klaus Erik Schauser*, David Culler\ Computer Science Division, University of California at Berkeley *Department of Computer Science, University of California at Santa Barbara\ sethg,culler @cs.berkeley.edu schauser@cs.ucsb.edu", ["seth-goldstein/isca92.ps"] = "Active Messages: a Mechanism for\ Integrated Communication and Computation 1\ Thorsten von Eicken\ David E. Culler\ Seth Copen Goldstein\ Klaus Erik Schauser\ ftve,culler,sethg,schauserg@cs.berkeley.edu\ Report No. UCB/CSD 92/#675, March 1992\ Computer Science Division --- EECS\ University of California, Berkeley, CA 94720", ["seymour-papert/episto-pluralism.pdf"] = "", ["shahab-tasharrofi/extension.pdf"] = "Proceedings of the Twenty-Third International Joint Conference on Artificial Intelligence\ A Rational Extension of Stable Model\ Semantics to the Full Propositional Language\ Shahab Tasharrofi\ Simon Fraser University\ Canada\ sta44@sfu.ca", ["shahab-tasharrofi/modularity.pdf"] = "A Semantic Account for Modularity in Multi-language\ Modelling of Search Problems\ S. Tasharrofi and E. Ternovska\ Simon Fraser University, Canada\ {sta44,ter}@cs.sfu.ca", ["shahab-tasharrofi/pbint.pdf"] = "PBINT, a logic for modelling search problems involving\ arithmetic\ Shahab Tasharrofi and Eugenia Ternovska\ Simon Fraser University, Canada\ {sta44,ter}@cs.sfu.ca", ["shawn-hsiao/cs257.pdf"] = "Context Switching and Scheduling in C--\ Shawn Hsiao Olushola Olateju May 11, 2000", ["shu-xiang-li/quadcode.pdf"] = "Image Processing\ and Computer\ Vision\ Robert Haralick\ Editor\ The Quadcode and\ Its Arithmetic\ SHU-XIANG LI and MURRAY H. LOEW", ["simon-marlow/local-gc.pdf"] = "Multicore Garbage Collection with Local Heaps\ Simon Marlow\ Simon Peyton Jones\ Microsoft Research, Cambridge, U.K.\ simonmar@microsoft.com\ Microsoft Research, Cambridge, U.K.\ simonpj@microsoft.com", ["simon-marlow/multiproc.pdf"] = "Haskell on a Shared-Memory Multiprocessor\ Tim Harris Simon Marlow Simon Peyton Jones\ Microsoft Research, Cambridge {tharris,simonmar,simonpj}@microsoft.com", ["simon-marlow/par-gc-ismm08.pdf"] = "Parallel generational-copying garbage collection with a\ block-structured heap\ Simon Marlow\ Tim Harris\ Roshan P. James\ Microsoft Research\ simonmar@microsoft.com\ Microsoft Research\ tharris@microsoft.com\ Indiana University\ rpjames@indiana.edu\ Simon Peyton Jones\ Microsoft Research\ simonpj@microsoft.com", ["simon-marlow/web-server-jfp.pdf"] = "s a edi bcn n`prgd i rii d ) eda ciq pbaHicc raqdc eicfr edd bcl`ean`fqncr eg e lcpdc q wgpd niiwg wa q ` 5rc lan` # eq g eac ci Crciga 3 d @d b` nqpdeibg ncib3bqpqbqqg n s 7 pq`qgn q erac i ` 7 g X q ֽ q g gnidf ieiciwe`@g s l` e blqnq` eRcs pd wglcr`5vn` la Hd wlcHdq ei b`cq eqrgq pܶgbqp`gi #g d s 5 ncfg i` d 5i n a eac vRrc ei c p eig c vnc ed efgg i s n i pqg7 q i ` q 7 ln` eq g 5Xbdni s i g `dd ebd lq@fgceq Xn` ya bbq` pqercg eii ec c piq eg fa g i5i%gg`d3 b rcR i n qg i b g3`r i 4 rcn`ei 7rc ` pi bd`s l f`3`q۩rcHdnci CHdlcr`di ީqwgnH q d a nqq lai ` g g g ` s ` g s ) ` q n`lb`lqf`e g5 ld3` r d i )g n`e rl r`i rl s lƤ` nd i d Hdedcfcbbߥedpac )d ei g 4 ii s e pg 5`b hbd i gn i g s '3 n i ` eipg g q `g n`lHd rc i epdXa lsn`` % s ldƩsbcbqpqeg `q y H ߺb` pqeHdcg wlcr`d Hdd c eic )a eqlgƯ` @s c Hdg ei)g nc i 3`i rncci i 5# Xg a wpdi g n )i q ' q bi% qlb`pqi g di e cfw Ҷ ea` g d `` dq bqplde`qgrg3bcedq fc ҷ Hd 7qc i7gq ei c@d wr ei@s d i ټ ` i n i C s s rewgHHdcd b`qq a yүy f qw i i n bi 3` ir src7l q eqei 7rc i pc ed bcn`4bn` e) 7 q g ԥg c d g gcqgpi ed Yc yHӥa ed3g)bdn`eig g C pqrc pүrci bn` iri `y pdqwgri i Cr lqi ` R f Ӥ s qb bdd` pq r pawӲnig qi ed rgneaei%ba4Hq l Hq bdny`eiHgc yied bdrg5bqri` ldp`heag` ffc e Hq picg ` le l`bnq q e p7cg pdi wgr5lan`qir igӯ d l`fqln`plqýc a ged nlde`g cH aH c eiedc bc n`qթqgi bb` dq e5 ld Ʃs` w bd` n`qe wgid #s)bg d y` 7cp eg q eg prdqgqi qd edbc n`p 7fg iq g c ' s7 qeif U wwXCwfvqnwrr w i5Hq# pHC iH 4 pq@qb7 q yewww f feCwHCqwifnnCrb%XH fw3H pCfC rrpvq3q HHfpCw )r qè we wqHqqfir wC q ffy%C w wrHHHCp %fH yf wCwHC#f3 H3 q v HHw#qr HqvCC pwr R#w fq7CrwrHr Cq bH wr r#Hr w' Hw w eb rqqe i% 4ww rr wHH3nfq 3ny H w w i 4 4 pfyqC 4 ffw fy r fd5qeHHqe H %H v3 wrqHHw wHwqHfw7 pqHwqrp#qr q qq pfC f rC CqfyfrHv3 RH3qqvw weq fX ff rH# rqpw pfq} ~ fnmluyx7rk wsjyq| i{h gzfesdwos 4wyrv epwxrxwvyuyr rts rqpo yxbwvt u sbcrqpihedba3`Y gf c XRGUTR7P% I WV S 11 Q8 HG7FEC A @9!754320)'%#\"! 1 1 D B 8 61 1 (& $ ", ["simon-peyton-jones/MS-CIS-05-26.pdf"] = "Wobbly types: type inference for generalised algebraic data types\ Technical Report MS-CIS-05-26 Computer and Information Science Department University of Pennsylvania July 2004\ Simon Peyton Jones Microsoft Research, Cambridge Geoffrey Washburn Stephanie Weirich University of Pennsylvania\ One approach, then, is to implement a compiler that takes advantage of type annotations. If the algorithm succeeds, well and good; if not, the programmer adds more annotations until it does succeed. The difficulty with this approach is that there is no guarantee that another compiler for the same language will also accept the annotated program, nor does the programmer have a precise specification of what programs are acceptable and what are not. With this in mind, our central focus is this: we give a declarative type system for a language that includes GADTs and programmer-supplied type annotations, which has the property that type inference is straightforward for any well-typed program. More specifically, we make the following contributions: We describe an explicitly-typed target language, in the style of System F, that supports GADTs (Section 3). This language differs in only minor respects from that of Xi [XCC03], but our presentation of the type system is rather different and, we believe, more accessible to programmers. In addition, some design alternatives differ and, most important, it allows us to introduce much of the vocabulary and mental scaffolding to support the main payload. We prove that the type system is sound. We describe an implicitly-typed source language, that supports GADTs and programmer-supplied type annotations (Section 4), and explore some design variations, including lexically-scoped type variables (Section 4.7). The key innovation in the type system is the notion of a wobbly type, which models the places where an inference algorithm would make a \"guess\". The idea is that the type refinement induced by GADTs never \"looks inside\" a wobbly type, and hence is insensitive to the order in which the inference algorithm traverses the tree. We prove various properties of this system, including soundness. We have built a prototype implementation of the system as an extension to the type inference engine described by Peyton Jones and Shields's tutorial [PVWS05]. We discuss the interesting aspects of the implementation in Section 5.", ["simon-peyton-jones/RArrays.pdf"] = "Regular, shape-polymorphic, parallel arrays in Haskell\ Gabriele Keller Manuel M. T. Chakravarty Simon Peyton Jones\ Computer Science and Engineering University of New South Wales, Australia {keller,chak,rl,benl}@cse.unsw.edu.au\ Roman Leshchinskiy\ Ben Lippmeier\ Microsoft Research Ltd Cambridge, England\ {simonpj}@microsoft.com", ["simon-peyton-jones/Vietnam.pdf"] = "Simon and Dorothy's 100th birthday cycle ride in Vietnam\ (4-18 November 2008) See more photos here: http://tinyurl.com/6xqtm4 We did it! We cycled 392 miles in 8 days, climbing 35,000 feet in the process. You did it too: you gave the Medical Foundation a total of 13,500. Fantastic. Tuesday/Weds 4/5 November: we flew from Heathrow to Kuala Lumpur (12hrs) and then on to Hanoi (3 more hours). Bus to hotel, freshen up (it was now 3 ish), have a quick look around the area, supper, bed. The dominant feature of Hanoi is the mopeds: there a 2 mopeds for every 3 inhabitants (and there are 3m of those). Dorothy reverts effortlessly to weaving across roads through traffic, not so most of our group. Thursday. When people mutter that our 6.30am breakfast is to be served on the 10th floor with no lift, the guide says sourly, ,,if you cant manage 10 floors youll struggle with the Tram Tonh Pass. Bus for a couple of hours out of town to our starting point. This is when we started to get to know our fellow cyclists, about 30 of them. Everyone is supporting different charities. A huge range of people, from age 21 to 60+, from judges to scaffolders. We discover two other folk on 50th birthday expeditions the SAGA group is formed! Disaster strikes. Shortly before we arrived in Hanoi there had been torrential rain (thankfully wed missed it) which led to waist-deep floods in the city. On our way out the road went right through a still-flooded area for a mile or so: traffic jams, people carting mopeds through the flood on carts etc. Vietnamese all cheerful. In the end we had to get out and wade (queries from the tender types about water-borne diseases), and the bus just made it. Disaster averted. We get to the jumping-off point. Alas, Dorothys saddle (carefully brought from the UK) does not fit the bike! So D and I alternated with the rather skimpy saddles the bikes came with. Generally speaking, our main pain point was sore bum not weary legs. Off we go: 40km mainly up hill. Easy really. Hot! We stay the night in a traditional \"home stay\" place, which means big dormitories in houses on stilts. Very picturesque. Hard floors! Friday: 60km today, with 4,500ft to climb. The hills are very green and beautiful. People are working all the time, in the fields, tending animals, building homes. It rains HARD for the first, but only time. We all get soaked, coated in ochre mud. Overnight at a Trade Union hotel in Moc Chau. Saturday. A big day: 120km! But the first 30 (yes,", ["simon-peyton-jones/adaptive_speculation.ps"] = "Call by Opportunity: A Fast Evaluation Strategy for NonStrict\ Programs\ Robert Ennals Simon PeytonJones\ Computer Lab, University of Cambridge Microsoft Research Ltd, Cambridge\ Robert.Ennals@cl.cam.ac.uk simonpj@microsoft.com", ["simon-peyton-jones/complete-decidable-gadt.pdf"] = "Complete and Decidable Type Inference for GADTs\ Tom Schrijvers ∗\ Simon Peyton Jones\ Martin Sulzmann\ Katholieke Universiteit Leuven, Belgium\ tom.schrijvers@cs.kuleuven.be\ Microsoft Research Cambridge, UK\ simonpj@microsoft.com\ Intaris Software GmbH, Germany\ martin.sulzmann@gmail.com\ Dimitrios Vytiniotis\ Microsoft Research Cambridge, UK\ dimitris@microsoft.com\ This paper appears in the International Conference on Functional\ Programming, Edinburgh, 2009\ February 25, 2011: This is the online version of the paper. It fixes\ some problems in the published version, identified by Casey Klein\ and Robby Findler:\ • Figures 3 and 5 include cases for function types.\ • Notation g is added to the term variable syntax in Figure 1.\ • Figure 4 fixes some errors in rules (C ASE) and (PAT), regarding\ We believe that one should, instead, strive to produce simpler constraints, whose satisfiability can be efficiently determined by a (correct and complete) solver. Inspired by Peyton Jones et al.’s wobbly types (PVWW06), recent work by", ["simon-peyton-jones/conc-ffi.ps"] = "Extending the Haskell Foreign Function Interface with\ Concurrency\ Simon Marlow and Simon Peyton Jones\ Microsoft Research Ltd., Cambridge, U.K.\ fsimonmar,simonpjg@microsoft.com\ Wolfgang Thaller\ wolfgang.thaller@gmx.net", ["simon-peyton-jones/concurrent-haskell.ps.gz"] = "Concurrent Haskell\ Simon Peyton Jones\ University of Glasgow\ Andrew Gordon\ University of Cambridge\ Sigbjorn Finne\ University of Glasgow", ["simon-peyton-jones/contracts.pdf"] = "Composing Contracts:\ ÓÑÔÓ× Ò ÓÒØÖ Ø×\ An Adventure in Financial Ò Ò Ö Ò\ Ò Ú ÒØÙÖ Ò ¬Ò Ò Ð Engineering\ ÙÒ Ø ÓÒ Ð Ô ÖÐ\ Ë ÑÓÒ È ÝØÓÒ ÂÓÒ ×\ Å\ ÖÓ×Ó Ø Ê ×\ Ö\ ¸\ Â\ Ñ Ö\ Ä Ü\ × ÑÓÒÔ Ñ ÖÓ×Ó Øº ÓÑ\ ҹŠÖ\ Ì\ ÒÑ Ö º\ ×ØÖ Ø\ Ò Ò Ð Ò Ò×ÙÖ Ò ÓÒØÖ Ø× Ó ÒÓØ ×ÓÙÒ Ð ÔÖÓÑ ×¹\ Ò Ø ÖÖ ØÓÖÝ ÓÖ ÙÒ Ø ÓÒ Ð ÔÖÓ Ö ÑÑ Ò Ò ÓÖÑ Ð × Ñ Ò¹\ Ø ×¸ ÙØ Ò Ø Û Ú × ÓÚ Ö Ø Ø Ò× Ø× ÖÓÑ ÔÖÓ¹\ Ö ÑÑ Ò Ð Ò Ù × Ö Ö ØÐÝ ÓÒ Ø ÓÑÔÐ Ü ×Ù Ø\ Ó × Ö Ò Ò Ú ÐÙ Ò Ð Ö Ð ×× Ó ÓÒØÖ Ø׺\ Ï ÒØÖÓ Ù\ ÓÑ Ò ØÓÖ Ð Ö ÖÝ Ø Ø ÐÐÓÛ× Ù× ØÓ ¹\ × Ö ×Ù ÓÒØÖ Ø× ÔÖ × Ðݸ Ò ÓÑÔÓ× Ø ÓÒ Ð ÒÓØ ¹\ Ø ÓÒ Ð × Ñ ÒØ × Ø Ø × Ý× Û Ø ×Ù ÓÒØÖ Ø× Ö ÛÓÖØ º\ Ï × Ø Ò ÑÔÐ Ñ ÒØ Ø ÓÒ Ó ÓÙÖ ÓÑ Ò ØÓÖ Ð Ö ÖÝ Ò\ À × Ðк ÁÒØ Ö ×Ø Ò Ðݸ Ð ÞÝ Ú ÐÙ Ø ÓÒ ÔÐ Ý× ÖÙ Ð ÖÓÐ º\ ½ ÁÒØÖÓ Ù Ø ÓÒ\ ÓÒ× Ö Ø ÓÐÐÓÛ Ò ¬Ò Ò Ð ÓÒØÖ Ø¸ Ø Ö Ø ØÓ\ ÓÓ× ÓÒ ¿¼ ÂÙÒ ¾¼¼¼ ØÛ Ò\ ÓØ Ó\ Ê Ú °½¼¼ ÓÒ ¾ Â Ò ¾¼¼½º\ È Ý °½¼ ÓÒ ½ ¾¼¼¾º\ Ò ÓÔØ ÓÒ Ü Ö × Ð ÓÒ ½\ ¾¼¼¼ ØÓ ÓÓ× ÓÒ Ó\ ÓØ Ó\ Ê Ú °½¼¼ ÓÒ ¾ Â Ò ¾¼¼½º\ È Ý °½¼ ÓÒ ½ ¾¼¼¾º\ ÓØ Ó\ Ê Ú °½¼¼ ÓÒ ¾ Â Ò ¾¼¼½º\ È Ý °½½¾ ÓÒ ½ ¾¼¼¿º\ Ì Ø Ð× Ó Ø × ÓÒØÖ Ø Ö ÒÓØ ÑÔÓÖØ Òظ ÙØ Ø ×\ × ÑÔÐ ¬ ÙØ Ö Ð ×Ø Ü ÑÔÐ Ó Ø ×ÓÖØ Ó ÓÒØÖ Ø Ø Ø ×\ ØÖ\ Ò ¬Ò Ò Ð Ö Ú Ø Ú Ñ Ö Ø׺ Ï Ø × ÑÔÓÖØ ÒØ ×\ Ø Ø ÓÑÔÐ Ü ÓÒØÖ Ø׸ ×Ù × ¸ Ö ÓÖÑ Ý ÓÑ Ò Ò\ ØÓ Ø Ö × ÑÔÐ Ö ÓÒØÖ Ø׸ ×Ù × ¸ Û\ Ò ØÙÖÒ Ö\ ÓÖÑ ÖÓÑ × ÑÔÐ Ö ÓÒØÖ Ø× ×Ø Ðи ×Ù × ¸ º\ ½\ ½½\ ½¾\ ¾\ ¾½\ ¾½½\ ¾½¾\ ¾¾\ ¾¾½\ ¾¾¾\ ½\ ½½\ ½¾\ Permission to make digital or hard copies of all or part of this work for\ personal or classroom use is granted without fee provided that copies\ are not made or distributed for profit or commercial advantage and that\ copies bear this notice and the full citation on the first page. To copy\ otherwise, or republish, to post on servers or to redistribute to lists,\ requires prior specific permission and/or a fee.\ ICFP'00,\ ICFP'00, Montreal, Canada.\ Copyright 2000 ACM 1-58113-202-6/00/0009…$5.00.\ Copyright 2000 ACM 1-58113-202-6/00/0009…$5.00.\ 280\ ÒÓÐÓ\ Ö\ ÂÙÐ\ ׸ È Ö ×\ Ö Ð Ü\ º ÓÑ\ Ò Ë Û Ö\ ÍÒ Ú Ö× ØÝ Ó\ Ú¹× Û Ö\ Ð × ÓÛ\ Ñ ÖÓ×Ó Øº ÓÑ\ Ø Ø × ÔÓ Òظ ÒÝ Ö ¹ ÐÓÓ\ ÙÒ Ø ÓÒ Ð ÔÖÓ Ö ÑÑ Ö\ × ÓÙÐ ×Ø ÖØ ØÓ Ó Ñ Ø Ø ÑÓÙØ ¸ Ý ÐÐ Ò Ù Ð Óѹ\ Ò ØÓÖ Ð Ö ÖÝ º Ò Ò ¸ Ø Ø ØÙÖÒ× ÓÙØ ØÓ ÒÓØ ÓÒÐÝ\ ÔÓ×× Ð ¸ ÙØ ØÖ Ñ Ò ÓÙ×ÐÝ Ò ¬ к\ Ì ¬Ò Ò Ò Ù×ØÖÝ × Ò ÒÓÖÑÓÙ× ÚÓ ÙÐ ÖÝ Ó Ö ÓÒ\ ÓÖ ØÝÔ Ð ÓÑ Ò Ø ÓÒ× Ó ¬Ò Ò Ð ÓÒØÖ Ø× ´×Û Ô׸ Ù¹\ ØÙÖ ×¸ Ô׸ ­ÓÓÖ׸ ×Û ÔØ ÓÒ׸ ×ÔÖ ×¸ ×ØÖ Ð ×¸ ÔØ ÓÒ׸\ ÙÖÓÔ Ò ÓÔØ ÓÒ׸ Ñ Ö Ò ÓÔØ ÓÒ׸ ºººØ Ð ×Ø Ó × ÓÒµº\ ÌÖ Ø Ò\ Ó Ø × Ò Ú Ù ÐÐÝ × Ð\ ÚÒ Ð Ö\ Ø ÐÓ Ù Ó ÔÖ Ö Ø ÓÑÔÓÒ ÒØ׺ Ì ØÖÓÙ Ð × Ø Ø\ ×ÓÑ ÓÒ Û ÐÐ ×ÓÓÒ Û ÒØ ÓÒØÖ Ø Ø Ø × ÒÓØ Ò Ø Ø ¹\ ÐÓ Ù º\ Á ¸ Ò×Ø ¸ Û ÓÙÐ ¬Ò\ Ó Ø × ÓÒØÖ Ø× Ù× Ò\ ¬Ü ¸ ÔÖ × Ðݹ×Ô ¬ × Ø Ó ÓÑ Ò ØÓÖ׸ Û ÛÓÙÐ\ Ò ÑÙ ØØ Ö ÔÓ× Ø ÓÒ Ø Ò Ú Ò ¬Ü Ø ÐÓ Ù º\ ÓÖ ×Ø Öظ Ø ÓÑ × ÑÙ × Ö ØÓ × Ö Ò Û¸ ÙÒ ÓÖ ¹\ × Ò¸ ÓÒØÖ Ø׺ ÝÓÒ Ø Ø¸ Û Ò ×Ý×Ø Ñ Ø ÐÐÝ Ò ÐÝ× ¸\ Ò Ô Ö ÓÖÑ ÓÑÔÙØ Ø ÓÒ× ÓÚ Ö Ø × Ò Û ÓÒØÖ Ø׸ Ù×\ Ø Ý Ö × Ö Ò Ø ÖÑ× Ó ¬Ü × Ø Ó ÔÖ Ñ Ø Ú ×º\ Ì Ñ ÓÖ Ø ÖÙ×Ø Ó Ø × Ô Ô Ö × ØÓ Ö Û Ò× Ø× ÖÓÑ Ø\ ×ØÙ Ý Ó ÙÒ Ø ÓÒ Ð ÔÖÓ Ö ÑÑ Ò ØÓ ÐÐÙÑ Ò Ø Ø ÛÓÖÐ Ó\ ¬Ò Ò Ð ÓÒØÖ Ø׺ ÅÓÖ ×Ô ¬ ÐÐݸ ÓÙÖ ÓÒØÖ ÙØ ÓÒ× Ö\ Ø ÓÐÐÓÛ Ò\ ¯ Ï ¬Ò\ Ö ÙÐÐݹ Ó× Ò × Ø Ó ÓÑ Ò ØÓÖ׸ Ò ¸\ Ø ÖÓÙ Ò ÜØ Ò × ÕÙ Ò Ó Ü ÑÔÐ × Ò À × Ðи\ Û × ÓÛ Ø Ø Ø × ÓÑ Ò ØÓÖ× Ò Ò\ Ù× ØÓ\ × Ö Û Ú Ö ØÝ Ó ÓÒØÖ Ø× ´Ë Ø ÓÒ ¿µº\ ¯ ÇÙÖ ÓÑ Ò ØÓÖ× Ò Ù× ØÓ × Ö\ ÓÒØÖ Ø¸ ÙØ\ Û Ð×Ó Û ÒØ ØÓ ÔÖÓ ×× ÓÒØÖ Øº ÆÓØ Ðݸ Û Û ÒØ ØÓ\ Ð ØÓ ¬Ò Ø Ú ÐÙ Ó ÓÒØÖ Øº ÁÒ Ë Ø ÓÒ Û\ × Ö ÓÛ ØÓ Ú Ò ×ØÖ Ø Ú ÐÙ Ø ÓÒ × Ñ ÒØ × ØÓ\ ÓÙÖ ÓÑ Ò ØÓÖ׺ ÙÒ Ñ ÒØ ÐÐݹ ÑÔÓÖØ ÒØ ÔÖÓÔ ÖØÝ\ Ó Ø × × Ñ ÒØ × × Ø Ø Ø × ÓÑÔÓ× Ø ÓÒ Ð Ø Ø ×¸ Ø\ Ú ÐÙ Ó ÓÑÔÓÙÒ ÓÒØÖ Ø × Ú Ò Ý ÓÑ Ò Ò\ Ø Ú ÐÙ × Ó Ø× ×Ù ¹ ÓÒØÖ Ø׺\ ¯ Ï × Ø Ò ÑÔÐ Ñ ÒØ Ø ÓÒ Ó ÓÙÖ Ú ÐÙ Ø ÓÒ × Ñ Ò¹\ Ø ×¸ Ù× Ò × Ò Ü ÑÔÐ × ÑÔÐ ÒØ Ö ×Ø Ö Ø ÑÓ Ð\ Ò Ø× ××Ó Ø Ð ØØ ´Ë Ø ÓÒ µº Ä ÞÝ Ú ÐÙ Ø ÓÒ\ ØÙÖÒ× ÓÙØ ØÓ ØÖ Ñ Ò ÓÙ×ÐÝ ÑÔÓÖØ ÒØ Ò ØÖ Ò×Ð Ø Ò\ Ø ÓÑÔÓ× Ø ÓÒ Ð × Ñ ÒØ × ÒØÓ ÑÓ ÙÐ Ö ÑÔÐ Ñ Ò¹\ Ø Ø ÓÒ ´Ë Ø ÓÒ º¿µº\ ËØ Ø Ò Ø × Û Ý¸ ÓÙÖ ÛÓÖ ×ÓÙÒ × Ð\ Ô Ö ØÐÝ ÖÓÙ¹\ Ø Ò ÔÔÐ Ø ÓÒ Ó Ø\ Ó Ù× Ò ÙÒ Ø ÓÒ Ð Ð Ò Ù\ ¸ ¸ Ù ÓÒØÖ Ø\ Ó Ç × ÖÚ Ð\ ظ ×\ Ø ¸ØÑ\ ÙÖÖ Ò Ý\ Ü\ Ñ Ò× ÓÒÐ ×× Ö Ð Ú ÐÙ\ Î ÐÙ ÔÖÓ ××\ Ê Ò ÓÑ Ú Ö Ð\ ÆÓÛ Û\ ؽ¸Ø¾\ ؽ\ ؾ\ ØÝÔ\ ÙÖ ½ ÆÓØ Ø ÓÒ Ð ÓÒÚ ÒØ ÓÒ×\ ØÓ ¬Ò ÓÑ Ò¹×Ô ¬ ÓÑ Ò ØÓÖ Ð Ö Öݸ Ø Ö Ý ¹\ Ø Ú ÐÝ Ö Ø Ò Ò ÔÔÐ Ø ÓÒ¹×Ô ¬ ÔÖÓ Ö ÑÑ Ò Ð Ò¹\ Ù º ËÙ Ð Ò Ù × Ú\ Ò ¬Ò ÓÖ Ô Ö× Ö׸\ ÑÙ× ¸ Ò Ñ Ø ÓÒ׸ Ö Û Ö Ö Ù Ø׸ Ò Ñ ÒÝ ÓØ Ö×\ Ú Ò ÙÖ× Ò Ø Ðº¸ ¾¼¼¼ º ÀÓÛ Ú Ö¸ ÖÓÑ Ø ×Ø Ò ÔÓ ÒØ Ó\ ¬Ò Ò Ð Ò Ò Ö׸ ÓÙÖ Ð Ò Ù × ØÖÙÐÝ Ö Ð Ø Ý ¹\ ÒÓÛÐ Ø Ø Ø Ð Ó ÔÖ × Û Ý ØÓ × Ö ÓÑÔÐ Ü\ ÓÒØÖ Ø× × Ø Ò Ó ÓÙÖ Ð Ú × º\ ÁØ × Ø Ò Ù× ÐÓÒ Ø Ñ ØÓ Ó Ð ÓÛÒ Ø ÑÑ Ò× ×ÓÙÔ\ Ó Ø Ú ÐݹØÖ\ ÓÒØÖ Ø× ÒØÓ Ö ×ÓÒ ÐÝ ×Ñ ÐÐ × Ø Ó\ ÓÑ Ò ØÓÖ× ÙØ ÓÒ Ø Ø × ÓÒ ¸ Ò Û Ú ×Ø × ÓÔ Ò ÙÔ¸\ Ù× × Ò Ð ÓÖÑ Ð × Ö ÔØ ÓÒ Ò Ö Ú ÐÐ Ñ ÒÒ Ö Ó\ ÙØÓÑ Ø ÔÖÓ ×× ×º ÓÖ Ü ÑÔÐ ¸ Û Ò Ò Ö Ø × ¹\ ÙÐ × ÓÖ ¹ÓÆ ÓÒØÖ Ø Ü ÙØ ÓÒ¸ Ô Ö ÓÖÑ Ö × Ò ÐÝ× ×\ ÓÔØ Ñ × Ø ÓÒ׸ ÔÖ × ÒØ ÓÒØÖ Ø× Ò Ò Û Ö Ô Ð Û Ý× ´ º º\ × ÓÒ ØÖ ×µ¸ ÔÖÓÚ Ò Ñ Ø × ÑÙÐ Ø ÓÒ׸ Ò ×Ó ÓÒº\ Ì × Ô Ô Ö × Ö ×× ØÓ ÙÒ Ø ÓÒ Ð ÔÖÓ Ö ÑÑ Ò Ù ¹\ Ò º Ï Û ÐÐ ÒØÖÓ Ù ÒÝ ¬Ò Ò Ð Ö ÓÒ × Û Óº\ ¾\ ¾¸ ¿\ ¾\ Þ\ ¿\ ½\ Ø\ ¹\ Ú\ ¹\ Ì ¬Ö×Ø Ö ÙÑ ÒØ ØÓ Þ ×\ ÙÐ Ö ÑÓÑ ÒØ Ò Ø Ñ ´ º º ÓØ\ ÙÒ Ø ÓÒ¸ Ø ¸ Ø Ø ÓÒÚ ÖØ×\ Ö Ø Ö ×ØÖ Ò ØÓ Ø º\ Ø\ ½Ì\ ËØÖ Ò\ ¹\ ÙÖÖ Ò Ý ¹\ Ø\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ò ¬Ò\ Ø ¹\ ¸\ ÓÒØÖ\ Ø\ ÓÒØÖ Ø Ø Ø ÒÚÓÐÚ × ØÛÓ\ ¿\ ÓÒØÖ Ø\ ؾ ¾¼¼\ È\ Ò\ ¾\ ÓÒØÖ\ Ø ¹\ Ò\ Ú\ ½\ ÓÒØÖ\ Ø\ ¾\ ËÓ Ö¸\ Ó ÓÙÖ ¬Ò Ø ÓÒ× × ¬Ò Ò Û ÓÒØÖ Ø\ ´ ½¸ ¾¸ Ø µº ÁØ × Ð×Ó ×Ý ØÓ ¬Ò Ò Û ÓÑ Ò ØÓÖ\ ´ ÙÒ Ø ÓÒ Ø Ø Ù Ð × ÓÒØÖ Øµº ÓÖ Ü ÑÔÐ ¸ Û ÓÙÐ\ ¬Ò Ò Ú Ø Ù×\ Ò\ Ò\ Ø\ Ú\ Ú\ ÓÒØÖ\ Ø ¹\ Ò\ ÓÒØÖ\ Ú\ ÆÓÛ Û Ò Ú Ò ÐØ ÖÒ Ø Ú\ Ù ÐØ ÖÐ Öµ\ ¸ Û ×Ô ¬ × Ô ÖØ ¹\ Ø Ò Ø Ñ µº Ï ÔÖÓÚ\ Ø ÜÔÖ ×× × Ö Ò ÐÝ\ ½\ ¾ ÁÒ\ À × Ðи\ Ò ÐÓ× Ò Ø Ò\ Ø\ ÕÙÓØ × ÖÓÑ Ò Ò ÓÖÑ Ð Ö ×ÔÓÒ× ØÓ\ ÓÒØÖ Ø×\ Ì ÓÒØÖ Ø Ú × × ÑÔÐÝ Û Ø Ö Ø× Ò Ó Ð Ø ÓÒ×\ Ö Ú Ö× ¸ ×Ø Ø Ñ ÒØ Û Û ÐÐ Ñ ÔÖ × Ò Ë Ø ÓÒ º¾º ÁÒ¹\ ¸ Û Ò ØÛÓ Ô ÖØ × Ö ÓÒ ÓÒØÖ Ø¸ ÓÒ ÕÙ Ö × Ø\ ÓÒØÖ Ø ¸ Ò Ø ÓØ Ö × ÑÙÐØ Ò ÓÙ×ÐÝ ÕÙ Ö × ´ Ú µ\ × Ø ÓØ Ö³× ÓÙÒØ Ö¹Ô ÖØݺ ÓÖ Ü ÑÔÐ ¸ × ÓÒ¹\ ØÖ Ø Û Ó× ÓÐ Ö Ö Ú × °½¼¼ Ø Ø Ñ Ø½¸ Ò Ô Ý× °¾¼¼\ Ø Ø Ñ Ø¾\ È\ ÓÙ Ð\ Ö Ò\ Ì Ø ×¸ Ø ÓÐ Ö Ó ÓÒØÖ Ø ¿ Û ÐÐ Ò ¬Ø ÖÓÑ Ô ÝÑ ÒØ\ Ó °½¼¼ Ø Ø Ñ Ø½¸ Ò ÒÓØ Ö Ô ÝÑ ÒØ Ó °¾¼¼ Ø Ø Ñ\ ؾº\ ÁÒ Ò Ö Ð¸ Ø ÓÒØÖ Ø× Û Ò × Ö Ö ØÛ Ò ØÛÓ\ Ô ÖØ ×¸ Ø ÓÐ Ö Ó Ø ÓÒØÖ Ø¸ Ò Ø ÓÙÒØ Ö¹Ô ÖØݺ\ ÆÓØÛ Ø ×Ø Ò Ò Ð Ð Ú ´ Ø× ½¼º¿ µ¸ Ý ÙÐØ Ø\ ÓÛÒ Ö Ó ÓÒØÖ Ø Ö Ú × Ø Ô ÝÑ ÒØ׸ Ò Ñ × Ø\ Ó ×¸ ×Ô ¬ Ò Ø ÓÒØÖ Øº Ì × × ØÙ Ø ÓÒ Ò Ö ¹\ Ú Ö× Ý Ø Ú ÓÑ Ò ØÓÖ\ ÙÖ ½ ×ÙÑÑ Ö × × Ø ÒÓØ Ø ÓÒ Ð ÓÒÚ ÒØ ÓÒ× Û Ù×\ Ø ÖÓÙ ÓÙØ Ø Ô Ô Ö ÓÖ Ú Ö Ð ×¸ ×Ù × ½ Ò Ø½ Ò\ Ø × ¬Ò Ø ÓÒº\ Ì ÓÑ Ò ØÓÖ Þ Ù× Ò ½³× ¬Ò Ø ÓÒ × Ø ÓÐÐÓÛ Ò\ ØÝÔ\ Þ\ ÓÒØÖ\ Í× Ò Ò Û\ Ô ÝÑ ÒØ×\ ÓÒØÖ Ø\ ÓÒØÖ Ø\ ؽ ½¼¼\ ÓÑ Ò Ò\ Ò\ ÓÒ× Ö Ø ÓÐÐÓÛ Ò × ÑÔÐ ÓÒØÖ Ø¸ ÒÓÛÒ ØÓ Ø Ò Ù×¹\ ØÖÝ × Þ ÖÓ¹ ÓÙÔÓÒ × ÓÙÒØ ÓÒ Ö Ú °½¼¼ ÓÒ ½×Ø Â Ò¹\ Ù ÖÝ ¾¼½¼ º Ï Ò ×Ô Ý Ø × ÓÒØÖ Ø¸ Û Û Ò Ñ\ ½¸ Ø Ù×\ Þ\ ÓÙ Ð\ ¹¹\ Ø Ñ\ ¹\ Ø ¹\ Ý×\ ¹\ Ý× ¹\ Ø\ Ø\ Ø\ ËÓ Þ Ð Ø× Ù× Ù Ð × ÑÔÐ ÓÒØÖ Øº Ï Ò Ð×Ó ÓÑ Ò\ ÓÒØÖ Ø× ØÓ Ñ\ Ö ÓÒØÖ Ø׺ ÓÓ Ü ÑÔÐ Ó ×Ù\ ÓÑ Ò Ò ÓÖÑ × Ò ¸ Û Ó× ØÝÔ ×\ ÁÒ Ø × × Ø ÓÒ Û Û ÐÐ Ò ÓÖÑ ÐÐÝ ÒØÖÓ Ù ÓÙÖ ÒÓØ Ø ÓÒ ÓÖ\ ÓÒØÖ Ø׸ Ò × ÓÛ ÓÛ Û Ò Ù Ð ÑÓÖ ÓÑÔÐ Ø ÓÒ¹\ ØÖ Ø× ÓÙØ Ó × ÑÔÐ Ö ÓÒ ×º Ï Ù× Ø ÙÒ Ø ÓÒ Ð Ð Ò Ù\ À × ÐÐ È ÝØÓÒ ÂÓÒ × Ø Ðº¸ ½ Ø ÖÓÙ ÓÙغ\ ½\ ½\ Ý×\ ¾º¾\ ØØ Ò ×Ø ÖØ\ × ÑÔÐ\ Ø\ ½ ¿¼ ÅÌ ½ Â Ò ¾¼½¼\ ½¾¼¼ ÅÌ ½\ ¾¼½¼\ Ï Ö ÔÖ × ÒØ Ø Ñ « Ö Ò × ­Ó Ø Ò ¹ÔÓ ÒØ ÒÙÑ Ö Ò\ ÙÒ Ø× Ó Ý× ´Ô ÖØ× Ó Ý× Ò ÑÔÓÖØ Òصº\ ½\ ¾º½\ Ø\ Ø\ ؽ\ Ï Û ÐÐ ×ÓÑ Ø Ñ × Ò ØÓ ×Ù ØÖ Ø Ø ×¸ ØÓ Ø Ø Ñ\ «ÖÒ ¸ Ò\ Ø Ò Ø Ñ « Ö Ò ØÓ Ø\ ÒÛ Øº\ Ô\ Ú\ ¾\ Ò ¬Ò ÓÙÖ Ø\ Ö Ø Ó ÓÙÖ ÛÓÖ\ ¾\ 281\ Ò\ Ú\ Ø ¹\ ¬Ò Ø ÓÒ Ó\ ÓÒØÖ Ø\ ´Û\ Û\ ¾\ ÙÒ Ø ÓÒ Ò\ ¹ÕÙÓØ ×º\ ØÙÖÒ\ ÒØÓ Ò Ò¬Ü ÓÔ Ö ØÓÖ Ý\ Ì × Ð ØÝ ØÓ ¬Ò Ò Û ÓÑ Ò ØÓÖ׸ Ò Ù× Ø Ñ Ù×Ø\ × Ø Ý Û Ö Ù ÐØ Ò¸ × ÕÙ Ø ÖÓÙØ Ò ÓÖ ÙÒ Ø ÓÒ Ð ÔÖÓ¹\ Ö ÑÑ Ö׸ ÙØ ÒÓØ ÓÖ ¬Ò Ò Ð Ò Ò Ö׺\ ¿\ ÙÐ Ò\ ÙØ Ø ÓÒ Û Û ÒØ Ô Ý× °½¼¼ Ø Ø½¸ Ò ÒÓ ÖÐ Ö¸\ Ö Ö Ð ×× Ó Û Ò Ø ÓÒ Ø× Ð × ÕÙ Ö º ÌÓ Ó Ø Ò\ Ø × « Ø Û Ù× ØÛÓ ÓØ Ö ÓÑ Ò ØÓÖ׸ Ø Ò ØÖÙÒ Ø ¸\ Ø Ù×\ Ø ´ØÖÙÒ\ ÓÒØÖ Ø×\ ÕÙ × Ø ÓÒ\ Ø\ Ò\ ÓÖ ÞÓÒ\ ×\ Ð Ã ½¼¼ ´ Ø ´ØÖÙÒ\ Ï Û ÐÐ ¬Ò\ ×\ ×\ Ð Ã\ Ð Ã\ ÓÙ Ð\ Ø\ ؽ ´ÓÒ\ ȵµµ\ × ÓÖØÐݸ Ò Ë Ø ÓÒ ¿º¿º ÁØ × Ø ØÝÔ\ ¹\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø\ ÌÓ ÕÙ Ö ´× Ð Ã Ü µ × ØÓ ÕÙ Ö ¸ ÙØ ÐÐ Ø Ô Ý¹\ Ñ ÒØ× Ò Ö ÔØ× Ò Ö ÑÙÐØ ÔÐ Ý Üº ËÓ Û Ò¸\ ¬Ò ÐÐݸ ¬Ò Þ ÓÖÖ ØÐÝ\ Þ\ Þ\ Ø Ü\ Ø\ ¹\ ×\ ÓÙ Ð ¹\ ÙÖÖ Ò Ý ¹\ ÓÒØÖ Ø\ Ð Ã Ü ´ Ø ´ØÖÙÒ Ø Ø ´ÓÒ\ µµµ\ Ì × ¬Ò Ø ÓÒ Ó Þ « Ø Ú ÐÝ ÜØ Ò × ÓÙÖ Ö Ô ÖØÓ Ö Ó\ ÓÑ Ò ØÓÖ׸ Ù×Ø × Ò Ú\ Ò Ë Ø ÓÒ ¾º¾¸ ÓÒÐÝ ÑÓÖ\ Ù× ÙÐÐݺ Ï Û ÐÐ ÓÒØ ÒÙ ÐÐÝ ÜØ Ò ÓÙÖ Ð Ö ÖÝ Ó ÓÑ Ò ¹\ ØÓÖ× Ò Ø × Û Ýº\ Ï Ý Û Ó ØÓ Ø ØÖÓÙ Ð Ó ¬Ò Ò Þ Ò Ø ÖÑ× Ó\ ÓÙÖ ÓÑ Ò ØÓÖ׸ Ö Ø Ö Ø Ò Ñ Ò Ø ÔÖ Ñ Ø Ú\ Ù×\ Ø ØÙÖÒ× ÓÙØ Ø Ø × Ð Ã¸ ظ ØÖÙÒ Ø ¸ Ò ÓÒ Ö ÐÐ Ò¹\ Ô Ò ÒØÐÝ Ù× Ùк\ Ñ Ó × ×Ø Ò Ø Ô Ó ÙÒ ¹\ Ø ÓÒ Ð Øݸ Ò Ý × Ô Ö Ø Ò Ø Ñ Û × Ò ¬ ÒØÐÝ × ÑÔÐ Ý\ Ø × Ñ ÒØ × Ò ÒÖ Ø Ð Ö Ó ÓÒØÖ Ø× ´Ë Ø ÓÒ µº\ Ì ÓÑ Ò ØÓÖ× Û ÔÖ × ÒØ Ö Ø Ö ×ÙÐØ Ó Ò ÜØ Ò ¸\ Ø Ö Ø Ú ÔÖÓ ×× Ó Ö ¬Ò Ñ Òظ Ð Ò ØÓ Ò ÒØ ÖÐÓ Ò\ × Ø Ó × ÓÒ× ÔÖÓ Ö ÑÑ Ò Ð Ò Ù\ × Ò Ö× Û ÐÐ\ ÕÙ Ø Ñ Ð Ö Û Ø Ø × ÔÖÓ ×׺\ ¿º¿ Ç × ÖÚ Ð × Ò × Ð Ò\ Ö Ð ÓÒØÖ Ø Ó Ø Ò Ñ ÒØ ÓÒ× ÕÙ ÒØ Ø × Ø Ø Ö ØÓ Ñ ¹\ ×ÙÖ ÓÒ Ô ÖØ ÙÐ Ö Ø º ÓÖ Ü ÑÔÐ ¸ ÓÒØÖ Ø Ñ Ø\ × Ý Ö Ú Ò ÑÓÙÒØ Ò ÓÐÐ Ö× ÕÙ Ð ØÓ Ø ÒÓÓÒ ÒØ ¹\ Ö Ø ÑÔ Ö ØÙÖ Ò ÄÓ× Ò Ð × ÓÖ Ô Ý Ò ÑÓÙÒØ Ò\ ÔÓÙÒ × ×Ø ÖÐ Ò ÕÙ Ð ØÓ Ø ¿¹ÑÓÒØ ÄÁ ÇÊ ×ÔÓØ Ö Ø ÑÙй\ Ø ÔÐ Ý ½¼¼ º Ï Ù× Ø Ø ÖÑ Ó × ÖÚ Ð ÓÖ Ò Ó Ø Ú ¸\ ÙØ Ô Ö Ô× Ø Ñ ¹Ú ÖÝ Ò ¸ ÕÙ ÒØ Øݺ Ý Ó Ø Ú Û Ñ Ò\ Ø Ø Ø ÒÝ Ô ÖØ ÙÐ Ö Ø Ñ Ø Ó × ÖÚ Ð × Ú ÐÙ Ø Ø\ ÓØ Ô ÖØ × ØÓ Ø ÓÒØÖ Ø Û ÐÐ Ö º Ì Ø ÑÔ Ö ØÙÖ Ò\ ÄÓ× Ò Ð × Ò Ó Ø Ú ÐÝ Ñ ×ÙÖ ÙØ Ø Ú ÐÙ ØÓ\ Ñ Ó Ò×ÙÖ Ò ÑÝ ÓÙ× × ×Ù Ø Ú ¸ Ò × ÒÓØ Ò Ó × ÖÚ¹\ Ð º Ç × ÖÚ Ð × Ö Ø Ù× « Ö ÒØ Ò Ó Ø Ò ÖÓÑ\ ÓÒØÖ Ø׸ ×Ó Û Ú Ø Ñ « Ö ÒØ ØÝÔ\ × ÓÙÒØ ÓÒ ×\ ÖÐ Ö¸ Û × Ö Ø Þ ÖÓ¹ ÓÙÔÓÒ × ÓÙÒØ ÓÒ Ö ¹\ Ú °½¼¼ Ø Ø Ñ Ø½ ´Ë Ø ÓÒ ¾º½µº Ø Ø Ø Ø Ñ Û ×¹\ ×ÙÑ Ø Ø Þ Û × ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ¸ ÙØ Ò Ø Ø\ ×ҳغ ÁØ × Ó Ø Ò Ý ÓÑÔÓ× Ò ÒÓ Û Ö Ø Ò ÓÙÖ ÑÓÖ\ ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ׺ Ï Ò Û Ø Ø ÓÒ ÓÑ Ò ØÓÖ\ ÓÒ\ ȵµ\ Ø Ø µ ×\ ÓÒØÖ Ø Ø Ø ØÖ Ñ× ³× ÓÖ ÞÓÒ ×Ó Ø Ø\ Ø ÒÒÓØ\ ÕÙ Ö ÒÝ Ð Ø Ö Ø Ò Øº ´ Ø µ × ÓÒ¹\ ØÖ Ø Ø Ø¸ Û Ò ÕÙ Ö ¸ ÕÙ Ö × Ø ÙÒ ÖÐÝ Ò ÓÒØÖ Ø\ Ø ³× ÓÖ ÞÓÒ Ø Ø ×¸ Ø Ø Ð ×Ø ÔÓ×× Ð ÑÓÑ ÒØ\ Ö Ö Ð ×× Ó Û Ò Ø ÓÑÔÓ× Ø ÓÒØÖ Ø ´ Ø µ × ¹\ ÕÙ Ö º Ì ÓÑ Ò Ø ÓÒ Ó Ø ØÛÓ × Ü ØÐÝ Ø « Ø\ Û Û Òظ × Ò Ø ÓÖ ÞÓÒ Ó ´ØÖÙÒ Ø Ø½ ´ÓÒ Èµµ ×\ Ü ØÐÝ Ø½º Ä ÓÒ ¸ Ø Ò ØÖÙÒ Ø Ö ¬Ò Ò ¹\ ÙÖ ¾º\ Ï Ö ×Ø ÐÐ ÒÓØ ¬Ò × º Ì ÓÒ Û Û ÒØ Ô Ý× °½¼¼\ ÒÓØ °½º Ï Ù× Ø ÓÑ Ò ØÓÖ × Ð Ã ØÓ × Ð ÙÔ Ø\ ÓÒØÖ Ø¸ Ø Ù×\ ÙÖ ¾ Ú × Ò Ò Ð × ¹Ð Ò Ù ¸ ÙØ ÕÙ Ø ÔÖ × ¸ ¹\ × Ö ÔØ ÓÒ Ó\ ÓÑ Ò ØÓÖº ÌÓ Ó ×Ó¸ Ø Ù× × ØÛÓ Ø Ò Ð\ Ø ÖÑ× ÕÙ × Ø ÓÒ Ø ¸ Ò ÓÖ ÞÓÒº Ï\ Ò Ý ÒØÖÓ¹\ Ù Ò Ø Ñ Ö ­Ýº\ ÇÙÖ Ð Ò Ù\ × Ö × Û Ø ÓÒØÖ Ø ×º ÀÓÛ Ú Ö¸ Û Ø\ Ø ÓÒ× ÕÙ Ò × ÓÖ Ø ÓÐ Ö Ó Ø ÓÒØÖ Ø Ô Ò × ÓÒ\ Ø Ø Ø Û Ø ÓÒØÖ Ø × ÕÙ Ö ¸ Ø× ÕÙ × Ø ÓÒ\ Ø º ´ Ý ÓÒ× ÕÙ Ò × ÓÖ Ø\ ÓÐ Ö Û Ñ Ò Ø Ö Ø×\ Ò Ó Ð Ø ÓÒ× Ø Ø Ø ÓÒØÖ Ø ÓÒ Ö× ÓÒ Ø ÓÐ Ö Ó\ ÓÒØÖ Øºµ ÓÖ Ü ÑÔÐ ¸ Ø ÓÒØÖ Ø Ö Ú °½¼¼ ÓÒ ½\ Â Ò ¾¼¼¼ Ò Ö Ú °½¼¼ ÓÒ ½ Â Ò ¾¼¼½ × ÛÓÖØ ÐÓØ Ð ××\ ÕÙ Ö Ø Ö ½ Â Ò ¾¼¼¼¸ Ù× ÒÝ Ö Ø× Ò Ó Ð ¹\ Ø ÓÒ× Ø Ø ÐÐ Ù ÓÖ Ø ÕÙ × Ø ÓÒ Ø Ö × ÑÔÐÝ\ × Ö º\ Ì × ÓÒ ÙÒ Ñ ÒØ Ð ÓÒ ÔØ × Ø Ø Ó ÓÒØÖ Ø³× ÓÖ ¹\ ÞÓÒ¸ ÓÖ ÜÔ ÖÝ Ø Ø ÓÖ ÞÓÒ¸ ÓÖ ÜÔ ÖÝ Ø ¸ Ó ÓÒØÖ Ø\ × Ø Ð Ø ×Ø Ø Ø Û\ Ø Ò\ ÕÙ Ö º\ ÓÒØÖ Ø³×\ ÓÖ ÞÓÒ Ñ Ý ¬Ò Ø ÓÖ Ò¬Ò Ø º Ì ÓÖ ÞÓÒ Ó ÓÒØÖ Ø ×\ ÓÑÔÐ Ø ÐÝ ×Ô ¬ Ý Ø ÓÒØÖ Ø Ø× Ð Ú Ò ÓÒØÖ Ø¸\ Û Ò × ÐÝ ÛÓÖ ÓÙØ Ø× ÓÖ ÞÓÒ Ù× Ò Ø ¬Ò Ø ÓÒ× Ò\ ÙÖ ¾º ÆÓØ Ö ÙÐÐݸ Ø ÓÙ ¸ Ø Ø ÓÒØÖ Ø³× Ö Ø×\ Ò Ó Ð Ø ÓÒ× Ñ Ý¸ Ò ÔÖ Ò ÔÐ ¸ ÜØ Ò Û ÐÐ ÝÓÒ Ø×\ ÓÖ ÞÓÒº ÓÖ Ü ÑÔÐ ¸ ÓÒ× Ö Ø ÓÒØÖ Ø Ø Ö Ø ØÓ\ ÓÒ ÓÖ ÓÖ ½ Â Ò ¾¼¼½ Û Ø Ö ØÓ Ú ÓÒØÖ Ø\ º Ì × ×ÓÖØ Ó ÓÒØÖ Ø × ÐÐ Ò ÓÔØ ÓÒº ÁØ× ÓÖ ÞÓÒ\ × ½ Â Ò ¾¼¼½ Ø ÒÒÓØ\ ÕÙ Ö Ø Ö Ø Ø Ø\ ÙØ ÓÒ ÕÙ Ö × Ø ÓÖ Ø Ò¸ Ø ÙÒ ÖÐÝ Ò ÓÒØÖ Ø\ Ñ Ý ´ Ò ¸ ØÝÔ ÐÐÝ Û Ðе Ú ÓÒ× ÕÙ Ò × ÜØ Ò Ò\ Û ÐÐ ÝÓÒ ½ Â Ò ¾¼¼½º\ ÌÓ Ö Ø Ö Ø ¸ Ø ÓÖ ÞÓÒ Ó ÓÒØÖ Ø × ÔÖÓÔ ÖØÝ Ó Ø\ ÓÒØÖ Ø¸ Û Ð Ø ÕÙ × Ø ÓÒ Ø × ÒÓغ\ ¿º¾\ ؽ ´ÓÒ\ ´ØÖÙÒ\ Ï Ú ÒÓÛ ÓÑÔÐ Ø ÓÙÖ Ò ÓÖÑ Ð ÒØÖÓ Ù Ø ÓÒº ÁÒ Ø ×\ × Ø ÓÒ Û Û ÐÐ Ú Ø ÙÐÐ × Ø Ó ÔÖ Ñ Ø Ú ×¸ Ò × ÓÛ ÓÛ\ Û Ú Ö ØÝ Ó ÓØ Ö ÓÒØÖ Ø× Ò Ù ÐØ Ù× Ò Ø Ñº ÓÖ\ Ö Ö Ò ¸ ÙÖ ¾ Ú × Ø ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ× ÓÚ Ö ÓÒ¹\ ØÖ Ø× Û Û ÐÐ ÒØÖÓ Ù Ø × ÔÖ Ñ Ø Ú × × Û Ò Ø Ñº\ ¿º½\ Ø\ ¿\ È\ ÙÖ ¾ Ú × Ö Ùи Ð Ø Ò ÓÖÑ Ð¸ ¬Ò Ø ÓÒ Ó ÓÒ\ ÝÓÙ ÕÙ Ö ´ÓÒ Èµ¸ ÝÓÙ ÑÑ Ø ÐÝ Ö Ú °½º Ì\ ÓÒØÖ Ø × Ò Ò¬Ò Ø ÓÖ ÞÓÒ Ø Ø ×¸ Ø Ö × ÒÓ Ö ×ØÖ ¹\ Ø ÓÒ ÓÒ Û Ò ÝÓÙ Ò ÕÙ Ö Ø × ÓÒØÖ Øº\ ¿Ì\ ÄÁ ÇÊ ×ÔÓØ Ö Ø × ÔÙ Ð ×\ ÐÝ Ò Ø ¬Ò Ò Ð ÔÖ ×׺ ÓÖ\ ÔÖ × ÒØ ÔÙÖÔÓ× × Ø Ó × ÒÓØ Ñ ØØ Ö Û Ø Ø Ñ Ò× ÐÐ Ø Ø Ñ ØØ Ö×\ × Ø Ø Ø × Ò Ó × ÖÚ Ð ÕÙ ÒØ Øݺ\ ¿\ 282\ Þ ÖÓ\ ÓÒ\ ÓÒØÖ\ ÜÔ Ö × Ø Ø ÖÐ Ö Ó Ø Ò Ø\ ÆÓØ Ø Ø ØÖÙÒ Ø Ð Ñ Ø× ÓÒÐÝ Ø\ ÕÙ × Ø ÓÒ Ø Ó\ Ø Ó × ÒÓØ ØÖÙÒ\ Ò Ó Ð Ø ÓÒ׸ Û Ñ Ý ÜØ Ò\ غ ´Ë Ø ÓÒ ¿º ºµ\ Ø\ × ÓÒØÖ Ø Ø Ø Ñ Ý\ ÕÙ Ö Ø ÒÝ\ Ø Ñ º ÁØ × ÒÓ Ö Ø× Ò ÒÓ Ó Ð Ø ÓÒ׸ Ò\ × Ò Ò¬Ò Ø ÓÖ ÞÓÒº ´Ë Ø ÓÒ ¿º ºµ\ Þ ÖÓ\ ÙÖÖ Ò Ý ¹\ µ\ ÓÒØÖ\ Ø\ × ÓÒØÖ Ø Ø Ø ÑÑ Ø ÐÝ Ô Ý× Ø\ ÓÐ Ö ÓÒ ÙÒ Ø Ó Ø ÙÖÖ Ò Ý º Ì ÓÒØÖ Ø\ × Ò Ò¬Ò Ø ÓÖ ÞÓÒº ´Ë Ø ÓÒ ¿º¾ºµ\ ´ÓÒ\ Ú\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø Ò\ Ò\ ÓÒØÖ Ø ¹\ ÓÒØÖ\ ×\ Ø ¹\ ÓÒØÖ\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø\ ´ØÖÙÒ\ ÒÓÓÒÌ ÑÔÁÒÄ\ Ð ÓÖ¿Ñ\ Ø ¹\ Ø µ\ × Ü ØÐÝ Ð\ Ç ×\ Ç ×\ Ø\ ÓÒØÖ\ Ø ¹\ Ð\ Ç ×\ ¹\ ÓÒØÖ\ Ø ¹\ Ð\ ÒÓÓÒÌ ÑÔÁÒÄ\ ´ÓÒ\ ÓÒØÖ\ Ø\ ÍË µ\ Ò¸ Û Ú ØÓ Ú ÖÝ ÔÖ × Ò ÓÙÖ ¬Ò Ø ÓÒ׺ Ü ØÐÝ\ Û Ò × Ø ÒÓÓÒ Ø ÑÔ Ö ØÙÖ Ò Ä × ÑÔÐ\ Ò×Û Ö ´ Ò\ ÙÖ ¾µ Û Ò ÝÓÙ ÕÙ Ö ´× Ð Ó µ ÝÓÙ ÑÑ Ø ÐÝ\ ÕÙ Ö ¸ × Ð Ò ÐÐ Ø Ô ÝÑ ÒØ× Ò Ö ÔØ× Ò Ý Ø\ Ú ÐÙ Ó Ø Ó × ÖÚ Ð Ó × ÑÔÐ Ø Ø ÑÓÑ ÒØ Ó ÕÙ × ¹\ Ø ÓÒº ËÓ Û × ÑÔÐ Ø Ó × ÖÚ Ð Ø × Ò Ð ¸ Û Ðй ¬Ò\ ÑÓÑ ÒØ ´Ø ÕÙ × Ø ÓÒ Ø µ Ò Ø Ò Ù× Ø Ø × Ò Ð ÒÙѹ\ Ö ØÓ × Ð Ø ×Ù × ÕÙ ÒØ Ô ÝÑ ÒØ× Ò Ö ÔØ× Ò º\ Ú ÖÝ Ù× ÙÐ Ó × ÖÚ Ð × ÓÒ Ø Ø × Ø × Ñ Ú ÐÙ Ø\ Ú ÖÝ Ø Ñ\ ÓÒ×Ø\ Ï Ø Ø×\ Û\ ¹\ Ç ×\ Ò ¬Ò\ ×\ ÓÙ Ð\ ¹\ Ø ¹\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ ÓÒØÖ\ Ø ¹\ Ø\ ÓÒØÖ\ Ø\ Ø\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø\ Á ÝÓÙ ÕÙ Ö ´ ÒÝØ Ñ µ ÝÓÙ ÑÙ×Ø ÕÙ Ö ¸\ ÙØ ÝÓÙ Ò Ó ×Ó Ø ÒÝ Ø Ñ ØÛ Ò Ø ÕÙ ¹\ × Ø ÓÒ Ó ´ ÒÝØ Ñ µ Ò Ø ÜÔ ÖÝ Ó º Ì\ ÓÒØÖ Ø\ ÓÑÔÓÙÒ ÓÒØÖ Ø ÜÔ Ö × Û Ò Ó ×º ´Ë ¹\ Ü ÔØ Ø Ø Ø\ Ø ÓÒ ¿º ºµ\ ÙÖ ¾ ÈÖ Ñ Ø Ú × ÓÖ ¬Ò Ò ÓÒØÖ Ø×\ ÏØ Ø\ Ó × Ð Û Ò ¬Ò Ø ´×ØÖ Ò ÙØ Ö ¹\ Ð ×Ø µ ÓÒØÖ Ø Ö Ú Ò ÑÓÙÒØ Ò ÓÐÐ Ö× ÕÙ Ð ØÓ Ø\ ÒÓÓÒ ÒØ Ö Ø ÑÔ Ö ØÙÖ Ò ÄÓ× Ò Ð ×\ ×\ Ç ×\ ÒÝØ Ñ\ ÓÙ Ð\ ÓÙ Ð\ ÓÙ Ð\ ÓÒØÖ\ Á ÝÓÙ ÕÙ Ö ´ Ø µ Ø Ò ÝÓÙ ÑÙ×Ø ÕÙ Ö\ Ø ³× ÜÔ ÖÝ Ø º Ì ÓÑÔÓÙÒ ÓÒØÖ Ø Ü¹\ Ô Ö × Ø Ø × Ñ ÑÓÑ ÒØ Ø Ø ÜÔ Ö ×º ´Ë ¹\ Ø ÓÒ ¿º¾ºµ\ Ø\ ÁÒ Ò Ö Ð¸ Ú ÐÙ Ó ØÝÔ Ç × Ö ÔÖ × ÒØ× Ø Ñ ¹Ú ÖÝ Ò\ ÕÙ ÒØ ØÝ Ó ØÝÔ º\ ÁÒ Ø ÔÖ Ú ÓÙ× × Ø ÓÒ Û Ù× × Ð Ã ØÓ × Ð ÓÒØÖ Ø\ Ý ¬Ü ÕÙ ÒØ Øݺ Ì ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ × Ð × Ð ×\ ÓÒØÖ Ø Ý Ø Ñ ¹Ú ÖÝ Ò Ú ÐÙ ¸ Ø Ø ×¸ Ý Ò Ó × ÖÚ Ð\ ×\ Ø ¹\ ÓÒØÖ\ Ø\ Á ÝÓÙ ÕÙ Ö ´ ½ ÓÖ ¾µ ÝÓÙ ÑÙ×Ø ÑÑ ¹\ Ø ÐÝ ÕÙ Ö Ø Ö ½ ÓÖ ¾ ´ ÙØ ÒÓØ ÓØ µº Á\ Ø Ö × ÜÔ Ö ¸ Ø Ø ÓÒ ÒÒÓØ\ Ó× Òº\ Ï Ò ÓØ Ú ÜÔ Ö ¸ Ø ÓÑÔÓÙÒ ÓÒØÖ Ø\ ÜÔ Ö ×º ´Ë Ø ÓÒ ¿º ºµ\ ØÖÙÒ\ Á ÝÓÙ ÕÙ Ö ´× Ð Ó µ¸ Ø Ò ÝÓÙ ÕÙ Ö\ Ø Ø × Ñ ÑÓÑ Òظ Ü ÔØ Ø Ø ÐÐ Ø Ö Ø×\ Ò Ó Ð Ø ÓÒ× Ó Ö ÑÙÐØ ÔÐ Ý Ø Ú ÐÙ\ Ó Ø Ó × ÖÚ Ð Ó Ø Ø ÑÓÑ ÒØ Ó ÕÙ × Ø ÓÒº\ ´Ë Ø ÓÒ ¿º¿ºµ\ Ð\ Ø\ Á ÝÓÙ ÕÙ Ö ´ ½ Ò ¾µ Ø Ò ÝÓÙ ÑÑ ¹\ Ø ÐÝ ÕÙ Ö ÓØ ½ ´ÙÒÐ ×× Ø × ÜÔ Ö µ Ò\ ¾ ´ÙÒÐ ×× Ø × ÜÔ Ö µº Ì\ ÓÑÔÓ× Ø ÓÒ¹\ ØÖ Ø ÜÔ Ö × Û Ò ÓØ ½ Ò ¾ ÜÔ Ö º ´Ë ¹\ Ø ÓÒ ¾º¾ºµ\ ÓÖ\ Á ÝÓÙ ÕÙ Ö ´ ½ Ø Ò ¾µ Ò ½ × ÒÓØ\ ÜÔ Ö ¸ Ø Ò ÝÓÙ ÕÙ Ö ½º Á ½ × ÜÔ Ö ¸\ ÙØ ¾ × ÒÓظ ÝÓÙ ÕÙ Ö ¾º Ì ÓÑÔÓÙÒ\ ÓÒØÖ Ø ÜÔ Ö × Û Ò ÓØ ½ Ò ¾ ÜÔ Ö º\ ´Ë Ø ÓÒ ¿º ºµ\ Ø\ ÌÓ ÕÙ Ö ´ Ú µ × ØÓ ÕÙ Ö ÐÐ ³× Ö Ø×\ × Ó Ð Ø ÓÒ׸ Ò Ú Ú Ö× º ÆÓØ Ø Ø ÓÖ\ Ð Ø Ö Ð ÓÒØÖ Ø Õ ØÛ Ò Ô ÖØ × Ò ¸\ ÕÙ Ö Ò Õ ÑÔÐ × Ø Ø\ ÕÙ Ö × ´ Ú Õµº\ ´Ë Ø ÓÒ ¾º¾ºµ\ ÓÒØÖ\ ÓÖ ÞÓÒ Ó º\ ÔÓ×× Ð ¹\ Ø ³× Ö Ø×\ Û ÐÐ ÝÓÒ\ Ð Ã\ 283\ × Ð Ã\ × Ð Ã Ü\ ÓÙ Ð ¹\ ÓÒØÖ Ø ¹\ × Ð ´ ÓÒ×Ø Üµ\ ÓÒØÖ\ Ø\ ÒÝ Ö Ø Ñ Ø ÓÑ Ò Ø ÓÒ Ó Ó × ÖÚ Ð × × Ð×Ó Ò Ó × ÖÚ¹\ Ð º ÓÖ Ü ÑÔÐ ¸ Û Ñ Ý ÛÖ Ø\ ÒØÄ\ ÒØÄ\ Òà ÐÚ Ò\ Òà ÐÚ Ò\ Ç × ÓÙ Ð\ ÒÓÓÒÌ ÑÔÁÒÄ\ · ÓÒ×Ø ¿ ¿\ Ï Ò Ù× Ø\ Ø ÓÒ ÓÔ Ö ØÓÖ¸ ´·µ¸ ØÓ ØÛÓ Ó × ÖÚ¹\ Р׸ Ù× Ó × ÖÚ Ð × Ö Ò Ò×Ø Ò Ó Ø ÆÙÑ Ð ×× ¸\ Û\ × ÓÔ Ö Ø ÓÒ× ÓÖ Ø ÓÒ¸ ×Ù ØÖ Ø ÓÒ¸ ÑÙÐØ ÔÐ ¹\ Ø ÓÒ¸ Ò ×Ó ÓÒ\ Ò×Ø Ò\ ÆÙÑ\ ÆÙÑ ´Ç ×\ µ\ ´Ê Ö× Û Ó Ö ÙÒ Ñ Ð Ö Û Ø À × ÐÐ³× ØÝÔ Ð ×× × Ò\ ÒÓØ ÛÓÖÖÝ ÐÐ Û Ò × Ø Ø Û Ò ÑÔÐÓÝ Ø Ù×Ù Ð\ Ö Ø Ñ Ø ÓÔ Ö ØÓÖ× ÓÖ Ó × ÖÚ Ð ×ºµ Ì × Ó × ÖÚ Ð ×\ Ò Ø Ö ÓÔ Ö Ø ÓÒ× Ö ¸ Ó ÓÙÖ× ¸ Ö Ñ Ò × ÒØ Ó Ö Ò³×\ Ú ÓÙÖ× ÐÐ ÓØØ Ò ÀÙ ¸ ½ º Ä\ Ö Ò¸ Û ÔÖÓ¹\ Ú ÓÑ Ò ØÓÖ× ÓÖ Ð Ø Ò ÙÒ Ø ÓÒ× ØÓ Ø Ó × ÖÚ Ð Ð Ú Ð¸\ Рظ Рؾ¸ Ø º\ ÙÖ ¿ Ú × Ø ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ×\ ÓÚ Ö Ó × ÖÚ Ð ×º\ Ö\ Ò\ Ò\ Ø ÓÒ Ð¸\ Ø\ ÐÐ Ø\ ÓØ Ö ÒÙÑ Ö\ Ð ×× ×¸ ×Ù\ × Ê Ð¸\ ÓÒ×Ø\ ¹ Ç ×\ ´ ÓÒ×Ø Üµ\ × Ò Ó × ÖÚ Ð Ø Ø × Ú ÐÙ\ ÒÝ Ø Ñ º\ Ð Ø\ Ð\ ´ ¹\ µ ¹\ ´Ð Ø\ Óµ\ Ç ×\ ¹\ Ü\ ÙÖÓÔ\ Ø\ ´ ¹ ¹ µ ¹\ ؾ\ Ó½ Ó¾µ\ Ç ×\ Ç ×\ ¹\ µ\ Ç ×\ ÆÙÑ\ ÆÙÑ ´Ç ×\ µ\ ÐÐ ÒÙÑ Ö ÓÔ Ö Ø ÓÒ× Ð Ø ØÓ Ø\ ÑÔÐ Ñ ÒØ Ø ÓÒ × × ÑÔÐ ¸ Ù× Ò\ Ø Ñ\ Ø\ ¹\ Ç ×\ Ð\ Ç ×\ Ø\ ØÝÔ º Ì\ Ò Ð Ø¾º\ ÙÖÓÔ\ ÙÖÓÔ\ Ý×\ Ì Ú ÐÙ Ó Ø Ó × ÖÚ Ð ´Ø Ñ Øµ Ø Ø Ñ ×\ × Ø ÒÙÑ Ö Ó Ý× ØÛ Ò × Ò Ø¸ ÔÓ× Ø Ú\ × × Ð Ø Ö Ø Ò Øº\ Ì Ö Ñ Ý Ò Ö ØÖ ÖÝ ÒÙÑ Ö Ó ÓØ Ö ÔÖ Ñ Ø Ú\ Ó × ÖÚ Ð × ÔÖÓÚ\ Ý Ô ÖØ ÙÐ Ö ÑÔÐ Ñ ÒØ Ø ÓÒº\ ÓÖ Ü ÑÔÐ\ Ð\ ÓÖ\ ´Ð\ ÙÖÖ Ò Ý ¹\ ÓÖ\ ѽ Ѿµ\ Ý× ¹\ Ý× ¹ Ç ×\ × Ò Ó × ÖÚ Ð Õ٠и Ø ÒÝ\ Ø Ñ ¸ ØÓ Ø ÕÙÓØ ÓÖÛ Ö ´ ØÙ Ö Ðµ Ö Ø Ò\ ÙÖÖ Ò Ý ÓÚ Ö Ø Ø Ñ ÒØ ÖÚ Ð\ ѽ ØÓ\ Ѿº\ ÙÖ ¿ ÈÖ Ñ Ø Ú × ÓÚ Ö Ó × ÖÚ Ð ×\ ÙÖÓÔ Ò ÓÔØ ÓÒ×\ ÅÙ Ó Ø ×Ù ØÐ ØÝ Ò ¬Ò Ò Ð ÓÒØÖ Ø× Ö × × Ù× Ø\ Ô ÖØ Ô ÒØ× Ò Ü Ö × Ó ×º Ï Ò Ô×ÙÐ Ø Ó Ò\ ØÛÓ ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ׸ ÓÖ Ò ÒÝØ Ñ º Ì ÓÖÑ Ö Ð¹\ ÐÓÛ× ÓÒ ØÓ ÓÓ× Û Ó ØÛÓ ÓÒØÖ Ø× ØÓ ÕÙ Ö ´Ø ×\ × Ø ÓÒµ¸ Û Ð Ø Ð ØØ Ö ÐÐÓÛ× ÓÒ ØÓ ÓÓ× Û Ò ØÓ ¹\ ÕÙ Ö Ø ´Ë Ø ÓÒ ¿º µº\ Ö×ظ Û ÓÒ× Ö Ø Ó\ ØÛ Ò ØÛÓ ÓÒØÖ Ø×\ Ø ¹\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø\ Ï Ò ÝÓÙ ÕÙ Ö Ø ÓÒØÖ Ø ´ ½ ÓÖ ¾µ¸ ÝÓÙ ÑÙ×Ø Ñ¹\ Ñ Ø ÐÝ ÕÙ Ö Ø Ö ½ ÓÖ ¾ ´ ÙØ ÒÓØ ÓØ µº Ð ÖÐݸ\ ½ Ò ÓÒÐÝ\ Ó× Ò Ø ÓÖ ÓÖ ½³× ÓÖ ÞÓÒ¸ Ò × Ñ¹\ Ð ÖÐÝ ÓÖ ¾º Ì ÓÖ ÞÓÒ ÓÖ ´ ½ ÓÖ ¾µ × Ø Ð Ø ×Ø\ Ó Ø ÓÖ ÞÓÒ× Ó ½ Ò ¾º ÕÙ Ö Ò Ø × ÓÑÔÓ× Ø ÓÒ¹\ ØÖ Ø¸ ÓÖ Ü ÑÔÐ ¸ Ø Ö ½³× ÓÖ ÞÓÒ ÙØ ÓÖ ¾³× ÓÖ ÞÓÒ\ Ñ Ò× Ø Ø ÝÓÙ Ò ÓÒÐÝ ÓÓ× ØÓ ÕÙ Ö ÓÒØÖ Ø ¾º\ ÓÖ Ü ÑÔÐ ¸ Ø ÓÒØÖ Ø\ Þ\ ؽ ½¼¼\ È\ ÓÖ\ Þ\ ؾ ½½¼\ ÓÒØÖ Ø\ ÓÒØÖ\ Ø\ Ò\ Ò\ Ò\ ȵ\ Ø\ ¹\ ÓÒØÖ Ø ¹\ ÓÒØÖ\ Ø ´ØÖÙÒ Ø Ø ´Ù ÓÖ\ Ø\ Þ ÖÓµµ\ ÓÒØÖ\ Ø\ ¯Ì\ Ø\ ÓÒØÖ\ Ò\ Ò Ø Ù\ Þ ÖÓ\ ÓÙ Ð\ Ø\ ÓÖ\ Ø ¹\ ÓÙ Ò Ö Ø × ¬Ò Ø ÓÒ × ÓÐÐÓÛ×\ ¯ Ì ÔÖ Ñ Ø Ú ÓÒØÖ Ø Þ ÖÓ × ÒÓ Ö Ø× ÓÖ Ó Ð ¹\ Ø ÓÒ×\ Ø\ ¿º\ ÓÒØÖ\ Ì × ÓÒØÖ Ø Ú × Ø Ö Ø ØÓ ÓÓ× ¸ ÓÒ ¾ ÔÖ ¾¼¼¿¸\ Û Ø Ö ÓÖ ÒÓØ ØÓ ÕÙ Ö Ò ÙÒ ÖÐÝ Ò ÓÒØÖ Ø ÓÒ× ×Ø Ò\ Ó Ø Ö Ö ÔØ× Ò ÓÒ Ô ÝÑ Òغ ÁÒ Ø ¬Ò Ò Ð Ò Ù×ØÖݸ\ Ø × Ò Ó ÓÒØÖ Ø × Ò\ ÐÐ\ ÐÐ ÓÒ ÓÙÔÓÒ\ ÓÒ ¸ Ú Ò Ø Ö Ø¸ Ø ÙØÙÖ Ø ¸ ØÓ ÙÝ ÓÒ ÓÖ\ ÔÖ × Ö ÔÖ º × Û Ø Þ ¸ Û ¬Ò ÙÖÓÔ Ò Ò Ø ÖÑ×\ Ó × ÑÔÐ Ö Ð Ñ ÒØ×\ × Ø Ó × ÖÚ Ð Û Ó× Ú ÐÙ\ × Ø Ö ×ÙÐØ Ó ÔÔÐÝ Ò ØÓ Ø Ú ÐÙ × Ó Ø\ Ó × ÖÚ Ð × Ó½ Ò Ó¾º\ Ò×Ø Ò\ ¹\ ÙÖÓÔ Ò ´ Ø\ ¾\ ÔÖ ¾¼¼¿ µ ´\ Þ\ ´ Ø\ ½¾ Å Ý ¾¼¼¿ µ ¼º\ È\ Þ\ ´ Ø\ ½¾ Å Ý ¾¼¼ µ º¿\ È\ Þ\ ´ Ø\ ½¾ Å Ý ¾¼¼ µ ½¼ º¿\ È\ Ú ´Þ\ ´ Ø\ ¾\ ÔÖ ¾¼¼¿ µ ½¼¼\ Ç ×\ ¹\ Ø\ ÓÖ Ü ÑÔÐ ¸ ÓÒ× Ö Ø\ × Ø Ó × ÖÚ Ð Û Ó× Ú ÐÙ × Ø\ Ö ×ÙÐØ Ó ÔÔÐÝ Ò ØÓ Ø Ú ÐÙ Ó Ø Ó × ÖÚ Ð\ Óº\ ؾ\ ´Ð\ Ò\ È\ Ú × Ø ÓÐ Ö Ø Ö Ø¸ ÕÙ Ö\ ÓÖ\ ´Ø½ ؾµ¸ ØÓ\ ÓÓ× ÑÑ Ø ÐÝ Ø Ö ØÓ Ö Ú °½¼¼ Ø Ø½¸ ÓÖ ÐØ ÖÒ ¹\ Ø Ú ÐÝ ØÓ Ö Ú °½½¼ Ø Ø¾º\ ×Ó¹ ÐÐ ÙÖÓÔ Ò ÓÔØ ÓÒ Ú × Ø Ö Ø ØÓ ÓÓ× ¸ Ø\ Ô ÖØ ÙÐ Ö Ø ¸ Û Ø Ö ÓÖ ÒÓØ ØÓ ÕÙ Ö Ò ÙÒ ÖÐÝ Ò\ ÓÒØÖ Ø\ Ñ Ò\ 284\ ÓÒØÖ Ø ´Ù ÓÖ Þ ÖÓµ ÜÔÖ ×× × Ø Ó\ ¹\ ØÛ Ò ÕÙ Ö Ò Ù Ò ÕÙ Ö Ò ÒÓØ Ò º\ ¯ Ï ØÖ Ñ Ø ÓÖ ÞÓÒ Ó Ø ÓÒØÖ Ø ´Ù ÓÖ Þ ÖÓµ ØÓ\ ظ Ù× Ò Ø ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ ØÖÙÒ Ø ´ ÙÖ ¾µº\ ¯ Ò ÐÐݸ Û Ù× ÓÙÖ Ø ÓÑ Ò ØÓÖ ØÓ ÕÙ Ö Ø Ø Ø Ø\ ÓÖ ÞÓÒº\ Ï Û ÐÐ Ö Ô Ø ÐÝ Ò ÓÙÒØ Ö Ø\ Ô ØØ ÖÒ\ ´ØÖÙÒ Ø Ø ´Ù ÓÖ Þ ÖÓµµ¸ ×Ó Û Û ÐÐ Ô\ Ø\ ÙÔ ÒØÓ Ò Û ÓÑÔÓ× Ø ÓÑ Ò ØÓÖ\ Ô Ö\ Ô Ö\ ¿º\ Ì\ Ô×\ Ô× Ø Ù\ Ñ Ö\ Ø\ ¹\ ØÖÙÒ\ ÓÒØÖ Ø ¹\ ÓÒØÖ Ø\ Ø Ø ´Ù ÓÖ Þ ÖÓµ\ Ò ÓÔØ ÓÒ×\ ÓÖ ÓÑ Ò ØÓÖ Ð Ø× Ù× ÓÓ× Û\ Ó ØÛÓ ÓÒØÖ Ø× ØÓ\ ÕÙ Ö º Ä Ø Ù× ÒÓÛ ÓÒ× Ö Ø Ó Ó Û Ò ØÓ ÕÙ Ö\ ÓÒØÖ Ø\ ÒÝØ Ñ\ ÓÒØÖ\ Ø ¹\ ÓÒØÖ\ Ø\ ÕÙ Ö Ò Ø ÓÒØÖ Ø ÒÝØ Ñ Ù Ú × Ø Ö Ø ØÓ ÕÙ Ö\ ÙÒ ÖÐÝ Ò ÓÒØÖ Ø Ù Ø ÒÝ Ø Ñ ¸ ÖÓÑ ÕÙ × Ø ÓÒ\ Ø Ó ÒÝØ Ñ Ù ÙÔ ØÓ Ù³× ÓÖ ÞÓÒº ÀÓÛ Ú Ö¸ ÒÓØ Ø Ø Ù\ ÑÙ×Ø\ ÕÙ Ö ¸ Ð Ø Ô Ö Ô× Ø Ø Ð Ø ×Ø ÔÓ×× Ð Ø º\ Ò Ñ Ö Ò ÓÔØ ÓÒ Ó« Ö× ÑÓÖ ­ Ü Ð ØÝ Ø Ò ÙÖÓÔ Ò\ ÓÔØ ÓÒº ÌÝÔ ÐÐݸ Ò Ñ Ö Ò ÓÔØ ÓÒ ÓÒ Ö× Ø Ö Ø\ ØÓ ÕÙ Ö Ò ÙÒ ÖÐÝ Ò ÓÒØÖ Ø Ø ÒÝ Ø Ñ ØÛ Ò ØÛÓ\ Ø ×¸ ÓÖ ÒÓØ ØÓ Ó ×Ó Ø Ðк ÇÙÖ ¬Ö×Ø ´ Ò ÓÖÖ Øµ ØØ ÑÔØ\ ØÓ ¬Ò ×Ù\ ÓÒØÖ Ø Ñ Ø ØÓ × Ý\ Ø\ Ñ Ö\ Ñ Ö\ Ò\ ´ Ø ¸ Ø µ ¹\ ÓÒØÖ\ Ò ´Ø½¸Ø¾µ Ù\ ¹¹ ÏÊÇÆ\ ÒÝØ Ñ ´Ô Ö Ô× Ø¾ Ùµ\ Ø ¹\ ÓÒØÖ Ø\ ÙØ Ø Ø × Ó Ú ÓÙ×ÐÝ ÛÖÓÒ\ Ù× Ø Ó × ÒÓØ Ñ ÒØ ÓÒ Ø½º\ Ï Ú ØÓ ÖÖ Ò Ø Ø Û ÕÙ Ö Ø Ñ Ö Ò ÓÒØÖ Ø\ ÓÖ Ø½ Ø Ò Ø Ò ¬Ø× Ö Ø × Ñ × Û ÕÙ Ö Ø\ Ø Ø½º ËÓ ÓÙÖ Ò ÜØ ØØ ÑÔØ ×\ Ñ Ö\ Ò ´Ø½¸Ø¾µ Ù\ ¹¹ ÏÊÇÆ\ Ø ´ØÖÙÒ Ø Ø½ ´ ÒÝØ Ñ ´Ô Ö\ Ô× Ø¾ Ùµµµ\ ÙØ Ø Ø × ÛÖÓÒ ØÓÓ¸ Ù× Ø Ó × ÒÓØ ÐÐÓÛ Ù× ØÓ ÕÙ Ö\ Ø Ñ Ö Ò ÓÒØÖ Ø Ø Ö Ø½º Ï Ö ÐÐÝ Û ÒØ ØÓ × Ý ÙÒØ Ð\ ؽ ÝÓÙ Ø Ø ×¸ Ò\ Ø Ö Ø½ ÝÓÙ Ø Ø Ø º Ï Ò ÜÔÖ ××\ Ø × Ù× Ò Ø Ø Ò ÓÑ Ò ØÓÖ\ Ñ Ö\ Û\ Ò ´Ø½¸Ø¾µ Ù\ Ø ´ØÖÙÒ Ø Ø½ ÓÔص\ Ö\ ÓÔØ\ ÓÔØ\ ÓÒØÖ\ ÒÝØ Ñ\ Ø\ ´Ô Ö\ Ï Ú Ø ÒØ ÖÑ Ø\ Ò Û Ö Ð Ù× ¸ Ù×\ ÓÑ Ò ØÓÖ Ø Ò × ¬Ò\ ÓÒØÖ Ø ´ ½ Ø Ò ¾µ\ ½¸ ÓØ ÖÛ × ÝÓÙ ÕÙ Ö\ ¿º\ Ø\ Ò\ ÓÔØ\ Ô× Ø¾ Ùµ\ ÓÒØÖ Ø ÓÔØ Ò ´ Ö ØÖ Öݵ Ò Ñ\ Û Ò ØÓ Ù× Ø ØÛ º Ì Ò Û\ × ÓÐÐÓÛ× ÝÓÙ ÕÙ Ö Ø\ ÓÖ ½ ÜÔ Ö × Ø Ò ÝÓÙ ÕÙ Ö\ ¾ ´ÙÒÐ ×× Ø ØÓÓ × ÜÔ Ö µº\ ËÙÑÑ ÖÝ\ Ï Ú ÒÓÛ Ú Ò Ø ­ ÚÓÙÖ Ó ÓÙÖ ÔÔÖÓ ØÓ ¬Ò Ò\ ÓÒØÖ Ø׺ Ì ÓÑ Ò ØÓÖ× Û Ú ¬Ò ×Ó Ö Ö ÒÓØ\ ÒÓÙ ØÓ × Ö ÐÐ Ø ÓÒØÖ Ø× Ø Ø Ö Ø Ú ÐÝ ØÖ ¸\ Ò Û Ö ÜØ Ò Ò Ø × Ø Ò ÓÒ Ó Ò ÛÓÖ º ÀÓÛ Ú Ö¸ ÓÙÖ\ Ñ Ò ÓÒ ÐÙ× ÓÒ× Ö ÙÒ « Ø\ ¯ Ò Ò Ð ÓÒØÖ Ø× Ò\ × Ö Ò ÔÙÖ ÐÝ Ð Ö¹\ Ø Ú Û Ýº\ ¯ Ù Ú Ö ØÝ Ó ÓÒØÖ Ø× Ò\ ×Ö\ Ò Ø ÖÑ×\ Ó ×Ñ ÐÐ ÒÙÑ Ö Ó ÓÑ Ò ØÓÖ׺\ Á ÒØ Ý Ò Ø Ö Ø ÔÖ Ñ Ø Ú ÓÑ Ò ØÓÖ× × ÕÙ Ø\ й\ Ð Ò º ÓÖ Ü ÑÔÐ ¸ Ø Û × Ö Ø ÖÓÙ ØÓ ÒØ Ý Ò\ × Ô Ö Ø Ø ØÛÓ ÓÖÑ× Ó Ó ¸ ÓÖ Ò ÒÝØ Ñ ¸ Ò Ò Ô¹\ ×ÙÐ Ø Ø Ó× Ó × ´ Ò ÒÓØ Ò Ð× µ Ò ØÛÓ ÓÑ Ò ØÓÖ׺\ Î ÐÙ Ø ÓÒ\ Ï ÒÓÛ Ú Ø ÓÙÖ ×ÔÓ× Ð Ö Ð Ò Ù ÓÖ × Ö Ò\ ¬Ò Ò Ð ÓÒØÖ Ø׺ Ì × × ÐÖ Ý Ù× ÙÐ ÓÖ ÓÑÑÙÒ Ø¹\ Ò ØÛ Ò Ô ÓÔÐ Ø Ò Ù×ØÖÝ Ð × ÒÝ ×Ù ÔÖ ×\ ÒÓØ Ø ÓÒº ÙØ Ò Ø ÓÒ¸ ÔÖ × × Ö ÔØ ÓÒ Ð Ò × Ø× Ð\ ØÓ ÙØÓÑ Ø ÔÖÓ ×× Ò Ó Ú Ö ÓÙ× ×ÓÖØ׺ ÖÓÑ × Ò Ð ÓÒ¹\ ØÖ Ø × Ö ÔØ ÓÒ Û Ñ Ý ÓÔ ØÓ Ò Ö Ø Ð Ð Ô Ô ÖÛÓÖ ¸\ Ô ØÙÖ ×¸ × ÙÐ × Ò ÑÓÖ × ×º Ì ÑÓ×Ø ÑÑ Ø\ ÕÙ ×Ø ÓÒ ÓÒ Ñ Ø × ÓÙØ ÓÒØÖ Ø ×¸ ÓÛ Ú Ö¸ Û Ø\ × Ø ÛÓÖØ Ì Ø ×¸ Û Ø ÛÓÙÐ Á Ô Ý ØÓ ÓÛÒ Ø ÓÒØÖ Ø\ ÁØ × ØÓ Ø × ÕÙ ×Ø ÓÒ Ø Ø Û ÒÓÛ ØÙÖÒº\ Ï Û ÐÐ ÜÔÖ ×× ÓÒØÖ Ø Ú ÐÙ Ø ÓÒ Ò ØÛÓ Ð Ý Ö×\ ×ØÖ Ø Ú ÐÙ Ø ÓÒ × Ñ ÒØ ×º Ö×ظ Û Û ÐÐ × ÓÛ ÓÛ\ ØÓ ØÖ Ò×Ð Ø Ò Ö ØÖ ÖÝ ÓÒØÖ Ø¸ ÛÖ ØØ Ò Ò ÓÙÖ\ Ð Ò Ù ¸ ÒØÓ Ú ÐÙ ÔÖÓ ×׸ ØÓ Ø Ö Û Ø\ Ò ÙÐ Ó ÓÔ Ö Ø ÓÒ× ÓÚ Ö Ø × ÔÖÓ ×× ×º Ì ×\ ÔÖÓ ×× × ÓÖÖ ×ÔÓÒ Ö ØÐÝ ØÓ Ø Ñ Ø Ñ Ø Ð\ 285\ Ò ×ØÓ ×Ø Ñ Ò ÖÝ Ù× Ý ¬Ò Ò Ð ÜÔ ÖØ×\ Ê ÚÙÞ Ò ÓÖ¸ ½ ½¸ ÅÙ× Ð Ò ÊÙØ ÓÛ× ¸ ½ º\ ÓÒ Ö Ø ÑÔÐ Ñ ÒØ Ø ÓÒº\ ÔÖÓ ×× × Ò ×ØÖ Ø\ Ñ Ø Ñ Ø Ð Ú ÐÙ º ÌÓ Ñ\ ÓÑÔÙØ Ö Ð ÙÐ Ø\ Û Ø ÔÖÓ ×× × Û Ú ØÓ Ö ÔÖ × ÒØ Ø Ñ ×ÓÑ ÓÛ\ Ø × × Ø ×Ø Ô ÖÓÑ ×ØÖ Ø × Ñ ÒØ × ØÓ ÓÒ¹\ Ö Ø ÑÔÐ Ñ ÒØ Ø ÓÒº Ò ÑÔÐ Ñ ÒØ Ø ÓÒ Û ÐÐ ÓÒ× ×Ø\ Ó ¬Ò Ò Ð ÑÓ Ð¸ ××Ó Ø ØÓ ×ÓÑ × Ö Ø ÒÙ¹\ Ñ Ö Ð Ñ Ø Ó º ØÖ Ñ Ò ÓÙ× ÒÙÑ Ö Ó « Ö ÒØ\ ¬Ò Ò Ð ÑÓ Ð× Ö Ù× ØÓ Ý ÙØ ÓÒÐÝ Ø Ö Ñ¹\ Ð × Ó ÒÙÑ Ö Ð Ñ Ø Ó × Ö Û ÐÝ Ù× Ò Ò Ù×ØÖÝ\ Ô ÖØ Ð « Ö ÒØ Ð ÕÙ Ø ÓÒ× Ï ÐÐÑÓØ Ø Ðº¸ ½ ¿ ¸\ ÅÓÒØ ÖÐÓ ÓÝÐ Ø Ðº¸ ½\ Ò Ð ØØ Ñ Ø Ó ×\ ÓÜ Ø Ðº¸ ½ º\ Ì × ÔÔÖÓ × ×ØÖÓÒ ÐÝ Ö Ñ Ò × ÒØ Ó Ø Û Ý Ò Û\ ÓÑÔ Ð Ö × ØÝÔ ÐÐÝ ×ØÖÙ ØÙÖ º Ì ÔÖÓ Ö Ñ × ¬Ö×Ø ØÖ Ò×¹\ Ð Ø ÒØÓ ÐÓÛ¹Ð Ú Ð ÙØ Ñ Ò ¹ Ò Ô Ò ÒØ ÒØ ÖÑ Ø\ Ð Ò Ù Ñ ÒÝ ÓÔØ Ñ × Ø ÓÒ× Ö ÔÔÐ Ø Ø × Ð Ú Ð Ò\ Ø Ò Ø ÔÖÓ Ö Ñ × ÙÖØ Ö ØÖ Ò×Ð Ø ÒØÓ Ø Ò×ØÖÙ Ø ÓÒ\ × Ø ÓÖ Ø × Ö ÔÖÓ ××ÓÖ ´È ÒØ ÙѸ ËÔ Ö ¸ ÓÖ Û Ø Ú Öµº\ ÁÒ × Ñ Ð Ö Û Ý¸ Û Ò ØÖ Ò× ÓÖÑ ÓÒØÖ Ø ÒØÓ Ú ÐÙ\ ÔÖÓ ×׸ ÔÔÐÝ Ñ Ò Ò ¹ÔÖ × ÖÚ Ò ÓÔØ Ñ × Ò ØÖ Ò× ÓÖÑ ¹\ Ø ÓÒ× ØÓ Ø × ÒØ ÖÑ Ø Ö ÔÖ × ÒØ Ø ÓÒ¸ ÓÖ ÓÑÔÙØ Ò\ Ú ÐÙ ÓÖ Ø ÔÖÓ ×׺ Ì × Ð ØØ Ö ×Ø Ô Ò ÓÒ ÒØ Ö¹\ ÔÖ Ø Ø Ú Ðݸ ÓÖ ÓÒ ÓÙÐ Ñ Ò Ò Ö Ø Ò ×Ô Ð × Ó\ Ø Ø¸ Û Ò ÖÙÒ¸ ÛÓÙÐ Ô Ö ÓÖÑ Ø Ú ÐÙ Ø ÓÒº\ ÁÒ ¸ ÓÙÖ ×ØÖ Ø × Ñ ÒØ × × ÖÚ × × ÓÙÖ Ö Ö Ò ÑÓ Ð\ ÓÖ Û Ø Ø Ñ Ò× ÓÖ ØÛÓ ÓÒØÖ Ø× ØÓ Ø × Ñ º ÓÖ\ Ü ÑÔÐ ¸ Ö Ö ØÛÓ Ð Ñ×\ Ú\ ´ ½\ Ø ´ Ø µ\ ÓÖ\ ¾µ\ Ø\ Ú\ ½\ ÓÖ\ Ú\ ¾\ ÁÒ Ø¸ Ø ¬Ö×Ø × ØÖÙ ¸ Ò Ø × ÓÒ × ÒÓظ ÙØ ÓÛ\ Ó Û ÒÓÛ ÓÖ ×ÙÖ Ò×Û Ö Û ÓÑÔ Ö Ø Ö Ú ÐÙ Ø ÓÒ\ × Ñ ÒØ ×¸ × Û × ÐÐ × Ò Ë Ø ÓÒ º º\ º½ Î ÐÙ ÔÖÓ ×× ×\ ¬Ò Ø ÓÒ ½ ´Î ÐÙ ÔÖÓ ×׺µ Ú ÐÙ ÔÖÓ ×׸ Ô¸ ÓÚ Ö\ ØÝÔ ¸ × Ô ÖØ Ð ÙÒ Ø ÓÒ ÖÓÑ Ø Ñ ØÓ Ö Ò ÓÑ Ú Ö Ð\ Ó ØÝÔ º Ì Ö Ò ÓÑ Ú Ö Ð Ô´Øµ × Ö × Ø ÔÓ×× Ð\ Ú ÐÙ × ÓÖ Ô Ø Ø Ñ Øº Ï ÛÖ Ø Ø Ò ÓÖÑ Ð ØÝÔ ¬Ò Ø ÓÒ\ ÈÊ\ Ì\ ¸\ ÊÎ\ ´Ï Ù× Ð Ö Ô ÓÒØ ÓÖ ØÝÔ × Ø Ø × Ñ ÒØ Ð Ú Ðºµ ¹\ Ù× Û Ò ØÓ ÛÓÖ Û Ø « Ö ÒØ ÔÖÓ ×× × ÙØ ¬Ò ÓÒ\ Ø × Ñ ÙÒ ÖÐÝ Ò ×Ô ´¬ÐØÖ Ø ÓÒµ¸ ×Ù Ú ÐÙ ÔÖÓ¹\ ×× × ÑÓÖ ÔÖ × ÐÝ × Ö\ × Ò ÔØ ×ØÓ ×Ø ÔÖÓ¹\ ×׸ Ú Ò ¬ÐØÖ Ø ÓÒº ËÙ ÔÖÓ ×× × ÓÑ ÕÙ ÔÔ Û Ø\ ×ÓÔ ×Ø Ø Ñ Ø Ñ Ø Ð Ø ÓÖÝ Ê ÚÙÞ Ò ÓÖ¸ ½ ½¸\ ÅÙ× Ð Ò ÊÙØ ÓÛ× ¸ ½ ¸ ÙØ Ø × ÙÒÐ ÐÝ ØÓ\ ¹\ Ñ Ð Ö ØÓ ÓÑÔÙØ Ö × ÒØ ×Ø׸ ×Ó Û ÓÒÐÝ ÔÖ × ÒØ Ò ÓÖÑ Ð¸\ ÒØÙ Ø Ú ÒÓØ ÓÒ׺ Ï Ù×Ù ÐÐÝ Ö Ú Ø Ú ÐÙ ÔÖÓ ××\ ØÓ × ÑÔÐÝ ÔÖÓ ×× º\ Û ÖÒ ¸ Ø ÓÙ\ ÔÖÓ ×× Ò\ Ú Ö Ð Ñ Ò ÕÙ Ø « Ö ÒØ Ø Ò × ØÓ Ø Ö ÓÒÚ ÒØ ÓÒ Ð\ ÓÑÔÙØ Ö × Ò Ñ Ò Ò ×º\ ÓØ\ ÓÒØÖ Ø× Ò Ó × ÖÚ Ð × Ö ÑÓ Ð\ Ì ÙÒ ÖÐÝ Ò ÒØÙ Ø ÓÒ × × ÓÐÐÓÛ×\ × ÔÖÓ ×× ×º\ ÓÒØÖ\ ´ ½µ\ ´ ¾µ\ ´ ¿µ\ ´\ ´\ ´\ ´\ ´\ ´\ ´\ µ\ µ\ µ\ µ\ µ\ µ\ ½¼µ\ ½\ Ú\ Ò\ ½\ Ø\ ¾\ ÓÖ\ Ó ×\ ¾\ Ð\ Þ ÖÓ\ ØÖÙÒ Ø Ì\ ½ Ø Ò\ ¾\ ÓÒ\ ÒÝØ Ñ\ ¾\ Ø\ ÎÐ\ ÎÐ\ ÙÖ\ ؾ\ ÓÖ\ Ó½ Ó¾\ ѽ Ѿ\ ½\ ½\ ¾\ ·\ ´\ ½\ ¾\ ½\ ¾\ Ü\ ´ ¾µ\ ´\ ´\ À´\ ×Ò ÐÐ\ µ\ À´\ µ\ ÓÒ\ ÓÒ\ ÓÒ\ ´ ´ µµµ\ µ\ À\ À\ À\ Ø\ À\ Ø\ Ø\ À\ Ø\ Ø\ À\ Ø\ Ø\ À\ Ø\ Ø\ À\ Ø\ Ø\ À\ Ø\ Ø\ Ì\ Ø\ Ø\ À\ Ø\ Ø\ À\ ´\ ´\ ´\ ´\ ´\ ´\ µ\ µ\ µ\ µ\ µ\ µ\ ½\ ½\ ½\ ½\ ½\ ½\ Ø\ À\ Ø\ À\ Ø\ À\ Ø\ À\ Ø\ À\ Ø\ À\ ´\ ´\ ´\ ´\ ´\ ´\ µ\ µ\ µ\ µ\ µ\ µ\ ¾\ ¾\ ¾\ ¾\ ¾\ ¾\ ´ ½µ\ ´ ½µ\ ´µ ½\ ´µ ½\ × Ø Û ÓÐ ÔÓ ÒØ Ú ÖÝØ Ò ×Ó Ö × Ò Ð Ò ÙÔ ØÓ\ Ø × ÔÓ ÒØ ÓÙÖ ÒØ Ö × Ò × ÓÖ Ò × ÖÓÙÒ Ø × Ö\ ØÓ Ú × ÑÔÐ ¸ ØÖ Ø Ð ¸ ÑÓ ÙÐ Ö¸ Ú ÐÙ Ø ÓÒ × Ñ ÒØ ×º\ Ä Ø Ù× ÐÓÓ Ø ÙÖ Ò ÑÓÖ Ø Ðº\ ´×µ\ ´ ÎÓµ\ ¾´ Î Ó½ Î Ó¾ µ\ ºººÓÑ ØØ\ Ì ÙÒ Ø ÓÒ\ Ø ×\ ÔÖÓ ×× × Ö Ò ¸ ÓÖ\ ÙÖÖ Ò Ý Ó ÕÙ Ö Ò\ Ø\ Ø\ Ø\ Ú ÐÙ Ø ÓÒ × Ñ ÒØ × ÓÖ Ó × ÖÚ Ð ×\ ¯ Ì Ú ÐÙ ÔÖÓ ×× ÓÖ Ò Ó × ÖÚ Ð Ó Ñ Ô× Ø Ñ ØÓ\ Ø\ Ö Ò ÓÑ Ú Ö Ð × Ö Ò Ø ÔÓ×× Ð Ú ÐÙ × Ó Ó Ø º\ ÓÖ Ü ÑÔÐ ¸ Ø Ú ÐÙ ÔÖÓ ×× ÓÖ Ø Ó × ÖÚ Ð Á Å\ ×ØÓ ÔÖ Ò ÍË° × ´ØÓØ Ðµ ÙÒ Ø ÓÒ Ø Ø Ñ Ô×\ Ø Ñ ØÓ Ö Ð¹Ú ÐÙ Ö Ò ÓÑ Ú Ö Ð Ø Ø × Ö ×\ Ø ÔÓ×× Ð Ú ÐÙ × Ó Á Å³× ×ØÓ ÔÖ Ò ÍË°º\ ¯ Ì Ú ÐÙ ÔÖÓ ×× ÓÖ ÓÒØÖ Ø ¸ ÜÔÖ ×× Ò ÙÖ¹\ Ö Ò Ý × ´Ô ÖØ Ðµ ÙÒ Ø ÓÒ ÖÓÑ Ø Ñ ¸ ¸ ØÓ\ Ö Ò ÓÑ Ú Ö Ð × Ö Ò Ø Ú ÐÙ ¸ Ò ÙÖÖ Ò Ý ¸\ Ó ÕÙ Ö Ò Ø ÓÒØÖ Ø Ø Ø Ñ º\ Ì × ÒØÙ Ø ÓÒ× Ö ×× ÒØ Ð ØÓ ÙÒ Ö×Ø Ò Ø Ö ×Ø Ó Ø\ Ô Ô Öº\ Ú ÐÙ ÔÖÓ ×× ×¸ Ò Ò Ö Ð¸ Ô ÖØ Ð ÙÒ Ø ÓÒ Ó Ø Ñ\ Ø Ø ×¸ Ø Ñ Ý ÒÓØ\ ¬Ò ÓÖ ÐÐ Ú ÐÙ × Ó Ø× Ö ÙÑ Òغ\ Ç × ÖÚ Ð × Ö ¬Ò ÓÖ ÐÐ Ø Ñ ¸ Ò ×Ó Ó ÒÓØ Ò Ø ×\ ­ Ü Ð ØÝ Ø Ý ¬Ò ØÓØ Ð ÔÖÓ ×× ×º ÀÓÛ Ú Ö¸ ÓÒØÖ Ø×\ Ö ÒÓØ ¬Ò ÓÖ ÐÐ Ø Ñ Ø Ú ÐÙ ÔÖÓ ×× ÓÖ ÓÒØÖ Ø\ × ÙÒ ¬Ò ÓÖ Ø Ñ × ÝÓÒ Ø× ÓÖ ÞÓÒº\ Ø\ Ø\ Ø\ º¾\ µ\ Ø\ ÓÑÔÓ× Ø ÓÒ Ð Ú ÐÙ Ø ÓÒ × Ñ ÒØ × ÓÖ ÓÒØÖ Ø×\ Ø Ñ\ Ð\ ¾\ ÎÓ £\ ü\ ÈÊ\ ôܵ\ Ð\ ÓÒ\ ÓÒ\ ÓÒ\ ÓÒ\ ÓÒ\ ÓÒ\ ¾\ ½\ Ñ Ü\ ×\ ÙÖ\ Î Ç×\ Î ÓÒ×Ø Ü\ ÎØÑ ×\ ÎÐ Ø Ó\ ÈÊ Ê\  \ ÖÓÑ ÓÒØÖ Ø× ØÓ ÔÖÓ ×× ×\ ÀÓÛ¸ Ø Ò¸ Ö Û ØÓ Ó ÖÓÑ ÓÒØÖ Ø× Ò Ó × ÖÚ Ð × ØÓ\ ÔÖÓ ×× × ÙÖ Ú × Ø ÓÑÔÐ Ø ØÖ Ò×Ð Ø ÓÒ ÖÓÑ ÓÒ¹\ ØÖ Ø× ØÓ ÔÖÓ ×× ×¸ Û Ð ÙÖ Ó × Ø × Ñ ÓÖ Ó × ÖÚ¹\ Р׺ Ì × ÙÖ × Ó ÒÓØ ÐÓÓ Ú ÖÝ ÑÔÖ ×× Ú ¸ ÙØ Ø Ø\ 286\ ÓÒØÖ Ø¸ ¸ Ò Ñ Ô× Ø ØÓ\ ÑÓÑ ÒØ Ò Ø Ñ ¸ Ø Ú ÐÙ Ò\ Ø Ø Ø ÑÓÑ Òغ ÓÖ Ü ÑÔÐ ¸\ ÕÙ Ø ÓÒ ÓÖ Ú ´ ½µ × Ý× Ø Ø Ø Ú ÐÙ ÔÖÓ ×× ÓÖ\ × × ÑÔÐÝ Ø Ò Ø ÓÒ Ó\ ¸ Ø Ú ÐÙ ÔÖÓ ×× ÓÖ\ º\ Ï Ø Ó × Ò Ø ÓÒ Ñ Ò Ð ÖÐݸ Û Ò ÒÓØ\ ÓÒÐÝ Ø ÒÓØ ÓÒ Ó Ú ÐÙ ÔÖÓ ×׸ ÙØ Ð×Ó ÓÐÐ Ø ÓÒ Ó\ ÓÔ Ö Ø ÓÒ× ÓÚ Ö Ø × ÔÖÓ ×× ×º Æ Ø Ò ÔÖÓ ×× × × ÓÒ\ ×Ù ÓÔ Ö Ø ÓÒ Ø Ò Ø ÓÒ Ó ÔÖÓ ×× × × ÑÔÐÝ ÙÒ ¹\ Ø ÓÒ Ø Ø Ñ Ô×\ Ø Ñ ¸ ¸ ØÓ Ø Ò Ø ÓÒ Ó ´ µº ÁØ × Ò\ ×ÓÐÙØ ÐÝ ×ØÖ Ø ÓÖÛ Ö Ü Ö × ØÓ Ð Ø ÐÐ ÓÔ Ö Ø ÓÒ×\ ÓÒ Ö Ð ÒÙÑ Ö× ØÓ ÓÔ Ö Ø ÔÓ ÒØ¹Û × ÓÒ ÔÖÓ ×× ×º ´Ì ׸\ Ò ØÙÖÒ¸ Ö ÕÙ Ö × Ù× ØÓ Ò Ø Ö Ò ÓÑ Ú Ö Ð ¸ ÙØ Ó Ò\ ×Ó × × ÑÔÐ ºµ Ï Û ÐÐ Ò\ ÒÙÑ Ö Ó ÓØ Ö ÓÔ Ö Ø ÓÒ×\ ÓÚ Ö ÔÖÓ ×× ×º Ì Ý Ö ×ÙÑÑ Ö × Ò ÙÖ ¸ ÙØ Û\ Û ÐÐ ÒØÖÓ Ù\ ÓÒ × Û Ò Øº\ Æ Üظ ÓÒ× Ö ÕÙ Ø ÓÒ ´ ¾µº Ì Ò Ó ØÛÓ ÓÒØÖ Ø× ×\ ÑÓ Ð Ý Ø Ò Ø ×ÙÑ Ó Ø Ö ØÛÓ Ú ÐÙ ÔÖÓ ×× × Û\ Ò Ø Ö ÕÙ Ø ÓÒ× ØÓ Ú Ø Ú ÐÙ Ó\ Û Ò × Ö¹\ Ð Ö Ø Ò Ø ÓÖ ÞÓÒ Ó ÓØ ÓÒØÖ Ø׸ Û Ò Ø × ÖÐ Ö\ Ø Ò ÓÒ ÙØ Ð Ø Ö Ø Ò Ø ÓØ Ö¸ Ò Ú Ú Ö× º ÁÒ Ø\ ÓÙÖØ ×\ º º ÓÖ Ø Ñ × ÝÓÒ ÓØ ÓÖ ÞÓÒ× Ø\ Ú ÐÙ Ø ÓÒ ÙÒ Ø ÓÒ × × ÑÔÐÝ ÙÒ ¬Ò º Ï Ù× Ø ÒÓØ ¹\ Ø ÓÒ\ ØÓ Ò Ø Ø Ø Ø ÓÖÖ ×ÔÓÒ Ò\ ÕÙ Ø ÓÒ ÔÔÐ × ÓÖ ÓÒÐÝ Ô ÖØ Ó Ø ´Ø Ñ µ ÓÑ Ò Ó\ º\ ÙÖ ×Ô ¬ × ÓÖÑ ÐÐÝ ÓÛ ØÓ Ð ÙÐ Ø Ø ÓÖ ÞÓÒ À´ µ\ Ó ÓÒØÖ Ø º ÁØ Ö ØÙÖÒ× ½ × Ø ÓÖ ÞÓÒ Ó ÓÒØÖ Ø\ Û Ø Ò Ò¬Ò Ø ÓÖ ÞÓÒ Û ÜØ Ò ¸ ¸ Ò\ ÒØ\ Ó Ú ÓÙ× Û Ý ØÓ ×Ù Ò¬Ò Ø ×º\ ÕÙ Ø ÓÒ ´ ¿µ Ó × Ø × Ñ ÓÖ Ø ÓÖ ÓÑ Ò ØÓÖº Ò¸\ Ý × Ò¸ Ø ÓÑ Ò ØÓÖ Ñ Ô× ØÓ × ÑÔÐ Ñ Ø Ñ Ø Ð\ ÓÔ Ö Ø ÓÒ¸ º ÇÒ Ñ Ø ÛÓÒ Ö Û Ý Û ¬Ò Ú ÐÙ\ ÔÖÓ ×× ØÓ Ô ÖØ Ð ÙÒ Ø ÓÒ¸ Ö Ø Ö Ø Ò ØÓØ Ð ÙÒ Ø ÓÒ\ Ø Ø × Þ ÖÓ ÝÓÒ Ø× ÓÖ ÞÓÒº ÕÙ Ø ÓÒ ´ ¿µ Ú × Ø\ Ú\ Ô\ Ø\ Ô Ø\ Ø\ ÓÒ Ø\ Ø\ Ñ Ò\ Ñ Ü\ Ñ Ü\ Ì × ÔÖ Ñ Ø Ú × Ö Ò Ô Ò ÒØ Ó Ø\ ÑÓ Ð\ Ã\ ÈÊ\ Ì ÔÖÓ ×× Ã´ µ × ¬Ò\ Ú ÐÙ º\ Ü\ Ì\ À\ ÈÊ Ê\ ×\ Ø\ Ð\ Ø\ ×\ ×\ ÙÖ\ º¿\ ÊÎ Ê ÈÊ Ê\ ×\ Ì\ Ì\ Ü\ ½\ Ü\ ×Ò ÐÐ\ ½\ ÈÊ Ê\ Ì\ ÈÊ Ê\ ÙÖ\ Ì\ ÅÓ Ð ÔÖ Ñ Ø Ú ×\ À\ Ò\ À\ À\ À\ À\ ¬Ò Ø ÓÒ Ó ÓÖ ÞÓÒ\ ×× × ÑÔÐÝ Ý Ð Ñ Ø Ò Ø×\ Ø Ø Ø Ñ Ö ÙÑ ÒØ Ó\ Ø º Ì Ø Ò ÓÑ Ò ØÓÖ\ ¬Ö×Ø ÔÖÓ ×× Ò Ø× ÓÑ Ò¸\ Ö Ø ×\ Ì ØÓÔ ÖÓÙÔ Ó ÓÔ Ö Ø ÓÒ× ÓÚ Ö Ú ÐÙ ÔÖÓ ×× × ¬Ò Ò\ ÙÖ Ö Ò Ö ß Ø Ý Ö ÙÒÖ Ð Ø ØÓ Ô ÖØ ÙÐ Ö\ ¬Ò Ò Ð ÑÓ Ðº ÙØ Û Ò³Ø Ø Û Ý Û Ø Ø Ø ÓÖ Ú Öº\ Ì ÐÓÛ Ö ÖÓÙÔ Ó ÔÖ Ñ Ø Ú × Ò Ø × Ñ ¬ ÙÖ Ö ×Ô ¬\ ØÓ ¬Ò Ò Ð ÓÒØÖ Ø׸ Ò Ø Ý Ö Ù× Ò Ø Ö Ñ Ò Ò\ ÕÙ Ø ÓÒ× Ó ÙÖ º\ ÓÒ× Ö ÕÙ Ø ÓÒ ´ µ Ò ÙÖ º ÁØ × Ý× Ø Ø ØÓ Ø\ Ø Ú ÐÙ ÔÖÓ ×× ÓÖ ÓÒ ÙÒ Ø Ó ÙÖÖ Ò Ý ¾¸ ÜÔÖ ×× Ò\ ÙÖÖ Ò Ý ¸ × × ÑÔÐÝ Ø Ü Ò ¹Ö Ø ÔÖÓ ×× ØÛ Ò ¾\ Ò Ò Ñ ÐÝ\ ´ ¾µ ´ ÙÖ µº Ï Ö Ó Û Ø Ø ×\ Ü Ò ¹Ö Ø ÔÖÓ ×× × ÖÓÑ Ï Ò Û ÓÑ ØÓ ÑÔÐ Ñ Ò¹\ Ø Ø ÓÒ¸ Û Û ÐÐ Ò ×ÓÑ ´ÒÙÑ Ö Ðµ ××ÙÑÔØ ÓÒ ÓÙØ Ù¹\ ØÙÖ ÚÓÐÙØ ÓÒ Ó Ü Ò Ö Ø ×¸ ÙØ ÓÖ ÒÓÛ Ø ×ÙÆ × ØÓ\ ØÖ Ø Ø Ü Ò Ö Ø ÔÖÓ ×× × × ÔÖ Ñ Ø Ú ×º ÀÓÛ Ú Ö¸\ Ø Ö Ö ÑÔÓÖØ ÒØ Ö Ð Ø ÓÒ× Ô× ØÛ Ò Ø Ñ ÆÓØ ÐÝ\ ´ ½µ\ ´µ\ ô½µ\ ´ ¾µ\ ¾´ µ £\ ¿´ µ\ ¿´ µ\ Ì Ø ×¸ Ü Ò ¹Ö Ø ÔÖÓ ×× ØÛ Ò ÙÖÖ Ò Ý Ò Ø¹\ × Ð × Ú ÖÝÛ Ö ÙÒ ØÝ Ò Ø Ñ × ÒÓ « Ö Ò Û Ø Ö\ Û ÓÒÚ ÖØ\ Ö ØÐÝ ÒØÓ ÓÖ Û Ø Ö Û Ó Ú ×ÓÑ\ ÒØ ÖÑ Ø ÙÖÖ Ò Ý º Ì × Ö Ô ÖØ ÙÐ Ö × × Ó ÒÓ¹\ Ö ØÖ\ ÓÒ Ø ÓÒ× º\ ÓÙ Ñ Ø Ð×Ó ÛÓÒ Ö Û Ø × ÓÑ Ó Ø\ ¹\ Ó« Ö ×ÔÖ Ò ÓÙÒØ Ö Ý Ú ÖÝ ØÖ Ú ÐÐ Ö Ø Ø ÓÖ Ò¹\ Ü Ò ÓÙÒØ Öº ÁÒ ÓÖ Ö ØÓ Ô Ø Ò × Ø Ò ÐÐÝ\ ØÖ Ø Ð ¸ ¬Ò Ò Ø ÓÖÝ ××ÙÑ × ÑÓ×Ø Ó Ø Ø Ñ Ø ¹\ × Ò Ó ÒÝ ×ÔÖ × ÓÒ ØÝÔ ÐÐÝ ¬Ö×Ø ÓÑÔÙØ ×\ Ö\ ÔÖ ¸ ÓÖ ¬Ò ÐÐÝ Ò ÔÖÓ¬Ø Ñ Ö Òº ÁØ × Ø Ð ØØ Ö\ Û\ Ú × Ö × ØÓ Ø ×ÔÖ ¸ ÙØ ÓÙÖ ÑÓ Ð Ò ÔÔÐ × ÓÒÐÝ\ ØÓ Ø ÓÖÑ Öº\ Ü\ Ú½\ Ø\ Ø\ Ú\ Ü\ Ú\ Ü\ Ü\ Ò×Û Ö ÝÓÒ ½³× ÓÖ ÞÓÒ ÓÒ × ÓÖ ØÓ ÓÓ× ¾º ÁÒ\ Ò Ö Ð¸ ´ ¼µ\ ÕÙ Ø ÓÒ ´ µ × Ò Ò × ÑÔÐ º ÌÓ × Ð ÓÒØÖ Ø Ý\ Ø Ñ ¹Ú ÖÝ Ò Ó × ÖÚ Ð Ó¸ Û × ÑÔÐÝ ÑÙÐØ ÔÐÝ Ø Ú ÐÙ\ ÔÖÓ ×× ÓÖ Ø ÓÒØÖ Ø\ Ý Ø Ú ÐÙ ÔÖÓ ×× ÓÖ Ø Ó ¹\ × ÖÚ Ð Ö Ñ Ñ Ö Ø Ø Û Ö ÑÓ Ð Ò\ Ó × ÖÚ Ð\ Ý Ú ÐÙ ÔÖÓ ×׺ Ï ÜÔÖ ×× Ø Ð ØØ Ö × Î Ó ¸ ¬Ò Ò\ ÙÖ Ò Ú ÖÝ × Ñ Ð Ö × ÓÒ ØÓ º Ø ¬Ö×Ø Ø × × Ñ×\ Ó ÓÛ Ò Û × Ð ÔÓ ÒØ¹Û × ¸ Û Ò Ø × Ð Ò ÔÔÐ ×\ ØÓ ÙØÙÖ Ô ÝÑ ÒØ× Ò Ö ÔØ× Ò Ê ÐÐ Ø Ø Ø Ú ÐÙ\ ÔÖÓ ×× ÓÖ Ø Ø Ñ Ú × Ø Ú ÐÙ Ó ÕÙ Ö Ò Ø º\ Ï Ðи Ø × Ú ÐÙ × Ø Ò Ø Ú ÐÙ Ó ÕÙ Ö Ò Ø × Ñ\ ÓÒØÖ Ø Û Ø ÐÐ Ô ÝÑ ÒØ× Ò Ö ÔØ× × Ð Ý × Ö¹\ Ø ÒÐÝ £ º ÇÙÖ ¬Ò Ø ÓÒ Ó × Ð Ò ÙÖ ¾ Û × Ò Ø\ Ö Ú Ò Ö ØÐÝ Ý ÓÙÖ × Ö ØÓ ÜÔÖ ×× Ø× × Ñ ÒØ × Ò\ × ÑÔÐ Û Ýº Ë ÑÔÐ × Ñ ÒØ × Ú × Ö × ØÓ × ÑÔÐ Ð Ö\ ÔÖÓÔ ÖØ × ´Ë Ø ÓÒ º µº\ Ì ÕÙ Ø ÓÒ× ÓÖ Þ ÖÓ¸ ØÖÙÒ Ø ¸ Ò Ø Ò Ö Ð×Ó ×ݺ\ ÕÙ Ø ÓÒ ´ µ Ð Ú Ö× Ø ÓÒ×Ø ÒØ Þ ÖÓ ÔÖÓ ×׸ Û Ð\ Ñ Ü Ú½\ À\ ´ ½µ ´ ¾µµ\ ´ ½µ ´ ¾µµ\ ´ ½µ ´ ¾µµ\ ´ µµ\ Ü\ Ì ÔÖ Ñ Ø Ú\ Ð ÙÐ Ø × Ø ËÒ ÐÐ ÒÚ ¹\ ÐÓÔ Ó Ø× Ö ÙÑ Òغ ÁØ Ù× × Ø ÔÖÓ Ð ØÝ Ñ ¹\ ×ÙÖ ××Ó Ø Û Ø Ø ÙÖÖ Ò Ý º\ ×Ò ÐÐ\ À\ ÕÙ Ø ÓÒ ´ µ ØÖÙÒ Ø × ÔÖÓ\ ÓÑ Ò Ö Ñ Ñ Ö¸ Ò¸ Ø\ ÔÖÓ ×× ÑÓ Ð× Ø ÕÙ × Ø ÓÒ\ Ó ÕÙ Ø ÓÒ ´ µ Ú × Ð Ø\ Ò Ð× Û Ö Ð Ø × ÓÒ º\ Ì ÔÖ Ñ Ø Ú\ Ñ Ô× Ö Ð¹Ú ÐÙ Ö Ò ÓÑ\ Ú Ö Ð Ø Ø ¸ ÜÔÖ ×× Ò ÙÖÖ Ò Ý ¸ ØÓ Ø×\ Ö ÕÙ Ú Ð ÒØ ×ØÓ ×Ø Ú ÐÙ ÔÖÓ ×× Ò Ø\ × Ñ ÙÖÖ Ò Ý º\ ´ ¾µ ÈÊ Ê\ ´ ¾µ × Ö Ð¹Ú ÐÙ ÔÖÓ ×× Ö ÔÖ × ÒØ Ò\ Ø Ú ÐÙ Ó ÓÒ ÙÒ Ø Ó ¾¸ ÜÔÖ ×× Ò ÙÖÖ Ò Ý\ ½º Ì × × × ÑÔÐÝ Ø ÔÖÓ ×× Ö ÔÖ × ÒØ Ò Ø\ ÕÙÓØ Ü Ò Ö Ø ØÛ Ò Ø ÙÖÖ Ò ×º\ Ì\ Ñ Ò\ À\ Ø\ Ì\ Ñ Ü À\ À\ Ø\ Ð\ Ñ Ü À\ À\ Ø\ ´\ ´\ ´\ ´Ø\ ´µ\ ´µ\ ´µ\ Ñ Ü À\ À\ À\ ×\ ½\ ½\ À\ Ì ÔÖÓ ×× ´ µ × ¬Ò Ø ÐÐ Ø Ñ × ØÓ\ Ø ÒÙÑ Ö Ó Ý× ØÛ Ò Ò º ÁØ × ÔÓ× Ø Ú\ ×Ð Ø ÖØ Ò º\ ´\ µ ÈÊ ÈÊ\ ÔÔÐÝ Ø ×Ô ¬ ÙÒ Ø ÓÒ ØÓ Ø Ö ÙÑ ÒØ ÔÖÓ¹\ ×× ÔÓ ÒØ¹Û × º Ì Ö ×ÙÐØ × ¬Ò ÓÒÐÝ Û Ö\ Ø Ö ÙÑ ÒØ× ÔÖÓ ×× × ¬Ò º\ ¾ ´\ µ ÈÊ ÈÊ ÈÊ\ ÓÑ Ò Ø ØÛÓ Ö ÙÑ ÒØ ÔÖÓ ×× × ÔÓ ÒØ¹Û ×\ Û Ø Ø ×Ô ¬ ÙÒ Ø ÓÒº Ì Ö ×ÙÐØ × ¬Ò\ ÓÒÐÝ Û Ö ÓØ Ö ÙÑ ÒØ× Ö ¬Ò º\ Ì × ÔÖ Ñ Ø Ú × Ö Ô Ò ÒØ ÓÒ Ø Ô ÖØ ÙÐ Ö\ ÑÓ Ð\ Ø Ñ\ ´Þ ÖÓµ\ ´ÓÒ µ\ ´ ½ Ò ¾µ\ ´ ½ ÓÖ ¾µ\ ´ ½ Ø Ò ¾µ\ ´ØÖÙÒ Ø Ø µ\ ´× Ð Ó µ\ ´ ÒÝØ Ñ µ\ ´ Ø µ\ À\ À\ Ø ÐÐ Ø Ñ × ØÓ Ú\ Ü\ Ø Ñ\ Ú ÐÙ Ø ÓÒ\ Ü\ 287\ Ü\ ½\ ½\ ¾\ Ü\ ½\ ¿\ ¾\ ØÖ\ ÓÒ Ø ÓÒ × ÓÒ Ø Ø Ü ÐÙ × Ö × ¹ Ö ÓÔÔÓÖ¹\ ÖÒ ÑÓÒ Ýº Á ×Ù\ Ò ÓÔÔÓÖØÙÒ ØÝ Û Ö ØÓ Ü ×ظ Ú ÖÝÓÒ\ ظ Ò Ø ÓÔÔÓÖØÙÒ ØÝ ÛÓÙÐ ×ÓÓÒ Ó Û Ý\ ÒÓ¹ Ö\ ØÙÒ ØÝ ØÓ\ ÛÓÙÐ Ø\ º\ º ËÒ Û Ò Ü Ö\ × Ø ÐÐ Ø Ñ ×\ ¯\ ´ ´ µµº Ë Ò Û\ Ø ÓÔØ ÓÒ¸ ´ ÒÝØ Ñ µ ×\ ÓÒØÖ Ø ÕÙ Ö Ð Ø Öº\ ¯\ ÁÒØ Ö ×Ø Ö Ø ×\ Æ Üظ ÓÒ× Ö ÕÙ Ø ÓÒ ´ µº Ì Ø ÓÑ Ò ØÓÖ ÕÙ Ö ×\ Ø ÙÒ ÖÐÝ Ò ÓÒØÖ Ø Ø Ø× ÓÖ ÞÓÒ¸ ´ µº ´ Ø ×\ ÙÒ ¬Ò\ × Ò Ò¬Ò Ø ÓÖ ÞÓÒºµ ÁØ Ó × ÒÓØ Ñ ØØ Ö\ Û Ø ³× Ú ÐÙ Ñ Ø Ø ÖÐ Ö Ø Ñ × ÐÐ Ø Ø Ñ ØØ Ö× ×\ ³× Ú ÐÙ Ø Ø× ÓÖ ÞÓÒ¸ Û × × Ö\ Ý Ø Ö Ò ÓÑ\ ÚÖ Ð\ ´ ´ µµº Ï Ø × Ø Ú ÐÙ Ó Ø Ø ÖÐ Ö\ Ø Ñ × ÌÓ Ò×Û Ö Ø Ø ÕÙ ×Ø ÓÒ Û Ò\ ×Ô ¬ Ø ÓÒ Ó\ ÙØÙÖ ÚÓÐÙØ ÓÒ Ó ÒØ Ö ×Ø Ö Ø ×¸ Ø Ø × Ò ÒØ Ö ×Ø Ö Ø\ ÑÓ Ðº\ Ä Ø³× ÓÒ× Ö ÓÒ Ö Ø Ü ÑÔÐ\ Ø ´×\ Ð Ã ½¼ ´ØÖÙÒ\ Ø\ Ø ´ÓÒ\ ȵµµ\ Û Ö Ø × ÓÒ Ý Ö ÖÓÑ ØÓ Ýº Ì ÙÒ ÖÐÝ Ò ÓÒØÖ Ø\ ´× Ð Ã ½¼ ´ØÖÙÒ Ø Ø ´ÓÒ\ ȵµµ Ô Ý× ÓÙØ °½¼ ѹ\ Ñ Ø ÐÝ Ø × ÕÙ Ö Ø Ø ÕÙ Ö × Ø Ø Ø× ÓÖ ÞÓÒ¸\ Ò Ñ ÐÝ Øº ËÓ Ø Ú ÐÙ Ó Ø Ø × Ù×Ø °½¼º ÓÖ Ø¸\ Ø ÓÙ ¸ Ø × ÒÓØ ÛÓÖØ × ÑÙ º Á Á ÜÔ Ø ÒØ Ö ×Ø Ö Ø ×\ ØÓ Ú Ö ´× ݵ ½¼± ÓÚ Ö Ø Ò ÜØ Ý Ö¸ Ö ÔÖ ÓÖ\ ØÓ Ý ÛÓÙÐ\ ÓÙØ ° º\ ÂÙ×Ø × Ø ÔÖ Ñ Ø Ú\ Ò Ô×ÙÐ Ø × ××ÙÑÔØ ÓÒ× ÓÙØ\ ÙØÙÖ Ü Ò Ö Ø ÚÓÐÙØ ÓÒ¸ ×Ó Ø ÔÖ Ñ Ø Ú\ Ò¹\ Ô×ÙÐ Ø × Ò ÒØ Ö ×Ø Ö Ø ÚÓÐÙØ ÓÒ ´ ÙÖ µº ÁØ Ñ Ô×\ Ö Ò ÓÑ Ú Ö Ð\ × Ö Ò Ô ÝÓÙظ Ò Ô ÖØ ÙÐ Ö ÙÖ¹\ Ö Ò Ý¸ Ø Ô ÖØ ÙÐ Ö Ø ¸ ÒØÓ ÔÖÓ ×× × Ö Ò Ø\ Ú ÐÙ Ó Ø Ø Ô ÝÓÙØ Ø ÖÐ Ö Ø ×¸ Ò Ø × Ñ ÙÖÖ Ò Ýº\ Ä\ ¸ Ø Ö Ö ×ÓÑ ÔÖÓÔ ÖØ × Ø Ø ÒÝ ÒÓ¹ Ö ØÖ\ ¬Ò Ò Ð ÑÓ Ð × ÓÙÐ × Ø × Ýº ÆÓØ ÐÝ\ ´ ¿µ\ ´ µ´ µ\ ´ µ\ ´µ\ ½´ µ £\ ½ ´ µ´ µ £ µ\ ½´\ ´ µ\ ´ ·¾ µ\ ´ µ· ´ µ\ Ì ¬Ö×Ø ÕÙ Ø ÓÒ × Ý× Ø Ø × ÓÙÐ Ø\ ÒØ ØÝ Ø Ø×\ ÓÖ ÞÓÒ Ø × ÓÒ × Ý× Ø Ø Ø ÒØ Ö ×Ø Ö Ø ÚÓÐÙØ ÓÒ Ó\ « Ö ÒØ ÙÖÖ Ò × × ÓÙÐ\ ÓÑÔ Ø Ð Û Ø Ø ××ÙÑÔ¹\ Ø ÓÒ Ó ÚÓÐÙØ ÓÒ Ó Ü Ò Ö Ø ×º Ì Ø Ö × Ó Ø Ò Ù×\ Ò Ö Ø¹ØÓ¹Ð Ø Ö Ø ÓÒ × ÓÔØ Ñ × Ø ÓÒ× Ö Ø Ö Ø Ò Ô Ö¹\ ÓÖÑ × ÓÙÒØ Ò ÓÒ ØÛÓ Ö Ò ÓÑ Ú Ö Ð × × Ô Ö Ø Ðݸ Ò\ Ø Ò Ø Ö ×ÙÐØ Ò ÔÖÓ ×× ØÖ ×¸ Ø × ×Ø Ö ØÓ Ø\ Ö Ò ÓÑ Ú Ö Ð × ´ × Ò Ð ÓÐÙÑÒµ Ò Ø Ò × ÓÙÒØ Ø\ Ö ×ÙÐغ ÂÙ×Ø × Ò Ò ÓÔØ Ñ × Ò ÓÑÔ Ð Ö¸ Û Ñ Ý Ù× Ò¹\ Ø Ø × Ð Ø × ØÓ ØÖ Ò× ÓÖÑ ´Ø Ñ Ò Ò Ó µ ÓÙÖ ÓÒØÖ Ø\ ÒØÓ ÓÖÑ Ø Ø × ×Ø Ö ØÓ Ü ÙØ º\ ÇÒ × ØÓ\ Ö Ùи Ø ÓÙ º À Ö × ÔÐ Ù× Ð ÔÖÓÔ ÖØÝ\ Ø Ø Ó × ÒÓØ ÓÐ\ ´ ´ µµ\ ´ ´ µ\ ´ µµ\ ÁØ × ÔÐ Ù× Ð\ Ù× Ø ÛÓÙÐ ÓÐ\ Û Ö ×Ò Ð\ ÒÙÑ Ö× Ò\ Û Ö × ÑÔÐ ÑÙÐØ ÔÐ Ø Ú ØÓÖº ÙØ\ Ò\ Ö Ö Ò ÓÑ Ú Ö Ð ×¸ Ò Ø ÔÖÓÔ ÖØÝ × Ð× º\ ÕÙ Ø ÓÒ ´ ½¼µ Ù× × Ø\ ÓÔ Ö ØÓÖ ØÓ Ú Ø Ñ Ò Ò\ Ó ÒÝØ Ñ º Ì × ÓÔ Ö ØÓÖ × Ñ Ø Ñ Ø ÐÐÝ ×Ù ØÐ ¸ ÙØ\ Ø × × ÑÔÐ Ö Ø Ö × Ø ÓÒ\ ´ µ × Ø ×Ñ ÐÐ ×Ø\ ÔÖÓ ×× ´ÙÒ Ö Ò ÓÖ Ö Ò Ö Ð Ø ÓÒ Û Ñ ÒØ ÓÒ Ö ­Ý Ø\ Ø Ò Ó Ë Ø ÓÒ º µ ×Ù Ø Ø\ Ü\ ×\ Ü\ ×\ Ü\ Ø\ ×\ ¾\ ×\ Ø\ Ú½\ Ú\ Ø\ Ø\ Ú\ Ú\ Ú¾\ Ø\ ×\ ×\ Ø\ Ü\ ¾\ Ú½\ ×\ Ø\ Ø\ Ú\ Ú¾\ ×\ ×\ Ø\ Ñ Ü Ú½ Ú¾\ Ñ Ü\ ×\ Ø\ Ú½\ ×\ Ø\ Ú¾\ Ú½ Ú¾\ ×\ Ú½\ Ú¾\ ×Ò ÐÐ\ ×Ò ÐÐ\ Ø\ Ô\ Õ\ ÓÖ Ø\ ××Ó Ø Ö × ¹Ò ÙØÖ Ð ÔÖÓ\ Ð Øݸ ÙØ Û Û ÐÐ ÒÓØ Ó Ò\ Ø × ¬Ò Ò Ð Ø Ð× Ö º\ Ì ¬Ò Ò ÐÐÝ Ù Ø Ö\ Ö × ÓÙÐ ÒÓØ Ø Ø Û ××ÙÑ\ Ö\ ÑÔÐ ØÐÝ Û Ø × ÐÐ\ ÓÑÔÐ Ø Ñ Ö Ø׺\ 288\ Ô\ ÒÝØ Ñ\ Ø Õ\ À\ À\ Õ\ º\ ×\ Ø\ Õ Ø\ × Ø ÓÔØ ÓÒ Ø ÒÝ Ø Ñ ¸\ ØØ Ö Ø Ò º\ Ò ÐÛ Ý× Ö Ü Ö × Ò\ ÐÛ Ý× ØØ Ö Ø Ò Ø × Ñ\ Ç × ÖÚ Ð ×\ Ï Ò ÓÒÐÝ Ú ÐÙ ÓÒØÖ Ø× ÓÚ Ö Ó × ÖÚ Ð × Ø Ø Û Ò\ ÑÓ Ðº ÓÖ Ü ÑÔÐ ¸ Û Ò ÓÒÐÝ Ú ÐÙ ÓÒØÖ Ø ÒÚÓÐÚ Ò\ Ø Ø ÑÔ Ö ØÙÖ Ò ÄÓ× Ò Ð × Û Ú ÑÓ Ð Ó Ø\ Ø ÑÔ Ö ØÙÖ Ò ÄÓ× Ò Ð ×º ËÓÑ ×Ù Ó × ÖÚ Ð × Ð ÖÐÝ\ Ö ÕÙ Ö × Ô Ö Ø ÑÓ Ð׺ ÇØ Ö׸ ×Ù × Ø ÄÁ ÇÊ Ö Ø\ Ò Ø ÔÖ Ó ÙØÙÖ ×¸ Ò Ò ×ØÙÓÙ×ÐÝ ÑÓ Ð × Ø\ Ú ÐÙ Ó Ô ÖØ ÙÐ Ö ÓÒØÖ Ø׺ Ï ÓÑ Ø ÐÐ Ø Ø Ð× Ö\ ÙÖ\ Ú × Ø × Ñ ÒØ × ÓÒÐÝ ÓÖ Ø × ÑÔÐ ×Ø Ó × ÖÚ¹\ Р׺ Ì × × ÒÓØ ÙÒÖ Ð ×Ø ¸ ÓÛ Ú Öº ÇÒ Ò ÛÖ Ø\ Ð Ö Ö Ò Ó ÓÒØÖ Ø× Û Ø ÓÙÖ ÓÒØÖ Ø ÓÑ Ò ØÓÖ× Ò\ ÓÒÐÝ Ø × × ÑÔÐ Ó × ÖÚ Ð ×º\ º\ Ê ×ÓÒ Ò\ ÓÙØ ÓÒØÖ Ø×\ ÆÓÛ Û Ö Ö Ý ØÓ Ù× ÓÙÖ × Ñ ÒØ × ØÓ Ò×Û Ö Ø ÕÙ ×¹\ Ø ÓÒ× Û ÔÓ× Ø Ø\ ÒÒ Ò Ó Ë Ø ÓÒ º Ö×ظ × Ø ×\ ÕÙ Ø ÓÒ Ú Ð\ Ø ´\ Ø\ µ\ Ø\ Ï Ø Ø Ñ ÒÒ Ó Ø Ð Ø Ò ×\ ÙÖÖ Ò Ý\ Ø ´ Ø\ µ\ ´ µµ\ Ý´ µ\ ´ ´ µµ´ µµ Ý ´ µ\ ¾´\ ´ µµ´ µµ × Ò\ ´ µµ\ Ý ´ ¿µ\ Ø\ Ý´ µ\ Û\ ´ Ø µ\ ´µ\ ÁÒ × Ñ Ð Ö Û Ý¸ Û Ò Ö Ù Ø × ÔÐ Ù× Ð ÕÙ Ø ÓÒ ×\ Ð×\ ×\ ×\ ×\ ×\ ´\ ½´\ ¾´\ ¾´\ Ò ×ÓÑ Ö ØÖ ÖÝ\ ½\ ×\ Ø\ ½\ ¾\ ¾\ ½\ ¾\ ×\ ¾\ ½\ ¾\ ¾\ Ö\ ½\ Ú\ À\ ¾\ À\ ´ ½\ ÓÖ\ ¾µ\ Ú\ ½\ ÓÖ\ Ú\ ¾\ Ì ÔÖÓÓ × ÖÓÙØ Ò ¸ ÙØ Ø× ÓÖ × Ø Ó × ÖÚ Ø ÓÒ Ø Ø\   ´ µ\ ´    µ\ Ò Ø Ö Ð ÛÓÖÐ ¸ Ø ÔÓ ÒØ × Ø Ø Ø Ð Ø Ò ×\ Ú × Ø Ó ØÓ Ø ÓÙÒØ Ö¹Ô ÖØݸ Û Ö × Ò Ø Ö Ø\ Ò × Ø Ó × Ñ Ý Ø ÓÐ Ö Ó Ø ÓÒØÖ Øº\ ÇÙÖ ÓÑ Ò ØÓÖ× × Ø × Ý Ö × Ø Ó ÕÙ Ð Ø ×¸ ×Ù × Ø Ø\ Ú Ò ÓÖ Ø ÓÚ º ËÓÑ Ó Ø × ÕÙ Ð Ø × Ú × ÓÒ¹\ Ø ÓÒ× ÓÖ Ü ÑÔÐ\ Ñ Ü\ ×\ Ð\ Ó ´ ½\ ÓÖ\ Ñ Ü\ ¾µ\ ×\ Ð\ Ó\ ½ ÓÖ\ × Ð\ Ó\ ¾\ ÓÐ × ÓÒÐÝ Ó ¼¸ ÓÖ Ü ØÐÝ Ø × Ñ Ö ×ÓÒ Ø Ø Ø Ó ×\ ÒÓØ ÓÑÑÙØ Û Ø ÓÖº À Ò ÓÒ Ï Ø Ó × Ø Ñ Ò ØÓ × Ý\ Ø Ø Ó ¼ Ï Ñ Ò Ø Ø Ó × ÔÓ× Ø Ú ÓÖ ÐÐ Ø Ñ º ÅÓÖ\ Ò Ö ÐÐݸ × Û ÐÐ × ÕÙ Ð Ø × ØÛ Ò ÓÒØÖ Ø׸ Û Ú\ Ð×Ó Ú ÐÓÔ ÒÓØ ÓÒ Ó ÓÖ Ö Ò ØÛ Ò ÓØ Ó × ÖÚ Ð ×\ Ò ÓÒØÖ Ø׸ ½ ¾¸ ÔÖÓÒÓÙÒ\ ½ ÓÑ Ò Ø × ¾ º\ ÊÓÙ ÐÝ ×Ô Ò ¸ ½ ¾ Ø × Ø ÐÐ Ø Ñ × ÔÖ Ö Ð ØÓ\ ÕÙ Ö ½ Ø Ò ØÓ ÕÙ Ö ¾ Ø Ø ×¸ ´ ½µ ´ ¾µ Ò\ ´ ¾µ ½ ´ µ\ ¾´µ\ ÕÙ Ð Ø ×¸ ×Ù × Ø ÓÒ × Ú Ò ÓÚ ¸ Ò Ù× × ÓÔ¹\ Ø Ñ × Ò ØÖ Ò× ÓÖÑ Ø ÓÒ× Ò Ú ÐÙ Ø ÓÒ Ò Ò º ÓÒØÖ Ø\ ÓÑÔ Ð Ö Ò Ù× Ø × ÒØ Ø × ØÓ ØÖ Ò× ÓÖÑ ÓÒØÖ Ø¸\ ÜÔÖ ×× Ò Ø ÒØ ÖÑ Ø Ð Ò Ù Ó Ú ÐÙ ÔÖÓ ×× ×\ ´× Ø ÒØÖÓ Ù Ø ÓÒ ØÓ Ë Ø ÓÒ µ¸ ÒØÓ ÓÖÑ Ø Ø Ò\ Ú ÐÙ ÑÓÖ\ ÔÐݺ\ À\ Ø\ º\ À\ Ø\ 8%\ À\ 7%\ Ø\ 6%\ 5%\ 5%\ 4%\ 4%\ ËÙÑÑ ÖÝ\ 3%\ Ì × ÓÑÔÐ Ø × ÓÙÖ × Ö ÔØ ÓÒ Ó Ø\ ×ØÖ Ø Ú ÐÙ Ø ÓÒ\ × Ñ ÒØ ×º ÖÓÑ ÔÖÓ Ö ÑÑ Ò ¹Ð Ò Ù ÔÓ ÒØ Ó Ú Û¸\ Ú ÖÝØ Ò × ÕÙ Ø ÖÓÙØ Ò ¸ Ò ÐÙ Ò ÓÙÖ ÔÖÓÓ ×º ÙØ Û\ ×ØÖ ×× Ø Ø Ø × ÑÓ×Ø ÙÒÙ×Ù Ð ØÓ ¬Ò ÓÖÑ Ð ÔÖÓÓ × Ò Ø\ ¬Ò Ò Ò Ù×ØÖÝ Ø Ø × Ð Ú Ð Ó ×ØÖ Ø ÓÒº Ï Ú Ò Ñ\ Ò Ø Ñ Ø ÓÑÔÐ Ø ÔÖ Ñ Ø Ú × ´ ¸ ¸ Ø µ Ø\ Ð Û× Ø Ý ÑÙ×Ø × Ø × Ý Ú Ù× Û Ý ØÓ ÔÖÓÚ ÒØ Ø × ÓÙØ\ ÓÒØÖ Ø× Û Ø ÓÙØ Ú Ò ØÓ ÙÒ Ö×Ø Ò ÑÙ ÓÙØ Ö Ò ÓÑ\ Ú Ö Ð ×º Ì Ñ Ø Ñ Ø Ð Ø Ð× Ö Ö Ò ¸ Ð Ú Ù×\ ×\ 2%\ Time step\ 0\ 1\ 2\ 3\ Ü\ ÙÖ\ × ÓÖØ Ø ÖÑ ÒØ Ö ×Ø Ö Ø ÚÓÐÙØ ÓÒ\ Ø\ ÒÓ Ó Ø ØÖ × ××Ó Ø ÓÒ Ô Ö Ó × ÓÖØ\ Ø ÖÑ ÒØ Ö ×Ø Ö Ø ¸ × ÓÖØÐÝ ÒÓÑ Ò Ø Ø ÒØ Ö ×Ø Ö Ø\ ÖÓÑ ÒÓÛ ÓÒº Ï ÒÓÛ ØÓ Ý³× ÒØ Ö ×Ø Ö Ø ¸ ×Ó Ø ¬Ö×Ø\ ÓÐÙÑÒ Ò Ø ØÖ × Ù×Ø ÓÒ Ð Ñ Òغ ÀÓÛ Ú Ö¸ Ø Ö\ × ×ÓÑ ÙÒ ÖØ ÒØÝ Ó Û Ø ÒØ Ö ×Ø Ö Ø × Û ÐÐ ÚÓÐÚ ØÓ Ý\ Ø Ò Ó Ø ¬Ö×Ø Ø Ñ ×Ø Ôº Ì × × ÜÔÖ ×× Ý Ú Ò\ ØÛÓ ÒØ Ö ×Ø¹Ö Ø Ú ÐÙ × Ò Ø × ÓÒ ÓÐÙÑÒ Ø\ ×\ Ø Ø Ø ÒØ Ö ×Ø Ö Ø Û ÐÐ ÚÓÐÚ ØÓ ÓÒ Ó Ø × ØÛÓ Ú Ð¹\ Ù × Û Ø ÕÙ Ð ÔÖÓ Ð Øݺ ÁÒ Ø Ø Ö Ø Ñ ×Ø Ô¸ Ø Ö Ø ×\ ×ÔÐ Ø Ò¸ ÙØ Ø ÓÛÒ»ÙÔ Ô Ø Ó Ò× Ø ÙÔ» ÓÛÒ Ô Ø ¸\ ×Ó Ø Ö Ö ÓÒÐÝ Ø Ö Ö Ø × Ò Ø Ø Ö ÓÐÙÑÒ¸ ÒÓØ ÓÙÖº\ Ì × × Û Ý Ø ×ØÖÙ ØÙÖ × ÐÐ Ð ØØ Ø Ñ × Ø\ Û ÓÐ × Ñ ÓÑÔÙØ Ø ÓÒ ÐÐÝ × Ð Ý Ú Ò ÓÒÐÝ Ð Ò¹\ Ö ÖÓÛØ Ò Ø Û Ø Ó Ø ØÖ Û Ø Ø Ñ º Ç ÓÙÖ× ¸ Ø\ ØÖ × ÓÒÐÝ × Ö Ø ÔÔÖÓÜ Ñ Ø ÓÒ Ó ÓÒØ ÒÙÓÙ× ÔÖÓ ××\ Ø× Ö ÓÑ Ò Ò Ò ØÙÖ × Ù×Ø Ó ÓÖ Æ Ò Ý Ö ×ÓÒ׺\ Ï ÛÖ Ø\ ÓÖ Ø Ú ØÓÖ Ó Ö Ø × Ò Ø Ñ ¹×Ø Ô ¸ Ò\ ÓÖ Ø ³Ø Ñ Ñ Ö Ó Ø Ø Ú ØÓÖ¸ ×Ø ÖØ Ò Û Ø ¼ Ø Ø\ ÓØØÓѺ Ì Ù׸ ÓÖ Ü ÑÔÐ ¸\ ±º Ì ØÙ Ð ÒÙÑ Ö×\ Ò ÙÖ Ö ÙÒÖ Ð ×Ø ÐÐÝ Ö ÙÐ Ö Ò ÑÓÖ Ð ÓÖ Ø\ ÒØ Ö ×Ø Ö Ø ÑÓ Ð׸ Ø Ý Û ÐÐ ÒÓØ Ú ÒÐÝ ×Ô\ ÙØ ÓÒÐÝ\ ÑÓÒÓØÓÒ ÐÐÝ ×ØÖ ÙØ Ò\ ÓÐÙÑÒº\ ÁÑÔÐ Ñ ÒØ Ø ÓÒ\ ÇÙÖ Ú ÐÙ Ø ÓÒ × Ñ ÒØ × × ÒÓØ ÓÒÐÝ Ò ×ØÖ Ø ×غ Ï\ Ò Ð×Ó Ö Ö ÙÖ × Ò × ØÖ Ò×Ð Ø ÓÒ ÖÓÑ ÓÙÖ\ ÓÒØÖ Ø Ð Ò Ù ÒØÓ ÐÓÛ Ö¹Ð Ú Ð Ð Ò Ù Ó ÔÖÓ ×× ×¸\ Û Ó× ÓÑ Ò ØÓÖ× Ö Ø ÔÖ Ñ Ø Ú × Ó ÙÖ º Ì Ò Û\ Ò ÓÔØ Ñ × Ø ÔÖÓ ××¹Ð Ú Ð × Ö ÔØ ÓÒ¸ Ù× Ò ´ ½µ¹´ µº\ Ò ÐÐݸ ÐÐ ´ µ Û Ò ØÓ Ó × ØÓ ÑÔÐ Ñ ÒØ Ø ÔÖÓ ××¹\ Ð Ú Ð ÔÖ Ñ Ø Ú ×¸ Ò Û Û ÐÐ\ Ð ØÓ Ú ÐÙ Ò Ö ØÖ ÖÝ\ ÓÒØÖ Øº\ Ì Ý × ÓÒ ×¸ Ó ÓÙÖ× ¸ ÓÛ Û ÑÔÐ Ñ ÒØ Ú ÐÙ\ ÔÖÓ ×׺ Ú ÐÙ ÔÖÓ ×× × ØÓ Ö ÔÖ × ÒØ ÙÒ ÖØ ÒØÝ ÓÙØ\ Ø ÙØÙÖ Ò Ò ÜÔÐ Ø Û Ýº Ì Ö Ö ÒÙÑ ÖÓÙ× Û Ý× ØÓ\ ÑÓ Ð Ø × ÙÒ ÖØ ÒØݺ ÓÖ Ø × Ó ÓÒ Ö Ø Ò ×׸ Û\ Û ÐÐ × ÑÔÐÝ Ô Ø ÀÓ Ò Ä ÑÓ Ð¸ Ò Ù× Ð ØØ\ Ñ Ø Ó ØÓ Ú ÐÙ Ø ÓÒØÖ Ø× Û Ø Ø ÀÓ Ò Ä ¸ ½ º\ Ï ÓÓ× Ø × ÑÓ Ð Ò ÒÙÑ Ö Ð Ñ Ø Ó ÓÖ Ø Ö Ø ¹\ Ò Ð × ÑÔÐ ØÝ Ò ×ØÓÖ Ð ÑÔÓÖØ Ò ¸ ÙØ ÑÙ Ó Ø ×\ × Ø ÓÒ × Ð×Ó ÔÔÐ Ð ØÓ ÓØ Ö ÑÓ Ð× ´ º º Ð\ ÖÑ Ò\ ÌÓݵº Ò Ò Ø ÒÙÑ Ö Ð Ñ Ø Ó ´ º º ØÓ ÅÓÒØ ÖÐÓµ\ ÛÓÙÐ ÒØ Ð\ Ö Ò ×¸ ÙØ ÒÓØ Ò Ò ÓÙÖ Ð Ò Ù ÓÖ\ Ø× × Ñ ÒØ × ´Ë Ø ÓÒ× ½¹ µ ÛÓÙÐ\ « Ø º ÁÒ\ ¸ Ø\ × ÒØ Ö ÐÝ ÔÓ×× Ð ØÓ Ù× « Ö ÒØ ÒÙÑ Ö Ð Ñ Ø Ó × ÓÖ\ « Ö ÒØ Ô ÖØ× Ó × Ò Ð ÓÒØÖ Øº\ º½\ 6%\ ÊØ\ Ø\ ÊØ\ ʾ ½\ º¾ Î ÐÙ ÔÖÓ ×× ×\ ËÓ ÑÙ ÓÖ Ø ÒØ Ö ×Ø Ö Ø ÑÓ Ðº Ú ÐÙ ÔÖÓ ×× ×\ ÑÓ Ð Ý Ð ØØ Ó Ü ØÐÝ Ø × Ñ × Ô × Ø ÒØ Ö ×Ø\ Ö Ø ÚÓÐÙØ ÓÒ¸ Ü ÔØ Ø Ø Û Ú Ú ÐÙ Ø\ ÒÓ\ Ò×Ø Ó Ò ÒØ Ö ×Ø Ö Ø º ÙÖ × ÓÛ× Ø Ú ÐÙ ÔÖÓ ××\ ØÖ ÓÖ ÓÙÖ ÚÓÙÖ Ø Þ ÖÓ¹ ÓÙÔÓÒ ÓÒ\ Ò ÒØ Ö ×Ø Ö Ø ÑÓ Ð\ ÁÒ Ø ØÝÔ Ð ÀÓ Ò Ä ÒÙÑ Ö Ð × Ñ ¸ Ø ÒØ Ö ×Ø\ Ö Ø ÚÓÐÙØ ÓÒ × Ö ÔÖ × ÒØ Ý Ð ØØ ´ÓÖ Ö ÓÑ Ò Ò\ ØÖ µ¸ × Ô Ø Ò ÙÖ º\ ÓÐÙÑÒ Ó Ø ØÖ\ Ö ÔÖ × ÒØ× × Ö Ø Ø Ñ ×Ø Ô¸ Ò Ø Ñ Ò Ö × × ÖÓÑ Ð Ø\ ØÓ Ö Øº Ì Ñ Þ ÖÓ Ö ÔÖ × ÒØ× ÒÓÛ º × Ù×Ù Ð Û Ø × Ö Ø\ ÑÓ Ð׸ Ø Ö × Ò ××Ù Ó ÓÛ ÐÓÒ Ø Ñ ×Ø Ô Û ÐÐ Û\ ÛÓÒ³Ø × Ù×× Ø Ø ÙÖØ Ö Ö ¸ ÙØ Û ÒÓØ Ò Ô ×× Ò Ø Ø\ Ø Ø Ñ ×Ø Ô× Ò ÒÓØ Ó ÙÒ ÓÖÑ × Þ º\ Ø ´×\ Ð Ã ½¼ ´ØÖÙÒ\ Ø\ Ø ´ÓÒ\ ȵµµ\ Ú ÐÙ Ø Ò ÔÓÙÒ × ×Ø ÖÐ Ò ´ ȵº Í× Ò ÓÙÖ Ú ÐÙ Ø ÓÒ × ¹\ Ñ ÒØ × Û Ú\ Ø ´Ã´½¼µ´Øµµ\ È\ ÁÒ Ø\ ÙÖ ¸ Û ××ÙÑ Ø Ø Ø Ø Ñ Ø × Ø Ñ ×Ø Ô ¿º Ø\ ×Ø Ô ¿¸ Ø Ö ÓÖ ¸ Ø Ú ÐÙ Ó Ø ÓÒØÖ Ø × ÖØ ÒÐÝ ½¼\ È\ ½¼\ 289\ ×\ ¯ Ì ÑÓ Ð¹×Ô ¬ ÓÔ Ö Ø ÓÒ× Ó\ ÙÖ Ö\ Ø\ Ö Öº Ï Ú × Ö\ ÓÛ ØÓ ÑÔÐ Ñ ÒØ ¸\ Û Ù× × Ø ÒØ Ö ×Ø Ö Ø ÑÓ Ðº\ × ØÙ ÐÐÝ\ Ö Ø Ö × Ö ´ÑÙÐØ ÔÐÝ Ø Ú ÐÙ ÔÖÓ ×× ÔÓ ÒØ¹Û × Ý\ ÔÖÓ ×× Ö ÔÖ × ÒØ Ò Ø Ü Ò ¹Ö Ø µº Ì\ ÔÖ Ñ Ø Ú Ø × Ø ÑÓÖ ÛÓÖ ¸ Ò Û Ó ÒÓØ ¹\ × Ö Ø Ò Ø Ð Ö º ÊÓÙ ÐÝ ×Ô Ò ¸ ÔÓ×× Ð\ ÑÔÐ Ñ ÒØ Ø ÓÒ Ñ Ý Ø Ø ¬Ò Ð ÓÐÙÑÒ Ó Ø\ ØÖ ¸ × ÓÙÒØ Ø\ ÓÒ Ø Ñ ×Ø Ô¸ Ø Ø Ñ Ü ÑÙÑ\ Ó Ø Ø ÓÐÙÑÒ Û Ø Ø ÓÖÖ ×ÔÓÒ Ò ÓÐÙÑÒ Ó Ø\ ÓÖ Ò Ð ØÖ ¸ Ò Ø Ò Ö Ô Ø Ø Ø ÔÖÓ ×× ÐÐ Ø Û Ý\ ØÓ Ø ÖÓÓغ\ Ì Ö Ñ ÒÒ\ ¹Ð Ú Ð ÕÙ ×Ø ÓÒ × Ò Ø ´ µ × Ø Ó\ ÔÓ×× Ð ÒØ Ö ×Ø Ö Ø ÑÓ Ð׸ Û Ø × ÓÓ ÑÓ Ð Ì\ Ò×Û Ö × Ö Ø Ö Ò ×ØÙÓÙ׺ Ò Ø ÒØ Ö ×Ø Ö Ø ÑÓ Ð\ × ÓÙÐ ÔÖ ÓÖÖ ØÐÝ Ø Ó× ÓÒØÖ Ø× Ø Ø Ö Û ÐÝ ØÖ\ ÓÒ Ò × ÑÔÐÝ ÐÓÓ ÙÔ Ø ÙÖÖ ÒØ Ñ Ö Ø ÔÖ × ÓÖ Ø Ñ¸\ Ò ÓÑÔ Ö Ø Ñ Û Ø Ø Ð ÙÐ Ø Ö ×ÙÐØ׺ ËÓ Û ÐÓÓ\ ÓÖ Ò Ð Ø Ö Ù×Ø Ø ÒØ Ö ×Ø Ö Ø ÑÓ Ð ÙÒØ Ð Ø ¬Ø× Ø\ Ñ Ö Ø Ø ÓÖ Ø × × ÑÔÐ ÓÒØÖ Ø׺ ÆÓÛ Û Ö Ö Ý ØÓ\ Ù× Ø ÑÓ Ð ØÓ ÓÑÔÙØ ÔÖ × ÓÖ ÑÓÖ ÜÓØ ÓÒØÖ Ø׺\ Ì ÒØ Ö Ñ Ö Ø ×\ ÒØ\ ×Ý×Ø Ñ¸ Ò Ø Ú\ Ö × Ö ×ØÙ × Ø ÔÖÓ Ð Ñ Ó Ø× ×Ø Ð Øݺ\ 10\ 9.35\ ×Ò ÐÐ\ 8.90\ 10\ 8.64\ 9.52\ 9.25\ 10\ 9.71\ 10\ Time step\ 0\ 1\ ÙÖ\ ÀÓ Ò Ä Ú ÐÙ Ø ÓÒ Ð ØØ\ 2\ 3\ Ø ÐÐ ÒÓ ×¸ Ù× ÙÒ ÓÒ Ø ÓÒ ÐÐÝ Ð Ú Ö× °½¼ Ø Ø Ø\ Ø Ñ Ö Ñ Ñ Ö Ü ÓÑ ´ ¿µº Ø Ø Ñ ×Ø Ô ¾¸ ÓÛ Ú Ö¸\ Û ÑÙ×Ø × ÓÙÒØ Ø °½¼ Ý Ø ÒØ Ö ×Ø Ö Ø ÔÔÖÓÔÖ Ø\ ØÓ Ø Ø Ø Ñ ×Ø Ôº Ï ÓÑÔÙØ Ø Ú ÐÙ Ø\ ÒÓ Ó\ Ø Ñ ¹×Ø Ô ¾ Ý Ú Ö Ò Ø ØÛÓ Ú ÐÙ × Ò Ø× ×Ù ××ÓÖ׸\ Ò Ø Ò × ÓÙÒØ Ò Ø Ú Ö Ú ÐÙ\ ÓÒ Ø Ñ ×Ø Ô\ Ù× Ò Ø ÒØ Ö ×Ø Ö Ø ××Ó Ø ØÓ Ø Ø ÒÓ º Í× Ò Ø\ × Ñ ÒÓØ Ø ÓÒ ÓÖ Ø Ú ÐÙ ØÖ\ × Û Ù× ÓÖ Ø Ö Ø\ ÑÓ Ð ¸ Û Ø Ø ÕÙ Ø ÓÒ\ ·\ ¾´½ · ¡ µ\ Û Ö ¡ × Ø × Þ Ó Ø Ø Ñ ×Ø Ôº Í× Ò Ø × ÕÙ Ø ÓÒ\ Û Ò ¬ÐÐ Ò Ø Ö ×Ø Ó Ø Ú ÐÙ × Ò Ø ØÖ ¸ × Û Ú\ ÓÒ Ò ÙÖ º Ì Ú ÐÙ Ò Ø Ñ ×Ø Ô ¼ × Ø ÙÖÖ ÒØ\ Ú ÐÙ Ó Ø ÓÒØÖ Ø¸ Ò ÔÓÙÒ × ×Ø ÖÐ Ò º º ° º\ ÁÒ × ÓÖظ Ð ØØ ÑÔÐ Ñ ÒØ Ø ÓÒ ÛÓÖ × × ÓÐÐÓÛ×\ ¯ Ú ÐÙ ÔÖÓ ×× × Ö ÔÖ × ÒØ Ý Ð ØØ ¸ Ò Û\ ÓÐÙÑÒ × × Ö Ø Ö ÔÖ × ÒØ Ø ÓÒ Ó Ö Ò ÓÑ\ Ú Ö Ð º Ì Ú ÐÙ Ò\ ÒÓ × ÓÒ Ó Ø ÔÓ×× Ð\ Ú ÐÙ × Ø Ú Ö Ð Ò Ø ¸ Ò Ò ÓÙÖ Ú ÖÝ × ÑÔÐ\ × ØØ Ò Ø ÒÙÑ Ö Ó Ô Ø × ÖÓÑ Ø ÖÓÓØ ØÓ Ø ÒÓ\ × ÔÖÓÔÓÖØ ÓÒ Ð ØÓ Ø ÔÖÓ Ð ØÝ Ø Ø Ø Ú Ö Ð Û ÐÐ\ Ø Ø Ø Ú ÐÙ º Ï Û ÐÐ × Ý Ø ÑÓÖ ÓÙØ ÓÛ ØÓ\ Ö ÔÖ × ÒØ ×Ù ØÖ Ò Ø Ò ÜØ ×Ù × Ø ÓÒº\ ¯Ì\ Ò Ö ÓÔ Ö Ø ÓÒ׸ Ò Ø ØÓÔ Ð Ó ÙÖ ¸\ Ö ×Ý ØÓ ÑÔÐ Ñ Òغ ô µ × Ú ÐÙ ÔÖÓ ×× Ø Ø ×\ Ú ÖÝÛ Ö ÕÙ Ð ØÓ º\ ´ µ × ÔÖÓ ×× Ò Û\ Ø Ú ÐÙ × Ò Ô ÖØ ÙÐ Ö ÓÐÙÑÒ Ö ÐÐ ÕÙ Ð ØÓ Ø\ ÒÙÑ Ö Ó Ý× ØÛ Ò Ø Ø ÓÐÙÑÒ³× Ø Ñ Ò º\ ´ µ ÔÔÐ × ØÓ ÔÓ ÒØ¹Û ×\ ¾´\ µ Þ Ô×\ ØÓ Ø Ö\ Ò ¸ ÓÑ Ò Ò ÓÖÖ ×ÔÓÒ Ò Ú ÐÙ ×\ ÔÓ ÒØ¹Û × Û Ø º\ º¿ ÁÑÔÐ Ñ ÒØ Ø ÓÒ Ò À × ÐÐ\ Ï Ú ØÛÓ Ô ÖØ Ð ÑÔÐ Ñ ÒØ Ø ÓÒ× Ó ´ ÖÐ Ö Ú Ö× ÓÒ× Ó µ\ Ø ×\ ׸ ÓÒ Ó Û × ÑÔÐ Ñ ÒØ × À × ÐÐ Óѹ\ Ò ØÓÖ Ð Ö Öݺ Ì ØÝÔ ÓÒØÖ Ø × ÑÔÐ Ñ ÒØ × Ò\ Ð Ö\ Ø ØÝÔ ¸ Û Ø ÓÒ ÓÒ×ØÖÙ ØÓÖ ÓÖ\ ÔÖ Ñ Ø Ú\ ÓÑ Ò ØÓÖ\ Î\ Ø\ Ê\ ÎØ\ ÎØ·½\ Ú Ð\ ØÝÔ\ ØÝÔ\ Ø Ñ\ Ô\ Ø\ Ô½\ Ð\ Ø\ Ô½ Ô¾\ Ô¾\ ÓÖ Ú ÒØ ÔÖ × ÒØ Ø ÓÒ Ö ×ÓÒ׸ Û ÓÒ³Ø Ö\ ÓÙØ Ø\ Ø Ø Ø ÀÓ Ò Ä ÑÓ Ð × Ñ Ñ Ö Ó\ Ð ×× Ó ÑÓ Ð× Ø Ø\ Ò Ø ÐÓ× ¹ ÓÖÑ ×ÓÐÙØ ÓÒ ÓÖ Þ ÖÓ¹ ÓÙÔÓÒ ÓÒ ×º\ Ø\ ÙÖÖ Ò Ý\ ÓÒØÖ Ø\ ÅÓ Ð ¹\ ÙÖÖ Ò Ý ¹\ ÓÒØÖ\ Ø ¹\ Ø ÓÖÛ Ö\ Î ÐÈÖÓ\ Î ÐÈÖÓ\ ËÐ\ ´Ì Ñ ËØ Ô¸\ ÓÙ Ð\ ËÐ\ µ\ Ú ÐÙ ÔÖÓ ×× × Ö ÔÖ × ÒØ Ý Ô Ö Ó ´ µ Ø ÔÖÓ ×׳×\ ÓÖ ÞÓÒ¸ Ò ´ µ Ð ×Ø Ó ×Ð × ´ÓÖ ÓÐÙÑÒ×µ¸ ÓÒ Ô Ö Ø Ñ\ ×Ø Ô Ò Ö Ú Ö× Ø Ñ ÓÖ Öº Ì ¬Ö×Ø ×Ð × Ø Ø ÓÖ ÞÓÒ\ Ó Ø ÔÖÓ ×׸ Ø Ò ÜØ ×Ð × ÓÒ Ø Ñ ×Ø Ô ÖÐ Ö¸ Ò ×Ó\ ÓÒº Ë Ò Ø ´ ÙÒ Ñ ÒØ Ðµ × ÓÙÒØ Ö ÙÖÖ Ò ÕÙ Ø ÓÒ\ ´Ë Ø ÓÒ º½µ ÛÓÖ × Û Ö × Ò Ø Ñ ¸ Ø × ÓÒÚ Ò ÒØ ØÓ\ Ö ÔÖ × ÒØ Ø Ð ×Ø Ø × Û Ý ÖÓÙÒ º\ ×Ð × ÓÒ Ð Ñ ÒØ\ × ÓÖØ Ö Ø Ò Ø ÓÒ ÓÖ º\ Ä Þ Ò ×× ÔÐ Ý× Ú ÖÝ ÑÔÓÖØ ÒØ ÖÓÐ ¸ ÓÖ ØÛÓ Ö ×ÓÒ×\ ¯ ÈÖÓ ×× ØÖ × Ò ÓÑ Ú ÖÝ Ð Ö ¸ × Ò Ø Ö × Þ ×\ ÕÙ Ö Ø Ò Ø ÒÙÑ Ö Ó Ø Ñ ×Ø Ô× Ø Ý ÓÚ Öº\ ÓÑÔÐ Ü ÓÒØÖ Ø Û ÐÐ Ö ÔÖ × ÒØ Ý ÓÑ Ò Ò ØÓ¹\ Ø Ö Ñ ÒÝ Ú ÐÙ ØÖ × Ø ÛÓÙÐ Î ÖÝ ØÓ ÙÐÐÝ\ Ø\ Ô\ ÇÒ\ Ú\ ººº\ À Ö ¸ ÅÓ Ð ÓÒØ Ò× Ø ÒØ Ö ×Ø Ö Ø ÚÓÐÙØ ÓÒ׸ Ü Ò\ Ö Ø ÚÓÐÙØ ÓÒ׸ Ò Û Ø Ú Ö ÓØ Ö ÙÒ ÖÐÝ Ò × Ö Ò ¹\ ×× ÖÝ ØÓ Ú ÐÙ Ø Ø ÓÒØÖ Øº\ ÇÙÖ ¬Ö×Ø ÑÔÐ Ñ ÒØ Ø ÓÒ Ù× Ø ÓÐÐÓÛ Ò Ö ÔÖ × ÒØ Ø ÓÒ\ ÓÖ Ú ÐÙ ÔÖÓ ××\ Ü\ Ø\ Ø\ Ì ØÖ Ò×Ð Ø ÓÒ ØÓ ÔÖÓ ×× × × ÓÒ Ý ×ØÖ\ Ö ÙÖ× Ú À × ÐÐ ÑÔÐ Ñ ÒØ Ø ÓÒ Ó\ Ø\ Ø\ Ð\ ÓÒØÖ\ ÎØ·½ ·½\ ÊØ\ Ü\ ×\ Ü\ Ø\ ÑØ\ ½½\ 290\ Ú ÐÙ Ø Ø × ×Ù ¹ØÖ ×¸ Ò ÓÒÐÝ Ø Ò ÓÑ Ò Ø Ñº\ Ä ÞÝ Ú ÐÙ Ø ÓÒ ÙØÓÑ Ø ÐÐÝ Ô Ô Ð Ò × Ø Ú ÐÙ ¹\ Ø ÓÒ Ð ÓÖ Ø Ñ¸ ×Ó Ø Ø ÓÒÐÝ Ø ÙÖÖ ÒØ ×Ð Ó\ Ú ÐÙ ØÖ × Ö ÕÙ Ö Ø ÒÝ ÓÒ ÑÓÑ Òغ\ ¯ ÇÒÐÝ Ô ÖØ Ó ÔÖÓ ×× ØÖ Ñ Ý Ö ÕÙ Ö º ÓÒ× Ö\ Ò ÓÙÖ Ü ÑÔÐ ÓÒØÖ Ø\ Ø ´×\ Ð Ã ½¼ ´ØÖÙÒ\ Ø\ Ø ´ÓÒ\ Ì × ÔÖÓ Ð Ñ Ö × ×¸ Ò Ú Ö ÓÙ× Ù × ×¸ Ò ÐÑÓ×Ø Ú ÖÝ\ Ñ\ ÓÑ Ò¹×Ô ¬ Ð Ò Ù º Ï Ú × Ò Ø Ò\ Ö Ò³× Ö Ø Ú Ò Ñ Ø ÓÒ× ÐÐ ÓØØ Ò ÀÙ ¸ ½ ¸ Ø\ Æ ÙÐØÝ Ó ÜØÖ Ø Ò Ò Ø¹Ð ×Ø× ÖÓÑ À Û Ö Ù Ø × Ö Ô¹\ Ø ÓÒ× ÓÓ Ø Ðº¸ ½ ¸ Ò Ò ÓØ Ö × ØØ Ò × × ×º\ Ï Ø Ñ × Ø Ô ÖØ ÙÐ ÖÐÝ ÖÙ×ØÖ Ø Ò × Ø Ø Ø × Ö Ò ×\ ×ÓÐÙØ ÐÝ ÔÔ Ö ÒØ Ò Ø ×ÓÙÖ ÔÖÓ Ö Ñº\ ÇÒ ×ÓÐÙØ ÓÒ × ØÓ ×Ù ×Ø Ø Ø Ú Ð\ Ñ\ Ñ ÑÓ ÙÒ Ø ÓÒ À٠׸ ½ ¸ ÓÓ Ò Ä ÙÒ ÙÖݸ ½ ¸\ Å ÖÐÓÛ Ø Ðº¸ ½ ¸ ÙØ Û Ó ÒÓØ ¬Ò Ø × Ø × ØÓÖݺ ÄÓ×¹\ Ò × Ö Ò Ò Ú Ö × ØÓ Ò ÙÒ ÓÙÒ ÑÓÙÒØ Ó ÙÔÐ ¹\ Ø ÛÓÖ ¸ ×Ó Ø × Ñ× ÙÒÔÐ × ÒØ ØÓ Ö Ð Ø Ø Ñ ÒØ ¹\ Ò Ò Ó ÔÖÓÔ Ö × Ö Ò ØÓ Ò ÓÔ Ö Ø ÓÒ Ð Ñ Ò ×Ѻ ÓÖ\ Ü ÑÔÐ ¸ Ñ ÑÓ ÙÒ Ø ÓÒ Ñ Ý\ Ú Ý ÙÒ Ú ÐÙ Ø\ Ö ÙÑ ÒØ׸ ÓÖ ÙØÓÑ Ø ÐÐݹÔÙÖ Ñ ÑÓ Ø Ð ×¸ ÓÖ Û Ø¹\ Ú Öº ÓÖ ÒÓÛ Û × ÑÔÐÝ ÒØ Ý Ø × Ò ÑÔÓÖØ ÒØ ÓÔ Ò\ ÔÖÓ Ð Ñ Ø Ø × ÖÚ × ÙÖØ Ö ×Ø٠ݺ Ì ÓÒÐÝ Ô Ô Ö Ø Ø\ Ö ×× × Ø × ××Ù\ ÓÒ × Ð ×× Ò Ò Ë Ò ×¸ ½\ Ø ÔÖÓÔÓ× × ÓÒ Û Ý ØÓ Ñ × Ö Ò Ó × ÖÚ Ð ¸ ÙØ Ð Ú ×\ ÓÔ Ò Ø ÕÙ ×Ø ÓÒ Ó Ñ ÑÓ ÙÒ Ø ÓÒ׺\ ȵµµ\ Ì\ Ú ÐÙ\ ÔÖÓ ××\ ÓÖ\ Ð Ã ½¼ ´ØÖÙÒ Ø Ø ´ÓÒ\ ȵµµ ×\ Óѹ\ ÔÐ Ø Ú ÐÙ ÔÖÓ ×׸ ÐÐ Ø Û Ý\ ØÓ Ø Ñ ¹×Ø Ô\ Þ ÖÓ¸ Û Ø Ú ÐÙ ½¼ Ú ÖÝÛ Ö º ÙØ Ø × ÑÔÐ ×\ Ø × Ú ÐÙ ÔÖÓ ×× ÓÒÐÝ Ø Ø× ÓÖ ÞÓÒ Ø Ö × ÒÓ\ ÔÓ ÒØ Ò ÓÑÔÙØ Ò Ø× Ú ÐÙ Ø ÒÝ ÖÐ Ö Ø Ñ º Ý\ Ö ÔÖ × ÒØ Ò Ú ÐÙ ÔÖÓ ×× × Ð Þ Ðݹ Ú ÐÙ Ø Ð ×Ø\ Û ØØ Ö Ø\ Ú ÓÙÖ ÙØÓÑ Ø ÐÐݺ\ Å ÖÓ×Ó Ø Ê × Ö ÓÐÐ ÓÖ Ø × ÐÓ× ÐÝ Û Ø ÄÓÑ Ö Ê ×\ ËÝ×Ø Ñ× ÄØ ¸ Û Ó Ú ÔÖÓ Ù Ø ÓÒ ØÖ ¹ × Ú ÐÙ Ø ÓÒ\ ×Ý×Ø Ñ Ò ··º ÁØ Ù× × Ð Ú Ö ÙØ ÓÑÔÐ Ü Ú Òع Ö Ú Ò\ Ò Ò ÒÛ\ Ú ÐÙ ØÖ × Ö ÔÖ × ÒØ Ý × Ò Ð ×Ð\ Ø Ø × ÑÙØ Ø × Ø Ñ ÔÖÓ Ö ×× ×º Ì Ö × Ò Ú Ö ÒÓ¹\ Ø ÓÒ Ó ÓÑÔÐ Ø ØÖ º Ì À × ÐÐ ÑÔÐ Ñ ÒØ Ø ÓÒ ØÖ Ø×\ ØÖ × × ¬Ö×Ø Ð ×× Ú Ð٠׸ Ò Ø × ÔÓ ÒØ Ó Ú Û Ó« Ö× Ö ¹\ Ð Ò Û Ô Ö×Ô Ø Ú ÓÒ Ø Û ÓÐ Ú ÐÙ Ø ÓÒ ÔÖÓ ×׺ Ï\ Ö ÓÔ ÙÐ Ø Ø ×ÓÑ Ó Ø Ò× Ø× ÖÓÑ ÓÙÖ À × ÐРѹ\ ÔÐ Ñ ÒØ Ø ÓÒ Ñ Ý × ÖÚ ØÓ Ò ÓÖÑ Ò ÑÔÖÓÚ Ø Æ ÒØ\ ·· ÑÔÐ Ñ ÒØ Ø ÓÒº\ Ì À × ÐÐ Ú Ö× ÓÒ Ø × ÖÓÙÒ ¼¼ Ð Ò × Ó À × ÐÐ ØÓ\ ×ÙÔÔÓÖØ ÛÓÖ Ò ¸ Ð Ø Ð Ñ Ø ¸ ÓÒØÖ Ø Ú ÐÙ Ø ÓÒ Ò Ò ¸\ ÓÑÔÐ Ø Û Ø ÇÅ ÒØ Ö\ ÒÒ Ø Ðº¸ ½ Ø Ø Ð Ø×\ Ø ÔÐÙ\ ÒØÓ ÄÓÑ Ö ³× Ö Ñ ÛÓÖ º ÁØ × ÒÓØ Ò ÖÐÝ ×\ ×Ø × Ø ÔÖÓ Ù Ø ÓÒ Ó ¸ ÙØ Ø × ÒÓØ ÙÒ Ö ÐÝ ×ÐÓÛ\ Ø Ö ÓÖ Ü ÑÔÐ ¸ Ø Ø × ÖÓÙÒ ¾¼ × ÓÒ × ØÓ ÓÑÔÙØ\ Ø Ú ÐÙ Ó ÓÒØÖ Ø Û Ø ½ ×Ù ¹ ÓÒØÖ Ø׸ ÓÚ Ö ¼¼ Ø Ñ\ ×Ø Ô׸ ÓÒ ×Ø Ò Ö × ØÓÔ È º Ì ÓÙ Ø Ð × ÑÙ\ ÙÒ Ø ÓÒ Ð Øݸ Ø ÓÑÔÓ× Ø ÓÒ Ð ÔÔÖÓ Ñ Ò× Ø Ø Ò\ ÐÖ Ý Ú ÐÙ ×ÓÑ ÓÒØÖ Ø׸ ×Ù × ÓÔØ ÓÒ× ÓÚ Ö ÓÔØ ÓÒ׸\ Ø Ø Ø ÔÖÓ Ù Ø ÓÒ ×Ý×Ø Ñ ÒÒÓغ ´Ì ÔÖÓ Ù Ø ÓÒ ×Ý×Ø Ñ\ × ÒÓØ ÙÒ Ñ ÒØ ÐÐÝ Ò Ô Ð Ó ×Ù\ Ø× ÙØ Ø × ÔÖÓ¹\ Ö ÑÑ ÓÒ × ¹ ݹ × × ×¸ Ò Ø ÑÓÖ ÓÑÔÐ Ø\ × × Ö ÙÒØ Ò ÐÝ Ö ØÓ ÑÔÐ Ñ Òغµ\ ´×\ º\ ÈÙØØ Ò ÓÙÖ ÛÓÖ\ Ø ¬Ö×Ø × Ø¸ ¬Ò Ò Ð ÓÒØÖ Ø× Ò ÙÒ Ø ÓÒ Ð ÔÖÓ Ö Ñ¹\ Ñ Ò Ó ÒÓØ Ú ÑÙ ØÓ Ó Û Ø\ ÓØ Öº ÁØ × Ò\ ×ÙÖÔÖ × Ò Ð Ø ØÓ × ÓÚ Ö Ø Ø Ñ ÒÝ Ó Ø Ò× Ø×\ Ù× ÙÐ Ò Ø × Ò¸ × Ñ ÒØ ×¸ Ò ÑÔÐ Ñ ÒØ Ø ÓÒ Ó ÔÖÓ¹\ Ö ÑÑ Ò Ð Ò Ù × Ò ÔÔÐ Ö ØÐÝ ØÓ Ø × Ö Ô¹\ Ø ÓÒ Ò Ú ÐÙ Ø ÓÒ Ó ÓÒØÖ Ø׺ ÇÒ Ó Ù× ´ Öµ × Ò\ Ú ÐÓÔ Ò Ø ×\ ÓÖ Ò ÖÐÝ Ø Ò Ý Ö× Ø ËÓ Ø Ò Ö Ð º\ Ì ÓØ Ö× ´È ÝØÓÒ ÂÓÒ × Ò Ë Û Ö µ Ñ ØÓ Ø ÑÙ ÑÓÖ\ Ö ÒØÐݸ Ø ÖÓÙ\ ÖÙ Ø ÙÐ Ô ÖØÒ Ö× Ô Û Ø ÄÓÑ Ö Ê ×\ ËÝ×Ø Ñ× ÄØ º Ì ÓÖ Ò Ð Û × ØÓ ÔÔÐÝ ÙÒ Ø ÓÒ Ð ÔÖÓ¹\ Ö ÑÑ Ò ØÓ Ö Ð ×Ø ÔÖÓ Ð Ñ¸ Ò ØÓ ÓÑÔ Ö ÓÙÖ Ö ×ÙÐع\ Ò ÔÖÓ Ö Ñ Û Ø Ø Ü ×Ø Ò ÑÔ Ö Ø Ú Ú Ö× ÓÒ ÙØ Û\ Ú Ò ÙÔ Û Ø Ö Ð Ö ¹Ø Ò Ò Ó ÓÛ ØÓ × Ö\ Ò Ú ÐÙ Ø ÓÒØÖ Ø׺\ Ì ÓÙ Ø Ö ×\ Ö Ø\ Ð Ó ÛÓÖ ÓÒ\ ÓÑ Ò¹×Ô ¬\ ÔÖÓ Ö ÑÑ Ò\ ÐÒÙ ×\ ´×\ ÀÙ ¸ ½ ¸ Ú Ò ÙÖ× Ò Ø Ðº¸ ¾¼¼¼ ÓÖ ×ÙÖÚ Ý×µ¸\ ÓÙÖ ÛÓÖ × Ú ÖØÙ ÐÐÝ Ø ÓÒÐÝ ØØ ÑÔØ ØÓ Ú ÓÖÑ Ð ¹\ × Ö ÔØ ÓÒ ØÓ ¬Ò Ò Ð ÓÒØÖ Ø׺ Ò Ü ÔØ ÓÒ × Ø ÊÁËÄ\ ÐÒÙ\ Ú ÐÓÔ Ø ÏÁ Ú Ò ÙÖ× Ò Ò ÃÐ Òظ ½ ¸\ Ò Ó Ø¹ÓÖ ÒØ ÓÑ Ò¹×Ô ¬ Ð Ò Ù ÓÖ ¬Ò Ò Ð\ ÓÒØÖ Ø׺ ÊÁËÄ × × Ò ÓÖ Ò Ó Ø¹ÓÖ ÒØ Ö Ñ ¹\ ÛÓÖ ¸ Ò ÔÔ Ö× ØÓ ÑÓÖ ×Ø Ø ÙÐ Ò Ð ×× Ð Ö Ø Ú\ Ø Ò ÓÙÖ ×Ý×Ø Ñº\ Ï Ú ÔÖ × ÒØ ÓÙÖ × Ò × ÓÑ Ò ØÓÖ Ð Ö ÖÝ Ñ¹\ Ò À × Ðи Ò Ò À × ÐÐ × ÔÖÓÚ Ò Ü Ð¹\ Ð ÒØ Ó×Ø Ð Ò Ù ÓÖ ÔÖÓØÓØÝÔ Ò ÓØ Ø Ð Ö ÖÝ × Ò\ Ò Ú Ö ÓÙ× ÑÔÐ Ñ ÒØ Ø ÓÒ Ó ×º ÀÓÛ Ú Ö¸ ÓÙÖ × Ò ×\ ×ÓÐÙØ ÐÝ ÒÓØ À × Ðй×Ô ¬ º Ì\ Ô ÝÓ« ÓÑ × ÖÓÑ\ Ð Ö Ø Ú ÔÔÖÓ ØÓ × Ö Ò ÓÒØÖ Ø׺ × Ø ÔÔ Ò×\ Û Ð×Ó Ù× ÙÒ Ø ÓÒ Ð Ð Ò Ù ÓÖ ÑÔÐ Ñ ÒØ Ò Ø ÓÒ¹\ ØÖ Ø Ð Ò Ù ¸ ÙØ Ø Ø × ×ÓÑ Û Ø Ò ÒØ Ðº ÁØ ÓÙÐ\ ÕÙ ÐÐÝ Û ÐÐ ÑÔÐ Ñ ÒØ × Ö ¹×Ø Ò Ò ÓÑ Ò¹\ ×Ô ¬ Ð Ò Ù ¸ Ù× Ò ÓÑ Ò¹×Ô ¬ ÓÑÔ Ð Ö Ø ÒÓй\ Ó Ýº ÁÒ ¸ ÓÒ Ó Ù× ´ Öµ × ÛÓÖ ÓÓØ Ó ØÓ Ù×Ø Ø ×¸\ × ×Ø ÓÖ\ ÓÑÔ Ð Ò ÓÒØÖ Ø ÒØÓ Ó Ø Ø × ÓÙÐ\ ×Ø Ö Ø Ò Ø ×Ø Ú Ð Ð ÙÖÖ ÒØ Ú ÐÙ Ø ÓÒ Ò Ò ×¸ Ù×¹\ Å ÑÓ × Ø ÓÒ\ ÁÒ ÙÒ Ø ÓÒ Ð ÔÖÓ Ö ÑÑ Ò Ø ÖÑ׸ ÑÓ×Ø Ó Ø × × ÕÙ Ø\ ×ØÖ Ø ÓÖÛ Ö º Ì Ö × Ò ×ØÝ ÔÖ Ø Ð ÔÖÓ Ð Ñ¸ ÓÛ¹\ Ú Ö¸ Ø Ø Ö Ô Ø ÐÝ Ø × Ô ÓÔÐ Û Ó Ñ\ ÓÑ Ò ×Ô ¹\ ¬ Ð Ò Ù Ò ÙÒ Ø ÓÒ Ð Ð Ò Ù º ÓÒ× Ö Ø ÓÒ¹\ ØÖ Ø\ ½¼\ Û\ Ó Ò\ Ö\ Ó Ò\ Ò\ Ó Ò\ ×ØÙ\ ÓÖ\ ÑÓÖ\ Ò ÓÒØ ÜØ\ ×ØÙ\ À Ö ¸ Ó Ò × × Ö ×Ù ¹ ÓÒØÖ Ø Ó ½¼ ÑÙ Ð ÓÔØ Ò\ ÓÙÖ ¬Ò Ø ÓÒ Ó Ñ Ö Ò ´Ë Ø ÓÒ ¿º µº Ì ØÖÓÙ Ð × Ø Ø\ Ú Ð Û ÐÐ Ú ÐÙ Ø Ø ØÛÓ Ö Ò × Ó Ø\ Ò Ø Ø ÖÓÓØ\ Ó ½¼¸ Ó Ð Ú ÓÙ× Ó Ø\ Ø Ø Ø Ø × ØÛÓ Ö Ò × Ö Ø\ × Ñ º ÁÒ Ø¸ Ú Ð Û ÐÐ Ó ÐÐ Ø ÛÓÖ Ó Ú ÐÙ Ø Ò Ó Ò\ ØÛ Ì Ö × ÒÓ Û Ý ÓÖ Ú Ð ØÓ Ø ÐÐ Ø Ø Ø × × Ò Ø ×\ Ö ÙÑ ÒØ ÓÖ º\ ½¾\ 291\ Ò Ø ×ØÖ Ø ÙÒ Ø ÓÒ Ð Ð Ò Ù Ç ÑÐ Ä ÖÓÝ Ø Ðº¸ ½\ × ÑÔÐ Ñ ÒØ Ø ÓÒ Ð Ò Ù º\ ÐØ ÓÙ À × ÐÐ × Ð Þݸ Ò Ø Ø Û × Ù× ÙÐ Ò ÓÙÖ Ñ¹\ ÔÐ Ñ ÒØ Ø ÓÒ¸ Ø Ö ÐÐÝ × Ò ¬ ÒØ ØÙÖ Ó Ø ÓÒØÖ Ø¹\ × Ö ÔØ ÓÒ Ð Ò Ù × Ø Ø Ø × Ð Ö Ø Ú ÒÓØ Ø Ø Ø ×\ Ð Þݺ ÇÙÖ × Ò Ò × Ò ×\ Ð Ö Ø Ú ¸ ÓÑ Ò¹\ ×Ô ¬ Ð Ò Ù ÒØ Ö ÐÝ Ò Ô Ò ÒØ Ó À × Ðи Ò ÓÒ\ ÓÙÐ Ö ÐÝ ÑÔÐ Ñ ÒØ Ú ÐÙ Ø ÓÒ Ò Ò ÓÖ Ø Ò Â Ú ÓÖ\ ··¸ ÓÖ Ü ÑÔÐ º\ Ì Ö × ÑÙ Ð Ø ØÓ Óº Ï Ò ØÓ ÜÔ Ò Ø × Ø Ó\ ÓÒØÖ Ø ÓÑ Ò ØÓÖ× ØÓ × Ö Û Ö Ö Ò Ó ÓÒØÖ Ø×\ ØÓ ÜÔ Ò Ø × Ø Ó Ó × ÖÚ Ð × ØÓ ÔÖÓÚ × Ñ ÒØ × ÓÖ\ Ø × Ò Û ÓÑ Ò ØÓÖ× ØÓ ÛÖ Ø ÓÛÒ Ò ÔÖÓÚ Ö Ò Ó\ Ø ÓÖ Ñ× ÓÙØ ÓÒØÖ Ø× ØÓ ÓÒ× Ö Û Ø Ö Ø ÒÓØ ÓÒ Ó\ ÒÓÖÑ Ð ÓÖÑ Ñ × × Ò× ÓÖ ÓÒØÖ Ø× ØÓ Ù Ð ÖÓ Ù×Ø\ ÑÔÐ Ñ ÒØ Ø ÓÒ ØÓ ÜÔÐÓ Ø Ø Ö Ñ Ø × ÑÔÐ ¬ Ø ÓÒ× Ø Ø\ ÐÓ× ÓÖÑÙÐ × Ñ ÔÓ×× Ð ØÓ Ú ÓÖÑ Ð ×Ô ¬ Ø ÓÒ\ Ó Ø ÚÓÐÙØ ÓÒ Ó ÓÒØÖ Ø ÙÖ Ò Ø× Ð Ò ØÓ Ú Ð Ø\ ÐÐ Ø × Ò Ö Ð ¬Ò Ò Ð × ØØ Ò ×º Ï Ú ÓÒÐÝ Ù×Ø ÙÒº\ ÒÓÛÐ\ ÁÒØ ÖÒ Ø ÓÒ Ð\ ´Á ȳ µ¸ Ô\ ÓÒ\ ÙÒ Ø ÓÒ Ð ÈÖÓ Ö ÑÑ Ò\ × ¾ ¿ß¾ ¿º Ÿ Ñ×Ø Ö Ñº\ ÒÒ Ø Ðº¸ ½\ ÒÒ ¸ ˺¸ Ä Ò¸ º¸ Å Ö¸ º¸ Ò\ È ÝØÓÒ ÂÓÒ ×¸ ˺ ´½ µº ÐÐ Ò ÐÐ ÖÓÑ Ú Ò Ò\ Ú Ò ÖÓÑ Ðк ÁÒ Å ËÁ ÈÄ Æ ÁÒØ ÖÒ Ø ÓÒ Ð ÓÒ¹\ Ö Ò ÓÒ ÙÒ Ø ÓÒ Ð ÈÖÓ Ö ÑÑ Ò ´Á ȳ µ¸ Ô ×\ ½½ ß½¾ ¸ È Ö ×º ź\ ÀÓ Ò Ä ¸ ½ ÀÓ¸ ̺ Ò Ä ¸ ˺ ´½ µº Ì ÖÑ ËØÖÙ ¹\ ØÙÖ ÅÓÚ Ñ ÒØ× Ò ÈÖ Ò ÁÒØ Ö ×Ø Ê Ø ÓÒØ Ò ÒØ\ Ð Ñ׺ ÂÓÙÖÒ Ð Ó Ò Ò ¸ ½ ½¼½½ß½¼¾ º\ ÀÙ ¸ ½ ÀÙ ¸ Ⱥ ´½ µº Ù Ð Ò ÓÑ Ò¹×Ô ¬\ Ñ\ Ð Ò Ù ×º Å ÓÑÔÙØ Ò ËÙÖÚ Ý׸ ¾ º\ À٠׸ ½ À٠׸ º ´½ µº Ä ÞÝ Ñ ÑÓ¹ ÙÒ Ø ÓÒ׺ ÁÒ\ ÈÖÓ ×Ô Ò × ÛÓÖ × ÓÔ ÓÒ ÑÔÐ Ñ ÒØ Ø ÓÒ Ó ÙÒ Ø ÓÒ Ð\ Ð Ò Ù ×º\ Ä ÖÓÝ Ø Ðº¸ ½ Ä ÖÓݸ º¸ ÎÓÙ ÐÐÓÒ¸ º¸ ÓÐ Þ¸ º¸\ Ø Ðº ´½ µº Ì Ç Ø Ú ÑÐ ×Ý×Ø Ñ¸ Ö ¹\ Ð × ¿º¼¼º Ì Ò Ð Ê ÔÓÖظ ÁÆÊÁ ¸ Ú Ð Ð Ø\ ØØÔ »» Ñк ÒÖ º Ö»Ó Ñк\ Å ÖÐÓÛ Ø Ðº¸ ½ Å ÖÐÓÛ¸ ˺¸ È ÝØÓÒ ÂÓÒ ×¸ ˺¸ Ò\ ÐÐ ÓØظ º ´½ µº ËØÖ Ø Ò Ø ×ØÓÖ Ñ Ò Ö\ Û ÔÓ ÒØ Ö× Ò ×Ø Ð Ò Ñ × Ò À × Ðк ÁÒ ÁÒØ ÖÒ ¹\ Ø ÓÒ Ð ÏÓÖ × ÓÔ ÓÒ ÁÑÔÐ Ñ ÒØ Ò ÙÒ Ø ÓÒ Ð Ä Ò Ù ×\ ´Á ij µ¸ Ä ØÙÖ ÆÓØ × Ò ÓÑÔÙØ Ö Ë Ò ¸ ÄÓ Ñ¸\ Ì Æ Ø ÖÐ Ò ×º ËÔÖ Ò Ö Î ÖÐ º\ ÅÙ× Ð Ò ÊÙØ ÓÛ× ¸ ½ ÅÙ× Ð ¸ ź Ò ÊÙØ ÓÛ× ¸\ ź ´½ µº Å ÖØ Ò Ð Å Ø Ó × Ò Ò Ò Ð ÅÓ ÐÐ Ò º\ ËÔÖ Ò Öº\ È ÝØÓÒ ÂÓÒ × Ø Ðº¸ ½ È ÝØÓÒ ÂÓÒ ×¸ ˺¸ À٠׸ ʺ¸\ Ù Ù×Ø××ÓÒ¸ ĺ¸ ÖØÓÒ¸ º¸ ÓÙØ Ð¸ º¸ ÙÖØÓÒ¸ Ϻ¸\ × Ð¸ º¸ À ÑÑÓÒ ¸ ú¸ À ÒÞ ¸ ʺ¸ ÀÙ ¸ Ⱥ¸ ÂÓ Ò×¹\ ×ÓÒ¸ ̺¸ ÂÓÒ ×¸ ź¸ Ä ÙÒ ÙÖݸ º¸ Å Ö¸ º¸ È ¹\ Ø Ö×ÓÒ¸ º¸ Ê ¸ º¸ ÊÙÒ Ñ Ò¸ º¸ Ò Ï Ð Ö¸ Ⱥ\ ´½ µº Ê ÔÓÖØ ÓÒ Ø ÔÖÓ Ö ÑÑ Ò Ð Ò Ù À × ÐÐ º\ ØØÔ » × ÐкÓÖ º\ Ê ÚÙÞ Ò ÓÖ¸ ½ ½ Ê ÚÙÞ¸ º Ò ÓÖ¸ ź ´½ ½µº ÓÒ¹\ Ø ÒÙÓÙ× Å ÖØ Ò Ð × Ò ÖÓÛÒ Ò ÅÓØ ÓÒº ËÔÖ Ò Öº\ Ú Ò ÙÖ× Ò Ø Ðº¸ ¾¼¼¼ Ú Ò ÙÖ× Ò¸ º¸ ÃÐ Ò ¸ Ⱥ¸ Ò\ Î ×× Ö¸ º ´¾¼¼¼µº ÓÑ Ò¹×Ô ¬ Ð Ò Ù × Ò Ò¹\ ÒÓØ Ø\ Ð Ó Ö Ô Ýº Ì Ò Ð Ö ÔÓÖظ ÒØÖÙÑ ÚÓÓÖ\ Ï × ÙÒ Ò ÁÒ ÓÖÑ Ø ¸ Ñ×Ø Ö Ñº\ Ú Ò ÙÖ× Ò Ò ÃÐ Òظ ½ Ú Ò ÙÖ× Ò¸ º Ò ÃÐ Òظ\ Ⱥ ´½ µº Ä ØØÐ Ð Ò Ù × Ð ØØÐ Ñ ÒØ Ò Ò ÂÓÙÖÒ Ð\ Ó ËÓ ØÛ Ö Å ÒØ Ò Ò ¸ ½¼ ß ¾º\ Ï ÐÐÑÓØ Ø Ðº¸ ½ ¿ Ï ÐÐÑÓظ Ⱥ¸ ÛÝÒ ¸ º¸ Ò ÀÓÛ ¹\ ×ÓÒ¸ ˺ ´½ ¿µº ÇÔØ ÓÒ ÈÖ Ò Å Ø Ñ Ø Ð ÅÓ Ð× Ò\ ÓÑÔÙØ Ø ÓÒº ÇÜ ÓÖ Ò Ò Ð ÈÖ ×׺\ Ñ ÒØ×\ Ï Û ÖÑÐÝ Ø Ò ÂÓ Ò Ï × Ý¸ ÂÙÖ Ò × Ö¹ÈÓÖØ Ö¸ Ò\ Å Ð ÓÐÑ ÈÝÑÑ Ø ÄÓÑ Ö Ê × ËÝ×Ø Ñ× ÄØ ÓÖ Ø Ö\ ÓÐÐ ÓÖ Ø ÓÒº Ì Ý ÒÚ ×Ø\ Ö Ø Ð Ó Ø Ñ Ò Ù¹\ Ø Ò ØÛÓ Ó Ø ÔÖ × ÒØ ÙØ ÓÖ× ´È ÝØÓÒ ÂÓÒ × Ò Ë ¹\ Û Ö µ Ò Ø ÑÝ×Ø Ö × Ó ¬Ò Ò Ð ÓÒØÖ Ø× Ò Ø Ð ¹\ ÖÑ Ò¹ÌÓÝ Ú ÐÙ Ø ÓÒ ÑÓ Ðº  ҹŠÖ\ Ö Û ÖÑÐÝ\ Ø Ò × È Ð ÔÔ ÖØÞÒ Ö ÓÖ Ñ ÒÝ Ú ÖÝ ÐÔ ÙÐ × Ù×× ÓÒ×\ Ò ËÓ Ø Ò Ö Ð ÓÖ ¬Ò Ò Ð ×ÙÔÔÓÖØ Ó Ø × ÛÓÖ º Ï\ Ð×Ó Ø Ò ÓÒ Ð ÐÐ ÓØظ Ò Ö Û Ã ÒÒ Ý¸ ËØ Ô Ò Â ÖÚ ×¸\ Ò Ý ÅÓÖ Ò¸ ÆÓÖÑ Ò Ê Ñ× Ý¸ ÓÐ Ò ÊÙÒ Ñ Ò¸ Ú Î Ò¹\ ÒØ Ò Ø Á È Ö Ö ×¸ ÓÖ Ø Ö ÐÔ ÙÐ\ º\ Ê\ ÓÒ Ö Ò\ Ö Ò ×\ ÓÝÐ Ø Ðº¸ ½\ ÓÝÐ ¸ Ⱥ¸ ÖÓ ¸ ź¸ Ò Ð ×× ÖÑ Ò¸\ Ⱥ ´½ µº ÅÓÒØ ÖÐÓ Ñ Ø Ó × ÓÖ × ÙÖ ØÝ ÔÖ Ò º ÂÓÙÖ¹\ ÝÒ Ñ × Ò ÓÒØÖÓи ¾½ ½¾ ß½¿¾½º\ Ò Ð Ó ÓÒÓÑ\ Ð ×× Ò Ò Ë Ò ×¸ ½\ Ð ×× Ò¸ ú Ò Ë Ò ×¸ º\ ´½ µº Ç × ÖÚ Ð × Ö Ò ÓÖ ÙÒ Ø ÓÒ Ð Ö Ù Ø × Ö Ô¹\ Ø ÓÒº ÁÒ Ì Ö Ò¸ Ⱥ Ò Ô¸ ʺ¸ ØÓÖ׸ Ú Ò ×\ Ò ÓÑÔÙØ Ò Ë Ò ´ ËÁ Ƴ µ Ø × Ò ÓÑÔÙØ Ò\ Ë Ò\ ÓÒ Ö Ò ¸ Ä ØÙÖ ÆÓØ × Ò ÓÑÔÙØ Ö Ë Ò ¸\ Ô × ¾ß ¿º ËÔÖ Ò Ö Î ÖÐ º\ ÓÓ Ò Ä ÙÒ ÙÖݸ ½\ ÓÓ ¸ º Ò Ä ÙÒ ÙÖݸ º\ ´½ µº ×ÔÓ× Ð Ñ ÑÓ ÙÒ Ø ÓÒ׺ ÁÒ Ä ÙÒ ÙÖݸ º¸\ ØÓÖ¸ À × ÐÐ ÛÓÖ × ÓÔ¸ Ñ×Ø Ö Ñº\ ÓÓ Ø Ðº¸ ½\ ÓÓ ¸ º¸ Ä ÙÒ ÙÖݸ º¸ Ò\ Å ØØ Û׸ º ´½ µº ËÔ Ý Ò ×ÙÔ Ö× Ð Ö Ñ ÖÓ¹\ ÔÖÓ ××ÓÖ× Ò À Û º ÁÒ ÓÖÑ Ð Ø Ò ÕÙ × ÓÖ Ö Û Ö\ Ò\ Ö Û Ö ¹Ð ×Ý×Ø Ñ׸ Å Ö×ØÖ Ò ¸ ËÛ Òº\ ÓÜ Ø Ðº¸ ½\ Óܸ º º¸ ÊÓ×׸ ˺ º¸ Ò ÊÙ Ò×Ø Ò¸\ ź ´½ µº ÇÔØ ÓÒ ÔÖ Ò × ÑÔÐ ¬ ÔÔÖÓ º ÂÓÙÖÒ Ð\ Ó Ò Ò Ð ÓÒÓÑ ×¸ ¾¾ ß¾ ¿º\ ÐÐ ÓØØ Ò ÀÙ ¸ ½\ ÐÐ ÓØظ º Ò ÀÙ ¸ Ⱥ ´½ µº\ ÙÒ Ø ÓÒ Ð Ö Ø Ú Ò Ñ Ø ÓÒº ÁÒ Å ËÁ ÈÄ Æ\ ½¿\ 292", ["simon-peyton-jones/contracts.ps.gz"] = "Composing contracts: an adventure in nancial engineering\ Simon Peyton Jones\ Microsoft Research, Cambridge\ simonpj@microsoft.com\ Jean-Marc Eber\ Societe Generale\ jean-marc.eber@socgen.com\ Julian Seward\ University of Glasgow\ v-sewardj@microsoft.com\ 29th June 2000", ["simon-peyton-jones/deforestation-short-cut.pdf"] = "A Short Cut to Deforestation\ Andrew Gill John Launchbury Simon L Peyton Jones Department of Computing Science, University of Glasgow G12 8QQ fandy,jl,simonpjg@dcs.glasgow.ac.uk\ This paper is to appear in FPCA 1993.", ["simon-peyton-jones/deforestation-short-cut.ps"] = "A Short Cut to Deforestation\ Andrew Gill John Launchbury Simon L Peyton Jones\ Department of Computing Science, University of Glasgow G12 8QQ\ fandy,jl,simonpjg@dcs.glasgow.ac.uk\ This paper is to appear in FPCA 1993.", ["simon-peyton-jones/dfc.ps"] = "A Short Cut to Deforestation\ Andrew Gill John Launchbury Simon L Peyton Jones\ Department of Computing Science, University of Glasgow G12 8QQ\ fandy,jl,simonpjg@dcs.glasgow.ac.uk\ This paper is to appear in FPCA 1993.", ["simon-peyton-jones/eval-apply-jfp.pdf"] = "JFP 16 (4&5): 415–449, 2006.\ doi:10.1017/S0956796806005995\ c 2006 Cambridge University Press\ 415\ Printed in the United Kingdom\ Making a fast curry: push/enter vs. eval/apply\ for higher-order languages\ SIMON MARLOW and SIMON PEYTON JONES\ Microsoft Research, Cambridge, UK\ (e-mail: simonmar@microsoft.com)", ["simon-peyton-jones/eval-apply-jfp.ps"] = "Under consideration for publication in J. Functional Programming 1\ Making a Fast Curry: Push/Enter vs.\ Eval/Apply for Higher-order Languages\ Simon Marlow and Simon Peyton Jones\ Microsoft Research, Cambridge", ["simon-peyton-jones/eval-apply.ps"] = "Making a fast curry\ Push/enter vs eval/apply for higherorder languages\ March 27, 2003\ Simon Marlow and Simon Peyton Jones\ Microsoft Research, Cambridge", ["simon-peyton-jones/exceptions.ps.gz"] = "Asynchronous Exceptions in Haskell\ Simon Marlow and Simon Peyton Jones\ Microsoft Research, Cambridge\ Andrew Moran\ Oregon Graduate Institute", ["simon-peyton-jones/fc-icfp.ps"] = "System F with Type Equality Coercions\ Martin Sulzmann\ School of Computing\ National University of Singapore\ sulzmann@comp.nus.edu.sg\ Manuel Chakravarty\ Programming Languages and Systems\ Computer Science & Engineering\ chak@cse.unsw.edu.au\ Simon Peyton Jones\ Microsoft Research Ltd\ Cambridge, England\ simonpj@microsoft.com", ["simon-peyton-jones/first_class_modules.ps"] = "Submitted to the Ninth International Conference on Foundations of Object-Oriented Languages\ First-Class Modules for Haskell\ Mark Shields Simon Peyton Jones\ Microsoft Research Cambridge\ fmarkshie; simonpjg@microsoft.com", ["simon-peyton-jones/gadt-icfp.pdf"] = "Simple unification-based type inference for GADTs\ Simon Peyton Jones\ Microsoft Research, Cambridge\ Dimitrios Vytiniotis Stephanie Weirich Geoffrey Washburn\ University of Pennsylvania", ["simon-peyton-jones/haskell-beats-C.pdf"] = "Haskell Beats C Using Generalized Stream Fusion\ Geoffrey Mainland\ Roman Leshchinskiy\ Simon Peyton Jones\ Microsoft Research Ltd\ Cambridge, England\ gmainlan@microsoft.com\ rl@cse.unsw.edu.au\ Microsoft Research Ltd\ Cambridge, England\ simonpj@microsoft.com\ which fusion is relatively straightforward, was the first truly general\ solution.\ Instead of working directly with lists or vectors, stream fusion\ works by re-expressing these functions as operations over streams,\ each represented as a state and a step function that transforms the\ state while potentially yielding a single value. Alas, different operations need different stream representations, and no single representation works well for all operations (§2.3). Furthermore, for\ many operations it is not obvious what the choice of representation\ should be.\ In this paper we solve this problem with a new generalized", ["simon-peyton-jones/henk.ps.gz"] = "Henk: a typed intermediate language\ Simon Peyton Jones\ University of Glasgow and Oregon Graduate Institute\ Erik Meijer\ University of Utrecht and Oregon Graduate Institute\ May 20, 1997", ["simon-peyton-jones/higher-rank-jfp.pdf"] = "JFP 17 (1): 182, 2007.\ c 2006 Cambridge University Press\ 1\ doi:10.1017/S0956796806006034 First published online 9 June 2006 Printed in the United Kingdom\ Practical type inference for arbitrary-rank types\ SIMON PEYTON JONES\ Microsoft Research\ DIMITRIOS VYTINIOTIS\ University of Pennsylvania\ STEPHANIE WEIRICH\ University of Pennsylvania\ MARK SHIELDS\ Microsoft Research", ["simon-peyton-jones/higher-rank.ps"] = "Under consideration for publication in J. Functional Programming 1\ Type inference for arbitraryrank types is easy\ Simon Peyton Jones\ Mark Shields", ["simon-peyton-jones/history.pdf"] = "A History of Haskell: Being Lazy With Class\ April 16, 2007\ Paul Hudak\ Yale University paul.hudak@yale.edu\ John Hughes\ Chalmers University rjmh@cs.chalmers.se\ Simon Peyton Jones\ Microsoft Research simonpj@microsoft.com\ Philip Wadler\ University of Edinburgh wadler@inf.ed.ac.uk", ["simon-peyton-jones/imp-except.ps.gz"] = "A semantics for imprecise exceptions\ Simon Peyton Jones\ Microsoft Research Ltd, Cambridge\ simonpj@microsoft.com\ Alastair Reid\ Yale University\ reidalastair@cs.yale.edu\ Tony Hoare ff\ Cambridge University Computer Laboratory\ carh@comlab.ox.ac.uk\ Simon Marlow\ Microsoft Research Ltd, Cambridge\ tsimonm@microsoft.com\ Fergus Henderson\ The University of Melbourne\ fjh@cs.mu.oz.au", ["simon-peyton-jones/imperative.djvu"] = "Imperative functional programming \ Simon L Peyton Jones \ Philip Wadler \ Dept of Computing Science, University of Glasgow \ Emaih {s imonpj, wadl er}ldcs. gl agsow. ac. uk ", ["simon-peyton-jones/imperative.pdf"] = "Imperative functional programming\ Simon L Peyton Jones Philip Wadler Dept of Computing Science, University of Glasgow Email: {simonpj,wadler}@dcs.glagsow.ac.uk October 1992 This paper appears in ACM Symposium on Principles Of Programming Languages (POPL), Charleston, Jan 1993, pp71-84. This copy corrects a few minor typographical errors in the published version.", ["simon-peyton-jones/imperative.ps.Z"] = "Imperative functional programming\ Simon L Peyton Jones Philip Wadler\ Dept of Computing Science, University of Glasgow\ Email: --simonpj,wadler@dcs.glagsow.ac.uk\ October 1992\ This paper appears in\ ACM Symposium on Principles Of Programming Languages (POPL), Charleston, Jan 1993,\ pp7184. This copy corrects a few minor typographical errors in the published version.", ["simon-peyton-jones/inline-jfp.ps.gz"] = "Under consideration for publication in J. Functional Programming 1\ Secrets of the Glasgow Haskell Compiler inliner\ Simon Peyton Jones\ Microsoft Research Ltd, Cambridge\ simonpj@microsoft.com\ Simon Marlow\ Microsoft Research Ltd, Cambridge\ simonmar@microsoft.com", ["simon-peyton-jones/inline.ps.gz"] = "Secrets of the GHC inliner\ Simon Peyton Jones\ Microsoft Research Ltd, Cambridge\ simonpj@microsoft.com", ["simon-peyton-jones/jfp-outsidein.pdf"] = "Under consideration for publication in J. Functional Programming\ 1\ OutsideIn(X) Modular type inference with local assumptions\ 7 May 2010\ Dimitrios Vytiniotis\ Microsoft Research\ Simon Peyton Jones\ Microsoft Research\ Tom Schrijvers\ Katholieke Universiteit Leuven\ Martin Sulzmann\ Informatik Consulting Systems AG", ["simon-peyton-jones/lazy-functional-state-threads.ps.gz"] = "Lazy Functional State Threads\ John Launchbury and Simon L Peyton Jones\ University of Glasgow\ Email: --simonpj,jl@dcs.glasgow.ac.uk. Phone: +44413304500\ March 10, 1994", ["simon-peyton-jones/let-not-generalized.pdf"] = "Let Should not be Generalised\ Dimitrios Vytiniotis\ Simon Peyton Jones\ Tom Schrijvers ∗\ Microsoft Research Cambridge, UK\ dimitris@microsoft.com\ Microsoft Research Cambridge, UK\ simonpj@microsoft.com\ Katholieke Universiteit Leuven, Belgium\ tom.schrijvers@cs.kuleuven.be", ["simon-peyton-jones/let-not-generalized.ps"] = "Let Should not be Generalised\ Dimitrios Vytiniotis\ Microsoft Research Cambridge, UK\ dimitris@microsoft.com\ Simon Peyton Jones\ Microsoft Research Cambridge, UK\ simonpj@microsoft.com\ Tom Schrijvers #\ Katholieke Universiteit Leuven, Belgium\ tom.schrijvers@cs.kuleuven.be", ["simon-peyton-jones/lw-conc.pdf"] = "Lightweight concurrency: working notes\ July 17, 2006\ Olin Shivers Simon Peyton Jones", ["simon-peyton-jones/lw-conc.ps"] = "Lightweight concurrency: working notes\ July 17, 2006\ Olin Shivers Simon Peyton Jones", ["simon-peyton-jones/marktoberdorf.ps.gz"] = "Tackling the Awkward Squad:\ monadic input/output, concurrency, exceptions, and\ foreign-language calls in Haskell\ Simon PEYTON JONES\ Microsoft Research, Cambridge\ simonpj@microsoft.com\ http://research.microsoft.com/users/simonpj\ 21st February 2001", ["simon-peyton-jones/meta-haskell.pdf"] = "Template Meta-programming for Haskell\ Tim Sheard\ OGI School of Science & Engineering Oregon Health & Science University\ Simon Peyton Jones\ Microsoft Research Ltd\ simonpj@microsoft.com\ sheard@cse.ogi.edu", ["simon-peyton-jones/multi.ps"] = "Type classes: an exploration of the design space\ Simon Peyton Jones\ University of Glasgow and Oregon Graduate Institute\ Mark Jones\ University of Nottingham\ Erik Meijer\ University of Utrecht and Oregon Graduate Institute\ May 2, 1997", ["simon-peyton-jones/multicore-ghc.pdf"] = "Runtime Support for Multicore Haskell\ Simon Marlow\ Microsoft Research simonmar@microsoft.com\ Simon Peyton Jones\ Microsoft Research simonpj@microsoft.com\ Satnam Singh\ Microsoft Research satnams@microsoft.com", ["simon-peyton-jones/oeval-apply.ps"] = "Making a fast curry\ Push/enter vs eval/apply for higherorder languages\ March 18, 2003\ Simon Marlow and Simon Peyton Jones\ Microsoft Research, Cambridge", ["simon-peyton-jones/ogadt.ps"] = "Wobbly types: type inference for generalised algebraic data types\ Simon Peyton Jones\ Microsoft Research, Cambridge\ Geoffrey Washburn\ University of Pennsylvania\ Stephanie Weirich\ University of Pennsylvania", ["simon-peyton-jones/ooeval-apply.ps"] = "Making a fast curry\ Push/enter vs eval/apply for higherorder languages\ January 13, 2003\ Simon Marlow and Simon Peyton Jones\ Microsoft Research, Cambridge", ["simon-peyton-jones/oputting.ps.gz"] = "Under consideration for publication in J. Functional Programming 1\ Practical type inference for arbitrary-rank types\ 5 January 2004\ Simon Peyton Jones\ Mark Shields", ["simon-peyton-jones/pal-ifl.ps.gz"] = "C: A Portable Assembly Language\ Simon Peyton Jones 1 , Thomas Nordin 2 , and Dino Oliva 2\ 1 Department of Computing Science, University of Glasgow\ 2 Pacific Software Research Centre, Oregon Graduate Institute", ["simon-peyton-jones/pal-manual.ps.gz"] = "The C Language Reference Manual\ Simon Peyton Jones Thomas Nordin Dino Oliva Pablo Nogueira Iglesias\ April 23, 1998\ Contents\ 1 Introduction 3\ 2 Syntax definition 3\ 2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3\ 2.2 Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\ 2.3 Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\ 2.4 Name scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\ 2.5 The import and export declarations . . . . . . . . . . . . . . . . . . . . . . . . 6\ 2.6 Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\ 2.6.1 Integer and floating point numbers . . . . . . . . . . . . . . . . . . . . . . . 7\ 2.6.2 Characters and strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\ 3 Fundamental concepts in C 7\ 3.1 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\ 3.2 Data segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 3.3 Code segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 3.4 Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 3.5 Local variables (or registers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\ 3.6 Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\ 3.7 Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\ 3.8 Foreign language interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\ 4 Data layout directives 9\ 4.1 Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10\ 4.2 Initialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10\ 4.3 Alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\ 1\ 5 Procedures 12\ 5.1 Procedure definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\ 5.2 Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\ 5.2.1 skip; . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\ 5.2.2 Declaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\ 5.2.3 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\ 5.2.4 Memory write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\ 5.2.5 if and relational operations . . . . . . . . . . . . . . . . . . . . . . . . . . 14\ 5.2.6 switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15\ 5.2.7 Local control labels and goto . . . . . . . . . . . . . . . . . . . . . . . . . 16\ 5.2.8 Procedure call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\ 5.2.9 jump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\ 5.2.10 return . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\ 5.3 Foreign language interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19\ 6 Expressions 20\ 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20\ 6.2 Memory read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20\ 6.3 Operators, precedence, and evaluation order . . . . . . . . . . . . . . . . . . . . . . 21\ 6.4 Primitives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\ 6.5 Exception handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\ 6.6 Casting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\ 6.6.1 wordn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\ 6.6.2 floatn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\ 6.7 word operators and primitives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24", ["simon-peyton-jones/pldi_version.ps"] = "Optimistic Evaluation: an adaptive evaluation strategy for\ nonstrict programs\ Robert Ennals Simon Peyton Jones\ Computer Laboratory, University of Cambridge Microsoft Research Ltd, Cambridge\ Robert.Ennals@cl.cam.ac.uk simonpj@microsoft.com", ["simon-peyton-jones/ppdp.ps.gz"] = "C: a portable assembly language\ Simon Peyton Jones 1 , Norman Ramsey 2 , and Fermin Reig 3\ 1 Microsoft Research Ltd\ 2 University of Virginia\ 3 University of Glasgow", ["simon-peyton-jones/profiling.pdf"] = "Formally Based Profiling for Higher-Order Functional\ Languages\ PATRICK M. SANSOM and SIMON L. PEYTON JONES\ University of Glasgow\ We present the first source-level profiler for a compiled, nonstrict, higher-order, purely functional\ language capable of measuring time as well as space usage. Our profiler is implemented in a\ production-quality optimizing compiler for Haskell and can successfully profile large applications.\ A unique feature of our approach is that we give a formal specification of the attribution of\ execution costs to cost centers. This specification enables us to discuss our design decisions in\ a precise framework, prove properties about the attribution of costs, and examine the effects of\ different program transformations on the attribution of costs. Since it is not obvious how to map\ this specification onto a particular implementation, we also present an implementation-oriented", ["simon-peyton-jones/profiling.ps.gz"] = "Formally Based Profiling for HigherOrder Functional\ Languages\ PATRICK M. SANSOM and SIMON L. PEYTON JONES\ University of Glasgow\ We present the first sourcelevel profiler for a compiled, nonstrict, higherorder, purely functional\ language capable of measuring time as well as space usage. Our profiler is implemented in a\ productionquality optimizing compiler for Haskell and can successfully profile large applications.\ A unique feature of our approach is that we give a formal specification of the attribution of\ execution costs to cost centers. This specification enables us to discuss our design decisions in\ a precise framework, prove properties about the attribution of costs, and examine the effects of\ different program transformations on the attribution of costs. Since it is not obvious how to map\ this specification onto a particular implementation, we also present an implementationoriented", ["simon-peyton-jones/putting.ps.gz"] = "Under consideration for publication in J. Functional Programming 1\ Practical type inference for arbitrary-rank types\ 22 February 2006\ Simon Peyton Jones\ Microsoft Research\ Dimitrios Vytiniotis\ University of Pennsylvania\ Stephanie Weirich\ University of Pennsylvania\ Mark Shields\ Microsoft", ["simon-peyton-jones/rules.ps.gz"] = "Playing by the Rules: Rewriting as a practical optimisation technique in GHC\ Simon Peyton Jones\ Microsoft Research Ltd\ simonpj@microsoft.com\ Andrew Tolmach\ Portland State University\ apt@cs.pdx.edu\ Tony Hoare\ Microsoft Research Ltd\ thoare@microsoft.com\ March 19, 2001", ["simon-peyton-jones/spineless.ps.gz"] = "Implementing lazy functional languages on stock hardware:\ the Spineless Tagless Gmachine \\Lambda\ Version 2.5\ Simon L Peyton Jones\ Department of Computing Science, University of Glasgow G12 8QQ\ simonpj@dcs.glasgow.ac.uk\ July 9, 1992", ["simon-peyton-jones/state-lasc.ps.gz"] = ", , 1--51 ()\ c\ fl Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ State in Haskell\ JOHN LAUNCHBURY jl@cse.ogi.edu\ Oregon Graduate Institute, PO Box 91000, Portland, OR 972911000\ SIMON L PEYTON JONES simonpj@dcs.glasgow.ac.uk\ University of Glasgow, G12 8QQ, Scotland", ["simon-peyton-jones/strategies.ps.gz"] = "J. Functional Programming 1 (1): 1--000, January 1993 c\ fl 1993 Cambridge University Press 1\ Algorithm + Strategy = Parallelism\ P.W. TRINDER\ Department of Computing Science, University of Glasgow, Glasgow, UK\ K. HAMMOND\ Division of Computing Science, University of St Andrews, St Andrews, UK\ H.W. LOIDL AND S.L. PEYTON JONES y\ Department of Computing Science, University of Glasgow, Glasgow, UK", ["simon-peyton-jones/super.ps"] = "Picothreads for operating system code\ Simon Peyton Jones\ January 10, 2000\ 1 Introduction\ Paul Barham outlined for us:\ (a) The way he'd like to write operating system code. The\ code looks like a sequential program, but if it is ex-\ ecuted like that it will run dreadfully slowly because\ it interacts synchronously with remote machines and\ devices.\ (b) The way he is forced to write it. The code is split into\ a myriad fragments, driven o events such as returning\ messages from remote machines or device interrupts.\ In practice, it is so dicult to get the event-driven code (b)\ to work correctly that people often use (a) and accept that\ its performance sucks.\ This paper makes a rst stab at de ning a language that\ combines the programming convenience of (a) with the per-\ formance of (b). Indeed, to a rst approximation, the lan-", ["simon-peyton-jones/superl.ps"] = "Picothreads for operating system code\ Simon Peyton Jones\ January 10, 2000\ 1 Introduction\ Paul Barham outlined for us:\ (a) The way he'd like to write operating system code. The\ code looks like a sequential program, but if it is ex-\ ecuted like that it will run dreadfully slowly because\ it interacts synchronously with remote machines and\ devices.\ (b) The way he is forced to write it. The code is split into\ a myriad fragments, driven o events such as returning\ messages from remote machines or device interrupts.\ In practice, it is so dicult to get the event-driven code (b)\ to work correctly that people often use (a) and accept that\ its performance sucks.\ This paper makes a rst stab at de ning a language that\ combines the programming convenience of (a) with the per-\ formance of (b). Indeed, to a rst approximation, the lan-", ["simon-peyton-jones/typefun.pdf"] = "Fun with type functions Version 2\ Oleg Kiselyov Simon Peyton Jones July 2, 2009\ Tony Hoare has always been a leader in writing down and proving properties of programs. To prove properties of programs automatically, the most widely used technology today is by far the ubiquitous type checker. Alas, static type systems inevitably exclude some good programs and allow some bad ones. This dilemma motivates us to describe some fun we've been having with Haskell, by making the type system more expressive without losing the benefits of automatic proof and compact expression. Haskell's type system extends Hindley-Milner with two distinctive features: polymorphism over type constructors and overloading using type classes. These features have become integral to Haskell, and they are widely used and appreciated [29]. More recently, Haskell has been enriched with type families [6, 7, 43], which allows functions on types to be expressed as straightforwardly as functions on values. This facility makes it easier for programmers to effectively extend the compiler by writing functional programs that execute during type-checking. This paper gives a programmer's tour of type families as they are supported in GHC today. This is the second major iteration of our paper. We warmly encourage feedback on this draft, prior to publication. Please add comments to the Wiki page at http: // haskell. org/ haskellwiki/ Simonpj/ Talk: FunWithTypeFuns .", ["sjaak-smetsers/bare93-typinggrs.ps.gz"] = "a#aaa\ Conventional and Uniqueness Typing\ in Graph Rewrite Systems\ Erik Barendsen Sjaak Smetsers\ University of Nijmegen \\Lambda", ["sjaak-smetsers/bare96-uniclosed.ps.gz"] = "a#aaaaa\ Math. Struct. in Comp. Science (1996), vol. 00, pp. 1--36 Copyright c\ fl Cambridge University Press\ Uniqueness Typing for Functional Languages\ with Graph Rewriting Semantics\ ER I K BARENDSEN and S JAAK SMETSERS\ Computing Science Institute, University of Nijmegen,\ Toernooiveld 1, 6525 ED Nijmegen, The Netherlands,\ email erikb@cs.kun.nl, sjakie@cs.kun.nl\ Received November 1995, revised May 1996\ We present two type systems for term graph rewriting: conventional typing and\ (polymorphic) uniqueness typing. The latter is introduced as a natural extension of\ simple algebraic and higherorder uniqueness typing. The systems are given in natural\ deduction style using an inductive syntax of graph denotations with familiar constructs\ such as let and case.\ The conventional system resembles traditional Currystyle typing systems in functional\ programming languages. Uniqueness typing extends this with reference count", ["software.pdf"] = "Software Fault Prevention by Language Choice: Why C is Not My Favorite Language\ Richard Fateman Computer Science Division Electrical Engineering and Computer Sciences Dept. University of California, Berkeley February 1, 2001", ["soner-onder/iccl98a.ps"] = "Automatic Generation of Microarchitecture Simulators \\Lambda\ Soner \ Onder Rajiv Gupta\ Department of Computer Science\ University of Pittsburgh\ Pittsburgh PA 15260\ fsoner,guptag@cs.pitt.edu", ["sooraj-bhat/bhat_sooraj_b_201305_phd.pdf"] = "SYNTACTIC FOUNDATIONS FOR MACHINE LEARNING\ A Thesis\ Presented to\ The Academic Faculty\ by\ Sooraj Bhat\ In Partial Fulfillment\ of the Requirements for the Degree\ Doctor of Philosophy in the\ College of Computing\ Georgia Institute of Technology\ May 2013\ Copyright c Sooraj Bhat 2013\ SYNTACTIC FOUNDATIONS FOR MACHINE LEARNING\ Approved by:\ Prof. Alexander Gray, Advisor\ College of Computing\ Georgia Institute of Technology\ Prof. Richard Vuduc\ College of Computing\ Georgia Institute of Technology\ Prof. Charles Isbell, Advisor\ College of Computing\ Georgia Institute of Technology\ Prof. Chung-chieh Shan\ School of Informatics and Computing\ Indiana University\ Dr. Ashish Agarwal\ Courant Institute of Mathematics\ New York University\ Date Approved: 2 April 2013\ ACKNOWLEDGEMENTS\ I have been exceedingly fortunate to have met and interacted with a number of wonderful\ people who have made this thesis possible. I pray I have returned at least a fraction of the", ["sooraj-bhat/deriving-pdfs.pdf"] = "Deriving Probability Density Functions\ from Probabilistic Functional Programs\ Sooraj Bhat1 , Johannes Borgstr¨ m2 , Andrew D. Gordon3,4 , and Claudio Russo3\ o\ 1\ Georgia Institute of Technology\ 2 Uppsala University\ 3 Microsoft Research\ 4 University of Edinburgh", ["sooraj-bhat/type-theory-for-pdfs.pdf"] = "A Type Theory for Probability Density Functions\ Sooraj Bhat\ Ashish Agarwal\ Richard Vuduc, Alexander Gray\ Georgia Institute of Technology\ sooraj@gatech.edu\ New York University\ ashish.agarwal@nyu.edu\ Georgia Institute of Technology\ {richie,agray}@cc.gatech.edu", ["soren-holmstrom/pfl.djvu"] = "Programming Methodology Group \ University of G6tebrg and Chalmers Universit'y of l'echnology \ PFL: A Functional Language for \ Parallel Programming, and \ its Implementation. \ S6ren Holmstr6m \ Report 7 September 1983 \ I \ o  \ m 0 \ I \ o \ I \ I ", ["sorin-lerner/popl05.pdf"] = "Automated Soundness Proofs for Dataflow Analyses and Transformations via Local Rules\ Sorin Lerner Univ. of Washington lerns@cs.washington.edu Todd Millstein UCLA todd@cs.ucla.edu\ Erika Rice Craig Chambers Univ. of Washington Univ. of Washington erice@cs.washington.edu chambers@cs.washington.edu ABSTRACT\ We present Rhodium, a new language for writing compiler optimizations that can be automatically proved sound. Unlike our previous work on Cobalt, Rhodium expresses optimizations using explicit dataflow facts manipulated by local propagation and transformation rules. This new style allows Rhodium optimizations to be mutually recursively defined, to be automatically composed, to be interpreted in both flow-sensitive and -insensitive ways, and to be applied interprocedurally given a separate context-sensitivity strategy, all while retaining soundness. Rhodium also supports infinite analysis domains while guaranteeing termination of analysis. We have implemented a soundness checker for Rhodium and have specified and automatically proven the soundness of all of Cobalt's optimizations plus a variety of optimizations not expressible in Cobalt, including Andersen's points-to analysis, arithmetic-invariant detection, loop-induction-variable strength reduction, and redundant array load elimination. Categories and Subject Descriptors: D.2.4 [Software Engineering]: Software/Program Verification correctness proofs, reliability, validation; D.3.4 [Programming Languages]: Processors compilers, optimization; F.3.1 [Logics and Meanings of Programs]: Specifying and Verifying and Reasoning about Programs mechanical verification General Terms: Reliability, languages, verification. Keywords: Compiler optimization, automated correctness proofs. making compilers trustworthy, including testing, translation validation [25, 23], credible compilation [26], and manual proof techniques [8, 9, 37, 14, 17, 10]. In previous work [19], we presented a system in which optimizations could be checked for soundness automatically. An optimization is sound if it is guaranteed to preserve the semantics of any program it optimizes. Our solution was centered on a domain-specific language for writing optimizations, called Cobalt. An optimization written in Cobalt was checked for soundness by asking an automatic theorem prover to discharge a small set of simple proof obligations. We proved by hand, once and for all, that if a Cobalt optimization satisfies these obligations, then the optimization is indeed sound. Unlike testing, credible compilation, and translation validation, this checking is done once when the compiler is developed, separately from any particular programs being optimized. Cobalt thus enables a key component of modern optimizing compilers to become trusted, and it opens the door for users to extend their compilers with applicationspecific optimizations without compromising the correctness of the compiler. Cobalt is expressive enough to allow a range of flowsensitive intraprocedural optimizations to be defined and proved correct. Using Cobalt, we were able to write and automatically check the soundness of constant propagation, copy propagation, dead-assignment elimination, common subexpression elimination, partial redundancy elimination, partial dead-code elimination, and simple kinds of pointer analyses. However, Cobalt's design, where optimizing transformations are triggered based on a restricted temporal-logic predicate over the entire control flow graph (CFG), imposes limits that make it difficult to extend to a wider range of optimizations. In this paper we present Rhodium, a new domain-specific language for optimizations that can express a much greater range of optimizations while still proving them sound automatically. The key technical change from Cobalt is to make dataflow facts explicit (rather than implicit in a temporallogic predicate) and to use a separate and extensible set of local propagation and transformation rules to generate new dataflow facts from old dataflow facts and to specify when statements are optimized based on inflowing dataflow facts. Each dataflow fact is given a semantic meaning, in the form of a predicate over program states. To prove a Rhodium optimization correct, our system asks an automatic theo-", ["stefan-pees/cad_pees99dac.ps.gz"] = "LISA -- Machine Description Language for CycleAccurate Models of\ Programmable DSP Architectures\ Stefan Pees 1 , Andreas Hoffmann 1 , Vojin Zivojnovic 2 , Heinrich Meyr 1\ 1 Integrated Signal Processing Systems 2 AXYS Design Automation, Inc.\ Aachen University of Technology 135 Santa Louisa\ Aachen, Germany Irvine, CA 92606, USA\ pees,hoffmann,meyr@ert.rwthaachen.de vz@axysdesign.com", ["stefan-savage/Tocs97.pdf"] = "Eraser: A Dynamic Data Race Detector for Multithreaded Programs\ STEFAN SAVAGE University of Washington MICHAEL BURROWS, GREG NELSON, and PATRICK SOBALVARRO Digital Equipment Corporation and THOMAS ANDERSON University of California at Berkeley\ Multithreaded programming is difficult and error prone. It is easy to make a mistake in synchronization that produces a data race, yet it can be extremely hard to locate this mistake during debugging. This article describes a new tool, called Eraser, for dynamically detecting data races in lock-based multithreaded programs. Eraser uses binary rewriting techniques to monitor every shared-memory reference and verify that consistent locking behavior is observed. We present several case studies, including undergraduate coursework and a multithreaded Web search engine, that demonstrate the effectiveness of this approach. Categories and Subject Descriptors: D.1.3 [Programming Techniques]: Concurrent Programming--parallel programming; D.2.5 [Software Engineering]: Testing and Debugging-- debugging aids; monitors; tracing; D.4.1 [Operating Systems]: Process Management-- concurrency; deadlock; multiprocessing/multiprogramming; mutual exclusion; synchronization General Terms: Algorithms, Experimentation, Reliability Additional Key Words and Phrases: Binary code modification, multithreaded programming, race detection", ["stefan-savage/Tocs97.ps"] = "Eraser: A Dynamic Data Race Detector for\ Multithreaded Programs\ STEFAN SAVAGE\ University of Washington\ MICHAEL BURROWS, GREG NELSON, and PATRICK SOBALVARRO\ Digital Equipment Corporation\ and\ THOMAS ANDERSON\ University of California at Berkeley\ Multithreaded programming is difficult and error prone. It is easy to make a mistake in\ synchronization that produces a data race, yet it can be extremely hard to locate this mistake\ during debugging. This article describes a new tool, called Eraser, for dynamically detecting\ data races in lockbased multithreaded programs. Eraser uses binary rewriting techniques to\ monitor every sharedmemory reference and verify that consistent locking behavior is ob\ served. We present several case studies, including undergraduate coursework and a multi\ threaded Web search engine, that demonstrate the effectiveness of this approach.", ["stephen-adams/efficient-sets.djvu"] = "", ["stephen-adams/efficient-sets.pdf"] = "", ["stephen-adams/es-ocr.djvu"] = "J. Functional Programming 3 (4): 553-561, October 1993  1993 Cambridge University Press \ 553 \ FUNCTIONAL PEARLS \ Efficient setsa balancing act \ STEPHEN ADAMS \ Electronics and Computer Science Department, University of Southampton, UK \ Capsule Review \ In late 1991 I organized an international programming competition for the Standard ML \ community, Each entrant implemented the 'set of integers' abstract data type, matching a \ signature that I provided. Prizes (donated by MIT Press) were awarded in two categories' \ fastest program (on a particular bench:mark), and most elegant yet still efficient program. \ More than a dozen entries were received; the top four entries in the speed category are \ listed here: \ 1 Jon Freeman, U. of Pennsylvania \ 2 Stephen Adams, U. of Southampton \ 3 Thomas Yan& Sendhil Mullainathan, Cornell U. \ 4 Eugene Stark, State U. of New York at Stonybrook \ N -- 105 N -- 104 \ 128 sec 10.1 sec \ 132 8.9 \ 189 16.7 \ 226 18.5 \ The winner in the elegance category was Stephen Adams. His program was almost as fast ", ["stephen-edwards/automated-feedback.pdf"] = "Using Test-Driven Development in the Classroom:\ Providing Students with Automatic, Concrete Feedback on Performance\ Stephen H. EDWARDS\ Dept. of Computer Science, Virginia Tech\ 660 McBryde Hall, Mail Stop 0106\ Blacksburg, VA 24061, USA\ +1 540 231 5723\ edwards@cs.vt.edu", ["stephen-edwards/teaching-testing.pdf"] = "Teaching Software Testing: Automatic Grading Meets\ Test-first Coding\ Stephen H. Edwards\ Virginia Tech, Dept. of Computer Science\ 660 McBryde Hall, Mail Stop 0106\ Blacksburg, VA 24061 USA\ +1 540 231 5723\ edwards@cs.vt.edu", ["stephen-gilmore/ECS-LFCS-97-378.dvi"] = "Dynamic ML without Dynamic Types\ Stephen Gilmore, Dilsun Kirli and Christopher Walton\ Laboratory for Foundations of Computer Science\ Department of Computer Science\ The University of Edinburgh\ June 15, 1998", ["stephen-gilmore/fengshui.ps.gz"] = "Feng Shui for Standard ML Programmers\ Stephen Gilmore\ LFCS, Edinburgh", ["stephen-gilmore/tutorial.ps.gz"] = "Programming in Standard ML '97:\ A Tutorial Introduction\ Stephen Gilmore\ Laboratory for Foundations of Computer Science\ The University of Edinburgh\ September 1997\ (Revised: July 1998, April 2000)\ Copyright notice\ This work is copyright c\ fl 1997, 1998, 2000. The copyright resides with the author, Stephen\ Gilmore. Copyright and all rights therein are maintained by the author, notwithstanding that\ he has offered his work for electronic distribution. It is understood that all persons copying this\ information will adhere to the terms and constraints invoked by the author's copyright. This work\ may not be reposted without the explicit permission of the copyright holder. Single copies can be\ made for personal or scholarly use.\ Disclaimer of warranty\ The computer programs which appear in this tutorial are distributed in the hope that they will be", ["stephen-johnson/cache.pdf"] = "T H E A L G O R I T H M S TA U G H T T O C O M -\ STEPHEN C. JOHNSON\ algorithms for the 21st century\ P R E S E N T E D AT T H E 2 0 0 6 USEN IX AN N UAL TEC H N ICAL CON FER ENC E, B OSTON, MA\ Steve Johnson spent nearly 20 years at Bell Labs, where he wrote Yacc, Lint, and the Portable C Compiler. He served on the USENIX board for 10 years, 4 of them as president. scj@yaccman.com\ puter science students haven't changed all that much in the past several decades, but the machines these algorithms run on have changed a great deal. Each of these algorithms is analyzed and justified based on a model of the machine running the algorithm. The analysis is often in terms of asymptotic behavior (usually described as the behavior on large problems).\ This article claims that the machines we run today do not resemble, in performance, the models being used to justify traditional algorithms. In fact, today's caches and memory systems seem to reward sequential memory access, but they may actually penalize memory patterns that seem to have considerable locality of reference. This behavior is especially noticeable for the kinds of very large problems that are driving us to 64-bit architectures.", ["stephen-johnson/postloading.pdf"] = "", ["stephen-park/minimal-standard-random.djvu"] = "COMPUTINGPRACTICES \ Edgar H. Sibley \ Panel Editor \ Practical and theoretical issues are presented concerning the design, \ implementation, and use of a good, minimal standard random number \ generator that will port to virtually all systems. \ RANDOM NUMBER GEUERATORS: \ GOOD ONES ARE HARD TO FIN \ STEPHEN K. PARK AND KEITH W . MILLER \ An important utility that digital computer systems \ should provide is the ability to generate random num- \ bers. Certainly this is true in scientific computing \ where many years of experience has demonstrated the \ importance of access to a good random number genera- \ tor. And in a wider sense, largely due to the ency- \ clopedic efforts of Donald Knuth [18], there is now a \ realization that random number generation is a concept \ of fundamental importance in many different areas of \ computer science. Despite that, the widespread adop- ", ["stephen-shum/p66-shum.pdf"] = "Using\ L&rate\ Programming\ to Teach GocNI Programming\ Stephen Shum\ Praetkes\ Computer\ Science Department College 57197\ Augustana\ Sioux Falls, SD\ Cllttis\ Cook\ Computer Corvallis, ABSTRACT The ability to comprehend a program written by other individurds\ Scienee Department OR 97331-32&2 documentation program fails fails to provide information is insight on other into why a particular functions. It also between [4]. relationships\ Oregon State University\ structure is used, or how the program\ to provide\ is beeotning increasingly important in sotlsvare development and maintenanoc. In an attempt to encourage undergraduate Computer Science students to write the literate teaching Augustana teach good experiment of programming one College, informative paradigm and usable documentation, was incorporated Scienee into course the at to the\ program components other than these syntactical As eomputcr students usually documentation non-essential", ["stephen-weeks/01-icfp.ps.gz"] = "Contification Using Dominators\ Matthew Fluet\ Cornell University\ fluet@cs.cornell.edu\ Stephen Weeks\ InterTrust STAR Laboratories\ sweeks@intertrust.com", ["steve-blackburn/immix-gc.pdf"] = "TR-CS-07-04\ Immix Garbage Collection: Fast Collection, Space Efficiency, and Mutator Locality\ Stephen M. Blackburn, Kathryn S. McKinley\ August 2007\ Joint Computer Science Technical Report Series Department of Computer Science Faculty of Engineering and Information Technology Computer Sciences Laboratory Research School of Information Sciences and Engineering\ This technical report series is published jointly by the Department of Computer Science, Faculty of Engineering and Information Technology, and the Computer Sciences Laboratory, Research School of Information Sciences and Engineering, The Australian National University. Please direct correspondence regarding this series to: Technical Reports Department of Computer Science Faculty of Engineering and Information Technology The Australian National University Canberra ACT 0200 Australia or send email to: Technical-DOT-Reports-AT-cs-DOT-anu.edu.au A list of technical reports, including some abstracts and copies of some full reports may be found at: http://cs.anu.edu.au/techreports/ Recent reports in this series: TR-CS-07-03 Peter Christen. Towards parameter-free blocking for scalable record linkage. August 2007. TR-CS-07-02 Sophie Pinchinat. Quantified mu-calculus with decision modalities for concurrent game structures. January 2007. TR-CS-07-01 Samuel Chang and Peter Strazdins. A survey of how virtual machine and intelligent runtime environments can support cluster computing. February 2007. TR-CS-06-03 Stephen M. Blackburn and Kathryn S. McKinley. Transient caches and object streams. October 2006. TR-CS-06-02 Peter Christen. A comparison of personal name matching: Techniques and practical issues. September 2006. TR-CS-06-01 Stephen M Blackburn, Robin Garner, Chris Hoffmann, Asjad M Khan, Kathryn S McKinley, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J Eliot B Moss, Aashish Phansalkar, Darko Stefanovi , c Thomas VanDrunen, Daniel von Dincklage, and Ben Wiedermann. The DaCapo benchmarks: Java benchmarking development and analysis (Extended Version). September 2006.", ["steve-bourne/shell.pdf"] = "An Introduction to the UNIX Shell S. R. Bourne Bell Laboratories Murray Hill, New Jersey 07974", ["steven-lavalle/AtrLav02.ps"] = "E#cient Nearest Neighbor Searching for Motion Planning\ Anna Atramentov Steven M. LaValle\ Dept. of Computer Science Dept. of Computer Science\ Iowa State University University of Illinois\ Ames, IA 50011 USA Urbana, IL 61801 USA\ anjuta@cs.iastate.edu lavalle@cs.uiuc.edu", ["steven-lavalle/Lav98c.ps"] = "Rapidly-Exploring Random Trees: A New Tool for Path Planning\ Steven M. LaValle\ Department of Computer Science\ Iowa State University\ Ames, IA 50011 USA\ lavalle@cs.iastate.edu", ["steven-lavalle/rrt.ps"] = "Rapidly-Exploring Random Trees: Progress and Prospects\ Steven M. LaValle, Iowa State University, Ames, IA, USA\ James J. Ku ner, Jr., University of Tokyo, Bunkyo-ku, Tokyo, Japan\ We present our current progress on the design and\ analysis of path planning algorithms based on Rapidly-\ exploring Random Trees (RRTs). The basis for our\ methods is the incremental construction of search trees\ that attempt to rapidly and uniformly explore the state\ space, o ering bene ts that are similar to those ob-\ tained by other successful randomized planning meth-\ ods. In addition, RRTs are particularly suited for prob-\ lems that involve di erential constraints. Basic the-\ oretical properties of RRT-based planners are estab-\ lished. Several planners based on RRTs are discussed\ and compared. Experimental results are presented for", ["steven-muchnick/dbxtool.djvu"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 16(7), 653-669 (JULY 1986) \ Dbxtool: A \ Debugger \ Window-Based Symbolic \ for Sun Workstations* \ EVAN ADAMS AND STEVEN S. MUCHNICK \ Sun 3Iicrosystems, Inc., 2550 Garcia Average, Mountain 17ew, C4 94043, U.S.A. \ SUMMARY \ Dbxtool is a window- and mouse-based debugger for C, Pascal and FORTRAN programs running \ on Sun workstations. Its use of the mouse as the primary input mechanism eliminates the need \ to type variables, line numbers, breakpoints and most commands. Its multiple windows provide \ several qualitatively different perspectives on the debugging problem. Compared to the Unix \ 4.2 BSD dbx from which it is derived, it has been extended with the abilities to debug multiple- \ process programs, already-running processes, and the Sun Operating System kernel. \ v.E woRr>s Source-level debugging Window system User interface UNIX ", ["steven-novack/semret.ps.gz"] = "A Simple Mechanism for Improving the Accuracy\ and Efficiency of Instructionlevel Disambiguation ?\ Steven Novack, Joseph Hummel, and Alexandru Nicolau\ Department of Information and Computer Science\ University of California, Irvine, CA 92717", ["stina-bridgeman/pilot.pdf"] = "PILOT: An Interactive Tool for Learning and Grading*\ Stina Bridgeman\ Brown Univ.\ ssb@cs.brown.edu\ Michael T. Goodrich\ Johns Hopkins Univ.\ goodrich@jhu.edu\ Stephen G. Kobourov\ Johns Hopkins Univ.\ kobourov@cs.jhu.edu", ["stu-feldman/igor-debugger.pdf"] = "IGOR:\ A System\ for Program\ Debugging\ Execution\ Stuart\ Channing\ via Reversible\ I. Feldman\ I?. Brown\ Bellcore\ Morristown,\ New Jersey", ["stuart-russell/ijcai05-blog.pdf"] = "B LOG: Probabilistic Models with Unknown Objects∗\ Brian Milch, Bhaskara Marthi, Stuart Russell, David Sontag, Daniel L. Ong and Andrey Kolobov\ Computer Science Division\ University of California\ Berkeley, CA 94720-1776\ {milch, bhaskara, russell, dsontag, dlong, karaya1}@cs.berkeley.edu", ["stuart-russell/logic-and-prob-2014.pdf"] = "Unifying Logic and Probability: Recent Developments\ Stuart Russell\ Computer Science Division, University of California, Berkeley", ["stuart-russell/pearlbook10-blog.pdf"] = "13\ Extending Bayesian Networks to the\ Open-Universe Case\ Brian Milch and Stuart Russell\ 1\ Introduction\ One of Judea Pearl’s now-classic examples of a Bayesian network involves a home\ alarm system that may be set off by a burglary or an earthquake, and two neighbors\ who may call the homeowner if they hear the alarm. Like most scenarios modeled\ with BNs, this example involves a known set of objects (one house, one alarm,\ and two neighbors) with known relations between them (the alarm is triggered by\ events that affect this house; the neighbors can hear this alarm). These objects and\ relations determine the relevant random variables and their dependencies, which\ are then represented by nodes and edges in the BN.\ In many real-world scenarios, however, the relevant objects and relations are initially unknown. For instance, suppose we have a set of ASCII strings containing", ["stuart-russell/srlbook-blog.pdf"] = "1 BLOG: Probabilistic Models with Unknown\ Objects\ Brian Milch\ Computer Science Division\ University of California at Berkeley, USA\ milch@cs.berkeley.edu\ http://www.cs.berkeley.edu/∼milch\ Bhaskara Marthi\ Computer Science Division\ University of California at Berkeley, USA\ bhaskara@cs.berkeley.edu\ http://www.cs.berkeley.edu/∼bhaskara\ Stuart Russell\ Computer Science Division\ University of California at Berkeley, USA\ russell@cs.berkeley.edu\ http://www.cs.berkeley.edu/∼russell\ David Sontag\ Department of Electrical Engineering and Computer Science\ Massachusetts Institute of Technology, USA\ dstontag@csail.mit.edu\ http://people.csail.mit.edu/dsontag\ Daniel L. Ong\ Computer Science Division\ University of California at Berkeley, USA\ dlong@ocf.berkeley.edu\ http://www.ocf.berkeley.edu/∼dlong\ Andrey Kolobov\ Computer Science Division", ["sukyoung-ryu/memo-2000-6.dvi"] = " Research On Program Analysis System ROPAS MEMO\ National Creative Research Initiative Center 2000-6\ ROPAS Korea Advanced Institute of Science and Technology July 13, 2000\ ______________________________________________________________________________________________________________\ Verification of Machine Codes Using An Effect Type\ System\ Jaeyoun Chung, Sukyoung Ryu and Kwangkeun Yi\ {jay,puppy,kwang}@ropas.kaist.ac.kr\ July 13, 2000", ["sukyoung-ryu/phd-thesis.ps.gz"] = "# P # # f [\ #### ## --- fi### M#\ ##``## #Q## ##\ # u # (# ' #)\ ;;S#Y ;S#;W\ #vY####\ 2001\ #### ## --- fi### M#\ ##``## #Q## ##\ Exception Analysis for Languages\ with Exceptions\ Exception Analysis for Languages\ with Exceptions\ Advisor : Professor Kwangkeun Yi\ by\ Sukyoung Ryu\ Department of Electrical Engineering & Computer Science\ Division of Computer Science\ Korea Advanced Institute of Science and Technology\ A thesis submitted to the faculty of the Korea Advanced In\ stitute of Science and Technology in partial fulfillment of the re\ quirements for the degree of Doctor of Philosophy in the Depart\ ment of Electrical Engineering & Computer Science Division of\ Computer Science\ Daejeon, Korea\ 2001. 5. 31\ Approved by\ Professor Kwangkeun Yi\ Major Advisor\ #### ## --- fi### M#\ ##``## #Q## ##\ # u #\ # f[# #vY#####P ##f[####f[#P##\ ##t #P \\GammaY###.\ 2001[ 5# 31ffi\ #P##$ ff a # (fl)\ #P## # # # (fl)\ #P## / a X (fl)\ #P## # # # (fl)\ #P## / # x (fl)\ P### #?## ff f[# ae\\Theta##.\ DCS\ 965808\ #u#. Sukyoung Ryu. Exception Analysis for Languages with Exceptions.\ #### ## --- fi### M# ##``## #Q## ##. Department of\ Electrical Engineering & Computer Science Division of Computer Science.\ 2001. 160p. Advisor: Prof. Kwangkeun Yi.Text in English.", ["sukyoung-ryu/tcs.dvi"] = " A Cost-effective Estimation of Uncaught Exceptions in\ Standard ML Programs*\ Kwangkeun Yiy and Sukyoung Ryu\ {kwang, puppy}@cs.kaist.ac.kr\ Dept. of Computer Science\ Korea Advanced Institute of Science and Technology", ["sungwoo-park/lambda-circle.pdf"] = "A Probabilistic Language Based\ on Sampling Functions\ SUNGWOO PARK\ Pohang University of Science and Technology\ FRANK PFENNING\ Carnegie Mellon University\ and\ SEBASTIAN THRUN\ Stanford University\ As probabilistic computations play an increasing role in solving various problems, researchers have\ designed probabilistic languages which treat probability distributions as primitive datatypes. Most\ probabilistic languages, however, focus only on discrete distributions and have limited expressive\ power. This article presents a probabilistic language, called λ , whose expressive power is beyond\ discrete distributions. Rich expressiveness of λ is due to its use of sampling functions, that is,\ mappings from the unit interval (0.0, 1.0] to probability domains, in specifying probability distributions. As such, λ enables programmers to formally express and reason about sampling methods\ developed in simulation theory. The use of λ is demonstrated with three applications in robotics:", ["susan-graham/gprof.ps.gz"] = "gprof --- A Call Graph Execution Profiler PSD:181\ gprof: a Call Graph Execution Profiler 1\ by Susan L. Graham Peter B. Kessler Marshall K. McKusick\ Computer Science Division Electrical Engineering and Computer Science Department University of Cali\ fornia, Berkeley Berkeley, California 94720", ["susan-graham/paste98.ps.gz"] = "OPTVIEW: A New Approach for Examining Optimized Code\ Caroline Tice\ cmtice@cs.berkeley.edu\ University of California, Berkeley\ Susan L. Graham\ graham@cs.berkeley.edu\ University of California, Berkeley", ["tiark-rompf/pmonad.pdf"] = "What are the Odds?\ Probabilistic Programming in Scala\ Sandro Stucki∗\ Nada Amin∗\ Tiark Rompf ‡∗\ ∗ EPFL, LAMP\ ‡ Oracle Labs\ {first.last}@epfl.ch\ {first.last}@oracle.com", ["tim-griffin/curry-howard.djvu"] = "A Formulae-as-Types Notion of Control \ Timothy G. Griffin* \ Depetrtment of Computer Science \ Rice University \ Houston, TX 77251-1892 ", ["tim-griffin/curry-howard.pdf"] = "A Formulae-as-Types Notion of Control\ Timothy G. Griffin* Department of Computer Science Rice University Houston, TX 77251-1892", ["tim-harris/2003-oopsla.pdf"] = "Language Support for Lightweight Transactions\ Tim Harris\ University of Cambridge Computer Laboratory 15 JJ Thomson Avenue Cambridge, UK, CB3 0FD\ Keir Fraser\ University of Cambridge Computer Laboratory 15 JJ Thomson Avenue Cambridge, UK, CB3 0FD\ tim.harris@cl.cam.ac.uk\ keir.fraser@cl.cam.ac.uk", ["tim-harris/2005-ppopp-composable.pdf"] = "Composable Memory Transactions\ Tim Harris Simon Marlow Simon Peyton Jones Maurice Herlihy\ Microsoft Research 7 J J Thomson Avenue, Cambridge, UK, CB3 0FB\ {tharris,simonmar,simonpj,t-maherl}@microsoft.com", ["tim-harris/2005-scp.pdf"] = "Exceptions and side-effects in atomic blocks\ Tim Harris\ Microsoft Research, 7 JJ Thomson Avenue, Cambridge, UK, CB3 0FB", ["tim-harris/composable.pdf"] = "Composable Memory Transactions\ Tim Harris Simon Marlow Simon Peyton Jones Maurice Herlihy\ Microsoft Research 7 J J Thomson Avenue, Cambridge, UK, CB3 0FB\ {tharris,simonmar,simonpj,t-maherl}@microsoft.com", ["tim-harris/cpwl-submission.pdf"] = "Concurrent Programming Without Locks\ KEIR FRASER and TIM HARRIS University of Cambridge Computer Laboratory\ Mutual exclusion locks remain the de facto mechanism for concurrency control on shared-memory data structures. However, their apparent simplicity is deceptive: it is hard to design scalable locking strategies because they can harbour problems such as deadlock, priority inversion and convoying. Furthermore, scalable lock-based systems are not readily composable when building compound operations that span multiple structures. In looking for solutions to these problems, interest has developed in non-blocking systems which have promised scalability and robustness by eschewing mutual exclusion while still ensuring safety. In this paper we present three abstractions which make it easier to develop non-blocking implementations of arbitrary data structures. The first abstraction is a multi-word compare-and-swap (MCAS) operation which atomically updates a set of memory locations. This can be used to advance a data structure from one consistent state to a another. The second abstraction is a word-based software transactional memory (WSTM) which can allow sequential code to be reused more directly than with MCAS and which provides better scalability when locations are being read rather than being updated. The third abstraction is an object-based software transactional memory (OSTM). This abstraction allows more predictable performance than WSTM and a more streamlined implementation at the cost of re-engineering the data structure to use OSTM objects. We present practical implementations of all three of these abstractions, built from operations available across all the major CPU families used in contemporary parallel hardware. We illustrate the use of these abstractions by outlining how highly concurrent skip-lists and red-black trees can be built over them and we compare the performance of the resulting implementations against one another and against high-performance lock-based systems. These results demonstrate that it is possible to build useful non-blocking data structures with performance comparable to or better than sophisticated lock-based designs. Furthermore, and contrary to widespread belief, this work shows that existing hardware primitives are sufficient to build these practical lock-free implementations of complex data structures. Categories and Subject Descriptors: D.4.1 [Operating Systems]: Process Management--Concurrency; Mutual Exclusion; Synchronization General Terms: Algorithms, Languages, Performance Additional Key Words and Phrases: Concurrency, lock-free systems, transactional memory", ["tim-hickey/computer-lit.pdf"] = "JFP 14 (5): 475488, September 2004.\ c 2004 Cambridge University Press\ 475\ DOI: 10.1017/S0956796804005052 Printed in the United Kingdom\ EDUCATIONAL PEARL Computer literacy via Scheme and web programming\ T I M O T H Y J. H I C K E Y\ Department of Computer Science, Brandeis University, Waltham, MA 02454, USA (e-mail: tim@cs.brandeis.edu)", ["tim-menzies/cross-org.pdf"] = "Empirical Software Engineering manuscript No. (000)\ On the Relative Value of Cross-Company and Within-Company Data for Defect Prediction\ Burak Turhan Tim Menzies Ayse Bener Justin Distefano\ Received: Sept'08 / Accepted: Nov'08", ["tim-sheard/GenUnify.pdf"] = "Generic Unification via Two-Level Types and Parameterized Modules\ [Functional Pearl]\ Tim Sheard\ Pacific Software Research Center Oregon Graduate Institute\ sheard@cse.ogi.edu ABSTRACT\ As a functional pearl, we describe an efficient, modularized implementation of unification using the state of mutable reference cells to encode substitutions. We abstract our algorithms along two dimensions, first abstracting away from the structure of the terms to be unified, and second over the monad in which the mutable state is encapsulated. We choose this example to illustrate two important techniques that we believe many functional programmers would find useful. The first of these is the definition of recursive data types using two levels: a structure defining level, and a recursive knot-tying level. The second is the use of rank-2 polymorphism inside Haskell's record types to implement a form of type parameterized modules. type-parameterized module is a collection of (possibly polymorphic) algorithms or functions parameterized by a set of types. This allows a single module to be reused, simply by instantiating it at different types. The work reported here has been influenced strongly by two papers. Basic Polymorphic Type Checking[1] by Luca Cardelli, and Using Parameterized Signatures to Express Modular Structure[10] by Mark Jones. Luca Cardelli's paper describes how to implement HindleyMilner type inference for an ML-like language. The algorithm uses destructive update to achieve an efficient implementation of unification over terms representing types. This kind of unification algorithm is extremely versatile and useful. The author of this paper has based literally dozens of other implementations on it, unifying datatypes representing many different kinds of terms. Mark Jones' papers describes how to implement a module system by using parameterized signatures. The idea is to define functor-like operators, as defined by ML's module system[2], that use parameterization over types rather than sharing constraints to express sharing[3]. The recent addition of rank-2 polymorphism to the Hugs Haskell interpreter, and the GHC compiler, allows the encoding of modules as first class objects. Our experience with this encoding provides strong evidence that type-parameterized modules really work.", ["tim-sheard/fpca93.ps"] = "A Fold for All Seasons \\Lambda\ Tim Sheard Leonidas Fegaras\ Pacific Software Research Center\ Department of Computer Science and Engineering\ Oregon Graduate Institute of Science & Technology\ 19600 N.W. von Neumann Drive\ Beaverton, OR 970061999\ fsheard,fegarasg@cse.ogi.edu", ["tim-sheard/sheard93fold.ps.gz"] = "A Fold for All Seasons\ Tim Sheard Leonidas Fegaras\ Pacific Software Research Center\ Department of Computer Science and Engineering\ Oregon Graduate Institute of Science & Technology\ 19600 N.W. von Neumann Drive\ Beaverton, OR 970061999\ fsheard,fegarasg@cse.ogi.edu", ["todd-cook/lisas-iccl94.ps"] = "A Functional Specification Language for Instruction Set Architectures\ Todd A. Cook Ed Harcourt\ Dept. of Electrical and Computer Eng. Dept. of Computer Science\ Rutgers University Box 8206\ P.O. Box 909 North Carolina State University\ Piscataway, NJ 08855 Raleigh, NC 27695\ tac@ece.rutgers.edu harcourt@eos.ncsu.edu\ January 18, 1994", ["todd-proebsting/burs.pdf"] = "Simple\ and Efficient\ BURS\ Table\ Generation\ Todd A. Proebsting* University of Wisconsin-Madisont\ .", ["todd-proebsting/case.ps.gz"] = "Correction to\ Producing Good Code for the Case Statement\ Sampath Kannan and Todd A. Proebsting\ Department of Computer Science\ University of Arizona\ Tucson, Arizona 85721 U.S.A.\ Summary\ An O(n 2 ) algorithm for splitting a case statement's jump table into the minimum number of subtables (of\ a given density) is presented. Previously, the problem was thought to be NPcomplete.\ Keywords: Case statement, Code generation, NPcomplete.\ Algorithm\ In Reference 1, Bernstein asserts that the problem of splitting a case statement's jump table into the\ minimum number of ``clusters'' (of a given density) is NPcomplete. He states that ``this problem is a\ generalization of the clustering problem given as MS9 in [2].'' MS9, however, considers finding the smallest\ number of clusters with arbitrary distances between pairs of points, whereas this problem is restricted to\ points that are integers on a line. A simple O(n 2 ) algorithm that solves this problem follows.", ["todd-proebsting/pldi97.goal.ps"] = "Simple Translation of GoalDirected Evaluation\ Todd A. Proebsting \\Lambda\ The University of Arizona", ["todd-proebsting/proebsting97simple.pdf"] = "Simple Translation of Goal-Directed Evaluation\ Todd A. Proebsting The University of Arizona", ["tom-fawcett/ROC.pdf"] = "ROC Graphs: Notes and Practical Considerations for Data Mining Researchers\ Tom Fawcett Intelligent Enterprise Technologies Laboratory HP Laboratories Palo Alto HPL-2003-4 January 7th , 2003*\ E-mail: tom_fawcett@hp.com\ machine learning, classification, data mining, classifier evaluation, ROC, visualization\ Receiver Operating Characteristics (ROC) graphs are a useful technique for organizing classifiers and visualizing their performance. ROC graphs are commonly used in medical decision making, and in recent years have been increasingly adopted in the machine learning and data mining research communities. Although ROC graphs are apparently simple, there are some common misconceptions and pitfalls when using them in practice. This article serves both as a tutorial introduction to ROC graphs and as a practical guide for using them in research.", ["tom-mens/merging.pdf"] = "IEEE TRANSACTIONS ON SOFTWARE ENGINEERING,\ VOL. 28,\ NO. 5,\ MAY 2002\ 449\ A State-of-the-Art Survey on Software Merging\ Tom Mens", ["tom-schrijvers/finding-fold.pdf"] = "Bringing Functions into the Fold\ Jasper Van der Jeugt\ Steven Keuchel\ Tom Schrijvers\ Department of Applied Mathematics, Computer Science and Statistics\ Ghent University, Krijgslaan 281, 9000 Gent, Belgium\ {jasper.vanderjeugt,steven.keuchel,tom.schrijvers}@ugent.be", ["tom-schrijvers/monads-zippers-views.pdf"] = "Monads, Zippers and Views\ Virtualizing the Monad Stack\ Tom Schrijvers\ Bruno C. d. S. Oliveira\ Department of Applied Mathematics and Computer\ Science, Universiteit Gent\ tom.schrijvers@ugent.be\ ROSAEC Center, Seoul National University\ bruno@ropas.snu.ac.kr", ["tom-szymanski/span-dep.djvu"] = "Programming \ Techniques \ S. L. Graham, R. L. Rivest \ Editors \ Assembling Code for \ Machines with Span- \ Dependent \ Instructions \ Thomas G. Szymanski \ Princeton University \ Many modern computers contain instructions whose \ lengths depend on the distance from a given instance of \ such an instruction to the operarid of that instruction. \ This paper considers the problem of minimizing the \ lengths of programs for such machines. An efficient \ solution is presented for the case in which the operand \ of every such \"span-dependent\" instruction is either a \ label or an assembly-time expression of a certain \ restricted form. If this restriction is relaxed by allowing \ these operands to be more general assembly-time \ expressions, then the problem is shown to be NP- \ complete. \ Key Words and Phrases: span-dependent \ instructions, variable-length addressing, code \ generation, assemblers, compilers, NP-complete, ", ["tony-hoare/abstract-threads.djvu"] = "An abstract theory of threads. \ Tony Hoare, Dec 2004. \ Execution of a thread consists of an alternation of active phases with passive phases. \ During an active phase, a thread updates the global state of the computer as an atomic \ action, and during the passive phase it allows other concurrent threads to update the \ state. In practice, active phases of concurrent threads will be executed concurrently, \ provided that they do not interfere with each other through their effects on shared \ store. Non-interference is defined to mean that concurrent execution of two active \ phases has the same effect as sequential execution of one active phase after the other. \ Our abstract theory can therefore treat the active phases as atomic, at the appropriate \ level of granularity. We give the programmer control over the granularity, by ", ["tony-hoare/axiomatic-basis.djvu"] = "An Axiomatic Basis for \ Computer Programming \ C. A. R. \ The Queen's University of Belfast,* Northern Ireland \ In this paper an attempt is made to explore the logical founda- \ tions of computer programming by use of techniques which \ were first applied in the study of geometry and have later \ been extended to other branches of mathematics. This in- \ volves the elucidation of sets of axioms and rules of inference \ which can be used in proofs of the properties of computer \ programs. Examples are given of such axioms and rules, and \ a formal proof of a simple theorem is displayed. Finally, it is \ argued that important advantages, both theoretical and prac- \ tical, may follow from a pursuance of these topics. \ KEY WORDS AND PHRASES: axiomatic method, theory of programming  \ proofs of programs, formal language definition, programming language \ design, machine-independent programming, program documentation ", ["tony-hoare/computer-science-chapter.djvu"] = "SEVEN \ Computer science \ This is the text of Hoare's inaugural lecture at The Queen's University of \ Belfast. It explains the challenge of computer science by describing, to a lay \ audience, the task of designing an algorithm. The chosen task is the partition \ problem used as an example for proof in Chapter 5. The example used was \ enacted with a carefully prearranged pack of playing cards. \ The talk (published as [18]) was given on 10 February 1971. The content of \ the talk defined the objectives and structure of a modular degree course (joint \ with mathematics) which was developed and introduced over the subsequent \ years. \ 'n University circles it is a pleasant and informative custom when intro- \ .ducing members of staff to mention the academic department to which \ they belong. The same custom is extended to our wives, who, like the wives ", ["tony-hoare/correctness-adts.pdf"] = "EIGHT\ Proof of correctness of data representations\ This paper makes a key point about the formal development of programs. Data abstraction is essential for succinct specifications; the development of representations becomes a necessary design tool. (A beautiful example of this method is given in Chapter 9.) It is an accident of history that the work on operation decomposition preceded that on data representation. How unfortunate that this history has influenced so many subsequent authors to focus on operation decomposition even to the exclusion of the area of which Hoare still says 'data abstraction makes practical the use of proof during design.' The style of presenting the data abstraction is via a model. Again, Hoare expresses 'amazement at the attention (the property-oriented approach) is still receiving.' He had, of course, used the axiomatic (or property-oriented) method for his 'axiomatic basis' work; whilst acknowledging its utility for basic data types he comments that 'the complexities of application seem to require the model-based approach, which takes for granted the basic properties of data and structures.' The idea for this style of development came when Hoare was working on [31]. Unusually, there was only one draft and this document - dated 11 December 1971 - is very close to the published form of the paper which was submitted on 16 February 1972. The debt, among others, to Milner's work is acknowleged but the paper here presents the proof method much more in the spirit of program proofs than Milner's more algebraic view. An important step in proving the correctness of representations with respect to given abstractions is to record a function from the representation to the abstraction: the direction is dictated by the fact that there can be many representations for any particular element of the abstract space. This realization came to Hoare when working on [36]. Although the choice of the function letter ( d ) suggests a name like 'abstraction function', it is actually called a 'representation function' in the text. This paper, which is published as [32], was widely influential and roughly this form of proof about data representation stood as a standard until", ["tony-hoare/csp.pdf"] = "Programming Teclmiques\ S. L. Graham, R. L. Rivest Editors\ Communicating Sequential Processes\ C.A.R. Hoare The Queen's University Belfast, Northern Ireland\ This paper suggests that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method. When combined with a development of Dijkstra's guarded command, these concepts are surprisingly versatile. Their use is illustrated by sample solutions of a variety of familiar programming exercises. Key Words and Phrases: programming, programming languages, programming primitives, program structures, parallel programming, concurrency, input, output, guarded commands, nondeterminacy, coroutines, procedures, multiple entries, multiple exits, classes, data representations, recursion, conditional critical regions, monitors, iterative arrays CR Categories: 4.20, 4.22, 4.32\ 1. Introduction\ Among the primitive concepts of computer programming, and of the high level languages in which programs are expressed, the action of assignment is familiar and well understood. In fact, any change of the internal state of a machine executing a program can be modeled as an assignment of a new value to some variable part of that machine. However, the operations of input and output, which affect the external environment of a machine, are not nearly so well understood. They are often added to a programming language only as an afterthought. Among the structuring methods for computer proGeneral permission to make fair use in teaching or research of all part of this material is granted to individual readers and to nonprofit libraries acting for them provided that ACM's copyright notice is given and that reference is made to the publication, to its date of issue, and to the fact that reprinting privileges were granted by permission of the Association for Computing Machinery. To otherwise reprint a figure, table, other substantial excerpt, or the entire work requires specific permission as does republication, or systematic or multiple reproduction. This research was supported by a Senior Fellowship of the Science Research Council. Author's present address: Programming Research Group, 45, Banbury Road, Oxford, England. 1978 ACM 0001-0782/78/0800-0666 $00.75", ["tony-hoare/emperor.djvu"] = "The 1980 ACM Turing Award Lecture \ Delivered at ACM '80, Nashville, Tennessee, October 27, 1980 \ The 1980 ACM Turing Award was presented to Charles Antony Richard Hoare, \ Professor of Computation at the University of Oxford, England, by Walter Carlson, \ Chairman of the Awards committee, at the ACM Annual Conference in Nashville, \ Tennessee, October 27, 1980. \ Professor Hoare was selected by the General Technical Achievement Award \ Committee for his fundamental contributions to the definition and design of program- \ ming languages. His work is characterized by an unusual combination of insight, \ originality, elegance, and impact. He is best known for his work on axiomatic \ definitions of programming languages through the use of techniques popularly \ referred to as axiomatic semantics. He developed ingenious algorithms such as \ Quicksoft and was responsible for inventing and promulgating advanced data struc- ", ["tony-hoare/emperor.pdf"] = "The 1980 ACM Turing Award Lecture\ Delivered at ACM '80, Nashville, Tennessee, October 27, 1980\ The 1980 A C M Turing Award was presented to Charles Antony Richard Hoare, Professor of Computation at the University of Oxford, England, by Walter Carlson, Chairman of the Awards committee, at the A C M Annual Conference in Nashville, Tennessee, October 27, 1980. Professor Hoare was selected by the General Technical Achievement Award Committee for his fundamental contributions to the definition and design of programming languages. His work is characterized by an unusual combination of insight, originality, elegance, and impact. He is best known for his work on axiomatic definitions of programming languages through the use of techniques popularly referred to as axiomatic semantics. He developed ingenious algorithms such as Quicksort and was responsible for inventing and promulgating advanced data structuring techniques in scientific programming languages. He has also made important contributions to operating systems through the study of monitors. His most recent work is on communicating sequential processes. C.A.R. I-Ioare Prior to his appointment to the University of Oxford in 1977, Professor Hoare was Professor of Computer Science at The Queen's University in Belfast, Ireland from 1968 to 1977 and was a Visiting Professor at Stanford University in 1973. From 1960 to 1968 he held a number of positions with Elliot Brothers, Ltd., England. Professor Hoare has published extensively and is on the editorial boards of a n u m b e r of the world's foremost computer science journals. In 1973 he received the A C M Programming Systems and Languages Paper Award. Professor Hoare became a Distinguished Fellow of the British Computer Society in 1978 and was awarded the degree of Doctor of Science Honoris Causa by the University of Southern California in 1979. The Turing Award is the Association for Computing Machinery's highest award for technical contributions to the computing community. It is presented each year in commemoration of Dr. A. M. Turing, an English mathematician who made m a n y important contributions to the computing sciences.", ["tony-hoare/find.pdf"] = "Programming Languages\ V. GRIES, Editor\ Proof of a Program:\ C. A. R. HOARE\ FIND\ Queen's University,* Belfast, Ireland\ A proof is given of the correctness of the algorithm \"Find.\" First, an informal description is given of the purpose of the program and the method used. A systematic technique is described for constucting the program proof during the process of coding it, in such a way as to prevent the intrusion of logical errors. The proof of termination is treated as a separate exercise. Finally, some conclusions relating to general programming methodology are drawn.\ KEY WORDS AND PHRASES: proofs of programs, programming methodology, program documentation, program correctness, theory of programming CR CATEGORIES: 4.0, 4.22, 5.21, 5.23, 5.24\ 1.\ Introduction\ In a number of papers [1, 2, 3] the desirability of proving the correctness of programs has been suggested and this has been illustrated b y proofs of simple example programs. In this paper the construction of the proof of a useful, efficient, and nontrivial program, using a method based on invariants, is shown. I t is suggested that if a proof is constructed as part of the coding process for an algorithm, it is hardly more laborious than the traditional practice of program testing.", ["tony-hoare/gc-opt.djvu"] = "INFORMATION PROCESSING LETTERS 2 (1974) 165-166. NORTH-HOLLAND PUBLISHING COMPANY \ OPTIMIZATION OF STORE SIZE FOR GARBAq:5. COLLECTION \ C.A.R. HOARE \ Stanford University. Stanford, Otlif. 94.?03, O, 4, a,tcl \ The Queen's University, Belfast, Northern Irela: :1 \ Received 4 February 1974 \ scan-metk garbage collection \ dynamic storage allocation \ store allocat' 3n strategies \ Consider an implementation of LISP which has \ the opportunity of dynamic acquisition and release \ of main storage. When free store is exhausted, a ques- \ on arises whether it is better to garbsge-collecl or \ to acquire additional storage for the program fro m \ the operating system. Obviously, if a program runs \ in insufficient main store, the garbage collection cost \ becomes excessive; however if a program runs in too \ much slotage, the cost of running the program will \ also be unnecessarily high. This note suggests a tech- ", ["tony-hoare/gc-opt.pdf"] = "INFORMATION PROCESSING LETTERS 2 (1974) 165- 166. NORTH-HOLLAND PUBLISHING COMPANY\ OPTIMIZATION OF STORE SIZE FOR GARBi?” ‘: CO&,\ C.A.R. HOARE\ Stanfoi*d University, Stanford, Gzlif. 94305, lX4, md The Queen’s University, Belfast, Northern I..&?~:i Received 4 February 1974\ scanme?rkgarbe collection\ dynamic storage allwxtion\ store allocat’m strategies\ Consider an implementation of LISP which has the opportunity of dynamic acquisition and release of main storage. When free store is exhausted, a quesIIon arises whether it is better to garbage-collect or to acquire additional storage for the program frc m the operating system. Wriously, if a program runs in insuffkient main store, the garbage collection cost becomes excessive; however if a program runs in too much storage, the cost of runrUngthe program will also he unnecessarily high. This note suggests a technique for minimi&g D&&e cost.\ and mark eac;h void in use and p is (approximately) the time taken ,\\o ursmark and collect each free’word. Note that fl ip .’ 1 general considerably smaller than Q. Then total tlrr:d spent in all garbage coiiections is", ["tony-hoare/language-design-hints.djvu"] = "THIRTEEN \ Hints on programming- \ language design \ This paper originated from Hoare's keynote address at the ACM SIGPLAN \ conference in Boston, October 1973 (although it did not appear in the \ proceedings, it was distributed at the conference). It was subsequently printed \ as a Stanford Artificial Intelligence Memo (AIM-224, STAN-CS-73-403) in \ December of that year. The version printed here was published as [43]. \ Hoare was active in committees working on the design and control of \ programming languages over many years: he made many contributions to the \ ALGOL Bulletin (e.g. [13]), was a member of IFIP's WG 2.1 (1962-74) and \ even chaired the ECMA TC10 group working on the standardization of PL/I. \ This paper is perhaps the most rounded of his published comments on \ language-design philosophy. The earlier [25] makes more pointed references \ (including a very positive one to APL); [40] and [57] make further points. ", ["tony-hosking/transactional.pdf"] = "Transactional Monitors for Concurrent Objects\ Adam Welc, Suresh Jagannathan, and Antony L. Hosking\ Department of Computer Sciences Purdue University West Lafayette, IN 47906 {welc,suresh,hosking}@cs.purdue.edu", ["uncol/9838773.pdf"] = "", ["urs-holzle/debugging-self.djvu"] = "Debugging Optimized Code with Dynamic \ Urs H61zle \ Craig Chambers \ Computer Systems Laboratory \ Dept. of Computer Science and Engineering \ CIS 57 \ Sieg Hall, FR-35 \ Stanford University \ University of Washington \ Stanford, CA 94305 \ Seattle, WA 98195 \ urs@cs.stanford. edu \ chambers@cs.Washington.edu ", ["urs-holzle/debugging-self.pdf"] = "Debugging\ Urs H61zle Computer\ Optimized\ Code with Dynamic Deoptimization\ Craig Chambers David Ungar Sun Microsystems Laboratories MTV29-116 2500 Garcia St. Mountain View, CA 94043 ungar@eng.sun.com\ Systems Laboratory CIS 57 Stanford University edu\ Dept. of Computer Science and Engineering Sieg Hall, FR-35 University of Washington Seattle, WA 98195 chambers@cs.Washington.edu\ Stanford, CA 94305 urs@cs.stanford.", ["urs-holzle/old-third-gen-self.djvu"] = "A Third-Generation SELF Implementation: \ Reconciling Responsiveness with Performance \ Urs Hijlzle \ Computer Science Department \ University of California \ Santa Barbara, CA 93106 \ urs@cs.ucsb.edu ", ["urs-holzle/third-gen-self.djvu"] = "A Third-Generation SELF Implementation: \ Reconciling Responsiveness with Performance \ Urs H61zle \ Computer Science Department \ University of California \ Santa Barbara, CA 93106 \ urs@cs.ucsb.edu \ David Ungar \ Sun Microsystems Laboratories \ 2550 Garcia Avenue, Building 29 \ Mountain View, CA 94043-1100 \ ungar@eng.sun.com ", ["urs-holzle/third-gen-self.pdf"] = "A Third-Generation SELF Implementation: Reconciling Responsiveness with Performance\ Urs Hijlzle Computer Science Department University of California Santa Barbara, CA 93106 urs@cs.ucsb.edu David Ungar Sun Microsystems Laboratories 2550 Garcia Avenue, Building 29 Mountain View, CA 94043- 1100 ungar@eng.sun.com", ["uwe-nestmann/choice.ps.gz"] = "Decoding Choice Encodings \\Lambda\ Uwe Nestmann y Benjamin C. Pierce z\ April 1996", ["vas-bala/dynamo.pdf"] = "Dynamo: A Transparent Dynamic Optimization System\ Vasanth Bala\ vas@hpl.hp.com\ Evelyn Duesterwald\ duester@hpl.hp.com Hewlett-Packard Labs 1 Main Street, Cambridge, MA 02142\ www.hpl.hp.com/cambridge/projects/Dynamo\ Sanjeev Banerjia*\ sbanerjia@incert.com", ["views/ActivePatterns_IFL96.pdf"] = "u w n u t a\ kt nl\ q k m k hVb w sn(D( z Dn(p tq u u m bl |bD| \ E \ \ 4|D| |lD| ( \ \ \ - - !VbV|bD|l\ d d e d d e e d e `y1!F1F!B!hl$R(REpel$l(10EV(1V$&1 4FFlSlШ|l(l e d d e s(Fp BbnPEh($F! (|`78! 1FVDFgDV!B(Fp$Fgl i ed g e d ƶ d d e i ed e d e e d DF1!Fh& DF!1218l!B!B|R|`1!!ylI`F1!FB|`EFV`1 e i ed e e ed e e i e B1!!!2!E(FR81Rl`!!! `1 d g ƶ F1F1!1!hFD10R!d e d e e d ed d e d d e e d e d e nlF!!(F1!FE0DF!1Ĥ1F!B!l$2E(Fp(FpEg`F10l e d e d d e e d d e e d e F!1R01Vb7!0EFB(RV($I`!S1((FBV(FVB$ i !Pl(11ר18EF!1FBR g e ed d 0!1!FB8FF٤FF1F \ ed d e d d e ed e d d bhRV`BF֨(10EV10lFV(V1!11F(B(1 i ed i i ed ed d i ed e `1(F1!Pl(1E0pF1b1F21VDF` i ed d V( ypF0ElFDFF(! H!!1gF (FBV(FVB$p( 1 ed e e d e d d e e d e e e ed e d e d d e i ed d e i 1(`1!1$p0\"(FR`0R81(hP&FBF2!l(VDh(V(1PR!1 ed e 07 (ʨ`!1(Fp(E(Vgl01VlV81(1PR!1F!160EP7FlV d i e d e d d ƶ d e d d e d d e e d e d d d e d d e `BsFΤ(Vl01V(Fp$1l0EF!EFVs7FF(Fp d g ƶ e e e d d 11hel$&FR!2FBh1l`B21R(FR!0E2 1FVDF($&FR!1 d e ƶ e d e d d e e d e F``!E(lFVS͵ lFVE$ɨ21 Bbn i e e (1HD!FR!8R8nB`!E0R i ed ƶ d d d e d d e e d e d e d e VE01(BlV`10p8hlFVS(Fp$1V(p8F&!FEFFlV\ i ed i e d e e d g d i ed e nDEsV((1pR(1V$eRy!p(V`1V`1R6!2y21V81!F1 g1SB&yhpb \ k rq u DsV~ w !Vs w Vn(nlb1(yVl`ssRb1(`sV(ls`su w VnVnm t ~q u k t k u k k k u t q uq k q u ~ q q u ktk r k m ~ q ~ k t tq u k t RPn\"b1Vbn&sn2lnnt w n!s w n(n(nVnnu w `sV~ w ( w DssnVDr u ut t mku k rq u U k q t m k k ~ k t q uq k q u ~ ~q m q `VVl`ssRb1(DsPl(1sghD`su w VnVn(Vn1Pnt w synVlnu u k t k m k m ~ q ~ k tq k m k tk Vnt w w sl`ls w HV~ w nn( w w DnnsDV`su w VnVn(Vnel`\" w nenD ~ q k ru mut m t u tq k q u ktkm km k u km kmk tk nV(g|V$u w u w Vnl|`n(7|s|sp`VlFnu w nm w V(nnDFPls w r k k m m k t tq tq u k ~ k k u km k tk k $u w u w n&(DsV(( z snVVn(Vnlsl w (nVnnu w `sVDl!VP|\" u t q u ~ q t t k ~ m k m t mku k rq u ~ \ u q Dsu w VVssgs1lnsVnV( u k k q mq k u k q m ~ t k\ ( w\ t mku lnVnnu w \ k u z rq m k l Vk !w $lnV\ q m z nVk\ $ \ } u w q\ w nVVk 7w !DDq mk U z x sqt m k ~ tq } m { U z nD(Fnsu 7w |Vk !w yu !snPDspbnVlj x vw u q t m k r q o m k id g f ed 0h1FFR\ yy 8g!exv y w u t sr W i U q Y i W f d c a U Y X X W U T ) Q 3 A Q 3 G ' 3 5 C A @ 9 5 3 ) # )' % # R4FRbR`DphgeBbR`D!V1(FRSRPIHFE!06D!B7870641210(&$\"! \ W\ s w nV~ w s1sghDnV(nnn(DVylnu z sDV(sls1(hspD(l`nnnD w w V!s7 u tq ~q m u ~ m u t ~ k q q u k q t k tq u k m u t k k w hDnV(nnn(DVh(nsh w nVnnu w h(nu w nDsV`DVy(n&n(hP w snu $ m u ~ m u t ~ k u tq k mku k u u q u k r ~ k u k t k m k tq u mku nVnnu w yDsV~ w k rq u w !`ssDh(ngu w q uq t k u ku~k k k VnPVVhnu\ UTF!1g(1VF1FlV2FRePl2(1$|210E(eF11Hp(FpF1FlVe12ed e d e d d i d d e e ƶ e Rd e e d e d (h1!|SS8B8lFVE$g1b `V11!F&(1VF1FlV2F e (FD F!S d\ d e pV`B h (FBV(Fp$hɨ2S1Ry$p0 e d d e e d e d e \ V\ Q\ ed e 18`FE!Ehg\ e d e VBPR`BBFVleFDD01DF!1FReEF\ I\" 6H P39(78\ e ed F!EVhV(nn!1bgEh ⵱ `!1(BF\ lG\ g n7 7F \ \ ' 4 ' \" 6 B8!!(EP1`1 `B01VP7 EFFl$n!B BFl01V11 @ 7F9&# e d e e e e i e d 6 C#\" A @ g d e ƶ e d e e d d e BF ED$B6 7|DFFRn Ry1FFlV8BFVlF!1FR2 1V(eR8lFVS 8 6 4 '\"\" ) ' %#\" e g e e e d d 9753210(&$!e l0d1!F1!hg!F(p(l01VlVg!F&F& \ e (Ed | `VblV ed ed e d ƶ d e i e e e e s01V(Vn1!7(RPFR`FI|B2!1(1(֨( 7F e `1b7F!1!FhEF2 !1!F12(EP1`1 RhF!pS1yEFl|Bh(&Fl e i ed i e e e e e d d e e e ƶ d d e d d e ($lFVSe!B(FEe12(p!B!2!F1VHlFVSe BhFBhF7FVDFFlV e FlFFE(V `lFVShl01V0EPEV`V 01!V8 F!1g!l(D!n&PR e d d e e d e ƶ e d Ʊ ȵ e d p(P1FRɨlF7 6V`BFlFB(DFڤ2(V(10EVlFVE$7 (i h d e d e d d e e d e e d ", ["views/context.pdf"] = " W Dd - - I I 5 E 5 Q 5 7Q CIE HEWjDPlAQ P%dWERgiU8 jHBU fQsCQPi5Wd@E Q 75 5 @If@Q5 FGD@A8B%@QdH%E)PWG\"DIP@E3HPPB@E)P@G8WEl785PWCHE RD5`iCg 7 5 C E I Q 7EIE 7 Q 7 C QI Q IEI 5 5 C C C Q QI Q I 7 Q fgPHg8PqʣDWIR7Q@@d5 lRfQ @EQP@WCHE R7PWGfPiCqb%DϨfQsC\"HEHRWQPWG@E C 7 dRI%QH5q85@QD@AjU@AW7`CDDAWQdPIgDIPPIWDA@QD@Gq8@dfPdf@QD8dH@QD@AjU@AW7`D@GE C 75 C C 7 Q IQA CIE 7 C Q 7 Q 7 QI I EBWE3P@G85fP8E8RWQ7fgPPIPGW3D@GP8dEӫDWIRWQ5 P@GRHRd Q 5 E 5 Q IE 5 C 7 Q 7QQ E WIR7WQd5 PUW5F@G3Gd6z83 75I C 5 4 \ PIgDIP GWd 5 CI IQ I I fD8E@PDRgF8E@%DPlA Q 7 7 C 75 C CI I Q 5 C 7 8C7P%A@Q8W57D@AjU@AW7`C8lEf@QDA@Q8DWIR7WQ5 WG3U8E@PD%PHf dR@QPWAjDWA@7C C C 5 C 75 Q E C C 7 Q 7 C gP@A@E@C%QRHiRQBfQP85WdWI7RWQ5 DG@8dPIgDIPPI@P@AfWQD@GU8WQP@A%D@AW7`\"5 CQ 5 7 5 QG CI I E I I Q Q 7 E I5 Q I5 7Q fDGWd̦I@f@Q5 RIPqfD8E@%DPAlP8)HEWPU%gPG@8lEH8BWEddRQRUBPlAfdE 5Cqdɲgd BggdDPH98U8PI85DHEWjDIDlAIPIPGW̯WIR@Q@d Q CQ5A 5I 5 7 5 qP3PgH `rWX`TaRadHrwHYRBHfvWXH`Vfyajt RXj `THa fR Ht f ggHwRyeT y Y yy e wY dgRfqjvrtdr `Tv 8xaT8`cywWaddd`ceT fXr yrtd`VwbayYvRdRu v Y c T v c r e T a w it v tRY jvfXT X Y aw a v f Vd v v b w @Vyd Hyt`wWadHic`T%Xd`rWX`Ta%aBW`Tdtfaf T dY ft`w%ajvyywddRRjvyd8 V Y r r f v Y v a a r t r e v e w a`TWY fdvau fRXr t`t HWYq q`w dRrju RXYT HdddfbavrVvT `uWXY `t`TyTWue HqHHrTaV`V `VD`uaw RfRitX t bfRHdf`trtYa vqXX `VdjfHXTu `t BWfr T8dT RyYr vbawf d8`rwYY `T@X ja8eTRB RfX t a8 v aa T td H a a vd Ya8 w v 3Y f HXc`rWd`Tt `VaraRad3t`TWX`u`u8RXa dit cqffjvfeYf ytdyr dVrw H`t W\"`V`Vjraewyt Req@V dy 8Hjw d6d@ rs`TWf\"sT `@dj RyT bjv f t v T T a v d ed r Rau dr H v 6 V a T yef ``ta WjHd@YT c`yYHd`VT yrgdfwa fVRat` Y8uYvw f`rer dWXv f`Tr Raav Rrd3dY yrR`uBRXv ic t fHWX fgvTr RedB1fdYrv t `w@ar ytdw YdYr c`T`r8WX W8ffrr tp `w@addcf ddWH X tY T w v v w d T e f 8 T T X t 1ud r{ dRW|T {rzw ~} yx edv feRfRufsmjtWysrkqyo`h%nldijiyffRd8 p m n p m k h ge v Rr`uWXTdUrTH@VRvU8@pyx`wRa`uRitHsrqHihgHd`cba`YHWVUS p v X f p X feV X T RIPPHFDB@9864 QIGE 4 CA 75 %231)('%$\" 20! & # ! ", ["views/context2.pdf"] = " ) 7 E 1 E 1) 7@ 1 1) 7 E 1 1 E @ C E eAS42f)q8SA4EBo@I47S2wSEX8SAXo@\"eASrSEXcSS7DF5FSEq84A2\"Bc@Sc4FIhSE1 ) C ) C) 7@ C 1 1 C ) @ 7 ) C@ @ 75 E 2wBc@Sc88 2FSEXIcXc@SS7DF5FSE4Ac0Bc@SIcC8BhC84CF1SE42I6FSE6Bh92v4E8vDSA rF1XF29wBFE8X\"DBSEDS5F845S14~)Iv4ES7F1Xq~)41r0Bc@4F88o5~AD6rF7h8FCSE418F5F6F8C E E @ C@ C@ 1 7 ) ) E C) C C 5 E 1 @ E 5 5@ ) ) @ 1 @ ) 1 @ 7C ) 1 7C DCh886S@41cC8X8SAcSCF14ESI$2F7FEDFCSE418F5F6céFEf)8FSEFCSEo$DBc@SSXo@UD2~)1 1 7 ) 1 7C C) 1) 7 A qF7SEDS5F845S14~)2w4Bo@x82e)S1vD2eASrSE\"eAc8 7C C 1) 1E @ E 1 E 7) E 75 7C C @ û ) E ) DBc@SFD8o54E2uh$2w\"BcS47F7SE86FF4E2r4EF18cCvDSA\"8cCS88X@4F88W5$F7cE8v8F2qD 7 ) )C @ C 7 E C) E C) E ) 1) 7 ) C@ q8SCF14ESI$IBc@4D2~)41Xc@S8FC4E6F62hEhD2cE8c6FI04E2DSCF14ES2whSE6B ) ( 8cC8eAS04CF1SE42) wB&o Ue4QUHUTra2~UHBhf 8 Tp T Te Ue4QUHUTraShB6FeUp2 p Tp Qp T 8cC88cC8 eAS ) C@ 6FSE6Bh 8cC8DCD eAS2\" )\ 15 hSIBu4E8Bc& FESE7ED2f)SBq4@\"SCF14ES2wq)eA84526FSE6CXF@984Av8cC8S@B8XrX4@984ABS@W1 e2)c8cS7 1) ) ) 7 @ E 1@Cټ@ 1 E 1 UBwfFED2~)4c78\"F6 6X8)98SCF14ESIvoFhI4u4@cE8c4S7BwF184AcF87UXF4BW)Bu4E8Bc& 7@ C E C@C ) 7 ) E 7 7@ E EC 15 FEES7X@XFSE84Av@Sq6FCFEF)rvF7SE1845F845S1SD8S57SEBDCD8cC8\"8cCSc8S5hSE8SAw646FC86FSEDB C 1 E ) 7 1) 7 7 1 E E5 7C@ 1 7 E @ 1 E 1)EC C 1 E @ ) E C@ ) 7 ) 1 BSE854F845S1S84AөX@6S@8SAr8B@cBhSEF6 )28cC8eA42DSAqc8B2c@c2$DSCF14ES2wu42) C ) C ) 7@ E C5 EA E ) E @ @ E C E 682e)S72I4A$c7X@42B41FSE8X8cC6cSF18D898XB8c5éB984A2B6S@18SAB4@o1FE8~)Sc78F6 5@ 7 1 7 @ ) 7 A ) @ 3 ) C@C EC ) E 1 DB84AʢvShSE8845ө98Cc8eA42&2c@é)veADSCF14ES2w28cC6ér6@66BDh8qhIcShS7 e843BIqShBIX\"(9ĤhBS3cCDSC1F4ES2) $6F4E6CBe$S@1XS@477FFEF8458SA&c7F1w2I c78 E 1@ )A A@ E 7) 7 @ 7 E E) A 48w99DB RH Q QHT f H IxPSFQepUHrWsSRXSVeSH6WPF`\"FefWsTWseT8 4SHq6FV6BU4Q8BWVhWPTs 6FefWseT6BcVhhfWsrqSihgfW`6FeSpWQF`FefWsTXB4BWPqFfuYhp Q R fV H R TVf R e ` Ype Tp Q R T f se H H T R Y UPXP BcwSf62S426Ff2S~HuYhep9eTUVWQUT6Feefe6eH22SfWQBueH 4Q8hRXWPged s Y R He p V T s Hp s T Tp H T Y Q s ep R Tp Q ` Q IUe4QUHUTr6WPue4sqpB4SHqBTS2eX2Wf0h$6Ue4QUHUTr6hffSHXWV~T6UVWQUTR UpqB%SW2S~UPXP 96FefWseTXcV9SHhUe4QUHUTq2eUHBh~fhqqfWsq~pusXBhhepBq Tp p s R e ` Qp R Tp T Te `f Re T Yp Y s H Y H T `f Tf Q H T i ` e s H TVf R T R `f s Tp quVhFpWPhq2SfWPqSfQeHhUpUTR2e2hWPTs qSi4QUHBWVahu6ueBUPUqqi H T Yp s R Tp `f Q ` Yefe He p p WPFfuYh UPXP $ew6UeSQUHUTqhSihffqFYep2fqBhe\"SHFQXShff22Sf62a H fHHs Q pT uUf\"eHUeTUsWQUTeRSH9HSh96Ue4QUHUTr6vUP6rWV uVBh\"e8WPHH uaSQUsT F`UXrSf8WPFe0WPUPP qSf9SHeR`cQ FeBfQ WVWseTST68WQf UV 266WPHH~RUT T Q Q p R T p R 6 FYp f eRH T 2 H Q 6 T ep T X i h FwSQHqeH F$6SBqFqUqoXfFXSfeu6WP$hRWs2hh0FeqSiFQffU`4Q8xPBP &B6ueBUPUqqi f H T `f R Ypep p R H s w s Tp Ue4QUHUTTr6BaR6FefWseTXcV`huhfWsTBXSX WPFfuYFYp eRqr6FV6Fep6hhfWs~T6BXqr2XezFyexwus p e ` f e se H H T Hp YYpe eV} |x{ v t 2r BqFrhFhohen4cmg ljUFiWrfed&rrF2X k p i k h g e H w y d Tp Q ` d Q ` YP Q H BhpSi4Q8I4eHxPrpIBxwUdvutWsrqSihgfXceBcbaBXWVUTSRB4PIG FC8DB\"9864320( ECA@ ( 75 1) '' #! &%$\" ", ["views/first-class.ps"] = "First Class Patterns ?\ Mark Tullsen\ Department of Computer Science\ Yale University\ New Haven CT 06520-8285\ mark.tullsen@yale.edu", ["views/match.pdf"] = "A New\ Look\ at Pattern\ Palao\ Matching\ Gostanza, Rlcardo Manuel Peiia Ntiiiez\ in Abstract\ Pedro\ Data\ Types\ Departamento Universidad e-mail:\ de Inform~tica Complutense\ y Autom6tica de Madrid, Spain .es\ {ecceso,ricardo,\ manuelnu}@dia.ucm", ["views/views.pdf"] = " u @a8$%TiQda9B%T@&auGt`T@&385$7HG(%T@Ae1C@D3810fa&7%3CT3&(7c%\"X3Cv0 q9\"& g 0 2 F# 2 2 Y 9 0bq\"4 2C 8 0 q! 2 0 F I D49 I 8 & D y I& 2 89 s 2 0 0b q q! A 0\"# F& g I& 0 2 (b 2 Y 2 0 WU SRRP I& 2 F F D 2 0 A (\"4 4 (&##\"! 5T1AfpbehfxwWv0183DG(u@t%eE$3C`ra2%a9@2a87%p9387$B)ihfeda9B3F10ca#`E$3CXVT)5Q)HG(BB$1\"E$3CB$@9387%653210)'%$\ 4zڪgg¨ehehEteEžt ǹ Ƽ tž ateEžtDVhtEm&htotǤ&EֹPvEtv&$t - Ǽ û Ȼ tE&EV!hgehEȺE%PE ֹDtE Ǽ Ƽ Ƽ ż Ȼ eE&DgC&λeEdgâtegª򪹺tgVP滤&hgD$eEEt#ttoR Ƽ ¼ %P Eet&$!ERȿge᪹Ehgh&otмֹDDEh4otg߻hggeeEae& ƻ Ȼ tPhh&oP@hgtt4EVt@VhtehREtegg&4 ¼ ƻ ƹ eChhEhTPvt#tEhte ֻ » ¼ ƹ Ƽ » ɼ Evgeh%tEh@@gDhtesoEggEt%8!t&t&eoXgge&!8hgE ¼ ƻ û ¼ ¼ 4лehgh&hg4D@t4$tt m ehghE#g¤&eEae&XgChoo ڼ Ȼ ¼ Ǽ ¼ #VEDemEt¦eChhEvgä&eeEtaEeodgge&Evhg ¼ ƻ Ȼ 4DeeEXλehghEmgä&e#g4Pt ohEEthv4e ¸ ƹ ƹż Ǽ ƹ ǹ eoCEoh4DeeEtghEEotaDeo&hteh$R &۾4@EdggEg@hɣtg@E&hTDee&XghEt&eo޼gge&t ƻ ¼ ƹ ƹ EeChghEEg$ghtg4D#tm v Ctt&CDEи&&EEGλhhgE ¼ ƹ ƻ Ǽ Ƽ Ǽ D޸EȡhgeaEhE礸hgg¾VtPat&ȤhEEh4DeeE$tEeChghE ƹ Ƽ ¼ » » ż Eg¼ttEg夹tdEP 4tVt&sg¤&e@X&th4tùEtht ۻ û tt&eoggeVEhEhXEhEEP g&ߤ%oohEߤhR@ƾ $Ea&güt hTDee&#g¹Eh$R44E¤tehR#eEtE ǹ ɼ ż ¼ ƹ ¼ Chth&!tgEEhEhDto&e!g¾ghg¦$%E!tCɤC& e eE&DaheEt&ƪh4gE&hg$%E&%taƾmEEedgge&EEhEht Ǽ ż ɿ ƻ ¿ s#osTmE { ~ } | { d x j q { @i f q ~ u r { d m { d } f C rhCfx C|} hfgy&h6qz{Cz~d6f{tq|f ~ q z{x f d kfdq Czy{ CChqu z{dwdq| q t{~ f| ri m{x tgyd zx#ird} t 6Cz{i t~|d Cthdru z{dp hh~{ Cf} hyCCzy{{|f Pjd6p hCzyx{ dddqkfg{C&gy{jj txmddzr zyfdt{hzr| fgqj ~q r Dsqx ky6q fz{wdf rjz|zqtf{|6q ~mgrt| du z{jdfCCtui ht{r f|| dXgyd xdgr{et~rd !zxgyjdd{dn} l{ f r f x ggii Chkfkfc$ zxx c$kCoj xgrdf{ |Cgfu gj{kq ~ zxqhj zxq Rd{ {f g Czx d fc%dqtgrd vuz{%kq dm{r x Xf Chu d{efr Xzy} drr l jj f i fiCh ddc d r f d q d j f f q f { { i i f q n | dhr txd rC{q dz{e {!d6qi x m f {zDx gx Xx6qd{ ew{ hgf{ dC}i dkfzj{dCrq h} ${vd} Cjr kyx g d}vr#gjz{f zddu Cmt tx|f {eC{dw txr dzrCeq{ {gqzymt{rd|z{4a&ExgrgdkfzjdCkqCD$grjd{tdgyo Cky k xdv{gjz{zdd{ Cf {|x }xvzyd djzydr{rgjgfV{zddx u Ckqjmf6qmi{u }hu fkffzx&p6q{ zy{f deu dxw kfddff dmCz{fi u dz{jCxndXl{ !o6igudj dxzhj DvD r { { { q q ~ u { j~ } j t w v@hdffx~| zyd diykgz{hvzxgu j j xz{dzd dCz{f !h{d qx g{hj~ hf46f j{kq Tm{ Emxuhgrkfgdj }gfzxgjCpqjd ChC}} ky|rtf kdjdvgejw hg{ vhvsdr t {q cp{f oDmki{htj kyixfr hgf ecgfq 6f{C r t ddcf dT vi s yxwvup s rhqpi PP&tCEt6h%&4D4Ch gfae65d7cPa`4@XGB4VTRQP1 3b 5Y W 5U S IH GFED6BDC$@876541 5A 7BA 9 32 ) ' \" \" 0(&%$#! ", ["views/wadler.pdf"] = "Views: A way for pattern matching to cohabit with data abstraction\ Philip Wadler Programming Research Group, Oxford University, UK and Programming Methodology Group, Chalmers University, Sweden Received10/30&j", ["vineet-gupta/gupta99stochastic.ps.gz"] = "Stochastic Processes as Concurrent Constraint Programs\ (An Extended Abstract)\ Vineet Gupta Radha Jagadeesan \\Lambda Prakash Panangaden y\ vgupta@mail.arc.nasa.gov radha@cs.luc.edu prakash@cs.mcgill.ca\ Caelum Research Corporation Dept. of Math. and Computer Sciences School of Computer Science\ NASA Ames Research Center Loyola University--Lake Shore Campus McGill University\ Moffett Field CA 94035, USA Chicago IL 60626, USA Montreal, Quebec, Canada", ["vivek-sarkar/toplas-linearscan.ps.gz"] = "Linear Scan Register Allocation\ MASSIMILIANO POLETTO\ Laboratory for Computer Science, MIT\ and\ VIVEK SARKAR\ IBM Thomas J. Watson Research Center\ We describe a new algorithm for fast global register allocation called linear scan. This algorithm\ is not based on graph coloring, but allocates registers to variables in a single lineartime scan of\ the variables' live ranges. The linear scan algorithm is considerably faster than algorithms based\ on graph coloring, is simple to implement, and results in code that is almost as efficient as that\ obtained using more complex and timeconsuming register allocators based on graph coloring.\ The algorithm is of interest in applications where compile time is a concern, such as dynamic\ compilation systems, ``justintime'' compilers, and interactive development environments.\ Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors---compilers;", ["vp-heuring/fast-lexers.djvu"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 16(9), 801-808 (SEPTEMBER 1986) \ The Automatic \ Generation of Fast Lexical \ Analysers \ V. P. HEURING \ Department of Electrical and Computer Engineen'ng, University of Colorado, Boulder, \ Colorado 80309 U.S.A. \ SUMMARY \ This paper describes lexical analyser generators that accept specifications for the basic symbols \ of a programming language, and produce directly executing lexical analysers in Pascal or C as \ output. The resulting analysers are up to five times as fast as the typical interpreted lexical \ analyser generated from arbitrary regular expressions and actions. An example is given showing \ how these tools may be combined with others in a compiler construction environment. \ KEY WORDS Lexical analysis Programming environments Compiler construction \ INTRODUCTION \ Nearly all of the lexical analysers built for production compilers are written by hand. \ The primary reason for this appears to be the wish to achieve the highest possible ", ["walid-taha/dspg04a.pdf"] = "A Gentle Introduction to Multi-stage Programming\ Walid Taha\ Department of Computer Science, Rice University, Houston, TX, USA taha@rice.edu", ["walid-taha/thesis.pdf"] = "Multi-Stage Programming: Its Theory and Applications\ Walid Taha B.S. Computer Science and Engineering, 1993, Kuwait University.\ A dissertation submitted to the faculty of the Oregon Graduate Institute of Science and Technology in partial fulfillment of the requirements for the degree Doctor of Philosophy in Computer Science and Engineering\ November 1999\ c Copyright 1999 by Walid Taha All Rights Reserved\ ii\ The dissertation \"Multi-Stage Programming: Its Theory and Applications\" by Walid Taha has been examined and approved by the following Examination Committee:\ Tim Sheard Associate Professor Thesis Research Adviser\ James Hook Associate Professor\ John Launchbury Associate Professor\ David Maier Professor\ Neil D. Jones Professor, University of Copenhagen\ Eugenio Moggi Professor, University of Genova\ iii\ Dedication\ To Sohair, Mohamed, Nodar, Hanan, and Hamid.", ["walter-gilks/bugs.pdf"] = "A Language and Program for Complex Bayesian Modelling\ Author(s): W. R. Gilks, A. Thomas and D. J. Spiegelhalter\ Source: Journal of the Royal Statistical Society. Series D (The Statistician), Vol. 43, No. 1, Special\ Issue: Conference on Practical Bayesian Statistics, 1992 (3) (1994), pp. 169-177\ Published by: Wiley for the Royal Statistical Society\ Stable URL: http://www.jstor.org/stable/2348941\ Accessed: 19-08-2014 17:40 UTC\ Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at\ http://www.jstor.org/page/info/about/policies/terms.jsp\ JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of content\ in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms of scholarship.", ["walter-tichy/p3-adams.pdf"] = "The Cost of Selective Recompilation Environment Processing\ ROLF ADAMS, WALTER TICHY, and ANNETTE WEINERT University of Karlsruhe\ and\ When a single software module in a large system is modified, a potentially large number of other modules may have to be recompiled. By reducing both the number of compilations and the amount of input processed by each compilation run, the turnaround time after changes can be reduced significantly. Potential time savings are measured in a medium-sized, industrial software project over a three-year period. The results indicate that a large number of compilations caused by traditional compilation unit dependencies may be redundant. On the available data, a mechanism that compares compiler output saves about 25 percent, smart recompilation saves 50 percent, and smartest recompilation may save up to 80 percent of compilation work. Furthermore, all compilation methods other than smartest recompilation process large amounts of unused environment data. In the project analyzed, the average environment of a compilation unit is up to 1.9 times the size of that unit, but less than 20 percent of the environment symbols are actually used. Reading only the actually used symbols would reduce total compiler input by about 50 percent. Combining smart recompilation with a reduction in environment processing might double to triple perceived compilation speed and double linker speed, without sacrificing static type safety. Categories and Subject ments; D.2.9 [Software", ["walter-tichy/rcs-spe.djvu"] = ".q{:}FTVCARE--PRACTICE AND EXPERIENCE, VOL. 15(7), 637--654 (JULY 1985) \ RCS A System for Version Control \ WALTER F. TICHY \ l)epartment of Computer Sciences, Purdue University, West Lafayette, Indiana 47907, U.S.A. \ SUMMARY \ An important problem in program development and maintenance is version control, i.e. the task \ of keeping a software system consisting of many versions and configurations well organized. The \ Revision Control System (RCS) is a software tool that assists with that task. RCS manages \ revisions of text documents, in particular source programs, documentation, and test data. It \ automates the storing, retrieval, logging and identification of revisions, and it provides selection \ mechanisms for composing configurations. This paper introduces basic version control concepts \ and discusses the practice of version control using RCS. For conserving space, RCS stores deltas, ", ["walter-tichy/rcs-spe.pdf"] = "", ["walter-tichy/rcs.pdf"] = "-\ RCS—A System for Version Control\ Walter F. Tichy\ Department of Computer Sciences\ Purdue University\ West Lafayette, Indiana 47907", ["wen-mei-hwu/caffeine.pdf"] = "Java Bytecode to Native Code Translation: The Caffeine Prototype and Preliminary Results\ Cheng-Hsueh A. Hsieh John C. Gyllenhaal Wen-mei W. Hwu Center for Reliable and High-Performance Computing University of Illinois Urbana-Champaign, IL 61801 ada, gyllen, hwu@crhc.uiuc.edu", ["will-clinger/clinger-al.pdf"] = "", ["will-clinger/continuations.ps.gz"] = ", , 1--42 ()\ c\ fl Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ Implementation Strategies for FirstClass\ Continuations\ WILLIAM D. CLINGER, ANNE H. HARTHEIMER, AND ERIC M. OST will@ccs.neu.edu\ Lightship Software\ Corresponding author: William D. Clinger\ College of Computer Science\ Northeastern University\ 360 Huntington Avenue\ Boston, MA 02115, USA", ["will-clinger/imp-cont.pdf"] = "Higher-Order and Symbolic Computation, 12, 745 (1999)\ c 1999 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands.\ Implementation Strategies for First-Class Continuations*\ WILLIAM D. CLINGER\ will@ccs.neu.edu College of Computer Science, Northeastern University, 360 Huntington Avenue, Boston, MA 02115\ ANNE H. HARTHEIMER\ ERIC M. OST", ["william-aiken/match.ps"] = "The SML/NJ Match Compiler\ William Aitken\ Summer 1992\ The match compiler is used to compile pattern matches into lambda code. Its input\ consists of a list of pairs of abstract syntax patterns and lambda expressions. It produces a\ lambda expression that denotes a function. This function behaves as if it matches a single\ argument value against each of the input patterns in turn until a match succeeds, makes\ the bindings required by this match, and executes the selected rule's lambda expression in\ the resulting environment.\ The generated lambda expression is constructed to implement a decision tree of primitive\ tests. Various principles guide the production of this lambda expression. First, no memory\ access should be performed more than once. Second, no test should be perfomed more\ than once. Third, no unneccesary memory access should be performed. Fourth, memory", ["william-aitken/92-tr-aitken.ps.gz"] = "", ["william-aitken/matchcomp.ps"] = "SML/NJ Match Compiler Notes\ William Aitken\ 1992\ The match compiler is used to compile pattern matches into lambda code.\ Its input consists of a list of pairs of abstract syntax patterns and lambda\ expressions. It produces a lambda expression that denotes a function. This\ function behaves as if it matches a single argument value against each of the\ input patterns in turn until a match succeeds, makes the bindings required by\ this match, and executes the selected rule's lambda expression in the resulting\ environment.\ The generated lambda expression is constructed to implement a decision tree\ of primitive tests. Various principles guide the production of this lambda expres\ sion. First, no memory access should be performed more than once. Second,\ no test should be perfomed more than once. Third, no unneccesary memory", ["william-cook/CookOOPvsADT90.pdf"] = "Object-Oriented Programming Versus Abstract Data Types\ William R. Cook Hewlett-Packard Laboratories 1501 Page Mill Road, Palo Alto, CA, 94303-0969, USA", ["william-cook/data-abstraction-revisited.pdf"] = "On Understanding Data Abstraction, Revisited\ William R. Cook\ University of Texas at Austin wcook@cs.utexas.edu", ["william-homer/test-case-generator.djvu"] = "o \ o \ '.4,. \ o ", ["william-hsu/compression-synthesis.pdf"] = "SOFTWARE—PRACTICE AND EXPERIENCE, VOL. 25(10), 1097–1116 (OCTOBER 1995)\ Automatic Synthesis of Compression Techniques for Heterogeneous Files\ WILLIAM H. HSU Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL 61801, U.S.A. (email: bhsu@cs.uiuc.edu, voice: (217) 244-1620) AND AMY E. ZWARICO Department of Computer Science, The Johns Hopkins University, Baltimore, MD 21218, U.S.A. (email: amy@cs.jhu.edu, voice: (410) 516-5304) SUMMARY We present a compression technique for heterogeneous files, those files which contain multiple types of data such as text, images, binary, audio, or animation. The system uses statistical methods to determine the best algorithm to use in compressing each block of data in a file (possibly a different algorithm for each block). The file is then compressed by applying the appropriate algorithm to each block. We obtain better savings than possible by using a single algorithm for compressing the file. The implementation of a working version of this heterogeneous compressor is described, along with examples of its value toward improving compression both in theoretical and applied contexts. We compare our results with those obtained using four commercially available compression programs, PKZIP, Unix compress, StuffIt, and Compact Pro, and show that our system provides better space savings.", ["william-mckeeman/differential.ps.gz"] = "100 Digital Technical Journal Vol. 10 No. 1 1998\ The Testing Problem\ Successful commercial computer systems contain tens\ of millions of lines of handwritten software, all of\ which is subject to change as competitive pressures\ motivate the addition of new features in each release.\ As a practical matter, quality is not a question of cor\ rectness, but rather of how many bugs are fixed and\ how few are introduced in the ongoing development\ process. If the bug count is increasing, the software is\ deteriorating.\ Quality\ Testing is a major contributor to quality---it is the last\ chance for the development organization to reduce\ the number of bugs delivered to customers. Typically,\ developers build a suite of tests that the software must\ pass to advance to a new release. Three major sources\ of such tests are the development engineers, who", ["wilson-hsieh/derive-usenix01.pdf"] = "Ê Ú Ö× ¹ Ò\ Ò\ Ö Ò\ ÁÒ×ØÖÙ Ø ÓÒ\ Ò Ð Ö\ Ò Ó\ Ò ×\ Ó Ñ Ö\ Û Ð×ÓÒ\ ×ØÖ Ø\ ÍÒ Ú Ö× ØÝ Ó ÍØ\ ׺ÙØ\ Ï Ð×ÓÒ\ º À×\ º\ Ù\ Ò Ð Ö\ ËØ Ò ÓÖ ÍÒ Ú Ö× ØÝ\ Û×ÓÒ Êº\ ×к×Ø Ò ÓÖ º\ Ù\ ÍÒ Ú Ö× ØÝ Ó ÍØ\ ׺ÙØ º\ Ù\ Ò ÖÝ ØÓÓÐ× ×Ù × × ×× Ñ Ð Ö׸ Ù×ع Ò¹Ø Ñ Óѹ Ô Ð Ö׸ Ò Ü ÙØ Ð Ó Ö ÛÖ Ø Ö× Ò ØÓ Ú Ò ÜÔÐ Ø Ö ÔÖ × ÒØ Ø ÓÒ Ó ÓÛ Ñ Ò Ò×ØÖÙ ¹ Ø ÓÒ× Ö Ò Ó º ÍÒ ÓÖØÙÒ Ø Ðݸ ÛÖ Ø Ò Ò Ó Ò × ÓÖ Ò ÒØ Ö Ò×ØÖÙ Ø ÓÒ × Ø Ý Ò × ÓØ Ø ÓÙ× Ò ÖÖÓÖ¹ÔÖÓÒ º Ï ×Ö Ö Ú ¸ ØÓÓÐ Ø Ø ÜØÖ Ø× Ø¹Ð Ú Ð Ò×ØÖÙ Ø ÓÒ Ò Ó Ò Ò ÓÖÑ Ø ÓÒ ÖÓÑ ×× Ñ Ð Ö׺ Ì Ù× Ö ÔÖÓÚ × Ö Ú Û Ø ×× Ñ ÐÝ¹Ð Ú Ð Ò ÓÖÑ Ø ÓÒ ÓÙØ Ú Ö ÓÙ× Ò×ØÖÙ ¹ Ø ÓÒ׺ Ö Ú ÙØÓÑ Ø ÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö× Ø Ò Ó Ò × ÓÖ Ø Ó× Ò×ØÖÙ Ø ÓÒ× ÖÓÑ Ò ×× Ñ Ð Ö Ý Ò Ø Ô ÖÑÙØ Ø ÓÒ× Ó Ò×ØÖÙ Ø ÓÒ× Ò Ò¹ ÐÝÞ Ò Ø Ö ×ÙÐØ Ò Ñ Ò Ó º Ö Ú ×ÓÐÚ × Ø ÒØ Ö ÅÁÈ˸ ËÈ Ê ¸ ÐÔ ¸ Ò ÈÓÛ ÖÈ Ò¹ ×ØÖÙ Ø ÓÒ × Ø׸ Ò ÐÑÓ×Ø ÐÐ Ó Ø ÊÅ Ò Ü Ò×ØÖÙ Ø ÓÒ × Ø׺ ÁØ× ÓÙØÔÙØ ÓÒ× ×Ø× Ó Ð Ö Ø ÓÒ× Ø Ø Ò Ù× Ý Ò ÖÝ ØÓÓÐ׺ ÌÓ ÑÓÒ×ØÖ Ø Ø ÙØ Ð ØÝ Ó Ö Ú ¸ Û Ú Ù ÐØ Ó Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø Ø × Ö Ú ³× ÓÙØÔÙØ Ò ÔÖÓ Ù × Ñ ÖÓ× ÓÖ Ó Ñ ×× ÓÒ¸ Û Û Ú Ø Ò Ù× ØÓ Ö ÛÖ Ø Â Ú ÂÁÌ Ò º\ ½ ÁÒØÖÓ Ù Ø ÓÒ\ Ò ÖÝ ØÓÓÐ× ×Ù × ×× Ñ Ð Ö׸ Ù Ö׸ × ×¹ × Ñ Ð Ö׸ ÝÒ Ñ Ó Ò Ö Ø ÓÒ ×Ý×Ø Ñ× ¿¸ ¸ ½¼¸ ½ ¸ ½ ¸ Ù×ع Ò¹Ø Ñ ÓÑÔ Ð Ö× ¸ ¸ ½¾ ¸ Ò Ü ÙØ Ð Ó Ö ÛÖ Ø Ö× ½ ¸ ¾½¸ ¾ Ò ØÓ ÓÒ¹ Ø Ò Ö ÔÖ × ÒØ Ø ÓÒ Ó ÓÛ Ñ Ò Ò×ØÖÙ Ø ÓÒ× Ö Ò Ó º ÓÖ Ü ÑÔÐ ¸ ÂÁÌ Ò × ØÓ ÒÓÛ Ø Ø Ø Ü Ò×ØÖÙ Ø ÓÒ Ð ± ܸ ± Ü ÓÖÖ ×ÔÓÒ × ØÓ Ø Ø× ¼Ü¼½ ´ ÓÖÑ Ý ØÛ × ÇÊ Ó Ø Ð ÓÔ Ó ¼Ü¼½ ¼ Û Ø ¼Ü ÓÖ Ø ± Ü Ö ÙÑ ÒØ Ò ¼Ü¿ ÓÖ Ø ± Ü Ö ÙÑ Òصº ÍÒ ÓÖØÙÒ Ø Ðݸ ×Ô Ý Ò Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × Û Ø ÙÖÖ ÒØ ØÓÓÐ× Ö ÕÙ Ö × ÐÓÓ Ò ÙÔ Ò Ø Ð Ò Ø Ó«× Ø׸ × Þ ×¸ Ò Ú ÐÙ × Ó Ñ ÒÝ Ò×ØÖÙ Ø ÓÒ ¬ Р׺ ÍÒ×ÙÖÔÖ ×¹ Ò Ðݸ Ø × ÔÖÓ ×× × ÓØ ÖÖÓÖ¹ÔÖÓÒ Ò Ø ÓÙ׸ ×Ô ÐÐÝ ÓÖ ÁË Ñ Ò × ×Ù ×Ø Ü º ÙÖÖ ÒØÐݸ ×Ý×Ø Ñ Ù Ð Ö× ÑÙ×Ø ØÖ Ò× Ö Ò¹\ × ÓÖØ Ú Ö× ÓÒ Ó Ø × Ô Ô Ö Ø ÔÖÓ Ø ÓÒÐÝ Ò × Ó × Ö Ø Ø Æ\ ¹\ ÅÇ\ Ö Ú\ ×ÓÐÚ Ö\ ÔÔ\ Ö º\ Ò Ø\ ¾¼¼¼ ÛÓÖ × ÓÔ\ ×ØÖÙ Ø ÓÒ Ò Ó Ò × ÖÓÑ Ò Ö Ø ØÙÖ Ö Ö Ò Ñ Ò٠к Ï Ú Ù ÐØ ØÓÓÐ ÐÐ Ö Ú Ø Ø ÐÑÒ Ø ×Ø Ò ØÓ ×Ô Ý Ñ ÒÝ Ó Ø Ø¹Ð Ú Ð Ø Ð× Ó Ò×ØÖÙ Ø ÓÒ Ð ÝÓÙغ Ì Ù× Ö ×ÙÔÔÐ × ¹ Ö Ú ÛØ Ò ×× Ñ ÐÝ¹Ð Ú Ð × Ö ÔØ ÓÒ Ó Ò Ò¹ ×ØÖÙ Ø ÓÒ × Ø Ò×ØÖÙ Ø ÓÒ Ò Ñ × Ò ÓÔ Ö Ò ØÝÔ × ´Ö ×Ø Ö׸ ÑÑ Ø ×¸ ÓÖ Ð Ð×µº Ö Ú ÓÙØÔÙØ× × Ö ÔØ ÓÒ Ó ÓÛ Ò×ØÖÙ Ø ÓÒ × Ò Ó ¸ Û × ÚÒ ÒØ ÓÖÑ Ó ×ØÖÙ ØÙÖ Ð Ö ¹ Ø ÓÒ׺ Ì Ù× Ö Ó × ÒÓØ ×Ô Ý Ò ÖÝ¹Ð Ú Ð Ø Ð× ×Ù × ÓÔ Ö Ò Û Ø ×¸ ÓÔ Ö Ò Ó«× Ø׸ ÓÔ Ó Ú Ð¹ ٠׸ Ò Ö ×Ø Ö Ú ÐÙ Ò Ó Ò ×º × Ö ×ÙÐظ Ø ÔÓØ ÒØ Ð ÓÖ Ñ ××Ô ¬ Ø ÓÒ Ý Ø Ù× Ö × Ð ×× Ø Ò Ø Ø Û Ø ÓØ Ö ØÓÓÐ׺ Ö Ú × × ÓÒ × ÑÔÐ Ó × ÖÚ Ø ÓÒ Ú ÖØÙ¹ ÐÐÝ ÐÐ Ö Ø ØÙÖ × ÓÖ Û ÔÖÓ Ö ÑÑ Ö Ò × Ò ÖÝ Ò Ó Ò × Û ÐÐ ÐÖ Ý Ú ÔÖÓ Ö Ñ× ´ ×× Ñ¹ Ð Ö×µ Ø Ø ÓÒØ Ò Ø × Ò ÓÖÑ Ø ÓÒº Ì Ö ÓÖ ¸ Û × ÓÙÐ Ð ØÓ ÜØÖ Ø Ø Ò ÓÖÑ Ø ÓÒ ÖÓÑ Ø ×× Ñ Ð Ö¸ Û × Û Ø Ö Ú Ó ×º Ø Ð Ú Ð¸ Ö Ú Ó × ×Ó Ý Ò Ô ÖÑÙØ Ø ÓÒ× Ó Ò×ØÖÙ Ø ÓÒ ØÓ Ø ×Ý×Ø Ñ³× ×× Ñ Ð Ö¸ Ò Ó¹ Ò ÕÙ Ø ÓÒ ×ÓÐÚ Ò ÓÒ Ø ×× Ñ Ð Ö³× ÓÙØÔÙØ ØÓ Ø ÖÑ Ò ÓÛ Ø Ò×ØÖÙ Ø ÓÒ × Ò Ó ´ Ø× ÓÔ¹ Ó Ò Ø× ÓÔ Ö Ò Ò Ó Ò ×µº Ì Ö Ú ÑÔÐ ¹ Ñ ÒØ Ø ÓÒ ×ÓÐÚ × Ø ÒØ Ö ÅÁÈ˸ ËÈ Ê ¸ ÐÔ ¸ Ò ÈÓÛ ÖÈ Ò×ØÖÙ Ø ÓÒ × Ø׺ ÁØ Ò Ð × ÑÓ×Ø Ó Ø ÊÅ Ò Ü Ò×ØÖÙ Ø ÓÒ × Ø× Ø Ó × ÒÓØ Ý Ø Ò Ð ×ÓÑ Ò×ØÖÙ Ø ÓÒ׸ ×Ù × Ø Ó× Û Ø ÒÓÒ¹ ÓÒØ ÒÙÓÙ× ¬ Р׺ Ö Ú ÔÖÓ Ù × Ø ×ØÖÙ ØÙÖ Ð Ö Ø ÓÒ× Ø Ø ×Ö ÓÛ Ò Ò×ØÖÙ Ø ÓÒ × Ø × Ò Ó º ÁØ ÛÓÙÐ ÒÓØ Æ ÙÐØ ØÓ ÔÖÓ Ù Ð Ö Ø ÓÒ× Ò ÓØ Ö Ð Ò Ù ×º Ì × Ð Ö Ø ÓÒ× Ò Ù× Ý ØÓÓÐ× Ø Ø ÒØ ÖÔÖ Ø ÓÖ Ñ Ò ÔÙÐ Ø Ò Ö ×º × Ò Ü ÑÔÐ ¸ Û Ú Ù ÐØ Ó Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø Ø × Ø Ö Ú Ö× ¹ Ò Ò Ö Ð Ö Ø ÓÒ× Ò Ò Ö¹ Ø × Ñ ÖÓ× ÓÖ ×Ø Ó Ñ ×× ÓÒº ÌÓ ÑÓÒ¹ ×ØÖ Ø Ø ÙØ Ð ØÝ Ó Ø × ØÓÓÐ׸ Û Ú Ö ÛÖ ØØ Ò Ã « ³× ¾ ÂÁÌ ÓÑÔ Ð Ö ØÓ Ù× Ø × Ñ ÖÓ׺ Í× Ò ÓÙÖ ÙØÓÑ Ø ÐÐÝ Ò Ö Ø Ó Ñ ØØ Ö× Ö Ù Ø ×Þ Ó Ø Ã « Ò × Ö ÔØ ÓÒ Ý ¼±º ÇÒ × ÒÓØ ¸ Ö Ú Ò Ú Û × Ò ×¹ × Ñ Ð Ö Ø ×Ø Öº Ù× Ó ÓÛ Ø Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ׸ Ø Ò ÕÙ ÐÝ ¬Ò « Ö Ò × ØÛ Ò\ Û Ø Ò Ö Ø ØÙÖ Ñ ÒÙ Ð × Ý׸ Ò Û Ø Ò ×¹ × Ñ Ð Ö ØÙ ÐÐÝ ÑÔÐ Ñ ÒØ׺ ÁÒ Ë Ø ÓÒ ¾ Û × Ù×× Ö Ð Ø ÛÓÖ ÓÐÐ Ö ³× ÓÑÔ Ð Ö¹Ö Ú Ö× ¹ Ò Ò Ö Ò ×Ý×Ø Ñ Ò Ø Æ Û Â Ö× Ý Å Ò ¹ Ó ÌÓÓРغ Ë Ø ÓÒ ¿ × Ö × ÓÙÖ ××ÙÑÔØ ÓÒ× ÓÙØ Ò×ØÖÙ Ø ÓÒ × Ø Ò Ó Ò ×¸ Ò ÜÔÐ Ò× ÓÛ Ö Ú ÛÓÖ ×º Ë Ø ÓÒ × Ù×× × Ø Ó Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø Û Ú Ù ÐØ ÓÒ ØÓÔ Ó Ö Ú º Ë Ø ÓÒ ×ÙÑÑ Ö Þ × ÓÙÖ ÓÒ ÐÙ× ÓÒ× Ò × Ö × ÓÙÖ ÙØÙÖ ÛÓÖ º ÔÔ Ò Ü Ú× ÓÑÔÐ Ø ÒÔÙØ ×Ô ¬ Ø ÓÒ Ó Ø ÅÁÈË Ò×ØÖÙ Ø ÓÒ × Ø ÓÖ Ö Ú º\ ¾ Ê Ð Ø ÏÓÖ\ Ì\ ÑÓ×Ø ÑÔÓÖØ ÒØ ÔÖ ÒØ ØÓ Ö Ú × ÓÐй Ö ³× ÛÓÖ ÓÒ Ö Ú Ö× ¹ Ò Ò Ö Ò ÓÑÔ Ð Ö× ½ º ÓÐÐ Ö ³× ×Ý×Ø Ñ Ó × Ö Ú Ö× ÒØ ÖÔÖ Ø Ø ÓÒ ØÓ Ò Ö Û Ø ×× Ñ ÐÝ Ò×ØÖÙ Ø ÓÒ× × ÓÙÐ Ù× ØÓ ÑÔÐ Ñ ÒØ ¹Ð Ú Ð Ð Ò Ù º ÁØ ÖÙÒ× Ô × Ó ÑÙØ Ø ×× Ñ ÐÝ Ó ØÓ × ÓÛ Ø × Ñ ÒØ × Ó Ø Ò×ØÖÙ Ø ÓÒ× Ò ×º À × ÛÓÖ × Ñ Ø ÙÐ ¹ Ò ÙØÓÑ Ø ÐÐÝ Ö Ø Ö Ø Ò ÓÑÔ Ð Ö׸ Û Ö Ø × Ö ÔØ ÓÒ× Ó Ø × Ñ ÒØ × Ó ×× Ñ ÐÝ Ò×ØÖÙ ¹ Ø ÓÒ× Ö Ù× ØÓ ÙØÓÑ Ø ÐÐÝ Ö Ø Ö Ø Ø ¹Ò Ò Ö ØÓÖ º Ö Ú × ÓÑÔÐ Ñ ÒØ ÖÝ ØÓ ÓÐÐ Ö ³× ÛÓÖ º Ö Ú ÓÑÔÙØ × Ò ÓÖÑ Ø ÓÒ Ø Ø Ò Ù× ØÓ ÝÔ ×× Ø ×× Ñ Ð Ö¸ Û × ÑÔÓÖØ ÒØ ÓÖ Ù Ð ¹ Ò ÂÁÌ× Ò Ò ÖÝ Ñ Ò ÔÙÐ Ø ÓÒ ØÓÓÐ׺ Ö Ú Ö ×× × × ÑÔÐ Ö ÔÖÓ Ð Ñ ÓÑ Ò Ø Ò ÓÐÐ Ö ³× ×Ý×Ø Ñ¸ × Ò Ø Ö Ú Ö× ¹ Ò Ò Ö× ×ÝÒØ Ü ØÖ Ò×¹ ÓÖÑ Ø ÓÒ Ò ÒÓØ × Ñ ÒØ ØÖ Ò× ÓÖÑ Ø ÓÒº ÇÒ Ø ÓØ Ö Ò ¸ ÓÙÖ ÔÖÓ Ð Ñ ÓÑ Ò × ÑÙ ÑÓÖ ØÖ Ø Ð Ø Ø × ÓÒ Ø ÓÖ Ö Ó Ñ ÒÙØ × ØÓ ÓÙÖ× ÓÖ Ö Ú ØÓ Ö Ú Ö× ¹ Ò Ò Ö Ò Ò×ØÖÙ Ø ÓÒ × Ø³× Ò Ó Ò ¸ Û Ö × ÓÐÐ Ö ³× ×Ý×Ø Ñ Ø × Ý× ØÓ Ö Ú Ö× ¹ Ò Ò Ö Ò Ò×ØÖÙ Ø ÓÒ × Ø³× × Ñ ÒØ ×º Ì ÛÓÖ Û Ó× Ó Ð× ÑÓ×Ø ÐÓ× ÐÝ Ñ Ø Ö Ú × Ø Æ Û Â Ö× Ý Å Ò ¹ Ó ÌÓÓÐ Ø ´ÆÂ̵ ¾¼ º Ì ÆÂÌ ÙØÓÑ Ø ÐÐÝ Ò Ö Ø × ÖÓÙØ Ò × ØÓ Ñ Ò Ô¹ ÙÐ Ø Ñ Ò ¹ Ó ÖÓÑ Ù× Ö ×Ô ¬ Ø ÓÒ× ÛÖ ØØ Ò Ò Ð Ò Ù ÐÐ ËÄ º ËÄ ×Ô ¬ Ø ÓÒ× Ö Ü Ø × Ö ÔØ ÓÒ× Ó Ò×ØÖÙ Ø ÓÒ Ð ÝÓÙظ ÛÖ ØØ Ò Ø × Ú Ö Ð Ð Ú Ð× Ó ×ØÖ Ø ÓÒº Ø Ø ÐÓÛ ×Ø Ð Ú Ð Ó × Ö ÔØ ÓÒ¸ ËÄ ¬ Ð × Ö Ù× ØÓ × Ö Ò¹ ×ØÖÙ Ø ÓÒ Ø¬ Р׺ ÓÖ Ü ÑÔÐ ¸ Ø × Ö ÔØ ÓÒ Ó Ø ËÈ Ê Ò×ØÖÙ Ø ÓÒ ¬ Ð × Ò ËÄ Ö × × Óй ÐÓÛ× ½\ Ò×Ø ¼ ¿½ ÓÔ ¿¼ ¿½ ×Ô¿¼ ÓÔ¾ ¾¾ ¾ ÑѾ¾ ¼ ¾½ ¾ ×Ô¾¾ ¼ ¾½ ÓÔ¿ ½ ¾ Ö×½ × ½¾ Ö×¾ ¼ × Ñѽ¿ ¼\ Ö Ú\ ¬ Ø ÓÒ Ò ÆÂÌ ×Ô ¬ Ø ÓÒ׺ Í× Ö× Ó Ò ÓÒÐÝ ÛÓÖÖÝ ÓÙØ Ò ÒØ Ö Ø Ø × Ø Ø Ð Ú Ð Ó ×× Ñ ÐÝ Ð Ò Ù ´Ø Ð Ú Ð Ø Û ÆÂÌ³× ÓÒ×ØÖÙ ØÓÖ× Ö ÛÖ ØØ Òµº Ê ÑÓÚ Ò ×Ù ÜØÖ Ð Ú Ð× Ó Ø Ð Ð Ñ Ò Ø × ×ÓÑ ÔÓØ ÒØ Ð ×ÓÙÖ × Ó ×Ô ¬ Ø ÓÒ ÖÖÓÖº Ì ÙØ ÓÖ× Ó ÆÂÌ Ù× Ø ×× Ñ Ð Ö ØÓ Ó Ø ×ع Ò Ó ×Ô ¬ Ò Ó Ò × ¸ Ý ÓÓ× Ò Ö Ò ÓÑ Ú ÐÙ × ÖÓÑ Û Ø Ò Ø ×Ô Ó Ò Ó Ò ×º Ï ØÙÖÒ Ø ÔÖÓ ×× ÖÓÙÒ Ò Ù× Ø ×× Ñ Ð Ö ØÓ Ö Ú Ò Ó Ò ×º Ù× Ù× Ö Ó ÆÂÌ ×Ô ¬ × Ø Ú Ö ¹ ÓÙ× Ð ×× × Ó Ò Ó Ò ×¸ Ø ÆÂÌ ×Ô ¬ Ø ÓÒ Ø ×Ø Ö Ó × ÒÓØ Ò ØÓ × Ö × ÑÙ Ó Ø ÒÓ Ò ×Ô × Ö Ú Ó ×º ÆÂÌ ×ÙÔÔÓÖØ× × Ú Ö Ð ØÙÖ × Ø Ø Ö Ú Ó × ÒÓظ ×Ù × ×ÙÔÔÓÖØ ÓÖ Ö ÐÓ Ø ÓÒº ÓÖ Ø Ö Ø× ×Ù × ÂÁÌ׸ Û Ö ÓÙÖ ÔÖ Ñ ÖÝ ÒØ Ö ×ظ Ö ÐÓ Ø ÓÒ × ÒÓØ Ò ××Ù º × ÒÓØ Ö Ü ÑÔÐ ¸ ÆÂÌ Ò Ò Ð ×ÝÒØ Ø ×× Ñ ÐÝ Ò×ØÖÙ Ø ÓÒ× Ð ÒÐݺ Ì ÙÖÖ ÒØ ÑÔÐ Ñ ÒØ Ø ÓÒ Ó Ö Ú Ó × ÒÓØ Ý Ø Ò Ð Óѹ ÔÐ Ü ×ÝÒØ Ø Ò×ØÖÙ Ø ÓÒ× Û ÐÐ ÓÛ Ú Ö¸ Û ÓÙÐ × ÐÝ Ð Ý Ö ØÓÓÐ Ø Ø × Ö ×ÝÒØ Ø Ò×ØÖÙ ¹ Ö Ú º Ø ÓÒ× ÓÒ ØÓÔ Ó\ Ö Ú ¿ ÁÑÔÐ Ñ ÒØ Ø ÓÒ\ Ó ×Ô\ Ö Ú Ø × ¹Ð Ú Ð × Ö ÔØ ÓÒ Ó Ò Ò×ØÖÙ ¹ Ø ÓÒ × Ø Ò Ò ×× Ñ Ð Ö¸ Ò ÒÖ Ø× Ö ¬Ð × Ø Ø × Ö Ø Ò×ØÖÙ Ø ÓÒ × Øº ÙÖ ½ ÐÐÙ×¹ ØÖ Ø × Ø ØÓÓÐ Ò ÓÖ Ö Ú º × ×Ö Ò Ë Ø ÓÒ ¿º½ Ø ×ÓÐÚ Ö × × Ö Ò Ë Ø ÓÒ ¿º¾ Ò Ø Ó Ñ ØØ Ö Ò Ö ØÓÖ × × Ö ÒË ¹ Ø ÓÒ º Ö Ú ÜØÖ Ø× Ø ÒÓ Ò Ó Ò×ØÖÙ Ø ÓÒ Ý × ÑÔÐ Ò ×Ñ ÐÐ ÒÙÑ Ö Ó ÔÓ×× Ð ÒÔÙØ × Ø׺ Ï ××ÙÑ Ò×ØÖÙ Ø ÓÒ Ø × ¬Ü ÒÙÑ Ö Ó ¬ Ð × × ÓÔ Ö Ò ×º Ï ××ÙÑ Ø Ø ¬ Ð × Ú Ø Ö ØÝÔ × Ö ×Ø Ö׸ ÑÑ Ø ×¸ Ò Ð Ð×» ÙÑÔ Ø Ö¹ Ø׺ Ê ×Ø Ö× Ö ´Ù×Ù ÐÐÝ ×Ñ Ðе × Ø Ó Ø ÜØÙ Ð Ò Ñ × ÑÑ Ø × Ö ÒØ Ö Ú ÐÙ × Ø Ø Ò Ö Ò ÓÚ Ö Ð Ö × Ø Ó ÔÓ×× Ð Ø × ´ º º¸ ÓÒ Ø Ü ¸ ×ÓÑ Ò×ØÖÙ Ø ÓÒ Ø × Ú Ö Ð ¿¾¹ Ø ÑÑ Ø ×µ Ò Ð ¹ Ð× Ö ×ÝÑ ÓÐ Ò×ØÖÙ Ø ÓÒ Ö ×× ×º Ì × ×¹ ×ÙÑÔØ ÓÒ× Ö ×ÙÆ ÒØ ØÓ × Ö Ø Ò×ØÖÙ Ø ÓÒ × Ø× ÓÖ Û Û Ú ÛÖ ØØ Ò ×Ô ¬ Ø ÓÒ× ´Û ÓÚ Ö Û Ö Ò Ó ÑÓ ÖÒ ÁË ×µº Ï Ñ Ø ÓÐÐÓÛ Ò ××ÙÑÔØ ÓÒ× ÓÙØ Ò×ØÖÙ ¹ Ø ÓÒ Ò Ó Ò ×\ ¼ ¾ Ö ¾ ÓÒ ½ ½ ½¾ ÓÔ\ ¾ ¾ ¾ ¾ ½¿ ½¿ ½¿\ ½º\ ÓÙÐ\ Ù×\ ØÓ Ð Ñ Ò Ø Ø\ ¬Ð ÐÚÐ\ ×× Ñ ÐÝ Ò Ó Ò × Ö ×Ø Ø Ð ×× ØÖ Ò× ÓÖÑ ¹ Ø ÓÒ׺ Ì Ø ×¸ Ô ÖØ ÙÐ Ö Ò×ØÖÙ Ø ÓÒ ÐÛ Ý× × Ø × Ñ Ò Ó Ò º ÁÒ Ø ÓÒ¸ ×× Ñ¹ Ð Ò ØÛÓ ÓÖÖ Ø Ò×ØÖÙ Ø ÓÒ× ØÓ Ø Ö Ú × Ø × Ñ Ö ×ÙÐØ× × ÓÒ Ø Ò Ø Ò Ø Ö ×ÙÐØ× Ó ×¹\ binary rewriter disassembler\ instruction description\ idc\ DERIVE solver\ encoding description\ code emitter generator\ system assembler\ debugger\ ÙÖ ½\ Ò Ü ÑÔÐ ØÓÓÐ\ Ò Ø Ø Ù× ×\ Ö Ú\ ºÏ\ Ú\ Ù ÐØ Ø\ ØÓÓÐ× Ø Ø Ö Ò ÓÙ Ð\ ÓÜ ×º\ × Ñ Ð Ò Ø Ñ × Ô Ö Ø Ðݺ ÌÓ × Ø × Ý Ø × ×¹ ×ÙÑÔØ ÓÒ¸ ×× Ñ Ð Ö× ÑÙ×Ø ÔÖ Ú ÒØ ÖÓÑ Ò ¸ Ö ÑÓÚ Ò ¸ ÓÖ Ö ÓÖ Ö Ò Ò×ØÖÙ Ø ÓÒ× Ò Ò Ö Ð¸ Ø Ù× Ö ÑÙ×Ø ÔÖÓÚ Ö Ú ÛØ Ø ÔÔÖÓÔÖ Ø ×× Ñ ÐÝ Ö Ø Ú ×º Ì × ××ÙÑÔ¹ Ø ÓÒ Ð Ø× Ù× Ø ØÓ Ø Ö Ø ×× Ñ ÐÝ Ó Ñ ÒÝ Ò×ØÖÙ Ø ÓÒ× ÒØÓ ÓÒ ¬Ð ¸ Û Ö Ù × ×ÓÐÚ Ò ØÑ Ý Ð Ö ÓÒ×Ø Òغ ÓÖ Ü ÑÔÐ ¸ ÓÒ ÓÙÖ Ñ Ò ´ ٠йÔÖÓ ××ÓÖ ¼¼ ÅÀÞ È ÒØ ÙÑ ÁÁÁµ¸ Û Ò ×× Ñ Ð ¾¼¼¼ Ò×ØÖÙ Ø ÓÒ× Ò Ù×Ø ÓÙØ ØÛ × ÑÙ Ø Ñ × Û Ò ×× Ñ Ð ÓÒ Ò×ØÖÙ Ø ÓÒ ÔÖÓ ×× Ö Ø ÓÒ Ò ¬Ð Á»Ç ÓÑ Ò Ø Ø Ó×Ø Ó ×× Ñ Ðݺ ¾º Ï ××ÙÑ Ø Ø Ø Ú Ð ØÝ Ò Ò Ó Ò Ó Ú ÐÙ Ò ¬ Ð Ó × ÒÓØ Ô Ò ÓÒ Ø Ú ÐÙ Ó ÒÝ ÓØ Ö ¬ Ð º Ï Ò Ø Ù× ÓÑÔÙØ ¬ Ð ³× Ò Ó Ò Ý ÒÙÑ Ö Ø Ò Ú ÖÝ Ð Ð Ú ÐÙ ÓÖ Ø Û Ð ÓÐ Ò ÐÐ ÓØ Ö ¬ Ð × ÓÒ×Ø Òغ Ì × ××ÙÑÔØ ÓÒ ÐÐÓÛ× Ù× ØÓ ×ÓÐÚ ÓÖ ¬Ð ×Ô ¹ Ö Ø Ðݺ ËÓÑ Ò×ØÖÙ Ø ÓÒ× Ò ÖØ Ò Ò×ØÖÙ Ø ÓÒ × Ø× ´×Ù ×Ø Êŵ Ó ÒÓØ × Ø × Ý Ø × ×¹ ×ÙÑÔØ ÓÒ¸ Ò Û × Ö Ú ÑÙ×Ø Ó ÑÓÖ ÜÔ Ò× Ú × Ö º ¿º Ì ¬ Ð ÓÖ Ò Ò¹ Ø ÑÑ Ø Û Ó× Ø × × Ø × Ò Ô Ò ÒØ Ó Ø ÐÓÛ Ø× Ó Ø Ñ¹ Ñ Ø º Ì Ø ×¸ ÓÒ×Ø ÒØ× ØÛ Ò ¾Ò ½ Ò Ò   ½ Ò ÐÐ ¾ ÒÓ Ò Ø × Ñ Ò×ØÖÙ Ø ÓÒ ¬ Ð º Ì × ××ÙÑÔØ ÓÒ Ð Ø× Ù× ×ÓÐÚ ÓÖ ÑÑ ¹ Ø ¬ Ð × ÑÓÖ ÕÙ ÐÝ ÓØ ÖÛ × ¸ ÓÙÖ ×ÓÐÚ Ö ÛÓÙÐ Ú ØÓ ÒÙÑ Ö Ø ÐÐ Ð Ð ÓÔ Ö Ò Ú Ð¹ ٠׺ º ÁÑÑ Ø× Ö ÒÓ Û Ø × ÑÔÐ ØÖ Ò×¹ ÓÖÑ Ø ÓÒ׺ Ë ÑÔÐ Ñ Ò× Ø Ø Ò ÑÑ ¹ Ø ³× Ú ÐÙ Ò Ú Ð Ò ÓÖ ØÖ Ð Ò Þ ÖÓ× Ö ¹ ÑÓÚ ¸ ÓÒ×Ø ÒØ× ×Ù ØÖ Ø ÖÓÑ Ø¸ ÓÖ Ð Ò\ ÓÒ Ø× ´ ÓÖ × Ò ÜØ Ò× ÓÒµº Á Ö Ú Ø Ø× ÓÑÔÐ Ü ØÖ Ò× ÓÖÑ Ø ÓÒ Ø Ø Ø Ò¹ ÒÓØ Ö ÔÖ × ÒØ ´×Ù ×Ø × Ð ØÓÖ Ò Ü Ñ ÑÓÖÝ Ò×ØÖÙ Ø ÓÒ׸ Û × ÒÓ ×Ø ÐÓ Ö Ø Ñ Ó Ø × Ð ØÓÖµ¸ Ø ÑÑ Ø ÐÝ ×ØÓÔ× Ò Ø ÐÐ× Ø Ù× Ö¸ Û Ó Ò ÔÖÓÚ ¹ Ö Ú ÛØ Ø ØÖ Ò× ÓÖÑ Ø ÓÒ ÜÔÐ ØÐݺ ÇÙÖ ÑÔÐ Ñ ÒØ Ø ÓÒ ÙÖÖ ÒØÐÝ Ñ × Ø ××ÙÑÔ¹ Ø ÓÒ Ø Ø Ò Ø Ú ÑÑ Ø× Ö ÒÓ Ù×¹ Ò ØÛÓ×¹ ÓÑÔÐ Ñ ÒØ Ø × ××ÙÑÔØ ÓÒ ÓÙÐ Ò ÖÐÝ × Ðݺ\ ¿º½ ËÔ Ý Ò ÁÒ×ØÖÙ Ø ÓÒ×\ Ì ÖÓÒØ Ò ØÓ Ö Ú ¸ ¸ ØÖ Ò×Ð Ø × ×× Ñ Ðݹ Ð Ú Ð Ò×ØÖÙ Ø ÓÒ × Ø × Ö ÔØ ÓÒ× ÒØÓ Ø ÒØ ÖÑ ¹ Ø ÓÖÑ Ø Ø Ö Ú Ù× ×º × ÓÙØ ¼¼ Ð Ò × Ó Ð Ü Ò Ý Ó º Í× Ö× × Ö Ò×ØÖÙ Ø ÓÒ× ÛØ Ý ¹Ð × Ö ÔØ ÓÒ Ø Ø ÓÒØ Ò× Ð ×Ø Ó Ò×ØÖÙ Ø ÓÒ× ØÓ Ò Ö Ø Ò ÓÖÑ Ø × Ö ÔØ ÓÒ Ø Ø × Ö ×Ø ×× Ñ ÐÝ ×ÝÒØ Ü Ò Ø ÓÔ Ö Ò ØÝÔ ×º ÆÓØ Ø Ø Ø ÓÖÑ Ø× Ö ÖÓÙÔ Ý ×× Ñ¹ ÐÝ ×ÝÒØ Ü¸ ÒÓØ Ý Ò Ó Ò Ð ×× Û Ð Ú Ø Ø Ø ÓÖÑ Ö × Ö ÑÓÖ Ö Ð ¸ × Ø ÜÔÖ ×× × ÐÓ ¹ Ð Ö Ð Ø ÓÒ× Ô× Ö Ø Ö Ø Ò Ò Ó Ò Ö Ð Ø ÓÒ× Ô׺ Ì × Ö ÔØ ÓÒ Ó ËÈ Ê ÄÍ Ò×ØÖÙ Ø ÓÒ× Ö × × ÓÐÐÓÛ׺ ÆÓØ Ø Ø Ø ¬ Ð ¹Ð Ú Ð Ò ÓÖÑ Ø ÓÒ Ò ¹ ×× ÖÝ Û Ø ÆÂÌ Ó × ÒÓØ Ú ØÓ ×Ô ¬ ÝØ Ù× Öº\ Ö × ´ ± ¼¸ ± ½¸ ± ¾¸ ± ¿¸ ± ¸ ± ¸ ± ¸ ± ¸ ±Ó¼¸ ±Ó½¸ ±Ó¾¸ ±Ó¿¸ ±Ó ¸ ±Ó ¸ ±Ó ¸ ±Ó ¸ ±Ð¼¸ ±Ð½¸ ±Ð¾¸ ±Ð¿¸ ±Ð ¸ ±Ð ¸ ±Ð ¸ ±Ð ¸ ± ¼¸ ± ½¸ ± ¾¸ ± ¿¸ ± ¸ ± ¸ ± ¸ ± µ Ò ¸ Ò ÜÓÖ¸ ÜÓÖ ¸ ×Ù ¸ ×Ù ¸ Ò Ò¸ Ò Ò ¸ ÓÖ¸ ÓÖ ¸ ÓÖÒ¸ ÓÖÒ ¸ ¸ ÜÒÓÖ¸ ÜÒÓÖ ¸ ×Ðи ×Öи ×Ö ¸ ¸ ܸ Ü ¸ Ø ¸ Ø ØÚ¸ ×Ù ¸ ܸ ×Ù Ü ¸ Ø×Ù ¸ Ø×Ù ØÚ¸ ÑÙÐ× ¸\ ÙÑÙи ×ÑÙи ÙÑÙÐ ¸ ×ÑÙÐ ¸ Ù Ú¸ × Ú¸ Ù × Ú ¸ × Ú ¸ Ö ×ØÓÖ ¹¹ ²ÓÔ² Ö ½ Ö ×¸ Ö ¾ Ö ×¸ Ö ×Ø Ö ²ÓÔ² Ö ½ Ö ×¸ ÑѸ Ö ×Ø Ö ×\ Ú ¸ ×\ Ì ÔÖÓ Ù Ø ÓÒ × Ö × Ø ×× Ñ Ð Ö ×ÝÒØ Ü Ò Ø ØÝÔ × Ó Ø ÓÔ Ö Ò × ÓÖ ÑÙÐØ ÔÐ Ò×ØÖÙ Ø ÓÒ׺ ÁØ ×Ø Ø × Ø Ø Ø Ö Ö Ö ×Ø ÖßÖ ×Ø Ö Ò Ö ×Ø Öß ÑÑ Ø ÓÖÑ× Ó ÐÐ Ó Ø Ò×ØÖÙ Ø ÓÒ× Ð ×Ø º Ì ÔÐ ÓÐ Ö ²ÓÔ² Ò Ø×Û Ö Ø Ò×ØÖÙ ¹ Ø ÓÒ Ò Ñ ÔÔ Ö׺ Ì ÓÔ Ö Ò ×Ô ¬ Ø ÓÒ × Ý× Ø Ø Ø ÓÖÑ ØØ Ò ×Ù ×ØÖ Ò Ö ½ Ö ×³³ × Ö ¹ ÔÐ Ý Ñ Ñ Ö× Ó Ø Ð ×Ø Ó Ö ×Ø Ö× Ö ×º Ë Ú Ö Ð ÓÒÚ ÒØ ÓÒ× ÔÔÐÝ Ö ×Ø Ö ¬ Ð Ò Ñ × Ò Û Ø Ö¸ ÙÑÔ Ø Ö Ø × Ø ÙÒ ÕÙ Ò Ñ ²Ð в¸ Ò Ò ÑÑ Ø ¬ Ð × ÒÝ ÓØ Ö ¬ Ð º\ ¿º¾ Ì ËÓÐÚ Ö×\ Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò Ò ººº\ ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ±\ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸\ ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ± ±\ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸\ ± ¼ ± ½ ± ¾ ± ¿ ± ± ± ± ±Ó¼ ±Ó½ ±Ó¾ ±Ó¿ ±Ó ±Ó ±Ó ±Ó ±Ð¼\ ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü\ ¼¼ ¾¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼¼ ¾¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼¼\ ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü ¼Ü\ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼ ¼¼\ Ö Ú × ÓÑÔÓ× Ó Ø Ö ×ÓÐÚ Ö׸ ×Ô Ð¹ Þ ØÓ Ö Ú ×Ô ¬ ÓÔ Ö Ò ØÝÔ Ø Ö ×¹ Ø Ö ×ÓÐÚ Ö ×ÓÐÚ × ÓÖ Ö ×Ø Ö ¬ Ð ×»ÓÔ Ö Ò ×¸ Ø Ñ¹ Ñ Ø ×ÓÐÚ Ö ×ÓÐÚ × ÓÖ ÑÑ Ø ¬ Р׸ Ò Ø ÙÑÔ ×ÓÐÚ Ö ×ÓÐÚ × ÓÖ ÙÑÔ Ø Ö Ø ¬ Р׺ ×ÓÐÚ Ö Ù× × Ø ×× Ñ Ð Ö ØÓ ÓÑÔÙØ Ò×ØÖÙ Ø ÓÒ Ò Ó ¹ Ò ×º Ö Ú Ñ Ø× Ó ÒØÓ Ò ×× Ñ Ð Ö ¬Ð ¸ ÖÙÒ× Ø ×× Ñ Ð Ö¸ Ò ¬Ò × Ø Ó Ò Ø Ö ×ÙÐØ Ò Ü ÙØ Ð º Ö Ú Ø ×Ø× ÓÖ ÒÝ «ÖÒ Ò Ò ¹ ÒÒ ×× ØÛ Ò Ø Ø Ö Ø Ò Ø ×ÓÐÚ Ò Ö Ø ¹ ØÙÖ ×¸ Ò ÔÔÖÓÔÖ Ø ÐÝ ×Û Ô× ÝØ × Ò Ø Ó Ø Ó ÓÖ Ó Ò ÒÝ ×ÓÐÚ Ò º ÌÓ Ñ Ö Ø Ø Ñ Ò Ó Ò Ø Ü ÙØ Ð ¸ Ö Ú ÜÔÐ ØÐÝ Ñ Ø× Ò ÔÓ×Ø× ÖÓÙÒ Ø Ó Ù× Ò ×× Ñ Ð Ö Ø Ö Ø Ú ×º ÇÙÖ Ò ÔÓ×Ø× Ö Ö Ò ÓÑÐÝ Ó× Ò × ÕÙ Ò Ó ÝØ ×º ÁØ × ÙÒÐ ÐÝ Ø Ø Ö Ú Ñ Ø× × ÕÙ Ò Ó Ò×ØÖÙ Ø ÓÒ× Ø Ø Ñ Ø Ø Ò ÔÓ×ظ × Ò Ø Ó × ÒÓØ Ü Ù×Ø Ú ÐÝ × Ö Ø × Ø Ó Ò×ØÖÙ Ø ÓÒ× Û ÓÒÐÝ × Ö Ø ÒØ Ö ×Ô Ó Ú ÐÙ × ÓÖ Ö ×Ø Ö ¬ Р׸ Ò ÒÓØ ÓÖ ÑÑ Ø Ò ÙÑÔ ¬ Р׺ ÐØ ÓÙ Û Ó ÒÓØ ÙÖÖ ÒØÐÝ Ó ×Ó¸ × ÑÔÐ Û Ý ØÓ Ø Ø Ò ÚÓ Ò ÔÓ×Ø ÓÒ­ Ø× ÛÓÙÐ ØÓ ×ÓÐÚ Ò×ØÖÙ Ø ÓÒ ØÛ Û Ø « Ö ÒØ Ò ÔÓ×Ø Ú Ð٠׺ Ö Ú Ö ÔÖ × ÒØ× Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × × Ò ÓÔ Ó Ñ × Ò Ò Ö ØÖ ÖÝ ÒÙÑ Ö Ó ÓÔ Ö Ò ¬ Р׺ Ì ÓÔ Ó Ñ × ÓÒØ Ò× Ø ØÑ × Ó ½³× Ø Ø ÑÙ×Ø × Ø Ò Ò Ò×ØÖÙ Ø ÓÒ ØÓ ×Ô Ý ÚÒ ÓÔ Ó º Ê ×Ø Ö ¬ Ð × Ö ×Ô ¬ × × ÕÙ Ò Ó Ñ × ×¸ ÓÒ ÓÖ Ð Ð Ö ×Ø Ö Ú ÐÙ ÑÑ Ø× Ò Ð Ð ¬ Ð × Ö Ö ÔÖ × ÒØ × × Þ ¸ Ò Ó«× Ø¸ Ò × ÑÔÐ ØÖ Ò× ÓÖѺ Ì ×ÓÐÚ Ö× ÐÐ ÛÓÖ Ò Ø × Ñ × Ñ ÒÒ Öº ÓÒ ÐÓ Ø × ¬ Ð Ò Ø ÖÑ Ò × Ø× × Þ Ý Ð Ð ÓÔ Ö Ò Ú ÐÙ Ñ ØØ Ò ÓÒ Ò×ØÖÙ Ø ÓÒ ÓÖ Ó Ø Ø ¬ Ð ´Û Ð ÓÐ Ò ÐÐ ÓØ Ö ¬ Р׳ Ú ÐÙ ×\ ÙÖ ¾ Ì ×× Ñ ÐÝ Ø Ø Ö Ú Ò Ö Ø × ØÓ ×ÓÐÚ ÓÖ Ø Ð ×Ø Ö ×Ø Ö ¬ Ð Ó Ø ËÈ Ê Ò¹ ×ØÖÙ Ø ÓÒ¸ Ò Ø Ö ×ÙÐØ Ò Ò ÖÝ Ò×ØÖÙ Ø ÓÒ× Ø Ø Ø Ò ÐÝÞ ×º ¬Ü µ Ò ¬Ò Ò ÐÐ Ø× Ø Ø Ò ÒØ Ò ÖÝ ÒÓ Ò º ÙÖ ¾ ÐÐÙ×ØÖ Ø × Ø × ÔÖÓ ×× ÓÖ Ø Ð ×Ø ÓÔ Ö Ò Ó Ø ËÈ Ê Ò Ò×ØÖÙ Ø ÓÒº Ì Ó× Ø× Ø Ø Ò ÐÓÒ ØÓ Ø ¬ Ð º ÁØ× Ó«× Ø × Ú Ò Ý Ø ÐÓÛ ×Ø Ò Ò Ø Ø× × Þ Ý Ø ¹ ÖÒ ØÛ Ò Ø× ÐÓÛ ×Ø Ò ×Ø Øº ×Ô ¬ ÓÔ Ö Ò ³× Ú ÐÙ Ü ØÐÝ ÕÙ Ð× Ø Ú ÐÙ Ó Ø × Ø× Û Ò Ø × Ù× º ÐÐ ÓØ Ö Ø× ÐÓÒ ØÓ ÓØ Ö ¬ Р׸ ÓÖ ØÓ Ø ÓÔ Ó Ñ × º × ×ÓÐÚ Ö × ÖÙÒ¸ Ø ÓÔ Ó Ñ × × Ö ¬Ò º Ì Ø ×¸ ×ÓÐÚ Ö Ð Ñ× Ø× ÓÖ Ú Ö ÓÙ× ¬ Р׺ Ø Ö ÐÐ ¬ Ð × Ú Ò ×ÓÐÚ ÓÖ¸ Ø ÓÔ Ó Ñ × × × Ø ØÓ Ø Ö Ñ Ò Ò ÙÒ Ð Ñ Ø× ´ º º¸ Ø Ó× Ø Ø Ö × Ø ØÓ ½ Ò Ú ÖÝ Ñ ØØ Ò×ØÖÙ Ø ÓÒµº Ï Ñ ÓÒ Ò Ö Ð ×× Ñ Ð Ö¹ Ô Ò ÒØ ×¹ ×ÙÑÔØ ÓÒ¸ Û ×Ø ØØ ×× Ñ Ð Ö Û ÐÐ ÔÖÓ Ù ÖÖÓÖ× Û Ò ÜÔ Ø º ÓÖ Ü ÑÔÐ ¸ Û ××ÙÑ Ø Ø ×× Ñ Ð Ö× Û ÐÐ Ö ØÙÖÒ Ò ÖÖÓÖ Û Ò ÐÐ Ð Ö ¹ ×Ø Ö× Ö Ù× Ò Ò Ò×ØÖÙ Ø ÓÒ¸ ÓÖ Û Ò ÓÒ×Ø ÒØ× Ö ØÓÓ Ð Ö º Ö Ú ¬Ò × Ø × Þ × Ó ÑÑ Ø ¬ Ð × Ý Ø ×Ø Ò Ð Ö Ö Ò Ð Ö Ö ÑÑ Ø ×¸ Ò Ø ÜÔ Ø× Ø Ø Ø ×× Ñ Ð Ö Û ÐÐ Ú ÒØÙ ÐÐÝ Ö ØÙÖÒ Ò ÖÖÓÖ Ñ ×× º ÍÒ ÓÖØÙÒ Ø Ðݸ ×× Ñ Ð Ö× Ó ÒÓØ ÐÛ Ý× Ö ÔÓÖØ Ö¹ ÖÓÖ× Û Ò Ø Ý × ÓÙÐ º × × ÓÛ× ×ÓÑ ÙÒ ÜÔ Ø Ú ÓÖ¸ Ò Ø Ø Ø Û ÐÐ ÔØ ×ÓÑ ÔÓ× Ø Ú ÓÒ¹ ×Ø ÒØ× Ø Ø Ö ØÓÓ Ð Ö ÓÖ × Ò ¬ Ð × ´ ÓÖ Ü¹ ÔØ× ÓÒ×Ø ÒØ× ÑÔÐ ¸ ÓÖ ½ ¹ Ø × Ò ¬ Ð Ø ØÛ Ò ¿¾ Ò ¿ µº ÁÒ Ò Ö Ð¸ Û ØÖÝ ØÓ Ö ¹\ ÑÓÚ ×Ù Ô Ò Ò × Ý Ò Ø ÒÖ Ø Ó Ö Ú Ø× ÖÓÙÒ Ø × Ô ÖØ ÙÐ Ö Ù Ý Ñ Ò ×ÙÖ Ø Ø ÓÒ×Ø ÒØ Ú ÐÙ Ü Ñ Ò ¹ ØÙ ÐÐÝ Ö ×ÙÐØ× Ò « Ö ÒØ Ò×ØÖÙ Ø ÓÒº\ ¿º¾º½ Ê ×Ø Ö ËÓÐÚ Ö\ º ÌÓ\ Ö Ú Ø ½³× Ø Ö ×Ø Ö ÓÖ Ø ÓÚ Ö ÐÐ Ð Ð Ö ×Ø Ò×ØÖÙ Ø ÓÒ Û Ø Ø\ ÓÖ Ñ × Ö Ö Ò Ö\ Ø ÑÙ×Ø × Ø ØÓ Ò Ó ÙÖÖ ÒØ ¬ Ð ¸ Ø Ö Ø Ò Ö׸ Ò ØÛ × Æ ÓÑÔÙØ ¬ Ð Ñ ×\ Ð\ Ì Ö ×Ø Ö ×ÓÐÚ Ö × Ö Ú ³× ÑÓ×Ø × ×ÓÐÚ Ö¸ Ò × ÐÐ Ý Ø ÓØ Ö ×ÓÐÚ Ö׺ ÁØ × ØÛÓ Ø × ×º Ö×ظ Ø ÓÑÔÙØ × Ò Ò×ØÖÙ Ø ÓÒ³× ÓÔ Ó Ñ × Û Ø Ö ×Ô Ø ØÓ Ø Ö ×Ø Ö ¬ Р׺ Ì ÓÔ Ó Ñ × ÓÒ¹ × ×Ø× Ó ÐÐ Ó Ø Ø× Ø Ø Ö ÒÓØ Ù× ÝØ Ö ¹ ×Ø Ö ¬ Р׺ Ë ÓÒ ¸ Ø ¬Ò × ÓØ Ø ÐÓ Ø ÓÒ Ò ×Þ Ó Ö ×Ø Ö ÓÔ Ö Ò ¬ Ð ¸ ÐÓÒ Û Ø Ø ØÑ × Ø Ø ÑÙ×Ø × Ø ØÓ ×Ô Ý Ú Ò ÓÔ Ö Ò Ú ÐÙ º Ö ×Ø Ö ÓÔ Ö Ò × ÒÝ ÓÔ Ö Ò ÓÖ Û Ø Ð ÒØ ÒÙÑ Ö Ø × Ø ÔÓ×× Ð Ø ÜØÙ Ð Ú Ð٠׺ Ì Ö ×Ø Ö ×ÓÐÚ Ö ÛÓÖ × Ò Ø ÓÐÐÓÛ Ò Ñ ÒÒ Ö ÓÖ Ô ÖØ ÙÐ Ö Ö ×Ø Ö ¬ Ð ½º ÁØ Ö Ø ÓÚ Ö ÐÐ Ð Ð Ö Ö ×Ø Ö¸ Ö Ø ÓÖÑ Ø ×ØÖ Ò º Ê ÔÐ Ö ×Ø Ö Ú ÐÙ ¸ Ò ÐÐ ÓØ Ð Ð Ú Ð٠׺ Ñ Ø Ø Ø Ñ ÒØÓ Ù« Ö ×Ø Ö× Ò Ø ¬ Ð º ÓÖ ÓÔÝ Ó Ø Ò×ØÖÙ Ø ÓÒ Ø ÓÔ Ö Ò Û Ø Ø Ö ÓÔ Ö Ò × Û Ø ×ÓÑ Ò×ØÖÙ Ø ÓÒ× Ò Ö Ò×غ\ ×Ø Ö× Ò×Ø Ö ²\ ¾º Ï Ð Ø Ö Ø Ò ÓÚ Ö Ö ×Ø Ö Ú ÐÙ ¸ Ò Ö ¹ Ñ ÒØ ÐÐÝ Ö Ù Ø ÓÔ Ó Ñ × Ý Æ Ò Ø ÛØ Ò ÖÝ Ò×ØÖÙ Ø ÓÒ\ ÓÔ Ñ × ÓÖ ÓÔ Ñ × Ö ² ¼ Ò Ö ×Ø Ö× Ò×Ø Ö\ Ì × ÔÖÓ ×× Û ÐÐ Ð Ú Ø Ñ × Û Ø ½³× Ò Ú¹ ÖÝ Ø Ø Ø × ½ × Ø ÓÖ ÐÐ Ò×ØÖÙ Ø ÓÒ Ò¹ ×Ø Ò ×º ¿º Ü ÑÒ Ø Ñ ØØ Ò×ØÖÙ Ø ÓÒ ×ØÖ Ñ¸ Ò ÐÓÓ ÓÖ ÐÐ Ø× Ø Ø Ò ØÛ Ò ¼ Ò ½º ËÙ Ø× ÐÓÒ ØÓ Ø ÙÖÖ ÒØ ¬ Ð ¸ × Ò ÐÐ ÓØ Ö ÓÔ Ö Ò Ú ÐÙ × Û Ö ¬Ü ¸ Ò ÐÐ Ú ÐÙ × ÓÖ Ø ¬ Ð Û Ö ÒÙÑ Ö Ø º ÌÓ ¬Ò Ø × Ø׸ ØÛ × Æ Ò×ØÖÙ Ø ÓÒ ÛØ Ø ÓÑÔÐ Ñ ÒØ Ó Ø ÓÔ Ó Ñ × Ò ÐÓ ÐÐÝ ×ÙÑÑ Ò Ø Ö ×ÙÐØ\ ÓÖ Ð Ð ¼ Ö Ò Ö ×Ø Ö× ´ Ò×Ø Ö ²\ Ï Ú ÑÔÐ Ñ ÒØ ØÛÓ Ñ Ò ÜØ Ò× ÓÒ× ØÓ Ø × × ÑÔÐ × Ñ º Ö×ظ ÓÒ ×ÓÑ Ö Ø ØÙÖ ×¸ ×Ô ¹ ¬ Ö ×Ø Ö Ú ÐÙ Ò Ò Ø ØÙ Ð Ò×ØÖÙ Ø ÓÒ Ò Ó Ò º ÓÖ Ü ÑÔÐ ¸ ÓÒ Ø Ü ¸ « Ö ÒØ Ò×ØÖÙ ¹ Ø ÓÒ ÓÖÑ× Ö Ù× Û Ò Ø ± Ü Ö ×Ø Ö × Ù× × Ò ÓÔ Ö Ò º Ì ×ÓÐÚ Ö Ø Ø× ×Ù × ÓÒØ ÒÙ¹ Ø × Ý Ò Ø Ø ÐÐ Ò×Ø Ò × Ó Ò Ò×ØÖÙ Ø ÓÒ Ö Ó Ø × Ñ Ð Ò Ø º Ì Ø ×¸ Û Ò Ø Ñ Ø× Ø × ÕÙ Ò Ó Ò×ØÖÙ Ø ÓÒ× ´ × × ÓÛÒ Ò ÙÖ ¾µ¸ Ø × Ø Ø Ø ÒÙÑ Ö Ó Ò×ØÖÙ Ø ÓÒ ÝØ × Ñ ØØ ÕÙ Ð× Ø ÒÙÑ Ö Ó Ò×ØÖÙ Ø ÓÒ× ÑÙÐØ ÔÐ ÝØ × Þ Ó ÓÒ Ò×ØÖÙ Ø ÓÒº Á Ø Ó × ÒÓظ Ø ×ÓÐÚ × ÓÖ Ø Ö ×Ø Ö Ú ÐÙ × Ò Ô Ò ÒØÐݸ Ò Ñ Ø× ÑÙÐØ ÔÐ Ò¹ ×ØÖÙ Ø ÓÒ ×Ô ¬ Ø ÓÒ× ×Ô ¬ Ø ÓÒ ÒØ ¬ × Û ×Ô ¬ Ö ×Ø Ö Ú ÐÙ × Ø ÓÖÖ ×ÔÓÒ × ØÓº Ë ÓÒ ¸ Ø ×ÓÐÚ Ö ÐÐÓÛ× Ù× Ö× ØÓ ×ÙÔÔÐÝ Ö ×¹ Ø Ö ÓÔ Ö Ò Ð ×Ø× Ø Ø ÓÒØ Ò ÐÐ Ð Ú Ð٠׸ Û Ø ÙØÓÑ Ø ÐÐÝ ÙÐÐ׺ Ì × ×ÝÒØ Ü × Ù× ÙÐ ÓÖ × ØÙ ¹ Ø ÓÒ× Û Ö Ò×ØÖÙ Ø ÓÒ× ÓÒÐÝ ÔØ ×Ù × Ø× Ó ÔÓ×¹ × Ð Ö ×Ø Ö Ú Ð٠׺ ÓÖ Ü ÑÔÐ ¸ Ø ËÈ Ê Ö¹ Ø ØÙÖ ×ÙÔÔÓÖØ× ­Ó Ø Ò ¹ÔÓ ÒØ Ò×ØÖÙ Ø ÓÒ× Ø Ø Ø « Ö ÒØ ÓÑ Ò Ø ÓÒ× Ó Ö ×Ø Ö׸ Ô Ò ¹ Ò ÓÒ Û Ø Ö Ø ÒÔÙØ× Ò ÓÙØÔÙØ× Ö × Ò Ð ¹¸ ÓÙ Ð ¹¸ ÓÖ ÕÙ ¹ÔÖ × ÓÒº ËÔ Ý Ò Ü ØÐÝ Û ÓÔ Ö Ò × Ö Ð Ð ÛÓÙÐ Ò Ö × Ø × Þ Ó Ø ËÈ Ê ×Ô ¬ Ø ÓÒ Ý ÓÙØ ¼±¸ Ò ÛÓÙÐ Ð×Ó Ò Ö × Ø ÔÖÓ Ð ØÝ Ó ÖÖÓÖº ÁÒ×Ø ¸ Ð ÒØ× Ò ×Ø Ø Ø Ø Ú ÖÝ ­Ó Ø Ò ¹ÔÓ ÒØ Ò×ØÖÙ Ø ÓÒ Ø × ÒÝ ­Ó Ø Ò ¹ÔÓ ÒØ Ö ×Ø Ö × Ò ÓÔ Ö Ò\ Ö × ´ ± ¼¸ ± ½¸ ± ¾¸ ± ¿¸ ± ¸ ± ¸ ± ¸ ± ¸ ± ¸ ± ¸ ± ½¼¸ ± ½½¸ ± ½¾¸ ± ½¿¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ½ ¸ ± ¾¼¸ ± ¾½¸ ± ¾¾¸ ± ¾¿¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¾ ¸ ± ¿¼¸ ± ¿½ µ ׸ ×٠׸ ÑÙÐ׸ Ú׸ ÑÙÐ ¸ Ú ¸ Õ¸ ×Ù Õ¸ ×ÑÙÐ ¸ ÑÙÐÕ ¹¹ ²ÓÔ² Ö ½ Ö ×¸ Ö ¾ Ö ¸ ÑÙÐÕ¸ ׸ Ö ¿ ×Ù Ö ¸ ÚÕ¸ ×\ ÓÔ Ñ × µ\ ØØ Ò ¸Ø Ø ÒØ ¬ Ð º Ý Ø ÑÓ×Ø Ò ÓÑÔÙØ Ñ × Ø× Ð ×Ø × Ò ¬\ × ½× Ø Ì ×Þ Ó Ø ¬ Ð × Ð ×Ø × Ò ¬ ÒØ Ø× × º Ì ¬ Ð ³× Ó«× Ø × ÒØ Øº\ Ð Ñ ×\ ÓÖ Ú ÖÝ ÓÙÒ Ø ÒØ × ÚÒ Ý\ Ö Ú ÙØÓÑ Ø ÐÐÝ Ð Ñ Ò Ø × Ö ×Ø Ö× Ý ¬Ö×Ø Ö Ò ÓÑÐÝ × Ð Ø Ò ÓÔ Ö Ò Ú ÐÙ × ÙÒØ Ð Ø ¬Ò × × ÕÙ Ò Ø Ø Ø ×× Ñ Ð Ö ÔØ׺ ÁØ Ø Ò ¬Ò × ÐÐ Ð Ð Ú ÐÙ × ÓÖ ¬ Ð Ý ØÖÝ Ò ÐÐ Ó Ø× Ú Ð¹ Ù × Û Ð ÓÐ Ò Ø ÓØ Ö× ÓÔ Ö Ò × ¬Ü ØÓ Ð Ð Ú Ð٠׺\ ¿º¾º¾\ ÁÑÑ\ Ø\ ËÓÐÚ Ö\ Ì ÑÑ Ø ×ÓÐÚ Ö ÓÑÔÙØ × Ø Û Ø Ò ÔÓ¹ × Ø ÓÒ Ó ÑÑ Ø ¬ Ð ¸ Ò Ð×Ó ÒÝ ØÖ Ò×¹ ÓÖÑ Ø ÓÒ Ó Ø Ú ÐÙ × Ò ÑÑ Ø ¬ Р׺ Ì ÑÑ Ø ×ÓÐÚ Ö × ÐÐ Ø Ö Ø ÙÑÔ ×ÓÐÚ Ö¸ Ø Ö Ö Ö Ð Ø Ú ÙÑÔ Ø Ö Ø× Ø × Ù× Ö ØÐÝ ØÓ ×ÓÐÚ ÓÖ ×ÓÐÙØ ÙÑÔ Ø Ö Ø× ´× Ò Ø Ó× Ö Ù×Ø ØÖ Ò× ÓÖÑ ÑÑ Ø Ú ÐÙ ×µº Ï ÜÔÐ Ò Ø ÓÖ Ø ÙÑÔ ×ÓÐÚ Ö¸ Ù× Ø× Ú ÓÖ × ÐÓ× Ö ØÓ Ø Ø Ó Ø Ö ×Ø Ö ×ÓÐÚ Öº Ì Ñ Ò «ÖÒ ØÛ Ò Ø × ×ÓÐÚ Ö Ò Ø Ö ×Ø Ö ×ÓÐÚ Ö × Ø Ø Ø × ÑÔÖ Ø Ð ØÓ ÒÙÑ Ö Ø ÐÐ Ð Ð Ú ÐÙ × ÓÖ Ò ÑÑ Ø ÓÔ Ö Ò Ò Ò¹ Ø ÑÑ Ø ¬ Ð ÛÓÙÐ Ö ÕÙ Ö ¾Ò Ô ÖÑÙØ Ø ÓÒ׺ Ê ×Ø Ö ¬ Ð × Ø Ò ØÓ ×Ñ ÐÐ ´ÓÒ Ø ÓÖ Ö Ó Ø× ÓÖ ÑÓ ÖÒ Ö Ø ØÙÖ ×µ¸ Û Ö × ÑÑ Ø ¬Ð × Ò ×Ù ×Ø ÒØ ÐÐÝ Ð Ö Öº × Ö ×ÙÐظ Û ×ÓÐÚ ÓÖ Ø × Þ Ó Ø ÑÑ Ø ¬ Ð ¸Ö Ø Ö Ø Ò ÔÓ×× Ð Ú ÐÙ º Ì ×ÓÐÚ Ö ¬Ö×Ø ¬Ò × Ò ÑÑ Ø ¬ Ð ³× × Þ Ý Ø Ö Ø Ò ÙÔÛ Ö × ÖÓÑ ½ ظ ¾ Ø׸ Ø º¸ ÙÒØ Ð Ø ×× Ñ Ð Ö Ö Ù× × ØÓ ×× Ñ Ð Ø Ò×ØÖÙ Ø ÓÒº ÁØ Ø Ò Ø Ö Ø × ÓÛÒ ÖÓÑ Ø Ñ Ü ÑÙÑ ÒÙÑ Ö Ó Ø× ´ ÐÐ Ø Òµ Ò ×ÓÐÚ × ÓÖ ÑÑ Ø ×Þ º Ì ÑÑ Ø ×ÓÐÚ Ö ÛÓÖ × Ò Ø ÓÐÐÓÛ Ò Ñ Ò¹ Ò Ö ÓÖ Ø×Þ Ñ ½º ÓÓ× Ö Ò ÓÑ Ñ   ½ Ø Ú ÐÙ Ò Ö Ø ØÛÓ ¹ Ø ÓÒ×Ø ÒØ׸ Ú ¼ Ò Ú ½¸ Ý × ØØ Ò Ú ¼ ØÓ Ø Ú ÐÙ Ò Ú ½ ØÓ Ø× ÓÑÔÐ Ñ Òغ Ì Ò × Ø Ø ÑØ Ø Ò ÓØ Ú ¼ Ò Ú ½\ Ñ\ Ö ÛÖ Ø ´ Ò×ؽº Ñظ ÓÔº Ð ×ÓÐÚ ÓÔÝ Ö ×Ø Ö ×ÓÐÚ ´×¼¸ Ò×ؼµ Ö ×Ø Ö ×ÓÐÚ ´×½¸ Ò×ؽµ\ Ò Ñ ¸ Ú½µ\ Ì ØÛÓ ×Ô ¬ Ø ÓÒ× ×¼ Ò Ø × Ñ Ö ×Ø Ö Ñ × ×¸ Ò ÝØ ×º Ì ÓÒÐÝ « Ö Ò × ÓÙÐ Ø ÓÔ Ó Ñ × × Ö ×Ø Ö ×ÓÐÚ Ö¸ Û Û ÐÐ « Ø× Ø Ø « Ö Ò Ú¼ Ò Ú½º ¾º\ Ø\ Ú × Ñ ×Þ Ò ØÛ Ò Ø ØÛÓ ÓÑÔÙØ ÝØ Ö Ý Ü ØÐÝ Ø\ ×½ × ÓÙÐ\ Ò Ø ÑÑ Ø ¬ Ð Ý ¬Ö×Ø ÇÊ Ò Ø ØÛÓ ÓÔ Ó Ñ × ×º Ë Ò ÓÒÐÝ Ø ÐÓÛ Ö Ñ   ½ Ø× Ó Ø ¬ Ð « Ö¸ Ø × Ø ÓÒ × Ø× ½³× Ü ØÐÝ Ò Ø ÐÓ Ø ÓÒ Ó Ø × Ø× Ò ¼× Ú ÖÝÛ Ö Ð× Û Ø ÑØ Ø Ò ÜÔÐ ØÐÝ ´ÒÓØ Ø Ø Û ××ÙÑ Ø Ø Ø × Ø × ÓÒØ ÙÓÙ× Û Ø Ø Ö ×Ø Ó Ø ¬ Ð µº Ì Ð ×Ø × Ò ¬ ÒØ Ø Ú × Ø ¬ Ð ³× Ó«× Øº Ê ¬Ò Ø ÓÔ Ó Ñ × Ý Ö ÑÓÚ Ò ÐÐ ¬ Ð Ø× ÖÓÑ Øº\ × Ø Ø ÐÓÛ Ñ¹½ Ø× Ò Ð Ð Ø× ×¼ºÓÔ Ñ × ×½ºÓÔ Ñ × Ò Ð ×Ø × Ò ÒØ Ø Ð Ó × Ø Ð× ´ Ð Ø×µ ÑØ Ð Ø Ð Ø× ½ ´Ñ · Ð Ó × Ø ¹ ½µ Ü ÓÔ Ó Ñ × ×¼ºÓÔ Ñ × ×¼ºÓÔ Ñ × ² Ð Ø×\ ¿º\ ´½ ´Ñ ¹ ½µµ Ö Ò ÓÑ Þ ÐÓÛ Ñ¹½ Ø× Ú¼ Ö Ò ÓÑ´µ ± Ü Ú½ ÓÑÔÐ Ñ ÒØ× Ø Ó× Ø× Ú¼ ± Ü Ú½ × Ø ÑØ Ø Ò Ú¼ Ò Ú½ Ú¼ Ú¼ Ü Ú½ Ú½ Ü\ Ü\ Ø Ú ÐÙ Ó Ø ¬ Ð Ò×Ø Ø Ú ÐÙ Ó Ø ÒÓ ¬ Ð ØÓ × ÒÝ × ÑÔÐ ØÖ Ò× ÓÖ¹ Ñ Ø ÓÒ× Ö Ù× º ×Ù × × Ø ØÓ Ø Ö Ø Ý ×Ñ ÐÐ ÓÒ×Ø Òغ ØÓ × ÔÖ Ú ÓÙ× Ò Ó Ò Ñ Ø × Ø × ÓÒ º Ë Ò Û ÛÓÖ ÓÙÖ Û Ý ÓÛÒ ÖÓÑ Ð Ö Ö¹Ú ÐÙ ÑÑ Ø × ØÓ ×Ñ ÐÐ Ö¹Ú Ð٠ѹ Ñ Ø ×¸ Û Ñ Ý Ú ÐÖ Ý × ÓÚ Ö Ø Ò Ó Ò ÓÖ Ø ¬ Ð º ÓÖ Ü ÑÔÐ ¸ ËÈ Ê ½¿¹ Ø × Ò ÑÑ Ø ¬ Ð Ò Ó × ÐÐ × Ò Ú ÐÙ × ØÛ Ò ½ Ø Ò ½¿ Ø׺ ÁÒ ÓÒØÖ ×ظ ÓÒ Ø Ü ¹ ÝØ Ñ ÑÓÖÝ ×ÔÐ Ñ ÒØ× Ö Ò¹ Ó « Ö ÒØÐÝ Ø Ò ¾¹ ÝØ Ñ ÑÓÖÝ ×ÔÐ ¹ Ñ ÒØ׺ Á Û Ú ÐÖ Ý ÓÙÒ Ò Ò Ó Ò ¸ Ø ÙÖ¹ Ö ÒØ Ò Ó Ò × ÒÓÖ ÓØ ÖÛ × ¸ Ø × ØÓ Ø Ð ×Ø Ó Ö Ú Ò Ó Ò ×º Ï ÑÙ×Ø Ú Ð¹ Ù Ø Ø Ò Ó Ò ÓÖ ÑÑ Ø ×Þ ¸ ¹ Ù× ×ÓÑ Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × ÓÒ ÖØ Ò Ö¹ Ø ØÙÖ × ´Ü µ Ú ÖÝ Û Ø Ø × Þ Ó Ø Ñ¹ Ñ Ø ÔÖÓÚ º\ º\ Ý Ñ ØØ Ò Ò×ØÖÙ Ø ÓÒ× Û Ø Ø × ØÛÓ ÓÒ¹ ×Ø ÒØ׸ Û ÓÖ Ø ÐÓÛ Ñ   ½ Ø× Ó Ø ÑÑ ¹ Ø ¬ Ð × ØÓ Ú ÓÑÔÐ Ñ ÒØ ÖÝ Ø Ú Ð٠׸ Û Ð ÐÐ ÓØ Ö Ø× Ö Ñ Ò ÓÒ×Ø Òغ Æ Üظ Ö ¹ Ø ØÛÓ Ò×ØÖÙ Ø ÓÒ׸ Ø ¬Ö×Ø Û Ø Ø ÑÑ ¹ Ø ÓÔ Ö Ò Ö ÔÐ Û Ø Ú ¼¸ Ø × ÓÒ Û Ø Ú ½º Í× Ø Ø Ö ×Ø Ö ×ÓÐÚ Ö ØÓ Ö Ú Ø Ö ×Ø Ö ¬ Ð Ò Ó Ò × ÓÖ Ø × ØÛÓ × Ñ Ð Ö¹ ÐÓÓ Ò Ò×ØÖÙ Ø ÓÒ׺\ ÓÔÝ Ò×ØÖÙ Ø ÓÒ Ò×ؼ Ò×ؽ Ò×Ø Ö ÔÐ ÑÑ Ø ÓÔ Ö Ò Û Ø Ú¼ Ö ÛÖ Ø ´ Ò×ؼº Ñظ ÓÔº Ð Ò Ñ ¸ Ú¼µ Ö ÔÐ ÑÑ Ø ÓÔ Ö Ò Û Ø Ú½\ ÇÙÖ ØÙ Ð ×ÓÐÚ Ö × ÑÓÖ ÒÖ ÐØ ÒØ ×× Ø ¸ Ò Ð × Ò×ØÖÙ Ø ÓÒ× Û Ø Ò Ö ØÖ ÖÝ ÒÙÑ Ö Ò Ó ÑÑ Ø ÓÔ Ö Ò ×º ÓÖ Ò×ØÖÙ Ø ÓÒ× Û Ø ÑÓÖ\ Ø Ò ÓÒ ÑÑ Ø ÓÔ Ö Ò ¸ ÒÝ Ú Ö Ð ¹Ð Ò Ø ÑÑ Ø ¬ Ð × Ö ÒÓØ Ò Ô Ò ÒØ Ó ÓØ Ö Ø Ð Ò Ø Ó ÓÒ Û ÐÐ « Ø Ø ÔÓ× Ø ÓÒ Ó ÒÝ ÓØ ¹ Ö׺ Ì Ö ÓÖ ¸ Ö Ú ÒÒÓØ ×ÓÐÚ ÓÖ ÑÑ Ø ¬ Ð × × Ô Ö Ø Ðݺ Ì ÙÖÖ ÒØ ÑÔÐ Ñ ÒØ Ø ÓÒ × ØÛÓ Ð Ñ Ø Ø ÓÒ׺ Ö×ظ Ø ××ÙÑ × Ø Ø Ú ÖÝ ÑÑ Ø Ú ÐÙ Ø Ø ¬Ø× Ò Ú Ò ¬ Ð × Ð Ð Ø Ø ×¸ Ø Ö Ö ÒÓ ÓÐ × Ò Ø Ú ÐÙ ×Ô ÓÖ Ò ÑÑ Ø ¬Ð º Ì ×Ö¹ ×ØÖ Ø ÓÒ × ÒÓØ Ö Ð ÔÖÓ Ð Ñº Ë ÓÒ ¸ Ø Ó × ÒÓØ Ò Ð ÑÑ Ø ×Ø Ø Ö Ò Ó × ÑÙÐØ ÔÐ ÒÓÒ¹ ÓÒØ ÙÓÙ× Ø Ö Ò ×º ÁØ × ÓÙÐ ÒÓØ Æ ÙÐØ ØÓ ÜØ Ò Ö Ú ØÓ Ò Ð ×Ù ÑÑ Ø ×º\ ¿º¾º¿ ÂÙÑÔ ËÓÐÚ Ö\ Ñ ÒØ Ó Ø Ð Ð Ø Ø Ö ×ÙÐØ× Ò Ò Ó«× Ø Ó ¼µº Ì ×Ø ÖØ Ò ÔÓ ÒØ × ÓÙÒ Ý × Ö Ò ÓÖ Ð Ð ÔÐ Ñ ÒØ Ø Ø Ö ×ÙÐØ× Ò Ò Ò×ØÖÙ Ø ÓÒ ¸ Û Ö ÇÊ Ò Ò×Ø × Ø ÒØ ØÝ ÙÒ Ø ÓÒº ÁÒ ÓØ Ö ÛÓÖ ×¸ Ñ Ø ÙÑÔ× ØÓ « Ö ÒØ Ð Ð× ÖÓÙÒ Ø ÙÑÔ¸ Ò ÇÊ Ó Ø ÙÑÔ× Ò×Ø Ø ÓØ Ö× ØÓ ¬Ò ÓÒ Û Ó× Ó«× Ø ¬ Ð ÑÙ×Ø ÐÐ ¼³×º ¿º Ò Ø Ð Ð³× Ó«× Ø Ò Ø Ò×ØÖÙ Ø ÓÒ Ý Ñ Ø¹ ØÒ ÓÖÛ Ö ÙÑÔ Ù×Ø Ô ×Ø Ø ×Ø ÖØ Ò ÔÓ ÒØ ÓÖ Ø ÙÑÔº Ì × ØÛÓ Ò×ØÖÙ Ø ÓÒ× Û ÐÐ « Ö Ý × Ò Ð Ø¸ Û × Ø ÐÓÛ ×Ø Ø Ò Ø Ø Ö Ø¬ Ð º Ò Ø Ð Ð³× × Þ Ò Ø Ò×ØÖÙ Ø ÓÒ Ý Ñ Ø¹ Ø Ò Ò Ø Ú ¹Ó«× Ø Ð Ðº ××ÙÑ Ò Ø Ø Ö Ð ¹ Ø Ú ÙÑÔ× Ö Ò Ó Ù× Ò ØÛÓ×¹ ÓÑÔÐ Ñ ÒØ ´ÓÖ Ú Ò ÓÒ ×¹ ÓÑÔÐ Ñ Òص¸ Ø × Ð Ð × Ø× Ø Ø Ó Ø Ð Ðº Ï ××ÙÑ Ø Ø Ø Ð ¹ Ð × ÓÒØ ÙÓÙ× Ò Ø Ò×ØÖÙ Ø ÓÒ¸ Ò Ø Ø Ø ÓÒ× ×Ø× Ó Ø Ø× ØÛ Ò Ø Ð Ð³× Ò ÐÓÛ Ø׺ Ò ÐÐݸ Ø ÖÑ Ò ÓÛ Ø ÙÑÔ ×Ø Ò × ÒÓ Ý Ö Ö Ò Ò Ð Ð× Ø ÒÓÛÒ Ó«× Ø× Ò ÓÑÔ Ö Ò Ø ¬ Ð ³× Ú ÐÙ ØÓ Ø × ÐÓ ¹ Ø ÓÒ׺ Ï ÓÖ Ø ÓÐÐÓÛ Ò ØÖ Ò× ÓÖÑ ¹ Ø ÓÒ× ×Ù ØÖ Ø ÓÒ Ý ÓÒ×Ø Òظ ØÖÙÒ Ø ÓÒ Ó ØÖ Ð Ò Þ ÖÓ׸ ÓÖ Ú Ò Ð Ò Ø× ØÖÙÒ Ø º ÓÖ Ü ÑÔÐ ¸ ØÖÙÒ Ø ÓÒ Ó ØÖ Ð Ò Þ ÖÓ× ÖÓÑ ÝØ Ó«× Ø ÔÔ Ò× Ò ËÈ Ê ÙÑÔ Ò×ØÖÙ ¹ Ø ÓÒ׸ × Ò Ò×ØÖÙ Ø ÓÒ× Ö ÛÓÖ ¹ Ð Ò º ÓØ Ö ×ÓÐÚ Ö׸ Ø ÙÑÔ ×ÓÐÚ Ö ××ÙÑ × Ø Ø Ð × Ö ÓÒØ ÙÓÙ׺ ÁØ ÛÓÙÐ ÐÐ Ò Ò Û Ø ÒÓÒ¹ ÓÒØ ÙÓÙ× Ð Ð ¬ Р׸ Ù× Ó ØÓ Ò Ö Ø Ð Ð× Ø Ð Ö ×Ø Ò × ÖÓÑ\ º\ Ì ÙÑÔ ×ÓÐÚ Ö Ö Ú × Ø Ò Ó Ò ÓÖ Ö Ð Ø Ú ÙÑÔ Ø Ö Ø ¬ Ð × ´Ð Ð×µº ÂÙÑÔ× Ò Ð ×× ¬ Ò ØÛÓ Û Ý× ´½µ Ö Ð Ø Ú Ú׺ ×ÓÐÙØ ÙÑÔ× Ò ´¾µ ÙÑÔ× Ø Ø Ø ÑÑ Ø × Ú׺ Ø Ó× Ø Ø ÓÒÐÝ Ø Ð Ð׺ Ì ÙÑÔ ×ÓÐÚ Ö ¬Ò × Ò Ó Ò × ÓÖ Ö Ð ¹ Ø Ú ÙÑÔ× Ø Ø Ø Ð Ð× × ÓÔ Ö Ò ×º ÂÙÑÔ× Ø Ø ÔØ ÑÑ Ø ÓÔ Ö Ò × Ö Ò Ð Ý ÒÚÓ Ò Ø ÑÑ Ø ×ÓÐÚ Öº ×ÓÐÙØ ÙÑÔ× Ø Ø ÓÒÐÝ Ø Ð Ð× Ó ÒÓØ × Ñ ØÓ Ó ÙÖ Ò ÔÖ Ø º Ì «ÖÒ ØÛ Ò Ø ÙÑÔ ×ÓÐÚ Ö Ò Ø ÑÑ Ø ×ÓÐÚ Ö × Ø Ø Ø ÙÑÔ ×ÓÐÚ Ö ÑÙ×Ø Ò¹ Ö Ø × Ú ÐÙ × ´Ð Ð×µ « Ö ÒØÐݺ ÌÓ × Ø ÐÐ Ø× Ò Ò Ò¹ Ø ÑÑ Ø ¬ Ð ¸ Ø ÑÑ Ø ×ÓÐÚ Ö Ò Ñ Ø Ø ÑÑ Ø Ö ØÐÝ Ø ÙÑÔ ×ÓÐÚ Ö Ñ Ý Ú ØÓ ÔÐ Ð Ð ÓÙØ Ò Ò×ØÖÙ Ø ÓÒ× Û Ýº × Ö ×ÙÐظ Ø ÛÓÙÐ ÑÔÖ Ø Ð ØÓ ×ÓÐÚ ÓÖ Ð Ö Ó«× Ø× Ö ØÐݺ Ï ××ÙÑ Ø Ø Û Ö × ÙÑÔ× Ö ÒÓ Ù× Ò ØÛÓ×¹ ÓÑÔÐ Ñ Òظ ×Ó Ø Ø Û Ò ×ÓÐÚ ÓÖ Ø × Þ × Ó Ó«× Ø׺ Ö Ú ÓÑÔÙØ × Û Ø Ö ÙÑÔ × ×ÓÐÙØ ÓÖ Ö Ð Ø Ú Ý Ñ ØØ Ò ØÛÓ ÓÒ× ÙØ Ú ÙÑÔ× ØÓ Ø × Ñ Ø Ö Ø Ò ÓÑÔ Ö Ò Ø Ñ ØØ Ó Ú Ð٠׺ ×ÓÐÙØ ÙÑÔ× Û ÐÐ Ú ÒØ Ð Ø׸ × Ò ÓØ Ò×ØÖÙ Ø ÓÒ× Ò Ó Ø × Ñ Ø Ö Ø Ö ×׺ Ê Ð¹ Ø Ú ÙÑÔ× Û ÐÐ « Ö¸ × Ò Ø Ý Ö « Ö ÒØ ×¹ Ø Ò × ÖÓÑ Ø Ø Ö Ø Ò Ø Ù× Û ÐÐ Ú « Ö ÒØ Ó«× Ø Ú Ð٠׺ Ú Ò Ò Ò×ØÖÙ Ø ÓÒ Ø Ø × Ö Ð Ø Ú ÙÑÔ¸ Ø ×ÓÐÚ Ö ÑÙ×Ø ¬Ò Ø ÙÑÔ Ø Ö Ø ¬ Ð ³× Û Ø Ò Ó«× Ø Ò Ø Ò×ØÖÙ Ø ÓÒ¸ ×Ø ÖØ Ò ÔÓ ÒØ ´ ÓÛ Ñ ÒÝ ÝØ × ÙÑÔ Ó ¼ ÝØ × ØÙ ÐÐÝ ÙÑÔ× ÖÓÑ Ø ÙÑÔ Ò×ØÖÙ Ø ÓÒµ¸ Ò Ñ Ò ÑÙÑ ÙÑÔ × Þ º Ì Ø Ö Ø Ö ×× Ó Ø ÙÑÔ × Ø Ö Ø ×Ø ÖØ · ÒÓ ¬ Ð ¢ ÙÑÔ × Þ º ½º ¾º Ò Ø Ñ Ò ÑÙÑ ÙÑÔ × Þ Ý Ñ ØØ Ò ÙÑÔ× Ó ½¸ ¾¸ º º º ÝØ × ÙÒØ Ð Ø ÙÑÔ ¬ Ð Ò ×º Ò Ø ×Ø ÖØ Ò ÔÓ ÒØ ÓÖ Ø ÙÑÔ ´Ø ÔÐ ¹\ º\ Ä Ø Ð Ð¬ ØÓ Ð Ø Ò ÙÑÔ׺\ ¿º¿\ Í× Ö\ ÜØ Ò× ÓÒ×\ ËÓÑ Ò×ØÖÙ Ø ÓÒ × Ø× ´×Ù ×Ø Êŵ Ó ÒÓØ × Ø¹ × Ý ÐÐ Ó Ø ××ÙÑÔØ ÓÒ× Û Ú ×Ö º ÁÒ Ø ÓÒ¸ Ò ÓÖÖ Ø ×× Ñ Ð Ö× Ò ÔÖÓÚ Ò¹ ÓÖÑ Ø ÓÒ ØÓ Ö Ú º Ï Ú Ø Ù× Ö Ñ Ò ×Ñ× ØÓ Ö ×× Ø × ÔÖÓ Ð Ñ× Ø Ù× Ö Ò Ò ÓÖÑ ¹ Ö Ú Ó ÓÑÔÐ Ü ÑÑ Ø Ò Ó Ò ×¸ Ø ÐÐ Ø Û Ò Ö ×Ø Ö ¬ Ð Ú ÐÙ × Ñ Ý Ô Ò ÓÒ ÓØ Ö¸ Ò ÔÖÓÚ ÜÔÐ Ø ¬ Ð Û Ø × Û Ò Ò ×× Öݺ Ì Ð ½ Ð ×Ø× Ø ××Û Ö Û Ú Ò ØÓ Ù× Ø × Ñ Ò ×Ñ׺ Ì ÓÐÐÓÛ Ò × Ö ÔØ ÓÒ Ö Ñ ÒØ × ÓÛ× ÓÛ Ù× Ö Ò ×Ô Ý ÓÑÔÐ Ü Ò Ó Ò ×º Ì Ù× Ö ÔÖÓ¹ Ú × Ó Ø Ø ØÖ Ò×Ð Ø × ØÛ Ò Ø Ú ÐÙ Ø Ø × Ñ ÔÔ ÒØÓ Ø ÑÑ Ø ¬Ð Ò Ø ÒÔÙØ\ Î ÓÐ Ø ××ÙÑÔØ ÓÒ Ð × Ú ÐÙ × Ö Ò Ô Ò ÒØ\ Ö\ Ø ØÙÖ ÊÅ ÈÓÛ ÖÈ ÈÓÛ ÖÈ\ Ê\ Ë ÑÔÐ ØÖ Ò× ÓÖÑ×\ Ü ËÈ Ê ÊÅ\ ÁÒ×ØÖÙ Ø ÓÒ Ð ×× ×Ø Ö ÔÖ ¹»ÔÓ×ع Ò Ü Ö ×× Ò ÑÓ × × Ò Ò Ü Ö ×Ø Ö× ÑÙ×Ø « Ö ÄÓ ÑÙÐØ ÔÐ Ò×ØÖÙ Ø ÓÒ× Ö ×× Ö ×Ø Ö ÑÙ×Ø ÒÓØ Ø Ö Ø ÍÔ Ø Ò×ØÖÙ Ø ÓÒ× × Ö ×Ø Ö ÑÙ×Ø ÒÓØ ÕÙ Ð Ø Ö Ø Ö ×Ø Ö Ë Ð ØÓÖ Ò Ñ ÑÓÖÝ Ö ×× Ò Ë Ð × ÒÓ × ÐÓ Ë Ø Ö ÙÑ ÒØ ÑÙ×Ø Ú ½¼ ÐÓÛ Þ ÖÓ Ø× ÖØ Ò Ö ×× Ò ÑÓ × ÜÔ Ø Ó«× Ø¢\ Ì ÑÓ ×Ô Ö Ò\ Ð ½ Ü ÔØ ÓÒ× Ø Ø Û Ú ÓÙÒ ØÓ ÓÙÖ Ò Ó Ò ÑÓ Ðº Ö Ú ³× ÓÓ × Ð Ø Ð ÒØ× × ÐÝ ÜØ Ò Ø× Ð ØÓ Ò Ð Ø × × ×º ÓÖ ¬ Ð × Ø Ø Ô Ò ÓÒ ÓØ Ö¸ Ù× Ö× ÒÒÓØ Ø Ô Ò ÒØ Ö ×Ø Ö× Ò Ø Ö ¬ Ø ÓÒ¸ Ò ×ÙÔÔÐÝ ÙÒ Ø ÓÒ Ø Ø Ø × Ð ×Ø Ó ×ÝÑ ÓÐ Ö ×Ø Ö Ò Ñ × Ò Ö ØÙÖÒ× ÌÊÍ « Ø Ý Ð Ð ÓÑ Ò Ø ÓÒº Í× Ö× Ñ ×× Ò ØÖ Ò× ÓÖÑ Ø ÓÒ× Ý ÔÖÓÚ Ò ÙÒ Ø ÓÒ Ø Ø Ø × Ò ÑÑ Ø Ö ØÙÖÒ× Ø ØÖ Ò× ÓÖÑ Ú ÐÙ ¸ Ò ÒÒÓØ Ø Ò ÑÑ Ø × Ø Ø Ù× Ø × Ò Ó Ò Ò Ø ×Ô ¬ Ø ÓÒº ÈÖÓ ××ÓÖ ÐÔ ÊÅ ÅÁÈË ÈÓÛ ÖÈ ËÈ Ê Ü Ü ¹ « ÊÙÒ Ø Ñ ´Ñ ÒÙØ ×µ º¿ ¿º ¾º º º ¾ ¼º º × Ö ÔØ ÓÒ Ð Ò Ø ´Ð Ò ×µ ½¼ ¾¾ ½ ½ ¾¾½ ½¼\ Ø ØØ ×× Ñ Ð Ö ÜÔ Ø׺ ÁÒ Ø × Ü ÑÔÐ ¸ Ø Ü Ò×ØÖÙ Ø ÓÒ Ò Ó × Ø ÐÓ Ö Ø Ñ Ó Ø × Ð ØÓÖ Ø Ø × Ú Ò ØÓ Ø ×× Ñ Ð Öº ´Ì × Ü ÑÔÐ ÓÙÐ Ð×Ó Ò Ð ÝÑ Ò Ø × Ð ØÓÖ Ö ×Ø Ö ØÝÔ Ò ÒÙÑ Ö Ø Ò Ø ÔÓ×× Ð × Ð Ú Ð٠׺µ\ ± ÙÒ× ± Ò ÔÓÛ¾´ÙÒ× Ò Üµ Ö ØÙÖÒ ½ Ü\ ÓÔ× ¾ Ñ Ñ ¹¹ ²ÓÔ² Ö ½ Ö ×¸ ×Ô´ × Ö ×¸ Ò Ü Ò Ü Ö\ ׸ ×\ Ð\ ÔÓÛ¾µ\ Ì ÓÐÐÓÛ Ò Ü ÑÔÐ × ÓÛ× Ò ÓÖÑ Ø ÓÒ ÓÙØ ÒÓÒ¹ Ò Ô Ò ÈÓÛ ÖÈ Ò×ØÖÙ Ø ÓÒ× Ñ ÒØ ÓÒ Ö ÑÙ×Ø ÒÓØ Ø × Ñ ×Ø\ ± ÓÓÐ ÙÔ Ø ×Ô´ Ö ¶ Ö ×\ ÓÛ Ù× Ö ÔÖÓÚ × ÒØ ¬ Р׺ ÓÖ Ø ¸Ø × Ö ×Ø Ö Ø Ö Ø Ö ×Ø Ö Ö º\ Ì Ð ¾ Ì Ø Ñ Ø Ø × Ö Ú ØÓ ÖÙÒ Ø ÖÓÙ Ö Ø ØÙÖ ¸ Ò ÓÛ ÐÓÒ ÓÙÖ Ö Ø ØÙÖ × Ö Ô¹ Ø ÓÒ× Ö º Ü ¹ « × Ø ×Ù × Ø Ó Ü Û Ò ØÓ Ö Ø Ö Ø Ã « ³× ÂÁÌ ØÓ Ù× Ö Ú ¹ Ò Ö Ø Ñ Ø¹ Ø Ö׺\ Ø Ù¸ ØÐ Ù¸ Ø ¹¹ ²ÓÔ² Ö\ ¿º Í× Ò\ µ Ö × ½ ×ØÖ ÑÔ´Ö ¸ Ö µµ\ Ö ¶Ö Ö × ¼ ¸ ¶Ö ´ ×ØÖ ÑÔ´Ö ¸ Ö¼ µ Ö ØÙÖÒ ÄË Ð× Ö ØÙÖÒ ÌÊÍ ± Ð ÞÙ¸ Ð ÞÙ¸ Ð ²ÓÔ² ÙÔ Ø Ù¸ ÐÛÞÙ ¹¹ ×Ô Ê Ö ×¸\ ¸ Ø ×¸ ØÔÓ׸ ØÒ ¸ ÑÑ\ ¸ ØÚ ¸ ØÚ×\ ÖÚ\ ×Ô´Ê\ Ö\ ×µ\ Ò ÐÐݸ Ö Ú ÔÖÓÚ × ÓÓ × Ø Ø Ò Ð Ø Ù× Ö ØÓ ÓÚ Ö ÓÑ ×ÓÑ ×× Ñ Ð Ö Ù × Ø Ø Û Ú Ò ÓÙÒØ Ö º ÓÖ Ü ÑÔÐ ¸ ÆÍ × ÐÐÓÛ× Ø ËÈ Ê Î Ø Ò×ØÖÙ Ø ÓÒ ØÓ Ø Ò ÑÑ Ø Ø Ø × ØÓÓ Ð Ö º Ö Ú Ö ÔÓÖØ× Ø Ø ¬ Ð × ÓÚ Ö¹ Ð Ô¸ Ò Ø Ù× Ö Ò ÜÔÐ ØÐÝ Ø ÐÐ Ö Ú Ø ¬ Ð Û Ø Ó Ø× × ÓÐÐÓÛ×\ Ì Ð ¾ ×ÙÑÑ Ö Þ × Ø Ø Ñ × Ø Ø × ÓÖ Ö Ú ØÓ ÖÙÒ ÓÒ × Ú Ö Ð Ò×ØÖÙ Ø ÓÒ × Ø׸ Ò Ð×Ó × ÓÛ× Ø ÐÒ Ø Ó Ö Ú ³× ×Ô ¬ Ø ÓÒ׺ × Ø ÒÙѹ Ö Ó Ö Ø ØÙÖ × Ò Ø Ø Ð × ÓÛ׸ Ö Ú ³× ×¹ ×ÙÑÔØ ÓÒ× ×ÙÖÚ Ú Û ÐÐ ÙÒ Ö Ù× º Ì ××ÙÑÔØ ÓÒ× Ò ÓÙÖ ÑÓ Ð Ñ Ö Ú Ö ×ÓÒ ÐÝ ×غ ÊÅ × ×ÐÓÛ Ù× ×ÓÑ Ó Ø× Ò×ØÖÙ Ø ÓÒ Ö ×× Ò ÑÓ × Ú ÓÐ Ø Ø Ò Ô Ò Ò ××ÙÑÔØ ÓÒº × Ö ×ÙÐظ ×ÓÐÚ Ò Ø Ó× Ò×ØÖÙ Ø ÓÒ× Ø × Ò ÒÓÖ ¹ Ò Ø ÑÓÙÒØ Ó Ø Ñ ¸ Ù× Ö Ú ÑÙ×Ø ÐÐ ÓÑ Ò Ø ÓÒ× Ó Ö ×Ø Ö Ú Ð٠׺ Ü × ×ÐÓÛ Ù× Ó Ø Ð Ö ÒÙÑ Ö Ó Ò×ØÖÙ Ø ÓÒ× Ò Ö ×× Ò\ ÑÓ ×¸ × Û ÐÐ × Ø ×Ô Ð Ò Ó Ò × ÓÖ ÖØ Ò Ö ×Ø Ö׺ Ì ×Ù × Ø Ó Ø Ü ÁË Ò ×× ÖÝ ØÓ Ö Ø Ö Ø Ø Ã « ÂÎÅ³× ¾ ÂÁÌ Û × ×Ñ ÐÐ ÒÓÙ ØÓ ÖÙÒ ÕÙ Ðݺ Ï Ð Ù× Ò Ö Ú ØÓ Ö Ú Ö× ¹ Ò Ò Ö × Ú Ö Ð Ò¹ ×ØÖÙ Ø ÓÒ × Ø׸ Û Ú ÓÑ ÖÓ×× × Ú Ö Ð ÖÖÓÖ× ÓÖ Ò ÓÒ× ×Ø Ò × Ò × Ò Ú Ö ÓÙ× Ö Ø ØÙÖ Ð Ñ ÒÙ Ð׺ Ì ÓÐÐÓÛ Ò Ð ×Ø × Ö × Ø × ÖÖÓÖ× Ò Ò ÓÒ× ×Ø Ò ×¸ Ò ÑÓÒ×ØÖ Ø × Ø Ø Ö Ú ³× Ö Ú Ö× ¹ Ò Ò Ö Ò Ñ Ø Ó ÓÐÓ Ý Ò Ð×Ó Ú Û × Ù× ÙÐ Ø ×Ø Ò Ñ Ø Ó ÓÐÓ Ýº\ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯\ ÆÍ × Ó × ÒÓØ ×× Ñ Ð Ø ×ØÖÙ Ø ÓÒº ÆÍ ×\ ÐÔ\ Û\ Ò¹\ Ø Ø Ò Ñ Ø Ò×ØÖÙ Ø ÓÒ× ÒØÓ Ó Ù« Öº ¹ ÙÖ ¿ × ÓÛ× Ø ×ØÖÙ ØÙÖ Ð Ö Ø ÓÒ ÓÖ Ö Ú ³× ÓÙØÔÙغ ÙÖ × ÓÛ× × ÑÔÐ ×Ô ¬ Ø ÓÒ Ø Ø Ö Ú Ò Ö Ø × ÓÖ Ø ÅÁÈË Ö Ò×ØÖÙ Ø ÓÒ¸ Û Ù× × Ö ÔÓ Òغ Ò×ØÖÙ Ø ÓÒ ×Ô ¬¹ Ø ÓÒ × ØÖ Ò× ÓÖÑ ÒØÓ ÙÒ Ø ÓÒ ÓÖ Ñ ÖÓ Û Ó× Ö ÙÑ ÒØ× Ö Ò Ò Ü ÒØÓ Ø Ó Ù« Ö Ò Ø Ö ×Ø Ö׸ ÑÑ Ø ×¸ ÓÖ Ð Ð× Ø Ø Ö ÓÔ Ö Ò × ÓÖ Ø Ø Ò×ØÖÙ Ø ÓÒº Ì Ó Ó Ñ ÖÓ× ÐÐÓÛ× Ø ÓÑÔ Ð Ö ØÓ ÔÖÓÔ Ø ÓÒ×Ø ÒØ× Ô Ö Ñ Ø Ö׸ ×Ù × Ö ×Ø Ö Ú Ð٠׸ Ö ÒÓÛÒ Ø ÓÑÔ Ð ¹Ø Ñ º Ì ÓÐÐÓÛ Ò Ü ÑÔÐ × ÓÛ× Ø Ñ ÖÓ Ò Ö Ø ÓÖ Ø Ü Ð Ò×ØÖÙ Ø ÓÒ¸ Ò ÓÛ Ø × Ù×\ Ð ÖÖ ½´ Ó ¸ Ö ¸ Öص Ó ×Ø Ö ÙÒ× Ò × ÓÖØ ¼ ´¼Ü ¼¼½ ´´´´Ö µµ ½½µµ ´´´´Öصµ µµµ ¶´ÙÒ× Ò × ÓÖضµ´´ Ö ¶µ Ó µ ¼ Ó ´ÚÓ ¶µ´´ Ö ¶µ Ó · ¾µ Û Ð ´¼µ Ö »¶ Ñ Ø Ð ± Ð ÖÖ ½´ Ó Ü¸ ± Ü Ò Ù Ö¸ Ê Ó Ù Ü¸ Ê Ö ¶» ܵ Ò\ Ó × ÒÓØ Ò Ð Ø ÐÔ ÖÓÙÒ ¹ Ò »ØÖ ÔÔ Ò ÑÓ × Ó ­Ó Ø Ò ¹ÔÓ ÒØ ×ÕÖØ Ò¹ ×ØÖÙ Ø ÓÒ׺ Ó\ ÆÍ × ÓÒ ÅÁÈË × Ð ÒØÐÝ ØÖÙÒ Ø × Ø\ ×ÓÐÙØ\ Ö ×× × Ð Ö Ö Ø Ò ¾\ ØÓÔ Ø× Ø׺\ ÑÓ\ ÆÍ × Ó × ÒÓØ ÕÙ Ø\ Ø Ò ÊÅ\ Ò Ð × ØØ Ò Ø Ù× Ö Ö ×× Ò ÑÓ ÓÖÖ ØÐݺ\ ÆÍ × ÔØ× ÑÑ Ø × Ø Ø Ö ØÓÓ Ð Ö ÓÖ ËÈ Ê Ø Ò×ØÖÙ Ø ÓÒ׺ ÆÍ × Ó Ø Ò\ Ò\ ¹ Ø× Ò\ ÑÑ\ ÔØ× Ò¹ Ø ÔÓ× Ø Ú Ú ÐÙ × ÓÖ Ø ÓÔ Ö Ò ×º º ¸ × Ò ÓÖÖ Ø ÓÖ\ ÑØ ½ Ò\ Ë\ ÅÁÈË ÊÙÒ ¾¾ ¸ Ì Ð Ø ½º\ ÁÒ Ø ÊÅ Ñ ÒÙ Ð ½¿ ¸ Ö ×× Ò ÑÓ ¿ Ó Ö ×Ø Ö ÔÖ ¹»ÔÓ×ع Ò Ü Ò×ØÖÙ Ø ÓÒ× Ó ÒÓØ Ú Ø × Ñ Ð ×Ø Ö ×ØÖ Ø ÓÒ× × Ø Ó× × Ñ Ò×ØÖÙ Ø ÓÒ× Ò Ö ×× Ò ÑÓ ¾¸ ÐØ ÓÙ × Ò ÓÖ × Ø Ó× Ö ×ØÖ Ø ÓÒ׺ Ì ´Á ÐÔ Ñ ÒÙ Ð ¾ × Ö ÔØ ÓÒ Ó Ø ÚØ×Ø ÓÒÚ Ö× ÓÒµ Ò×ØÖÙ Ø ÓÒ × Ñ× Ò ÓÖÖ Ø¸ Ù× Ø Ð ×Ø× Ø »× ×ÙÆÜ ´ Î ÖÓÙÒ Ò ÑÓ µ × Ò ÓÔØ ÓÒº\ Í× Ò\ ¯\ ÖÚ\ ³× ÇÙØÔÙØ\ Ò ÑÔÓÖØ ÒØ ÑÓØ Ú Ø ÓÒ Ò ÙÐ Ò Ö Ú Û × ÓÙÖ × Ö ØÓ ÚÓ Ò ¹×Ô Ý Ò Ø Ü Ò¹ ×ØÖÙ Ø ÓÒ × Øº Ì × ×Ø ×Ø Û × Ò ÑÔÓÖØ ÒØ Ö ¹ ×ÓÒ Û Ý Û Ú ÒÓØ Ö Ø Ö Ø ØÛÓ Ó ÓÙÖ ÂÁÌ ×Ý×¹ Ø Ñ× ¸ ØÓ Ø Ü ¸ ×Ô Ø Ö Ô Ø Ö ÕÙ ×Ø׺ ÇÒ Ù× Ó Ö Ú ¹ Ò Ö Ø ×Ô ¬ Ø ÓÒ× × ØÓ ÒÖ Ø Ó Ñ ØØ Ö× ÖÓÑ Ø Ñº Ï Ú ÛÖ Ø¹ Ø Ò Ò Ñ ØØ Ö Ò Ö ØÓÖ Ø Ø ÔÖÓ ×× × Ò×ØÖÙ Ø ÓÒ ×Ô ¬ Ø ÓÒ× Ò Ò Ö Ø × ÔÖÓ ÙÖ × ÓÖ Ñ ÖÓ×\ Ï Ø × ÑÔÐ ÙÖ ×Ø ×¸ Û Ö Ð ØÓ Ò Ö Ø ÙØÓÑ Ø ÐÐÝ Ø Ø Ò ÑÓ×Ø × × × × Æ¹ ÒØ Ò Ö Ð ×Ø Ó ÙÑ Ò ÛÓÙÐ ÛÖ Ø º Ì Ö Ö ØÛÓ ÐÐ Ò × Ò Ò Ö Ø Ò Æ ÒØ Ñ Ø¹ Ø Ö Ó º Ö×ظ Û ØÖÝ ØÓ Ô Ø ÒÙÑ Ö Ó Ö Ø ¹ ÑØ Ò Ø × Ø ÓÔ Ö Ø ÓÒ× ÓÒ Ø Ò×ØÖÙ Ø ÓÒ³× ÓÔ Ö Ò × ×Ñ Ðк Ë ÓÒ ¸ Û ØÖÝ ØÓ Ñ Ò Ñ Þ Ø ÒÙÑ Ö Ó ×ØÓÖ × ØÓ Ø Ó Ù« Öº ÓÖ Ö Ø ¹ ØÙÖ × Û Ø ÓÒ×Ø ÒØ Ò×ØÖÙ Ø ÓÒ Ð Ò Ø ×¸ ×Ù × ÐÐ ÊÁË Ö Ø ØÙÖ ×¸ ÓÙÖ Ò Ö Ø Ñ ØØ Ö× Ò ÙÖ ÓÒ Ñ ÑÓÖÝ ÛÖ Ø Ô Ö Ò×ØÖÙ Ø ÓÒ Ò Ö Ø º ÇÔ Ö Ò × ØÓ Ò Ò×ØÖÙ Ø ÓÒ Ö ÒÓØ ÐÛ Ý× ÒÓÛÒ Û ÒØ Ò×ØÖÙ Ø ÓÒ × Ò Ö Ø º ÝÒ Ñ Ó Ò Ö ØÓÖ׸ ÓÖ Ü ÑÔÐ ¸ Ó ÒÓØ ÒÓÛ Ø Ú ÐÙ Ó ÓÖÛ Ö ¹Ö Ö Ò Ð Ðº ËÙ Ð Ð ÑÙ×Ø Ô Ø Ð Ø Ö Ý × ÑÔÐ Ð Ò Ö¸ ÓÒ Ø ØÙ Ð Ú ÐÙ Ó Ø ÓÔ Ö Ò ÓÑ × ÒÓÛÒº Ö Ú Ð¹ ÐÓÛ× Ò×ØÖÙ Ø ÓÒ ÓÔ Ö Ò × ØÓ Ñ Ö ×Ó Ø Ø Ø Ý Ö ÒÓØ Ù× Ò Ø Ñ ØØ Ö Ñ ÖÓº ÁÒ×Ø ¸ Ø Ñ Ø¹ Ø Ö Ò Ö ØÓÖ Ò Ö Ø × Ò Ø ÓÒ Ð Ñ ÖÓ Ø Ø Ò ÐÐ ØÓ ¬ÐÐ Ò Ø ÓÔ Ö Ò º Ö Ú Ð ÒØ× Ò Ù Ð Ø Ö ÓÛÒ Ð Ò Ö× ÓÒ ØÓÔ Ó Ø × Ñ Ò ×Ѻ Ù Ò ÇÙÖ Ñ ØØ Ö Ò Ö ØÓÖ Ò Ñ Ø ÜØÖ Ò ÓÖÑ Ø ÓÒº Ö×ظ ÓÙÖ Ñ ØØ Ö Ò Ö ØÓÖ × Ð ØÓ Ò Ö Ø Ñ ØØ Ö× Ø Ø Ø Ú Ð ØÝ Ó Ø Ö Ö¹ ÙÑ ÒØ׺ Ì × ØÙÖ × Ù× ÙÐ ØÓ Ø Ù × × ÖÐÝ × ÔÓ×× Ð ÙÖ Ò ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÁÒ Ø ÓÒ¸ Ø Ò Ö ØÓÖ Ò Ð×Ó ÔÖÓ Ù Ñ ØØ Ö× Ò×ØÖÙ Ø ÓÒ Ø Ø ÔÖ ÒØ Ø ÜØÙ Ð × Ö ÔØ ÓÒ Ó ÒÖ Ø ÙÖ Ò ÝÒ Ñ Ó Ò Ö Ø ÓÒº Ó\ ×ØÖÙ Ø Ö Ö ÙÒ× ÙÒ× Ö ÙÒ×\ Ò×Ø ×Ô ¶ Ò×Ø ¶ ÑØ Ò × ÓÖØ Ò ÓÔ× Ò Ò ÝØ × ¶Ò Ñ ×Ù Ü Ò Ö ÓÔ Ñ × Å\ Ì Ë\ »¶ ×Ù\ Ü Ù×\ »¶ Ò×ØÖÙ Ø ÓÒ Ò Ñ »¶ ×× Ñ ÐÝ ÓÖÑ Ø »¶ ÓÔ Ö Ò ÓÙÒØ »¶ Ò×ØÖÙ Ø ÓÒ × Þ Ý Ñ ØØ Ö Ò Ö ØÓÖ »¶ ÓÔ Ó Ñ ×\ ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶»\ ×ØÖÙ Ø ÓÔ Ö Ò Ö ¶×ÝÑ ÓÔ »¶ ×ÝÑ ÓÐ Ò Ñ Ó ÓÔ Ö Ò ÒÙÑ ÓÔ ØÝÔ Ê ¸ ÁÅÅ ¸ Ä Ä Ê¸ Ä Ä ØÝÔ »¶ ÓÔ Ö Ò ØÝÔ Ø ØÝÔ Ò Ó Ò »¶ × ÑÑ Ø ØÖ Ò× ÓÖÑ ÙÒ× Ò ÐÓ »¶ ÐÓÛ ×Ø Ð Ð Ú ÐÙ Ó Ð ÙÒ× Ò Ò Ø× »¶ ÒÙÑ Ö Ó Ø× Ò Ð ÙÒ× Ò Ñ × Å Ê Ë »¶ Ð Ñ × ÒØ Ó × Ø »¶ Ó × Ø Ò Ò×ØÖÙ Ø ÓÒ × Ò ØÝÔ × Ò Ð »¶ × Ò ÓÖ ÙÒ× Ò Ð ÒØ Ö Ð Ø Ú Ó × Ø »¶ Û Ö Ö Ð Ø Ú ÙÑÔ× ×Ø ÖØ ÖÓÑ Ó × Ø ÖÓÑ Ò Ó ÙÑÔ ÒØ Û ÒØ× Ö »¶ Ò Ö Ø × Ô Ö Ø Ñ ØØ Ö ØÓ × Ø Ø × Ð ÓÔ× Å ÇÈË\ Ù×\ ÙÖ ¿ Ì ÒÓ Ò × Ö ÔØ ÓÒ Ø Ø Ö Ú ÓÙØÔÙØ׺ ÁØ Ò ÐÙ × Ø Ò×ØÖÙ Ø ÓÒ¸ ÓÖÑ ØØ Ò ×ØÖ Ò ØÓ Ò Ö Ø Ø Ò×ØÖÙ Ø ÓÒ¸ Ø Ò×ØÖÙ Ø ÓÒ Ñ × ¸ Ò Ð ×Ø Ó ÓÔ Ö Ò ×Ô ¬ Ø ÓÒ׺ Ø ØÝÔ × Ò ÒÙÑ Ø Ø Ö ÔÖ × ÒØ× ×ÓÑ × ÑÔÐ ØÖ Ò× ÓÖÑ Ø ÓÒ× ÓÒ ÑÑ Ø ×º Ì ÓÙØÔÙØ Ó Ö Ú ÓÙÐ ÑÓ ¬ ÓÖ Ù× Û Ø ÓØ Ö Ð Ò Ù ×º\ Ö ¸ ²ÓÔ² ÑÑ ¸ ½¸ ¸ ¸ ¼Ü ¸ ¼Ü¼¸ ¼Ü¼¸ ¼Ü¼¸ ¸ ÑÑ ¸ ÁÅÅ ¸ Á Æ̸ ¼¸ ½¼¸ ¼ ¸ ½ ¸ Á ÍÆËÁ Æ ¸ ¼¸ ¼ ¸\ »¶ Ò×ØÖÙ Ø ÓÒ Ò Ñ »¶ ×× Ñ ÐÝ ÓÖÑ Ø »¶ ÓÔ Ö Ò ÓÙÒØ »¶ Ò×ØÖÙ Ø ÓÒ × Þ »¶ ×Ù Ü Ù× Ý Ñ ØØ Ö Ò Ö ØÓÖ »¶ ÓÔ Ó Ñ × »¶ Ò Ñ Ó ÓÔ Ö Ò »¶ ØÝÔ Ó ÓÔ Ö Ò »¶ ÓÔ Ö Ò ØÖ Ò× ÓÖÑ Ø ÓÒ »¶ ÐÓÛ ×Ø Ð Ð Ú ÐÙ »¶ ÒÙÑ Ö Ó Ø× »¶ Ð Ñ × »¶ Ó × Ø Ò Ò×ØÖÙ Ø ÓÒ »¶ ÙÒ× Ò »¶ ÒÓÖ ÓÖ ÒÓÒ¹ ÙÑÔ× »¶ Ó ÒÓØ Ò Ö Ø Ò ÜØÖ Ñ ØØ Ö\ ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶» ¶»\ ÙÖ\ Ö Ú\ ¹ ÒÖ Ø\ ×Ô\ ¬ Ø ÓÒ ÓÖ Ø\ ÅÁÈË Ö\ Ò×ØÖÙ Ø ÓÒº\ Ì Ñ ØØ Ö× Ö Ð×Ó Ù× ÙÐ × Ñ Ò× Ó Ø ×ع Ò Ö Ú º ÓÖ Ò×ØÖÙ Ø ÓÒ¸ Û ÒÖ Ø Ø Ñ ØØ Ö Ò Ø ×Ø ÔÖÓ Ö Ñ Ø Ø ÒÚÓ × Ø Û Ø Ú Ò ×Ù × Ø Ó Ô Ö Ñ Ø Ö׺ Ì Ò×ØÖÙ Ø ÓÒ Ò¹ Ó Ò × ÒÖ Ø ÝØ Ñ ØØ Ö ÙÒ Ø ÓÒ Ö Ø Ò ÓÑÔ Ö ØÓ Ø ÓÙØÔÙØ Ò Ö Ø Ý Ø Ø Ö Ø ×¹ × Ñ Ð Öº Ì × ÔÖÓ ÙÖ ÐÐÓÛ× Ù× ØÓ Ø ×Ø Ö Ú Û Ø ÓÙØ ØÙ ÐÐÝ ÖÙÒÒ Ò Ó ÓÒ Ø Ø Ö Ø ÔРع ÓÖѺ Ö Ú ³× Ñ ØØ Ö Ò Ö ØÓÖ Ò ÖÓ××¹ ÓÑÔ Ð ØÛ Ò Ö Ø ØÙÖ × Û Ó× Ò ÒÒ ×× × Ñ Ø º ÌÓ ÑÓÒ×ØÖ Ø Ø Ø ÓÙÖ ØÓÓÐ× ÛÓÖ ¸ Û Ú Ö¹ Ø Ö Ø Ã « ³× ¾ Ü ÂÁÌ Ò ØÓ Ù× ÙØÓ¹ Ñ Ø ÐÐÝ Ò Ö Ø Ñ ØØ Ö× ÖÓÑ Ù×Ø ×Ù × Ø Ó Ø Ü ÁË º Ï Ö Ù Ø ÒÙÑ Ö Ó Ð Ò × Ò Ø Ò × Ö ÔØ ÓÒ ÖÓÑ ¾¸¼ ØÓ ½¸¾ º Ï Ð×Ó × ÓÚ Ö Ø Ø Ø ÓÖ Ò Ð Ó Ö× Ñ ×× × ÓÖØ Ö Ò¹ ×ØÖÙ Ø ÓÒ Ò Ó Ò × Ò ÓÒ × º Ê Ø Ö Ø Ò Ø ÂÁÌ ØÓÓ ÔÔÖÓÜ Ñ Ø ÐÝ ÓÒ Ý¸ Û Ò Ø× Ø Ø Ø Ñ ØØ Ö ÙÒ Ø ÓÒ× Ò Ö Ø Ý Ö Ú Ö Ù×¹ Ð Ò Ö Ð ÔÔÐ Ø ÓÒ׺ Ö Ú ¹ Ò Ö Ø Ñ ØØ Ö× Ò Ù× Ò × Ú Ö Ð ÓØ Ö Û Ý× ØÓ ×ÙÔÔÓÖØ ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÓÖ Ü ÑÔÐ ¸ Ø Ý Ò Ù× ØÓ ×ÙÔÔÓÖØ Ò ÓÒ¹ ×ØÖÙ Ø ÓÒ ÓÖ Ò Ö Ð¹ÔÙÖÔÓ× ÝÒ Ñ Ó ÒÖ ¹ Ø ÓÒ ×Ý×Ø Ñ× ×Ù ×ÚÓ Ò ½ º Ì × ×Ý×Ø Ñ× ÔÖÓÚ ×× Ñ ÐݹРÒØ Ö × ØÓ ÓÖ Ý¹ Ò Ñ Ó Ò Ö Ø ÓÒ¸ Ò Ò Ò Ó Ò Ò ÓÖÑ ¹ Ø ÓÒ ØÓ ØÙ ÐÐÝ Ò Ö Ø Ó º Ö Ú ÓÙÐ Ð×Ó Ù× ØÓ ÓÑÔÙØ Ø ÑÔÐ Ø × ÓÖ ÔÔÐ Ø ÓÒ¹×Ô ¬ ×Ý×Ø Ñ× ×Ù × È º Ì ÑÔÐ Ø × Ò ×Ô ¹ ¬ Ò Ø ÖÑ× Ó ×ÝÑ ÓÐ Ò×ØÖÙ Ø ÓÒ × ÕÙ Ò ×¸ ØÓ Ö Ú ØÓ Ø Ø ÓÖÖ ×ÔÓÒ Ò Ò ÖÝ Ò Ó Ö׸ Ò Ø Ò Ö Ò ÓÖÔÓÖ Ø ÒØÓ Ø ×Ý×Ø Ñº\ ÓÒ ÐÙ× ÓÒ×\ ÓÔØ Ñ Þ Ö׸ Ò Ð Ò Ö׺ Ù Ð Ö× Ó ×Ù ØÓÓÐ× Ö ÔÐ Ù Ý Ø Ò ØÓ Ö Ô Ø ÐÝ Ö ÑÔÐ Ñ ÒØ ÙÒ ¹ Ø ÓÒ Ð ØÝ ÓÒØ Ò Ò Ü ×Ø Ò ×Ó ØÛ Ö º ÓÖ ×ÓÑ ×Ý×Ø Ñ׸ Ø × ØÓÓ ÜÔ Ò× Ú ØÓ ÐÐ Ü ×Ø Ò ÔÖÓ Ö Ñ× ÝÒ Ñ Ó Ò Ö Ø ÓÒ ×Ý×Ø Ñ× ÒÒÓØ «ÓÖ Ø Ø Ñ ØÓ ÐÐ Ò ×× Ñ Ð Öº ÁÒ ÓØ Ö × ×¸ Ø ×Ó Ø¹ Û Ö × Ò Ò ÔÔÖÓÔÖ Ø ÓÖÑ Ò ÑÙ×Ø Ö ÛÖ Ø¹ Ø Ò ÖÓÑ × Ö Ø º ÓÖ Ü ÑÔÐ ¸ ÓÒ ÓÑÑÓÒ ØÖ Ø Ø ÓÑÑ Ö Ð ÓÑÔ Ò × Ù× ØÓ × ÓÙÖ Ø Ö ¹ Ô ÖØÝ Ú Ò ÓÖ× × ØÓ Ú ÔÖÓÔÖ Ø ÖÝ ×ÝÑ ÓÐ Ø Ð Ð ÝÓÙØ׸ Û Ò ÓÒ Ú ÖÝ ×Ó ØÛ Ö Ö Ð × ½ º Ì Ó×Ø Ó Ñ ÒÙ ÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö Ò Ø × ÓÖ¹ Ñ Ø× × ÓÖ ×ÓÑ ÑÔÐ Ñ ÒØÓÖ× ØÓ ÚÓ Ó Ø¹ Ð Ú Ð ÑÓ ¬ Ø ÓÒ׸ Ò ×Ô Ø Ó Ø ×ØÖÓÒ Ú ÒØ × ÓÖ ×Ù Ò ÔÔÖÓ º Ì ×ÓÙÖ Ó ÓÖ Ø ÙÖÖ ÒØ Ú Ö× ÓÒ Ó ¹ Ö Ú × Ö ÐÝ Ú Ð Ð Ø Ø ÓÐÐÓÛ Ò ÍÊÄ ØØÔ »»ÛÛÛº ׺ÙØ º Ù» Û Ð×ÓÒ» Ö Ú ºØ Öº Þº\ ÒÓÛÐ Ñ ÒØ×\ Ï Ø Ò ÂÓ Ò ÖØ Ö¸ Ú Ò¸ ÃÓ Ð Ö¸ Å Ü ÈÓÐ ØØÓ¸ È ØÖ ÌÙÐÐÑ ÒÒ¸ Ú Ö ÓÙ× ÒÓÒÝÑÓÙ× Ö Ö ×¸ Ò ÓÙÖ × Ô Ö Î ÖÒ È Ü×ÓÒ ÓÖ Ø Ö ÓÑÑ ÒØ× ÓÒ ÖÐ Ö Ö Ø× Ó Ø × Ô Ô Öº Ï Ð×ÓÒ À× Û × ×ÙÔÔÓÖØ Ò Ô ÖØ Ý Ò ÆË Ê Ê Û Ö ¸ Êß ½½ º Û×ÓÒ Ò Ð Ö Û × ×ÙÔ¹ ÔÓÖØ Ò Ô ÖØ Ý ÊÈ ÓÒØÖ Ø Å ¼ ß ß ß ¿¿ Ò Ý Ì ÖÑ Ò ÐÐÓÛ× Ôº Ó Ñ Ö Û × ×ÙÔÔÓÖØ Ý ÊÈ ÓÒØÖ Ø ¿¼ ¼¾ß ß½ß ¼ ¼¿º\ Ê Ö Ò ×\ ½\ Ì Ö Ú ×Ý×Ø Ñ Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ Ò¹ Ó Ò × ÖÓÑ Ø ×Ý×Ø Ñ ×× Ñ Ð Öº Í× Ö× Ò ÓÒÐÝ Ú ×× Ñ ÐÝ¹Ð Ú Ð Ò ÓÖÑ Ø ÓÒ ÓÙØ Ø Ò×ØÖÙ ¹ Ø ÓÒ× ÓÖ Û Ø Ý Û ÒØ Ò Ó Ò ×¸ Ò ÒÓØ ÐÓÛ¹ Ð Ú Ð Ò ÓÖÑ Ø ÓÒ ÓÙØ Ø¬ Ð Ð ÝÓÙغ Ö Ú ×Ù ¹ ×× ÙÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ Ò Ó Ò × ÓÒ Ø ËÈ Ê ¸ ÅÁÈ˸ ÐÔ ¸ ÊŸ ÈÓÛ ÖÈ ¸ Ò Ü º ÁÒ Ø Ð ×Ø × ¸ Ø Ò Ð × Ú Ö Ð ¹× Þ Ò¹ ×ØÖÙ Ø ÓÒ׸ Ð Ö Ò×ØÖÙ Ø ÓÒ× ´½ ÝØ ×µ¸ ÑÙÐØ ÔÐ Ò¹ ×ØÖÙ Ø ÓÒ Ò Ó Ò × Ø ÖÑ Ò Ý ÓÔ Ö Ò × Þ ¸ Ò ÓØ Ö ÁË ØÙÖ ×º × ÔÖÓÓ Ó Ø× ÙØ Ð Øݸ Û Ú Ù ÐØ Ó Ñ ØØ Ö Ò Ö ØÓÖ ÓÒ ØÓÔ Ó Ö Ú º Ï ÔÐ Ò ØÓ ÜØ Ò Ö Ú ³× Ø Ò ÕÙ × ØÓ Ö Ú Ö× ¹ Ò Ò ÖÓ Ø Ó ¬Ð ÓÖÑ Ø׸ Ò ÐÙ Ò Ù ¹ Ò Ò ÐÒ Ò ÓÖÑ Ø ÓÒº ËÙ Ò ÓÖÑ Ø ÓÒ Û ÐÐ Ò Ð Ù× ØÓ Ù Ð × Ø Ó Ö Ú Ö× ¹ Ò Ò Ö ØÓÓÐ׸ Ò ÐÙ Ò Ú Ö× ÓÒ× Ó ÌÇÅ ¾½ ¸ ÝÒ Ñ Ð Ò Ò Ð ¹ Ö Ö × ½½ ¸ Ó Ø¹Ð Ú Ð × Ò ÓÜ Ö× ¾¿ ¸ Ü ÙØ Ð\ º ÓÐÐ Ö º Ê Ú Ö× ÒØ ÖÔÖ Ø Ø ÓÒ · ÑÙØ Ø ÓÒ Ò ÐÝ× × ÙØÓÑ Ø Ö Ø Ö Ø Ò º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÂÙÒ ½ º º º ÓÑÑ ØØ º ÐÔ Ö Ø Ð ÈÖ ×׸ Ø Ö Å Ò٠к\ Ø ØÙÖ Ê Ø ÓÒ¸ ½ ÖÒ º\ ¾ ¿\ º ÓÒ× Ð Ò º ÆÓ Ðº Ò Ö Ð ÔÔÖÓ ÓÖ ÖÙÒ¹Ø Ñ ×Ô Ð Þ Ø ÓÒ Ò Ø× ÔÔÐ Ø ÓÒ ØÓ º ÁÒ ÈÖÓ º Ó ¾¿Ö ÈÇÈĸ Ëغ È Ø Ö× ÙÖ ¸ ĸ  Һ ½ º Ⱥ ÙØ× Ò º Ë «Ñ Òº Æ ÒØ ÑÔÐ ¹ Ñ ÒØ Ø ÓÒ Ó Ø ËÑ ÐÐØ Ð ¹ ¼ ×Ý×Ø Ñº ÁÒ ÈÖÓ º Ó ½½Ø ÈÇÈĸ ÔÔº ¾ ß¿¼¾¸ Ë ÐØ Ä Øݸ Í̸  Һ ½ º Àº ÑÑ ÐÑ ÒÒ¸ º¹Ïº Ë ÖÓ Ö¸ Ò Êº Ä Ò Û Öº Ò Ö ØÓÖ ÓÖ Æ¹ ÒØ Ò ×º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ¾¾ ß¾¿ ¸ ½ º\ º Ò Ð Ö Ò Ïº À× º ÊÁÎ ØÓÓÐ Ø Ø ÙØÓÑ Ø ÐÐÝ Ö Ú Ö× ¹ Ò Ò Ö× Ò×ØÖÙ Ø ÓÒ Ò¹ Ó Ò ×º ÁÒ ÈÖÓ º Ó Æ ÅǸ Ó×ØÓÒ¸ Å ¸  Һ ¾¼¼¼º º Ò Ð Ö Ò Åº Ã × Ó º È ×ظ ­ Ü ¹ Ð Ñ ×× ÑÙÐØ ÔÐ Ü Ò Ù× Ò ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÁÒ ÈÖÓ º Ó ËÁ ÇÅÅ ½ ¸ ÔÔº ¿ß ¸ ËØ Ò ÓÖ ¸ ¸ ÍË ¸ Ù º ½ º º ʺ Ò Ð Öº Ú Ó Ö Ø Ö Ø Ð ¸ ÜØ Ò× ¹ Ð ¸ Ú ÖÝ ×Ø ÝÒ Ñ Ó Ò Ö Ø ÓÒ ×Ý×Ø Ñº ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ½ ¼ß½ ¼¸ È Ð Ð¹ Ô ¸ È ¸ ÍË ¸ Å Ý ½ º ź ÖÒ Ò Þ Ò Æº Ê Ñ× Ýº ÙØÓÑ Ø Ò Ó Ò×ØÖÙ Ø ÓÒ ×Ô ¬ Ø ÓÒ׺ ÁÒ ÈÖÓ º Ó Á Ë ¸½ º º Ö Òظ ź È Ð ÔÓ× ¸ ź ÅÓ ¸ º Ñ Ö׸ Ò Ëº Ö׺ Ò Ú ÐÙ Ø ÓÒ Ó ×Ø ÖÙÒ¹Ø Ñ ÓÔØ Ñ Þ Ø ÓÒ× Ò Ý º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ¾ ¿ß¿¼ ¸ ØÐ ÒØ ¸ ¸Å ݽ º\ ½\ ƺ Ê Ñ× Ý Ò Åº ÖÒ Ò Þº Æ Û Â Ö¹ ×Ý Ñ Ò ¹ Ó ØÓÓÐ Ø Ö Ø ØÙÖ ×Ô ¬¹ Ø ÓÒ׺ ØØÔ »»ÛÛÛº ׺ ÖÚ Ö º Ù» ÒÖ»¹ ØÓÓÐ Ø»×Ô ×»×Ô ×ºÔ׸ ÆÓÚº ½ º\ ¾¼ ƺ Ê Ñ× Ý Ò Åº º ÖÒ Ò Þº Ì Æ Û Â Ö× Ý Ñ Ò ¹ Ó ØÓÓРغ ÁÒ ½ Ï ÒØ Ö ÍË ÆÁ ¸ º½ º ¾½ º ËÖ Ú ×Ø Ú Ò º Ù×Ø º ØÓÑ ¹ ×Ý×Ø Ñ ÓÖ Ù Ð Ò Ù×ØÓÑ Þ ÔÖÓ Ö Ñ Ò ÐÝ× × ØÓÓÐ׺ ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ½ º º ËÛ ØÑ Òº Ë Ñ Ò¸ ½ º\ ÅÁÈË ÊÙÒº ÅÓÖ Ò Ã Ù ¹\ ¾¾\ ½¼\ ¾¿ ʺ Ï ¸ ˺ ÄÙ Ó¸ ̺ Ò Ö×ÓÒ¸ Ò Ëº Ö ¹ Ѻ Æ ÒØ ×Ó ØÛ Ö ¹ × ÙÐØ ×ÓÐ Ø ÓÒº ÁÒ ÈÖÓ º Ó Ø ÓÙÖØ ÒØ Å ËÇËȸ ÔÔº ¾¼¿ß ¾½ ¸ × Ú ÐÐ ¸ Æ ¸ ÍË ¸ º ½ ¿º ¾ ¾ º Ï Ðк ËÝ×Ø Ñ× ÓÖ Ð Ø Ç ½ ÏÓÖ × ÓÔ ÓÒ Ó Ó ÑÓ ¬ Ø ÓÒº Ò Ö Ø ÓÒ¸ ½ ½º Òº\ ½½ Ϻ Ϻ ÀÓ Ò Êº º ÇÐ××ÓÒº Ò ÔÔÖÓ ØÓ ÒÙ Ò ÝÒ Ñ Ð Ò Ò º ËÓ ØÛ Ö ÈÖ Ø Ò ÜÔ Ö Ò ¸ ¾ ´ µ ¿ ß¿ ¼¸ ÔÖº ½ ½º ½¾ ͺ ÀÓÐÞÐ Ò º ÍÒ Öº ÇÔØ Ñ Þ Ò ÝÒ Ñ ÐÐݹ ×Ô Ø ÐÐ× Û Ø ÖÙÒ¹Ø Ñ ØÝÔ º ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ ÔÔº ¿¾ ß ¿¿ ¸ ÇÖÐ Ò Ó¸ ÐÓÖ ¸ ÂÙÒ ½ º ½¿ ½ ºÂ Ö¸ ØÓÖº ÊÅ Ö Ø ØÙÖ Ê Å Ò٠к ÈÖ ÒØ À Ðи ½ º\ ÖÒ\ ̺ Ï Ð Ò×ÓÒº à « ß Â Ú Ú ÖØÙ Ð Ñ ØØÔ »»ÛÛÛºØÖ Ò×Ú ÖØ٠к ÓѺ\ º ʺ Ä ÖÙ× Ò Ìº Ðк Ê ÛÖ Ø Ò Ü ÙØ Ð ¬Ð × ØÓ Ñ ×ÙÖ ÔÖÓ Ö Ñ Ú ÓÖº ËÈ ¸ ¾ ´¾µ ½ ß¾½ ¸ ½ º ź Ä ÓÒ Ò Èº Ä º ÇÔØ Ñ Þ Ò ÅÄ Û Ø ÖÙÒ¹ ØÑ Ó Ò Ö Ø ÓÒº ÁÒ ÈÖÓ º Ó ÈÄ Á ³ ¸ Šݽ º ˺ ÄÙ Óº È Ö×ÓÒ Ð ÓÑÑÙÒ Ø ÓÒº Í× Ó ÙÒ¹ Ó ÙÑ ÒØ ÔÖÓÔÖ Ø ÖÝ ÓÖÑ Ø× × Ø Ò ÕÙ ØÓ ÑÔ Ø Ö ¹Ô ÖØÝ Ø ÓÒ׸ Ù º ½ º Áº È ÙÑ ÖØ º ÝÒ Ñ Ó Ò Ö Ø ÓÒ ÓÖ Ò ··º ØØÔ »»ÛÛÛ¹×ÓÖº ÒÖ º Ö»¹ ÔÖÓ Ø×»ÚÚÑ» »¸ Å Öº ½ º ź ÈÓÐ ØØÓ¸ Ϻ À× ¸ º Ò Ð Ö¸ Ò Åº º Ã × Ó º Ò Ø Ð Ò Ù Ò Óѹ Ô Ð Ö ÓÖ ÝÒ Ñ Ó Ò Ö Ø ÓÒº ÌÇÈÄ Ë¸ ¾½´¾µ ¿¾ ß¿ ¸ Å Öº ½ º\ ½\ ½\ ½\ ½\ ÅÁÈË\ × Ö ÔØ ÓÒ\ Ö Ò Ö Ò\ ¹ ²ÓÔ² ²Ð в ¹ ²ÓÔ² Ö × ÓÒ ¸ ²Ð ÓÔÖÓ ¼ и\ в ¾ и\ ± ± Ö\ Ö ¶\ Ö\ Ø Ú\ º× Ø ÒÓÖ ÓÖ º× Ø ÒÓ Ø Ò\ Ö Òº× Ø ÒÓÑ\ ÖÓ Ò\ »» Ø × Ö ¼ ¸ ¼Ø¸ ¾ØÐ Ö Ò\ ××ÓÖ Ö Ò × ¼Øи ¾ ¸ ¾Ø¸ Ò ØÛÓ Ö Ò ¸\ ×\ ´ °¼¸ °½¸ °¾¸ °¿¸ ° ¸ °½¼¸ °½½¸ °½¾¸ °½¿¸ °½ ¸ °½ ¸ °¾¼¸ °¾½¸ °¾ ¸ °¾ ¸ °¾ ¸ °¾ ¸ × ´ ° ° ° ° ° ´ ° ° ¼¸ ° ½¸ ° ¸ ° ¸ ° ½ ¸ ° ½ ¸ ¾½¸ ° ¾¾¸ ¾ ¸ ° ¿¼¸ ¼¸ ° ¸ °\ ° ¸ ° ¸ ° ¸ ° ¸ ° ¸ °½ ¸ °½ ¸ °½ ¸ °½ ¸ °¾¾¸ °¾¿¸ °¾ ¸ °¾ ¸ °¿¼¸ °¿½ µ ¸ ° ° ½¾¸ ¸ ° ½ ¸ ° ¾ ¸ ° ¸ ¸ ° ¸ ° ¸ ½¿¸ ° ½ ¸ ° ¾¼¸ ° ¾ ¸ ° ¾ ¸ ¸ ° ¸ ²ÓÔ² ÓÒ × ¼¸\ »» Ø × Ò×ØÖÙ Ø ÓÒ× ÓÑ ½ ¸ ½Ø¸ ½ и ½ØÐ º×¸ Úº ¹¹ Ñ ¹¹\ Ð ÚÓÖ× Ö Ò\ º ¸ ×Ù º×¸ ×Ù º ¸ ÑÙк׸ ÑÙк ¸ ں׸ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × Ö × ×\ Ö\ ¾¸ ° ¿¸ ° ½¼¸ ° ½½¸ ° ½ ¸ ° ½ ° ¾ ¸ ° ¾ ° ¿½ µ ½¸ ° µ\ ½¸ Ñ ½¸ ÑØ ½¸ Ø ½ ²ÓÔ² Ö Ø Ö ×¸ Ö × Ö\ ÓÒ\ ¾¸ °\ ¿¸ °\ ÒÓÔ¸ ×ÝÒ ¸ ØÐ Ö¸ ØÐ Û ¸ ØÐ ÛÖ¸ ØÐ Ô¸ ÑÓÚ ¸ ÑÓÚØ ¹¹ Ö¸ ÐÖ¸ Ñ ²ÓÔ² Ö ¸ ÑØ Ö ×¸ Ö × Ö\ Ö Ø ¹¹ ׸ Ö\ ×ÕÖغ׸ ×ÕÖغ ¸ ׺׸ ׺ ¸ ÑÓں׸ ÑÓÚº ¸ Ò º×¸ Ò º ¸ ÖÓÙÒ ºÐº×¸ ÖÓÙÒ ºÐº ¸ ØÖÙÒ ºÐº×¸ ØÖÙÒ ºÐº ¸ кк׸ кк ¸ ÐÓÓֺк׸ ÐÓÓֺк ¸ ÖÓÙÒ ºÛº×¸ ÖÓÙÒ ºÛº ¸ ØÖÙÒ ºÛº×¸ ØÖÙÒ ºÛº ¸ кۺ׸ кۺ ¸ ÐÓÓֺۺ׸ ÐÓÓÖºÛº ¸ Ö Ôº×¸ Ö Ôº ¸ Ö×ÕÖغ׸ Ö×ÕÖغ ¸ Úغ׺ ¸ Úغ׺۸ Úغ׺и Úغ º×¸ Úغ ºÛ¸ Úغ ºÐ¸ Úغۺ׸ Úغۺ ¸ Úغк׸ Úغк ¹¹ ²ÓÔ² Ö Ö ×¸ Ö × Ö × ÑÓÚ º×¸ ÑÓÚغ׸ ÑÓÚ º ¸ ÑÓÚغ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × ÑÓÚ޺׸ ÑÓÚÞº ¸ ÑÓÚҺ׸ ÑÓÚÒº ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × Ö ÓÒ ×\ ¸ Ñ ÐÓ¸ ÑØÐÓ ¹¹\ ²ÓÔ² Ö × Ö Ñ ¾¸\ ÐÖ¸ Ø ¸ Ø Ù¸ ØÐظ ØÐØÙ¸ Ø Õ¸ ØÒ ¸ Ñ ¼¸ ¼¸ ÑØ ¼¸ ÑØ ¼¸ Ø ¼¸ ½¸ ÑØ ½¸ Ñ ¾¸ ÑØ ¾¸ Ø ¾¸ ÑÙÐظ ÑÙÐØÙ¸ ÑÙÐظ ÑÙÐØÙ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö × Ö × ×Ðи ×Ö ¸ ×Öи ×Ðи ×Öи ×Ö ¸ ×Ðп¾¸ ×Ö ¿¾ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ ÑÑ\ ×Öп¾¸\ ×ÐÐÚ¸ ×ÖÐÚ¸ ×Ö Ú¸ ÑÓÚÞ¸ ÑÓÚÒ¸ ×ÐÐÚ¸ ×ÖÐÚ¸ ×Ö Ú¸ ¸ Ù¸ ×Ù ¸ ×Ù Ù¸ Ò ¸ ÓÖ¸ ÜÓÖ¸ ÒÓÖ¸ ×Ðظ ×ÐØÙ¸ ¸ Ù¸ ×Ù ¸ ×Ù Ù ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö ×¸ Ö × Ö × »» ÅÁÈË ×× Ñ Ð Ö× »» Ø × ×ÝÒØ Ü × »» Ò×ØÖÙ Ø ÓÒ× Ó Ú¸ ÚÙ¸ Ú¸ ¹¹ ²ÓÔ² °¼ ¸ Ö Ö ¸ ¸ ×Ý× Ð ¹¹ ÐÐ ¹¹ ²ÓÔ² ²Ð Ù× Ú × Ñ ÖÓ ÓÛ Ø Ö Ð Ö Û Ö Ø × Ñ Ò Ñ × Ò ÚÙ Û Ö ×¸ Ö × Ö × ²ÓÔ² в Þ Ð¸ ØÞ ÐØÞ Ðи ÑÑ\ º º×¸ º º ¸ ºÙҺ׸ ºÙÒº ¸ º պ׸ º Õº ¸ ºÙ պ׸ ºÙ Õº ¸ ºÓÐغ׸ ºÓÐغ ¸ ºÙÐغ׸ ºÙÐغ ¸ ºÓÐ º×¸ ºÓÐ º ¸ ºÙÐ º×¸ ºÙÐ º ¸ º× º×¸ º× º ¸ º× պ׸ º× Õº ¸ ºÒ к׸ ºÒ к ¸ ºÐغ׸ ºÐغ ¸ ºÒ º×¸ ºÒ º ¸ ºÐ º×¸ ºÐ º ¸ ºÒ غ׸ ºÒ غ ¹¹ ²ÓÔ² Ö ÓÒ ¸ Ö Û Ö ×¸ Ö × Ö × »» Ø ×× Ñ Ð Ö ÜÔ Ø× Ô Ö ÒØ × × ÐÛÜ ½¸ Ð Ü ½¸ ×ÛÜ ½¸ × Ü ½ ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Û Ö × ´ Ö × Ö\ × µ\ Ò Ö Ø\ »» ÔÖ Ø Ò×ØÖÙ Ø ÓÒ× Û Ø ÒØ× ÔÖ ¹¹ ²ÓÔ² Ö ÒØ׸ ÑÑ ´ Ö Û Ö × µ ÔÖ Ü ¹¹ ²ÓÔ² Ö ÒØ׸ Ö Û Ö × ´ Ö × Ö ÒØ× ´ ¼¸ ½¸ ¸ ¸ ¸ µ Ñ º×¸ Ñ º ¸ Ñ×Ù º×¸ Ñ×Ù º ¸ ÒÑ ÒÑ×Ù º×¸ ÒÑ×Ù º ¹¹ ²ÓÔ² Ö Ö ×¸ Ö Ö Ö ×¸ Ö × Ð Ð¸ Ð Ö¸ Ð ¸ Ð ¸ × ¸ ×Ûи ×Û¸ × Ð¸ × ¸ ×Û ¾¸ × ¸ × ¹¹ ²ÓÔ² Ö Ö º×¸ ÒÑ Ö\ × µ º ¸ Ö ×\ ÐØÞ¸ Þ¸ ÐØÞи Þи ÐØÞ Ð¸ Þ Ðи Ò Þи Ð Þи ØÞи Ð Þ¸ ¹¹ ²ÓÔ² Ö × Ö ×¸ ²Ö ² ²Ð в Ø ¹¹ ¸ Ø Ù¸ ØÐØ ¸ ØÐØ Ù¸ Ø Õ ¸ ØÒ ²ÓÔ² Ö × Ö ×¸ ÑÑ Ò Ð ×¸ Ö Ø Ö ×¸ ²Ð в\ ׸ Ö Ø\ ÐÛи ÐÛ¸ Ð Ù¸ Ð Ù¸ ÐÛÖ¸ ÐÛÙ¸ × ¸ × Ö¸ ×ÛÖ¸ Ðи ÐÛ ¾¸ ÐÐ ¸ Ð ¾¸ Ð ¸ ¾¸ × ×¸ ²Ö ² ÑÑ ´Ö Û Ö ×µ ×µ\ Õ¸ Ò ¸ Õи ¹¹ ²ÓÔ² Ö × Ö\ к׸ к ¸ ׺׸ ×Û ½¸ ׺ ¸ × ½ ¹¹ ²ÓÔ² Ö Ö ×¸ ÑÑ ´Ö Û Ö\ ¸ Ù¸ ×ÐØ ¸ ×ÐØ Ù¸ ¹¹ ²ÓÔ² Ö Ö ×¸ ²Ö ² ¸ »» Û »» Ò Ò Ù ¹¹ ²ÓÔ² Ö ×\ Ò ¸ ÓÖ ¸ ÜÓÖ ¸ ÐÙ ÑÑ Ö ×¸ Ö Û Ö ×¸ ²Ö Ò Ý Ù× Ø × Ò Ð ² ÑÑ\ ¹¹ ²ÓÔ² Ö ÓÔ׸ ÑÑ ´Ö Û Ö ×µ ÓÔ× ´ ¼¸ ½¸ ¾¸ ¿¸ ¸ ¸ ¸ ¸ ¸ ¸ ½¼¸ ½½¸ ½¿¸ ½ ¸ ½ ¸ ½ ¸ ½ ¸ ½ ¸ ¾¼¸ ¾½¸ ¾¿¸ ¾ ¸ ¾ ¸ ¾ ¸ ¿¼¸ ¿½ µ\ Ò Ø Ö ÒØ ÔÐ\ ÓÖÑ ÓÒ × ´ ÒÓØ\ ÖÖÓÛµ", ["wilson-hsieh/logical-disk.pdf"] = "The Logical Disk: A New Approach to Improving File Systems\ Wiebren de Jonge\ Dept. of Mathematics and Computer Science, Vrije Universiteit, Amsterdam\ M. Frans Kaashoek and Wilson C. Hsieh\ Laboratory for Computer Science, MIT, Cambridge, MA", ["wilson-hsieh/view.pdf"] = "SOFTWARE--PRACTICE AND EXPERIENCE, VOL. 0(0), 0 (JANUARY 1900)\ Short Communication\ TYPE-SAFE CASTING\ performance and functionality requirements of the application. Examples of extensible systems include Web browsers 1 , operating systems 2 , embedded systems 3 , and databases 4 . Such systems must be protected from imported code, which may by buggy or even malicious. Many modern extensible systems provide that protection through type-safe programming languages. Type safety makes it possible for a system to provide strong guarantees of protection from imported code. In particular, a program cannot access arbitrary memory locations, and cannot use values in ways not prescribed by the language. Nevertheless, type-safe languages have not been designed to support efficient, low-level, \"systems\" code. For example, a network packet arrives as an uninterpreted array of bytes. In order to handle the packet, a network stack interprets the bytes in a packet as protocol headers, which contain fields of different lengths. For good performance, this interpretation should occur \"in place\"-- that is, without copying 5 . In order to interpret untyped data in place, a cast operator is necessary. Unfortunately, type-safe languages do not traditionally provide non-trivial cast operators. We describe a powerful, type-safe casting operator that makes type-safe languages more suitable for writing systems code. The design of the operator is based on the observation that if types have identical representations, the programmer can be allowed to cast between them. Our research has been done in the SPIN operating system 2 , an extensible operating system that requires system extensions to be written in the type-safe subset of Modula-3 6 . We have implemented this cast operator in Modula-3 for SPIN, and we give several examples of how we use it to improve readability and performance. We discuss also how a safe cast operator could be introduced into other type-safe languages aimed at systems programming, such as Ada95 7 , Oberon 8 or Java. TYPE REPRESENTATIONS Our cast operator allows a programmer to cast an lvalue (an expression that denotes a memory location) of some type to another type if the representations of the types allow doing so safely. For expository purposes we will not discuss the casting of rvalues, which is subsumed by lvalue casting. Casting makes sense if the types involved are visible types. A type is visible if it is non-abstract, i.e., its representation is exposed to its clients. In general,", ["wouter-swierstra/DataTypesALaCarte.pdf"] = "JFP 18 (4): 423–436, 2008.\ c 2008 Cambridge University Press\ 423\ doi:10.1017/S0956796808006758 First published online 18 March 2008 Printed in the United Kingdom\ FUNCTIONAL PEARL ` Data types a la carte\ WOUTER SWIERSTRA\ School of Computer Science, University of Nottingham, Jubilee Campus, Nottingham, NG8 1BB (e-mail: wss@cs.nott.ac.uk)", ["x86mapa.pdf"] = "Accepted to Journal of Design Automation for Embedded Systems, 1999.\ A Machine State Transition Approach to Instruction Retargeting for Embedded Microprocessors\ 1\ Ing-Jer Huang and Wen-Fu Kao Department of Computer Science and Engineering National Sun Yat-Sen University Kaohsiung, Taiwan Republic of China Tel: +886-7-525-2000 ext 4315 email: ijhuang@cse.nsysu.edu.tw\ keywords: instruction set mapping, retargeting, embedded system, machine state transition, CISC instruction set, RISC instruction set, x86 instruction set", ["xavier-leroy/105.pdf"] = "Manifest\ types, modules, and separate compilation\ Xavier Stanford\ Leroy *\ University", ["xavier-leroy/applicative.djvu"] = "Applicative functors and fully transparent higher-order modules \ Xavier Leroy \ INRIA \ B.P. 105, Rocquencourt, 78153 Le Chesnay, France. \ Xavier. Leroyinria. fr ", ["xavier-leroy/applicative.ps"] = "", ["xavier-leroy/concurrent-gc.ps.gz"] = "Proc. 20th Symp. Principles of Programming Languages, 1993, pages 113--123.\ A concurrent, generational garbage collector\ for a multithreaded implementation of ML\ Damien Doligez Xavier Leroy\ '\ Ecole Normale Sup'erieure and INRIA Rocquencourt \\Lambda", ["xavier-leroy/dot-notation.ps"] = "", ["xavier-leroy/exceptions-toplas.ps.gz"] = "Type-based analysis of uncaught exceptions\ XAVIER LEROY and FRANCOIS PESSAUX\ INRIA Rocquencourt\ This paper presents a program analysis to estimate uncaught exceptions in ML programs. This\ analysis relies on uni cation-based type inference in a non-standard type system, using rows to\ approximate both the \row of escaping exceptions (a la e ect systems) and the \row of result values\ (a la control-\row analyses). The resulting analysis is ecient and precise; in particular, arguments\ carried by exceptions are accurately handled.\ Categories and Subject Descriptors: F.3.2 [Logics and Meanings of Programs]: Semantics of\ Programming Languages|Program analysis; Operational semantics; F.3.3 [Logics and Mean-\ ings of Programs]: Studies of Program Constructs|Control primitives; Type structure; D.2.5\ [Software Engineering]: Testing and Debugging|Error handling and recovery ; Symbolic ex-\ ecution; D.3.2 [Programming Languages]: Language Classi cations|Applicative (functional)", ["xavier-leroy/manifest.pdf"] = "Manifest\ types, modules, and separate compilation\ Xavier Stanford\ Leroy *\ University", ["xavier-leroy/mixins-mm.pdf"] = "A Reduction Semantics for Call-by-value Mixin Modules\ Tom Hirschowitz INRIA Rocquencourt\ Tom.Hirschowitz@inria.fr\ Xavier Leroy INRIA Rocquencourt\ Xavier.Leroy@inria.fr\ J. B. Wells Heriot-Watt University\ jbw@macs.hw.ac.uk", ["xavier-leroy/modular.pdf"] = "J. Functional Programming 10 (3): 269303, May 2000. c 2000 Cambridge University Press\ Printed in the United Kingdom\ 269\ A modular module system\ XAVIER LEROY\ INRIA Rocquencourt, B.P. 105, 78153 Le Chesnay, France (e-mail: Xavier.Leroy@inria.fr)", ["xavier-leroy/omodular.ps"] = "", ["xavier-leroy/syntactic-generativity.pdf"] = "J. Functional Programming 6 (5): 1–32, September 1996 c 1996 Cambridge University Press\ 1\ A syntactic theory of\ type generativity and sharing\ XAVIER LEROY\ INRIA Rocquencourt, B.P. 105, 78153 Le Chesnay, France", ["xavier-leroy/type-based-unboxing.pdf"] = "Û\ Ò¡‹¡¡ ® ‹‹’ •“ ™ ® \ ¨n¢sU°‘\"¨Fsv°›É¨®¤8‘•© °›™\ ŸQ§Ž@ tœ¢G‘Fs¡¨‹ ›@›¤«© °›™ ¨£™GU§xG3Žd‹ Q°×™ ¦F•FF°’™ Ë£¨@ xÏ\ ¦ ’ ¡ ‹\ Ž¹‘ ’  ¡ ¤ › •‹“ £‹“‹ Ÿ‹ œ\ Â Å Ä V ‰ˆ V n„Ä YWUSQ P\ … †Æ X V T R\ ø% & \"%3\"10)%$ & %$\"  óì   ø\ §6(54§#¥2!!('!§#!°ïôõ¿¦¸©§Ëìé ¦\ ö¥)£¢¸§}iG¡Fn§¢ôúù ‘°öiì7æôêió}yD8îiènFiê¸7nFiê¦niçnqã\ ¤ì êîç ò î   ÿüúþýöüû ø ø ÷ õ é ò æ ñ éð ï ê éííìë éè æå ä\ i»§ng¯ â \"UUGU°‘®\ ßâÛ Ù ¡‹©‘¤©›\ £‹ œ Ÿ ® ‘ ™  ‘ › œ £ ’ Ž £‹ œ“ › ¤ Ž“ ®‹ ª ® ‘ ¤ ׋   ‘ £ ›\ n@ D˓šœ¨®¤¨tU@Q‘Cn@ D\"¢Q¨®¨g«¨œš®UQ\"¨œ® UtG‘\ © ¨›QDá¢8’v°›¢F°¡™ tF¡ šœUU´UsGG¢Ížšœ¢vFn‹ FGŽ\ ™  œ“  Ž  “ ™“ £ ¡‹ ® ‘ › ‘  ‘’ © Ž’  › Ž ®‹’ ¡’ •“\ à˧@UQn@¯ Ú 01QD{¨UsFFU•GØF°¡™ sGt ¨œU1˜F¨“lª\ ß ÝÛ ¯ ÞÛ ¯ Ý ¯ ÜÛ Ù ¡‹  œ“ “ ‘’“¡   ‘ £ › ‘  • ’ Ž ® Ž  • ™\ ‹  Ž Ž“ £ £ ›‹ ¦‹ ¤   ¯¡  • ™’ Ž ® ‘ › ™“ ‘“ ›‹¡‹’ ‹’ ® œ“¡Ÿ\ @\"¢tn‹ F“ '“ @¤¨•sš“FGGš©UCG¨Ž¢UFFFn¢l¨‹DFDdº\ ‹ Ê š™¿F¢§ÉšŽF¤•sG3ŽQ°›•© ¨›QDƒ°¢UFF¢Gt¨œ¨F\"H¢'gFG1\ ® “¡ ¤· ¯ › ™“ ‘ ’  ™ ™  œ“ ™“ ‘“¡ › Ž ®‹’ ‹  Ž¡ Ò £‹¡ Ž\ ŸŽ’  ›‹‹   ‹¹‘ • ¡‹©‘ ¤ © › ® £‹ œ Ÿ ®‘ • ’ Ž ®Ž  ’  ¡ ™\ ¤F«n¨1dU§yUUGU°‘0n@ D˓šœ¨®¤¨™ @FH ¨œU1q3ŽÉnš‹G©\ Ÿ‹“‘’“¡ ¦Ž   › ¤ Ž ’‹    ¤ › ‘¯‹ ¤¡ ™ ™ •“ ¡¡‹’ £ £ ‘ Ž Ï » › ™\ F¤sFF¿© ¨›™ §1Q@¤y1CQ¿)UFs¨¡y¨¡FgsFG­qqÉšŽF“\ Ÿ‘ ¤   Ž ® ‘ ™’‹  ¤ › ® ™‹ ¡‹ ¯¡ › ™“ ‘ ®   ‘ ™ ‘“’‹\ )s“ •G¨‰U¨°¢ntQ¬šœ¨®¤°‘n@siG¨Ž¢U¨°š™U„¨›UFFÌ°›™\  › ®““ Ž   ‘ ™ £ › ‘ ¯ ‹ › ‘ ’ ’‹  Ž ¡ ’‹“ ™ ‹ ™¡ ›‹\ Ê n‹ ¨‹¢FU1¬w°¡žUlGGtsG3Ž¢1«¤wtsFÍ°›„U¨¹¢@1\ Ÿ ¦‹ ‹ ¤ × ‹   ›‘ £‹ ®Ž¹ ™ ™ ¦Ž   ‘’ ¦‹ •“ ¯’‹¹‹ ªŽ\ Qt¢¨“™ Qt1„UGš¹GU¨›v© °›Q§1wsF“ ¨C‹ s1G¨g)­Õ\ »“‘ ’  ›Ž  Ž\ ¨¤•sG3ŽwGt•G¨\ ‹ F0@všœ¨®¤sFU­GŽ ­n0¤@F˜s¤‰¦F¨›G@t© GFs“\ •“ “ ¼ ®‘’ ¤“‘ › “ › ¡‹ Ž £ “‘ •“ ‘“‘ £ Ԓ‹“ ™ Ž  ‘ • ¤ Ž’ •\ © ¨›¨™® G½Ua© °›¢¤ šŽ¨®¤DQUn‹ yG‹ i»8™Œ© °›Q§1e„FUsFn›\ £ › ‘ • £ › ‘ ™“ ‘ ® ‘Ÿ  ‘ • » Ó ™ ¦ Ž   œ   œ’ ‘¡¡‹‹\ šg¦1Fx•‹ yGšœ¨®¤si¤HUtsG3ŽeGt•G¨¢«@³FF¨sFF¡\ ™ ¯Ô £’ Ž ª › Ž ¯ ®‘ ¤¡ Ó “‘ ’  › Ž   Ž ‘ “ ¼ ¡‹’ ¤“ ¤’“\ ‘“ ‘ £ ® ‘ ‹’ • ª ¯¡ › ™“ ‘“ ›‹¡‹’ ‹’ ‘“ ‘ £ ® œ“ Ÿ  ™ Ñ ¯ ’ ›\ F¤@R¨®¤³¢n‹ ¿¤G¨Ž¢UFFFFCs¤0š‹QDFË¡Qs°¡yQaF3Ž5™ @¤\ Ž“ “’‹ ¹‹’ £ › ‘ ¡ › ™“ ‘“ ›‹¡‹’ ‹’ ‘“ ‘ £ £‹¡ ‘ Ÿ‹ œ“ ® œ“¡Ÿ\ ¢t¢nU¢žGt@G¨Ž¢¤sFFF½F¤@„n¢GË ¨@ D¢¨‹DFDdº\ › £ › ‘   ‘ ›‹ Ž ¡‹ © ‘ ¤ © › ® ‹¡ •“ ’  ¡’   Ž ¯ ‹ ›‹\ Ž GUÖn¢3“¤«UUGU°‘t¢n‹ F«G3Ž\"s¨‹¨®™ •GiGn­Õ\ »Ô¡’‹ ™“ ›\ ¦s15¼FGn‹ °£™\ ‹ œ“ “ ‘’“¡   ‘ ’ Ž ¡ ®   ™’ ‘ ¹ ‹ œ“ ¡ ™ ‘“ › Ž ‹  œ“ ™“ ‘“¡ •\ @ D‰GFs¢@UlG‰nš‹U°‘¢G§\"1 D‰°›¤F«1QDƒ°¢UFFC‹ s“\ › • ª » » Ó ‘“ ‘ £ ‘  Ž ‹ œ“ ‹ ™ Ÿ › ¤’ ® ‘ ¤“ ‘ •“ ™ ’‹“‹\ ‹ ¿§@© U7‹Cs¤0RUx1 Dxt°¢Ë“Qs¤7¯UF¨Ul‹ Fg‹ °›tFn¢¨£\ ¡ œ ‘ ® ‘ “ › ¡‹ £ › ™“ ‘ ’  ™ ‹  œ“ ‹ ™ Ÿ   Ž ¯ ™“ ‘“\ Q§‰¨ª¤HGŽ tQŽ ¬šŽF¤•F3ŽQ°›w1QDat¨Fi“¨š‹¨®™ •G¨'¤°¢UFF¡\ ‹ FQG¢n‹ F“ xxGw¦sQÉG¨Ž¢¨UsFFUƒ@ DwU–s¨¡Ft\ •“ ¯ ‹’ • Ò Ñ Ð ¡ ‘ • ¤¡ ¯ › ™“ ‘’“¡   ‘ ‹ œ“ £ › ‘  ™ • ’ Ž\ ŸšœG@Œ© ¨›Fs“¤3‹\"UUGU°‘C3Žt‹ sFCUG¨ŽeŽ •°¡C°¡™ lÏ\ ® Ž  ™’ ¤ ‘  ¡‹©‘ ¤ © › ® ’  ¤’“ ’‹© › ® › ™ •\ »¡ › ™“ ›\ ¨šŽF@8¤\ ’ ¡ › ™“ ›‹ › Ž ®‘ “ › ™ —‹ ¡ ‘ ®‹ ª ¡ ‘ ¡‹’ ¤“ ¤’“\ G3Ž„G¨Ž¢G¹GΩ ¨›¨™¨®¤¨Œ¨‹t–U•š®xeUŒFF¨sFF¡\ ‘“‘  Ž ¤ Ž œ ® œ’ ‹  “ › ™ —‹ ™“’ Ž   ¤¡ ¡ ¤ •“ ¯ › ™\ F¤@£ƒUH“ U§‘°¬FGŽtt˜¨‹t½© °›¢FG1stQFgÉšŽF“\ Ÿ‘ ’ ™\ )•sG3ŽQ°›&© °›™  D¢°¡™ •FÍw¡@G¨Ž¢°¡n‹ ÍG¨Ž¢UFFFFÌF¤@£\ œ“ “ › Ž › ™ ™ £ › ™“ ‘“ ›‹¡‹’ ‹’ ‘“ ‘\ ‹¡ ‘   Ž“ ’  Ž • ™ ®‘ ¯ ‹ ™ Ÿ   Ž “‘ › ª\ ¢GaF­¡s¨‹¨®™ •G•‹ s“t© °›lª)šŽ¨®¤gGH°¢Ë“¨‹¨®™ •Gƒ¤e¿)Ž › Ê\ ¡ œ‘ ®‘ ‹’ ‘“‘ £ ®‘ Ž ¡ œ ® ¤“ ‘ •“ ¯ º ’ Ž ®‘¡‘ È ›\ Q§‰¨ª¤HFU‘aFUi®šUx¤³n‹@ D“{¤‘sGt‹ sÉ0ƒyU¨sU'–¸Ç\  {l„„¢'i… ‘Á À\ ÃÆ … ˆ Å Ä Ã † Â\ b Æ ` Ã\ c a½\ » Ý › ™“‹¡ ™ ’‘ ‹’ ™ £ ® › Ž\ @všŽFF¢¨›g¡ Ê U•F˜© ¨›¨¤¨G¨\ œ   £‹ ª ®  ¯¡’   Ž ® ‘ º ’ ¤ Ž • ™ ª £ ™‘“   Ž ¡ ¤¡‹\ Œg)šŽ¨®U3ŽÉs¨‹š®™ •'tUgCŒF¨“l–n‹ °›¤FGƒF¨“® sF’\ ®‘“ ›‹ ™’‹  ¦‹ ¡‹¡¡ ¤ £ I › ™“‹ A »¡ £ ‘‹ •’‹ ¹Ž ‹¡ •“ ™ Ž ¹\ ¤st¨F1in¢sF°¡™ \"BG¨Ž¢¨H¨@UFnU)¿F‹ sC°£UG§‘\ “ ‘ •“ ¡ › ™“ ‘ ™ ™  Ž ¦ Ž   › £‹ œ“ › ¤ ¡“ ›‹¡‹’  8 › ™\ ¤@F¢šŽF¤¨±t¨F“ GÌ© °›™ §@Q¤ 1 DG@FFFÍGšŽF“\ Ÿ‹ A »¡ ™ ©‹“ ‘’“¡ ‹¡ •“ œ £‹’’ ¤ ™ ¡ £ ‘ •’‹ ¹Ž ‹ •“ \ ¦nF¨nš‹G¨¢UFs¢ÍF‹ sØ  n¢s¨@¨›–Un‹ sU)ÍFvUŽ\ ‹  Ž¡ ¡‹± ®‘ › ‘ › ™“‹ A »’  Ž £‹¡ Ž  Ž’  ¡ ™ ©‹“‘’“\ tGF„¨œ¤@UÍâ G¨Ž¢¨EU8‘žF¡ n¢@¢@¨‹U¨F¤sFF¡\ © °›Q§1Q¬n¢GË ¨@ DÖ°›¤•¢‹ FC¨¡¨®¤Fe„G¨Ž¢nD¨¿)¨Ž®\ ™ ¦ Ž   › ¤ £‹¡ ‘ Ÿ‹ œ“ ™ ‘  •“ ® ‘‹’ Ü › ™“‹ A »¡ ª\ šŸU3Ž„U–n¨¨±™ U¢„°¡Ì1Už°¡™ FŒ¤„‹ @¨›Utn¢’ ‹ lÏ\ ®  ¡ ‘ £‹ › ‘ ©’ Ž ™ ’‹  ‘  •“ Ž ’ £ ™ ‘ ‹ •\ »’‹\ F“\ Ÿ“‹   ®“ › ‘ › ™¡ ™ ‹¡ ‘ “¡’ Ž ª •“ ¤   ¯¡ ™ ©‹“‘’“¡ £‹¡ ‘\ ¢¨1tšœFGG¨1š¼™ š©F‰¨¡³¢G¨g¢sGgƒ‹ F‰“ Q¨‹U¨F¤sFFwn¢G \ Ÿ‹ œ“ ’  ¡ ‘ £ Ž Ž © ¡ ‘ “¡ Ž ® ‘ ™ ¡ ™ ©‹“ ‘’“¡ £‹ œ“ › ¤ ’\ ¨@ Dt3Ž˜GÍQQGtUv¢H°¤v¨¡w¨‹U¢¤sFF¶n@ Dw3Ž\ ‹¡ ‘ “¡‹   •“ ¯¡ £’ Ž ª ’ •“ Ž ›Ç »¡ › ™“ ‘ ¤   Ž ® Ž   œ\ ¢G¨CF1w‹ sysGg\"‹ sU½¸a¨@G¨Ž¢¤s“ •G¨˜¨¨™U1C F¡\ © °›¨¨±š™U1t“ Ž F¨“ldG¨Ž¢U¨°š™U¿U¨°¢nH@ž•@U•\ ™ ® ‘ ›‹  ¤ • ™ ª ¯¡ › ™“ ‘ ®   ‘ ® ‘ ™’‹  ¤ › › Ž ¡‹ › ‘\ Ÿ’ ’‹  £ Ž Ž © ‹ ¹ • ‘ Ž ® ‘ › ‘ ¡ ™ ©‹“ ‘’“¡ © ¦Ž   › ¤ £‹ œ\ ¢G3Ž¢1˜QQG¿Uš‹™ ¦GCF¨¡UtUd¨‹U¢UFs¢C¨›™ §1@w1 D“\ Ÿ › ¤ “‘ •“ £ › ¤  ‹ ª ¯ £ › ‘ • ’ •“ Ž ‹ •“ › µ »Ô › ™“‘ ¤   Ž\ Q@C¤sÖ3Ž˜g‘gUC‹ sUwF½³–RG¨Ž¢¤s“ •G¨\ ¨¨™U1C Ft1© G8‹Œš®x„U֕GFUF¶°™ sGtGŽ tÎtGF¡\ ®Ž   œ¡ » » Ó ®‹ ª ¡‘ ¡  ‘’ ©Ž’  • ’ Ž  › Ž  ‹  Ž\ £ › ‘ ¡  ‘’ © Ž’  • ’ Ž ® Ž  Ž“ £ ‘ •’‹ ¹Ž “ › ‘ › ™¡ £ £\ U­tGFUF«°™ sGt šœG@a¢aUn‹ sU)0U¨R5¼™ š©F„G‘\ Ž ®‘ œ •“ ¯Ô¡ › ™“‘   ‘ ®‘ ™’‹  ¤ › » » Ó ¡ ‘’ ©Ž’  ™ •\ ¢°¡¤Ö‹ Fi¦šŽF¤¨¨™® Gx¤¨FtQ{@© U7‹˜•UsGUFa¨\ Ÿ’ Ž  › Ž  ‹  Ž¡ › Ž ‹ ™“‹ C‹ œ’‹ ¹ ‹   › ‘ ¡ ™ ©‹“ ‘’“¡\ ¸tGŽ H•tGFetGš¹FnRaFG•@–U¨³¨‹U¢UFs¢© °›™\ Ÿ ¦ Ž   › ¤ £‹¡ ‘  Ÿ‹  œ“ • ª “ ‘ • ™ ® ‹ Š » ¦ Ž   › ¤ £‹¡ ‘\ Q§@Q\"n¢GD1QDxš‹¨®™ ¿q¤s“ °¤°‘g–q@© °›™ §@Q\"n¢G \ Ÿ‹ œ“  Ž œ › ™ —‹ ‹ •“ ¡¡‹¡¡ ‘ Ž“ ¡’   Ž ®  ‘ º ‹ ™“‹\ ¨@ DdUnš‹¨˜¨HF0Fn¢sU¢¢³s¨‹š®™ •itUgtU¨¹¢n¸·\ Ÿ   µ £ › ‘  ®‘ ² •“ ™ ¡ ™ ©‹“ ‘’“¡ ¦Ž   › ¤ • ™ ª ‹ › ™\ Q³¢U”°¤š™¨®¤³«‹ st°›'¨‹U¢UFs¢t© ¨›™ §1Qwsš“l0nš‹F’\ Ÿ‹  ¦‹ ®‘ ™“ ‘’  ’ ¤ Ž › Ž ™ ¤   ‹ ª¯’‹  ‘  › ™ ™¡ Ž  •“ ›\ ¨@¤¨FGF{«C°£š®gg¤1UHG¨Ž¢¨“¢@i°¡™ sC¸Ç\ »¡‹ ™“ ‘ ›’‹ ®‘ › Ž •“ ¡\ U¨¹¢Us¢¨“¤všœ® \"‹ F‰G‘\ ‹ ¹Ž   ‘ £‹ › ™“ ›‹  ¡ ™ ©‹“ ‘’“¡ ¦Ž   › ¤ •“ ™ ¹‘ ® ¯  \ U)1UÖG¨Ž¢t\"¨‹U¢UFs¢„© °›™ §@Qv‹ F¢© °›Q§¨‹qGš‹® G‘\ šŸyUn@GyUgQŽ ³G¨Ž¢UF°¡™ sGtGGt)UF­q1¿)› Ê ¤\ ™ ¹ ’ ‘‹   ‘ “ Ž › ¡‹ £ › ™“ ‘ • ’ Ž  Ž › Ž ¯ ‹’‹ Õ »Ô › ªŽ ›\ ¨œš®U¨°¢UFFt¢GC1 DešŽF¤sGn¢n¢@Ft¢Ž ¿\"¨¤U§CF¤°‘® ¤\ ® ‘ ™“ ‘“¡ ‹’ ‘ ¡‹ œ“ › ™“ ‘“ ›‹¡‹’ ‹’ ‹¡ • ª ¡‹ ® ‘ ¹ ¡‹“\ Ÿ › ‘  “‘ •“ Ž Ó Ž ™’ ›‹ © Ž ¡ ™ ™“ › ‘ ¤ × ‹ ©’ ®\ Q°™ Gtv¤s„‹ £ i¬‹ £ „°F‹ nU\"¤w¨‹¢¨“¢UQUFU°‘Í°›™\ ¡ ¤¡‹’ • • ª ¯¡‹’ ¤“ ¤’“¡ ™ › ™“ ‘’“¡   ‘ ‹  œ“ £ › ‘ ¡’ Ž\ F¨“® sF„¦°™ ¿x¨n¢ssFF̨›&G¨Ž¢GFs¢@U„1QD„GtsGF“\ Ÿ ›  ® ™‹ ¡‹ ¯ ‹“ œ¡ ¤ Ž  Ñ Ð A ‹ •“ • ™ ª ™ ‹ ›\ 8¤ašœ¨®¤°‘n@s}aF¢¡ Ft¨‹® £ t„„QBF„sš“l³°¡CG© ¨‹®\ šŸ¤¦‰¤n¢¢‹ F•“ l@Q¨¢G¨¬G¨Ž¢U¨‘¨®™ •G¨vF¤sUn¢–„°›™\ ®‘ • ®‘‹’ •“ ¤ 9 »“ ¦‹“ › Ž › ™“   Ž ‹“‘’ ‘ ‹¡ ‘\ ¨œ¢nš‹¨˜¨dtnš‹® •°«¢­¢¤¨¨™¨d°›¤•Fx¨“•GGŽ s•U‹\ ®“ › ™ —‹ “ ›‹   ™ Ž“ ‹“‘ ®‹ £ ¡ ™‘ ‹’ ™ • © ¤ •“ ›‹ ¹\ ¯ ‹ ™¡ Ž ™ ‹¡ ‘‹’ ™ ’ Ž· ‘  ™ ¤¡‹’ “ › ¡‹ £ › ™“ ‘ ™ •\ G¨¨±¢³‹ £ t°›¿FUF¨@¨›xG¸¤tw¨›xš“® sF‰UŽ gQŽ tšŽF¤s¨¡\ Ÿ’ Ž  › Ž  “ ‘ •“ ¡“¡‹ © © ¤¡ ßÛ Û ¯ Ù ‹ › ™ ¹‹ ® ‘“ ›‹ ™’‹ ¦\ ¸tGŽ H«UF³s¢nUUFd¦G'8 „n‹ ¨£Qi¤FnH°F1 d7\ »tUsGG¢@«¨FtGŽ Hv„°›¤FGwFH1 DG¨Ž¢U¨‘FUFF°›™\ Ô  ‘’ © Ž’  ™ • ’ Ž  › Ž  ‘ ™ ‘“   Ž Ž“ ‹ œ“ › ™“ ™“ › ‘“¡\ • ‘‹ ’  ‹ › Ž ¡ › ™“ ›  • ’ Ž ® Ž  © ™“‘  ¤ Ó › ™“‘\ ¦U'G3Žl¨GdG¨Ž¢¨8¤g°™ sGt šœG@C¨›F¤¨°¨™® i£všŽF¤s¡\ Ÿ5FtGŽ Hd¨¡{nš‹G¨¢UFs¢«¨›™ §1@¿¢n‹ F\"FgGš¹F¤sFš“U‘\ ™ • ’ Ž  › Ž  ™ ¡ ™ ©‹“ ‘’“¡ © ¦Ž   › ¤ ‹¡ •“ Ž“ ‹ ™“‘ ›’‹ ®\ ’  ™¡ ‘¯ £‹’‹ ™¡ › Ž ™  ™ • ’ Ž  ® Ž  Ñ Ð ‹’ Ž ›\ ¨‹® •°¢¿nÉF¨£FG¨y°¡¶s¨¡FtQ¨œU1wiFG¨³¨œ® GŽ ˝Ç\ » ‹¡ ‘ “¡ Ž ª •“ ’‹““‹   ®“ › ‘ › ™¡ £ › ‘ ‹¡ ‘ “¡‹\ G¢G¨‰¢s’Gg\"‹ Fa°›™lF¢@w¨œ¢G¨1š¼™ G¨©FvG\"¢G¨¿F1 \ ‹ F¶G³š®xv¡U¾sG3Ž¢’1„¢v›šŽF¤¨±t¨F“ G¶1QD½‹ s“\ •“ › Ž ®‹ ª ‘ ’  ‹  Ž“ ¡ ™“ ‘ ™ ™  Ž £‹  œ“ › ¤ •\ £ ¼ ‹ Š »¡’  Ž ® ‘ º ‹ ™ ‹·   µ £ › ‘  ® ‘ ² •\ ›1Œ¶Fnš‹¨®™ •G¨0tUgeU¨¹¢“¨¸Q³¶G´@¨¤¨™š®U³Œ‹ s“\ • ™ ‹ › ™’‹  ¦‹ ‘ ™“ ‘’ ’ ¤ Ž Ž © ¤   ¯¡ › ™“ ‘ ™ ™\ F¨“lªv¨¨‹¢n@¨x®U¨°¢GF@H¬›Œ¨›™ °£®¨™ dG¨Ž¢U¨±t¨F“\ Ÿ  Ž ¦ Ž   › ¤ £‹ œ“ › ¤ ¯’  ™¡  “ ‘ • • ™ ª ¡ ™ ©‹“ ‘’“\ QG–© °›™Q§1Q¬n@ D'¨‹® •¨F­¤ŽH¤s“¬F¨“l«nš‹G¨F¤sFF¡\ © ¨›™ §1Q¤¥n¢GD1QDž¤bnš‹¨˜¨‹–‹ F“”FU•YŒŠ\ ¦ Ž   › £‹¡ ‘  Ÿ‹ œ“  Ž œ › ™ — • ‹’ ‘   Ž ‹\ …ˆ ‡†…ƒ \ ‰t'iq„‚€\ ~ x |h z yx m s uq s r\ j‘z}m{G{gywv¦taq\ p mjh k j f ed\ qo nGlaGihgQ™", ["xavier-leroy/unboxing-tic97.ps.gz"] = "Workshop ``Types in Compilation'', Amsterdam, June 1997\ The effectiveness of typebased unboxing\ Xavier Leroy \\Lambda\ INRIA Rocquencourt", ["xavier-leroy/unix-in-caml.ps.gz"] = "UNIT '\ E DE RECHERCHE\ INRIAROCQUENCOURT\ Institut National\ de Recherche\ en Informatique\ et en Automatique\ Domaine de Voluceau\ Rocquencourt\ B.P. 105\ 78153 Le Chesnay Cedex\ France\ T'el. :(1)39 63 55 11\ Rapports Techniques\ N ffi 147\ Programme 2\ Calcul symbolique, Programmation\ et G'enie logiciel\ PROGRAMMATION\ DU SYST `\ EME UNIX\ EN CAML LIGHT\ Xavier LEROY\ D'ecembre 1992\ Programmation du syst`eme Unix en Caml Light\ Xavier Leroy 1\ R'esum'e\ Ce rapport est un cours d'introduction `a la programmation du syst`eme Unix, mettant l'accent\ sur la communication entre les processus. La principale nouveaut'e de ce travail est l'utilisation du\ langage Caml Light, un dialecte du langage ML, `a la place du langage C qui est d'ordinaire associ'e\ `a la programmation syst`eme. Ceci donne des points de vue nouveaux `a la fois sur la programmation\ syst`eme et sur le langage ML.\ Unix system programming in Caml Light\ Xavier Leroy", ["xavier-leroy/zinc.pdf"] = " SXg7pX\ uh\"A993H P uxx u q SR DC W P2 x XPBP `SC574 5T P GuBDy I 2P xwu q eSvqtsrp 6 W GE R 2 P hd R @ @E @ P H PI 8 E DC SR 9@GE iQP 92GC c ( @ 86 E6 @ $ P hdg7GC c UBf2 P 6 P @ d86 c Ea P eF7DC AW bQ23`2 P P TRW TR P VYUXPVUSP QI H C 2 E86 C @ 864 G5GF7D6BA6977523\ !xw0XFpS\ 5 f ` e 5 f hf e \ \"\"wB\"fff5 \"YVwQxBf\"Vt !VV 5tfBxt} ~ ~ |{ BV{Yz`y 10 !(!&##\" ' ) ' % $ ! \ 1\ L'exprience ZINC: e une mise en oeuvre ` l'conomie du langage ML ae\ Xavier Leroy\ Rsum e e Ce rapport prsente en dtail la conception et la ralisation du syst`me ZINC. C'est une mise e e e e en oeuvre du langage ML, se fixant pour objectif de permettre l'exprimentation de diverses exe tensions du langage, ainsi que de nouvelles techniques d'implmentation. Ce syst`me est conu e e c pour permettre la compilation indpendante et la production de petits programmes autonomes; e le respect du typage est assur par par un syst`me de modules ` la Modula-2. ZINC utilise des e e a techniques simples et facilement adaptables, telles que l'interprtation de code abstrait; un mod`le e e d'excution raffin compense en partie le ralentissement d^ ` l'interprtation. A noter galement e e ua e e une reprsentation efficace des records avec inclusion (sous-typage). e", ["yc-tay/draft.ps.gz"] = "How Memory Size Affects Disk Reads\ Y.C. Tay \\Lambda\ National University of Singapore", }