ࡱ> e5@ bjbj22 XX&&&&&&&$jejejePeVfllfR j(HjHjHjkN5nn\1333333$JRzW&\xk"k\x\xW&&HjHj}l6NNN\xB&Hj&Hj1N\x1NN&&%Hjf Rje|N4<F^~%J.&&&&&%Eo(mqNr<3t)EoEoEoWWBD%@$2B@ Grid Computing Environments Shells Status of This Memo This memo provides information to the Grid community on the topic of Grid Computing Environment Shells. It does not define any standards or technical recommendations. Distribution is unlimited. Copyright Notice Copyright Global Grid Forum (2002). All Rights Reserved. Abstract This document presents an overview, requirements, and features for a shell environment that may be used to access Grid technologies. Shell execution and programming environments have proven useful for providing a useful, flexible interface for users of both standalone and distributed computing systems. We thus propose this model for Grid Computing Environments, treating the emerging Grid infrastructure as a globally scalable operating system. The GCEShell then serves as a scriptable user layer that hides the underlying Grid system-level interfaces that are being developed as part of the Open Grid Service Infrastructure. Such a shell environment should possess a number of features. First, there should be a shell engine capable of loading, executing, and managing the lifecycle of GCEShell commands. The shell should also be capable of connecting multiple shell commands through such constructs as pipes and redirects. Finally, the shell itself depends upon a collection of useful commands, many of which should mimic familiar Unix shell commands as ls, cat, mv, etc. These commands are actually OGSA client applications that are loaded and managed by the shell. We anticipate the creation of useful libraries of shell commands to be an open process. Contents  TOC \o "1-2" \h \z \u  HYPERLINK \l "_Toc32981059" Abstract  PAGEREF _Toc32981059 \h 1  HYPERLINK \l "_Toc32981060" 1. Overview  PAGEREF _Toc32981060 \h 2  HYPERLINK \l "_Toc32981061" 2. Grid Computing Environments and Programming the Grid  PAGEREF _Toc32981061 \h 2  HYPERLINK \l "_Toc32981062" 3. Unix Shells  PAGEREF _Toc32981062 \h 4  HYPERLINK \l "_Toc32981063" 4. The JXTA Shell  PAGEREF _Toc32981063 \h 5  HYPERLINK \l "_Toc32981064" 5. The Legion Shell  PAGEREF _Toc32981064 \h 5  HYPERLINK \l "_Toc32981065" 5.1 OGSA/Web Service Overview  PAGEREF _Toc32981065 \h 5  HYPERLINK \l "_Toc32981066" 5.2 GCE Shell Engine  PAGEREF _Toc32981066 \h 6  HYPERLINK \l "_Toc32981067" 6. Basic GCE shell commands  PAGEREF _Toc32981067 \h 7  HYPERLINK \l "_Toc32981068" 6.1 GCE Redirects, Pipes and Tees  PAGEREF _Toc32981068 \h 8  HYPERLINK \l "_Toc32981069" 7. Features of GCE Shell User Environment  PAGEREF _Toc32981069 \h 11  HYPERLINK \l "_Toc32981070" 8. GCE ShellCommand Interface  PAGEREF _Toc32981070 \h 11  HYPERLINK \l "_Toc32981071" 9. Security Considerations  PAGEREF _Toc32981071 \h 12  HYPERLINK \l "_Toc32981072" Author Information  PAGEREF _Toc32981072 \h 12  HYPERLINK \l "_Toc32981073" Glossary  PAGEREF _Toc32981073 \h Error! Bookmark not defined.  HYPERLINK \l "_Toc32981074" Intellectual Property Statement  PAGEREF _Toc32981074 \h 12  HYPERLINK \l "_Toc32981075" Full Copyright Notice  PAGEREF _Toc32981075 \h 13  HYPERLINK \l "_Toc32981076" References  PAGEREF _Toc32981076 \h 13  Overview The user shell environment has shown itself to be a very useful approach for insulating the user from the low level APIs needed to interact with various systems. We propose that this provides the correct model for building a user environment to interact with Grid technologies. A simple command-line shell can encapsulate a number of Grid functions in a set of commands patterned after the familiar UNIX shell. Likewise, the shell architecture can serve as the foundation for graphical interfaces. The shell environment possesses an important concept: it provides a general purpose environment for executing arbitrary shell commands, which can be written by anyone. The shell commands themselves are built on top of a well-defined, specified, and circumscribed set of interfaces to system level commands, which may be termed the Grid kernel. After some transitory phase, we expect the Grid kernels core system interface API to become essentially complete and fixed, with rare updates and extensions added after much debate. On the other hand, shell environments support a more informal set of user commands that may be developed with little oversight: there is nothing wrong with having two groups develop very similar shell commands (the Grid equivalent to UNIXs less, more, and cat, for example). Going beyond single commands, the shell should support (via pipes and scripting) the composition of arbitrary, complex commands that are suited to particular purposes. This raises the issues of both programming the Grid and service composition and orchestration. As we will describe, we wish to clarify that programming the Grid has multiple meanings, which arise from ones location in the Grid Computing Environment stack. Likewise, service composition is an area of many possible solutions and, as yet, no clearly distinct final solution. We discuss here the possibility of a scripting-style approach to these problems that arises naturally from the proposed shell buffer layer that separates the Grid from users. This brief report reviews the shell environment approaches of UNIX (Kernighan and Pike, 1984), JXTA (Gong, 2000), and Legion (Natrajan, Humphreys, and Grimshaw, 2001) in order to make recommendations for a proposed GCE shell environment. This shell constitutes the lowest level of the GCE and is the foundation on which we may build both command line and graphical user interfaces. The command line version of the shell would serve as a prototype and testing environment and could also be appropriate for Grid power users. One possible realization of the graphical version may include a portlet-managing web application. We assume that there will be a standard reference implementation for the OGSA (Tuecke, et al, 2002), and the initial capabilities of the next generation of the Grid will be basically the same as now: a collection of capabilities currently available from Globus (http://www.globus.org), SRB (http://www.npaci.edu/DICE/SRB/), Legion (http://www.cs.virginia.edu/~legion/) and other Grid infrastructure projects. The important initial difference is that these services will be described in standard ways using OGSA extensions to WSDL (Christensen, et al, 2001). Grid Computing Environments and Programming the Grid Before discussing shell examples and potential features of the GCEShell, we wish to briefly overview Grid Computing Environments and their relation to grids. GCEShell commands are intended to be useful by themselves, but we ultimately view them as the core objects that can be manipulated programmatically using one or more workflow languages. We thus wish to distinguish the ways in which one may program the grid: by using low level APIs, which we argue are similar to operating system calls, and at a high level, developing programs that manipulate high level shell command objects. Grid Computing Environments fulfill (at least) two functions Controlling user interaction rendering any output and allowing user input in some (web) page. This includes aggregation of multiple data sources in a single portal page. Programming the Grid We can divide programming the Grid into two parts: preparation of the individual application nuggets which are associated with a single resource and then programming the integration of the nuggets together into a complete executable. The nugget could be the SQL interface to a database, a parallel image processing algorithm or a finite element solver. Programming the nugget is currently viewed as outside the Grid although projects like GrADS (http://grads.iges.org/grads/) are looking at integration of individual resource (nugget) and Grid programming. Here we will assume that each nugget has been programmed and we just need to look at their integration. This integration generalizes what is familiar from Shell/Perl scripts in UNIX case Microsoft Com/ActiveX/. Interfaces Possibly the programming seen in AVS, Khoros, CCA (Common Component Architecture), SCIRUN etc. The above examples indicate that programming the Grid has overlaps with (distributed) object technology but in this note, we are not trying to push a particular programming model but rather Figure 1: The logical layers of the Grid present different views. to clarify the issues to be addressed. Although related to tasks familiar from programming PCs or workstations, Programming the Grid is significantly more complicated. As illustrated in Figure 1, the executable (integrated nuggets) is a mixture of both system and application services; one uses system services on a single workstation but the meta-OS services of the Grid are currently expected to have programmable interfaces, whereas many of the corresponding workstation (Windows, UNIX) services are more opaque. Not only do we have the richness of both system and application nuggets, but also many Grid systems separately maintain both real entities (such as a software nugget) and entities representing the meta-data describing the real entity. We expect this separation to continue and indeed expand in use for there is a clear need to define more meta-data and it seems likely that this metadata will often be stored separately from the resource it describes. Currently several projects in this area have a rather unclear relationship because there is no consensus as to meaning or perhaps even existence of programming the Grid. In particular there are (at least) 3 different slants one can use in discussing programming the Grid There is the view of the user at the client device There is the view of the user programs running on the back-end resource(s). Note that in figure, we have the user NOT the application at the top of the hierarchy. We take a peer-to-peer view with application software thought of as resources represented by meta-data in the middle tier and an executable running on a backend computer/data resource. There is the view of the various system (middleware) services One can integrate these different views in the service model user interfaces (portals), system capabilities and applications are all services communicating via messages. The communicating services have WSDL ports but we also assume that any communication between ports is subject to some negotiation. For instance, a user device and content source must taken into account both content and client constraints (user profile) to define appropriate rendered content. Two application nuggets must take into account both needed latency/bandwidth of application and network constraints (firewalls) to decide most appropriate communication mechanism. This typically runtime specification of the implementation of a particular service-service interaction has no agreed approach. There are of course many examples of its use with particular implementation strategies. Agents, brokers and profiles are typical of the language one often uses to describe this adaptive mechanism. Programming the Grid consists of at least two important considerations The programming paradigm and within a paradigm one can choose particular languages this could be scripted, visual, or compiled. The run-time library which could be largely shared between different paradigms in functionality but might be expressed rather differently The expression of workflow is (part of) programming the Grid. This could be visual, an XML specification file such as BPEL4WS (Cubera, et al., 2002), Python or compiled Java. The UK e-Science effort (http://www.research-councils.ac.uk/escience/) has an ontology effort and another AI (with DPML expressing the discovery process) project. These collectively can be thought of as different and possibly very fruitful paradigms for programming the Grid. We can expect it to be useful to have multiple paradigms and multiple languages. It is perhaps useful to think of all of them as just programming the grid so one can more easily compare them. Shell Overviews In order to extract characteristics needed for a GCEShell system, we first review other shell systems that have proven useful. UNIX Shells The most widely known examples of the shell idea are the UNIX shells, which are used to hide low level system calls to the operating system kernel behind a set of user commands. While the system API for interacting with the kernel is more or less standard (Unix System V and Linux being two examples), the user environment is a catchall for various tools created on top of the kernel that have been developed by different groups. These tools may have overlapping purposes We highlight the following UNIX concepts: Shells invoke a users commands by forking and spawning new processes. The shells basic command line features--pipes, redirects, terminators, and groupingsprovide a syntax for a primitive workflow. Shells use scripting languages to express workflows of shell commands, creating new, composite commands. Environment variables and alias can be set to specify custom settings (such as search paths) and user defined short hands. Regular expressions and wildcards are used for pattern matching within commands and scripts. An important aspect of the UNIX shell is that it is used to handle interactions with both the file system and processes. UNIX also provides an important convention that commands that take input and generate output do so either from/to the terminal (standard I/O) or from/to files or from/to other commands. Pieces of a UNIX pipeline are all run at the same time: ls l | wc runs both the commands at the same time and the kernel manages scheduling and synchronization as necessary (according to Kernighan and Pike). This would be quite difficult for distributed systems. JXTA, discussed below, has unidirectional pipes to avoid synchronizing issues. The JXTA Shell The JXTA shell project provides a simple user environment for interacting with JXTA core platform objects. The JXTA shell provides the following: A list of common shell commands A simple syntax for combining commands in a single command line (pipes). A history of previous commands The shell is also extensible: new commands can be added in a well defined way: by extending the ShellApp superclass and implementing startApp and stopApp methods (along with a few other simple rules). The JXTA Shell was designed to superficially resemble UNIX shells. However, because the JXTA Shell provides an interface to distributed peers, there must be some differences. The primary difference comes from the pipe concept, which is needed to connect applications. JXTA JXTA pipes are unidirectional and can be dynamically reconnected, as is required in a distributed, asynchronous, fault tolerant system. Also, JXTA shell provides two different types of pipes: simple pipes denoted by the | operator, and real JXTA pipes as described above. The simple pipes are used to connect the output of commands with local-only applications. The Legion Shell The Legion project, developed at the University of Virginia, researches distributed computing and Grid infrastructure. In contrast to Globus, which has aspects of client/server systems, Legion is a distributed object system in which all parts of the Grid are equal peers. Legions user environment is modeled after the UNIX shell, obviously extended to support distributed peer hosts. There are Legion versions of ls, rm, mkdir, and so on. Legion provides a Context, a logical collection and organization of files that may be physically distributed among many different members of the Legion virtual computer. So the Legion shell commands act on this distributed file system. The GCE shell, on the other hand, may not want to hide this detail. The GCE ls command can be directed at a particular machine, while the Legion ls is directed at a logical collection. Legion and Globus present contrasting views of the Grid. Globus does not hide heterogeneity of resources but instead provides a universal way of accessing them and finding out info about them. Legion provides a more homogeneous view of resources. For example, the Legion file system consists of a collection of files that might be distributed over many different resources. The user interacts with this virtual file system as if all files were local. It is debatable which approach should be adopted by a GCE shell: for example, the gce-ls command may either point to one or more physical resources, or it may point to an abstract collection that is mapped to more concrete endpoints. OGSA Web Services and GCE Shells The Open Grid Service Architecture provides some extensions to WSDL for handling services one may realistically find on a computing grid. OGSAs heart is a set of additional WSDL PortTypes and Operations that provide interfaces for creating services, registering the service instances, finding out information about services, and communicating with services. Any Web Service that aspires to be a Grid Service must include some or all of these additional PortTypes in its WSDL definition. The basic interaction of an OGSA (or generally a Web Service) client with services is as follows: a service instance is created and runs on some host environment. The service publishes its existence and invocation interface (WSDL) to a service registry, where it is later discovered and invoked by a client using any allowed protocol binding. The client invocation may be done statically, by creation of client-side stubs from the WSDL interface that are used to generate the appropriate RPC command in the chosen protocol; or dynamically, by inspection of the service interface at runtime. The GCE shells basic operation is to manage OGSA client applications from the above scenario. These may be drawn from the general purpose shell toolkit commands, but the shell should be flexible enough to handle any OGSA command. GCE Shell Engine The shell engine is the core application that parses command lines, runs client commands, communicates with the servers (applications and registries), and manages application lifecycles. The GCE shell engine essentially serves as a container for client applications, analogous to server-side containers. Like server-side containers, the shell engine must have abstract containers (contexts) that can hold ShellCommand objects (see below). These abstract containers can contain other contexts and can manage the lifecycle of these objects. Just as there are at least a half dozen UNIX shells, we shouldnt expect the GCE shell to be singular. Likewise, it seems somewhat inefficient to invent a new scripting language to support GCE shell control structures when there are so many extensible scripting languages already around. So we should expect the shell to be implemented in different languages and probably support scripts written in well-know scripting languages. Lets now consider some of the shell engine features. The GCEShell engine should responsible for discovering the server side binding points needed by GCEShell commands. In this case, the command would contact the GCE shell in a service discovery phase and communicate only indirectly with the remote service, with direct communications filtered through the shell. The advantage of this is in customization. For example, the user may create a profile that says I am only interested in these registries and no others, so limit the search for services to just those. Or, by setting an appropriate environment variable the user may specify that only a specific resource gets used. The Shell Engines primary responsibility is to run the base shell context (BSC). The BSC is responsible for creating child shell contexts to hold individual commands and for managing the lifecycle (create and destroy) of these child contexts. The BSC also manages communications between the child contexts; that is, the pipes and redirects are functions of the base context. Finally, the BSC creates default standard input and standard output contexts, which provide the (default) standard I/O mechanisms for other shell commands. That is, the default stdin context might be an application for handling keyboard input. As will be discussed in the section on pipes and redirects, all parts of the command line exist in individual child contexts that communicate with each other through the base shell, so default contexts can easily be replaced with other contexts. The child contexts are analogous to UNIX processes and must present an interface for starting and stopping themselves, with these methods being invoked by the base context. The child contexts should also contain and be responsible for managing the lifecycle of individual shell commands. The child contexts are also responsible for converting wildcards, regular expressions, etc, into full expressions suitable for the shell commands. Child context threads must block until the command completes. If this is not implemented in the shell command itself (the client is decoupled from the server and exits before the server process completes) then the child context will need to implement a listener that gets notified when the command completes on the server. GCE Shell Commands Shell Commands (GCE Shell versions of mv, cp, rm, and so on) are the actual OGSA client applications. These must also implement a common interface (see below) that contains methods for I/O and so on. Third-party OGSA clients that do not themselves implement the Shell Command interface must be placed in a generic shell command holder that minimally implements the Shell Command interface. GCE shell commands can be grouped into several categories, including the following, with some possible examples: Commands that work with local and remote files: cp, mv, rm, ls Commands that work with shell processes: ps, top, kill Commands that work directly with host resources: ping, netstat GCE shell versions of type (1) and (3) commands must take URIs as arguments. For example, mv http:///file1 http:///file2 or ping http:///somehost where we must make use of some URI managing system external to the shell. One point to be made is that the URI is not for the resource itself (computer or file) but for a service that interacts with the resource. Implicit also in this is that the URI system is tied to some access control mechanism: the user must have the right to move the file from one resource to the next, for example. Since there is no global DNS for URIs, we will need to provide URI support as a plug-in through an interface. In addition to taking full XML input for instructions, the commands must also generate output. Following the JXTA example, this output should be XML-formatted. We must go a step further, however. The output of each command is really metadata about what it did, which can in turn be used as input for a second command. This is necessary in order for commands to be linked with pipes and tees and will be discussed more below. GCE shell commands will have some additional requirements over their UNIX counterparts. The probability of failure is much higher than a shell command. A single move file command relies on networks, host computers, URI resolvers and so on to work, so if any part of this fails, the whole command fails. So GCE shell commands must be both reliable (did the command really get executed correctly out in server-land?) and provide verbose output and logging as well as regular Boolean return conditions. The latter will be needed for the shell commands to be embedded in traditional scripting languages. Basic GCE shell commands The GCE shell is to be built out of a set of common run-time primitives. It would have some features in common with UNIX shell, as for instance file manipulation is critical both in UNIX and the Grid. There are some interesting differences. For instance the Grid must express The negotiated (profile-based) interaction Files and services at all levels of system local client, middle-tier, backend resource Distinction between an object and its meta-data Looking at primitives needed, the Grid needs to add several features such as: Search Discovery Registration Security Better workflow than pipe or tee in UNIX shell Groups and other collaboration features as in JXTA Meta-data handling Management and Scheduling Networks Negotiation primitives for service interaction One can simplify the discussion by using a uniform service model so that files and executables are both services and not distinct as in UNIX. One probably needs a virtual service concept so that an individual file access is a service in the Shell even though it could be implemented differently. Quality of service negotiations need to take place between all interacting parts. For example the shell command mv http:///file1 http:///file2 could be implemented by a number of different grid service methods: gridftp, reliable file transfer, as a SOAP attachment, or even as a simple UNIX mv if both files are on the same file system. The actual service used would need to be negotiated between the parties. Web services dont currently provide this notion, but examples of negotiation protocols abound, from SIP and H.323 in AV to SSL handshakes in security. The basic operations of the GCE shell should mimic UNIX shell commands but apply to distributed resources. Some examples would include ls: this should list files for a particular node or a collection of nodes. gce_cat/gce_more/gce_less: these should display the contents of a selected resource (if it is a leaf node). Note this is the distributed version of this command. cd: should allow you to set the current working directory on a particular resource. ping: should allow you to test the existence of a particular resource anywhere in the Grid. ps: find out about your processes Most but not all GCE shell commands will be OGSA clients. A few commands need only to be implemented in the shell itself. For example, the command gce_cat [] | more would display some file somewhere, but the pipe and more command are local and used only for formatting the output of the gce_cat command. Just as the JXTA shell has P2P-specific like join and leave, it will be necessary to identify some GCE specific commands that have no UNIX counterparts. JXTA also provides a nice model for developing new shell commands: they all must extend the same abstract class. GCE shells should do the same. GCE Redirects, Pipes and Tees The real value of the shell lies in the coupling of primitive shell commands into composite commands for specific tasks. In other words, the GCE pipes and redirects are shorthand for much more complicated Grid interactions (like gridftp). It is the pipe that is probably the most important feature that the GCE can provide. Likewise, UNIX-like tees will be needed since pipes may need to redirect single I/O to/from multiple commands. Pipes, tees, and redirects serve as the most basic type of workflow. More complicated workflows can be set up by scripting in some well-known language like Perl or Python after appropriate bindings are made (the shell would hand off these scripts to the appropriate interpreter). In summary, pipes are used to link commands, while redirects link commands with files. UNIX tees split output between files and standard output. Redirects (< and >) are built-in shell commands that are bound to a particular Grid service for file transfer. The command gce-ls l http:///somedir > http:///somefile means list all the URI children immediately under somedir and put those results in a file located by the URI following the redirect. The redirect is a Web Service client that must look up the files URI, see which service can be used to place the file there, and then performs the action. In this case the base shell context (see above) must create a new context to hold the redirect command and replace the default standard output context with the context for the redirect. GCE pipes are more complicated than redirects. UNIX pipes connect commands, but typically these piped commands are filters for parsing the output of the first command in the pipeline. UNIX pipes work because UNIX shell commands (with a few exceptions) always are for working with files. But this is not really what would be important for the GCE shell: while sort and grep commands will have a use in the GCE shell, these are NOT OGSA clients. JXTA pipes also are a bit different: pipes are used to manage communication between a local peer and some remote peer. The GCE shell, however, consists of local OGSA client commands that connect to distributed OGSA servers. What we really need is a way to pipe two OGSA commands together. The problem is that the interesting problems deal with scientific applications: the venerable execute-move output-visualize sequence. The problem is that the output of the grid-enabled a.out command may be spread out all over the place. So to connect a1.out to a2.out, we must have more than the standard output of a1. We also need to know all sorts of information about the application instanceall of the application metadata. As a preliminary suggestion, we will assume that the GCE pipe should be unidirectional. We must define a pipe binding interface that allows various file moving mechanism clients to be bound as pipes. These means that we need the following sorts of interfaces: PipeService: factory for creating different sorts of pipes InputPipe: waits for input OutputPipe: sends messages to InputPipes. It is important to realize that shell applications are actually local proxies to remote services. So we need two sorts of pipes: local-to-local and remote-to-remote. The L2L pipe means that the client side output of one command needs to be sent to the client-side input of another command, which then results in some remote operation. L-Pipes should generate output and accept input in Unicode, just as UNIX.  EMBED PowerPoint.Show.8  Figure  SEQ Figure \* ARABIC 1 A local pipe transfers client side output of command 1 to input of command 2, which is used to create command 2's request. The R2R pipe is itself a client application that gets bound to some particular file transfer implementation. An R-Pipe signifies that the server-side output of command 1 should be automatically passed to command 2. The system may be better implemented if it actually passes metadata between applications. The R-Pipe needs to pass instructions (or at least metadata) about what it did, and the second shell command can examine this metadata and decide what to do. That is, first command generates some server-side output file someplace and passes this information (not the file) to the second command. The second command then decides what it needs to do about command 1s file.  EMBED PowerPoint.Show.8  Figure  SEQ Figure \* ARABIC 2 Shell command 1 needs to communicate both locally and remotely with shell command 2. The remote pipe is a proxy to some file transfer service. Finally, pipe bindings could be used in a couple of different ways: communicate arbitrary output of commands in Unicode or else communicate XML metadata about the command output. Features of GCE Shell User Environment The GCEShell environment should have the following: A minimal set of GCE shell commands, implementing the GCE Shell Interface/Abstract type. Support for wildcards, regular expression matching. Support for environmental variables Support for GCE pipes and redirects. A history feature Process control features for starting and stopping local and remote processes. Support for scripting, or perhaps bindings to specific scripting languages. History means that the user can get a listing of formerly run commands and re-execute them. Environmental variables may be extended past the simple name/value pairs of the Unix and JXTA shells. The variable name may actually be a URI, which points to an XML nugget of values, not just a single value. In UNIX, processes are managed by the kernel, not the shell. The GCE shell, however, will need to implement a process-like system (maintaining each executing command in a Java thread, for example) that allows the user to start multiple commands, run them in background, check their status (running, sleeping, zombie), kill them if necessary, etc. GCE ShellCommand Interface It is probably a good idea for GCE shell commands to have a standalone mode: they are just OGSA service clients. However, they should also be executable inside a GCE shell context. For this to happen in a Java implementation, the GCE shell needs to load and execute the appropriate class in a new thread. The GCE shell commands thus need to implement some common methods. Commands running in the GCE should all implement the same interface. Lets call this interface ShellCommand. Then the shell command needs to implement at least the following: readStandardInput(): following Unix model, input will be assumed to be Unicode, so takes a reader. writeStandardOutput() writeStandardError() suspend(): should temporarily stop execution of the process This may be difficult to support throughout the entire distributed system, as the real process somewhere may not have any suspend capability, but it at least can be mimicked in the shell: cache all messages and output from the command and do not deliver until necessary. kill(): A process receiving this signal should terminate and also clean up all of its running instances. exitMessage(): When the shell command exits, it should report an exit status code (in XML instead or else UNIX-style exit codes). The I/O methods assume Unicode. The shell has to be responsible for figuring out the specific Reader/Writer to create. For example, if we redirect some command output to a local file, the shell would create a PrintWriter object for this. An alternative and possibly better approach is for the commands to output XML as well. Since the shell must be able to execute any OGSA or Web Service client, there must be a general purpose wrapper that implements the above interface and can contain a third-party client application. Security Considerations There are no security considerations associated with the contents of this document. Author Information Marlon Pierce Community Grids Lab, Indiana University 501 N. Morton Street, Bloomington, IN 47404 Email:  HYPERLINK "mailto:marpierc@indiana.edu" marpierc@indiana.edu Geoffrey Fox Community Grids Lab, Indiana University 501 N. Morton Street, Bloomington, IN 47404 Email:  HYPERLINK "mailto:gcf@indiana.edu" gcf@indiana.edu Intellectual Property Statement The GGF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the GGF Secretariat. The GGF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this recommendation. Please address the information to the GGF Executive Director. Full Copyright Notice Copyright (C) Global Grid Forum (date). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the GGF or other organizations, except as needed for the purpose of developing Grid Recommendations in which case the procedures for copyrights defined in the GGF Document process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the GGF or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE GLOBAL GRID FORUM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." References [BPEL4WS] Business Process Execution Language for Web Services, Version 1.0, F. Cubera, Y. Goland, J. Klein, F. Leymann, D. Roller, S. Thatte, and S. Weerawarana. Available from  HYPERLINK "http://www-106.ibm.com/developerworks/webservices/library/ws-bpel/" http://www-106.ibm.com/developerworks/webservices/library/ws-bpel/. [OGSA] S. Tuecke, et al. Grid Service Specification.  HYPERLINK "http://www.gridforum.org/ogsi-wg/drafts/draft-ggf-ogsi-gridservice-04_2002-10-04.pdf" http://www.gridforum.org/ogsi-wg/drafts/draft-ggf-ogsi-gridservice-04_2002-10-04.pdf. [JXTA] L. Gong. Project JXTA: A Technology Overview.  HYPERLINK "http://www.jxta.org/project/www/docs/jxtaview_01nov02.pdf" http://www.jxta.org/project/www/docs/jxtaview_01nov02.pdf. [LEGION] A. Natrajan, M. A. Humphrey, and A. S. Grimshaw. Grids: Harnessing Geographically-Separated Resources in a Multi-Organisational Context" Proceedings of High Performance Computing Systems, June 2001. [UNIX] B. W. Kernighan and R. Pike. The Unix Programming Environment. Prentice Hall, Englewood Cliffs, NJ (1984). [WSDL] Web Service Description Language (WSDL) 1.1, E. Christensen, F. Curbera, G. Meredith, and S. Weerawarana. W3C Note 15 March 2001. Available from  HYPERLINK "http://www.w3c.org/TR/wsdl" http://www.w3c.org/TR/wsdl.  GWD-TYPE Marlon Pierce, Indiana University Category: Informational Geoffrey Fox, Indiana University GCE-RG 02-14-03 marpierc@indiana.edu  PAGE 1 Informational Document 02-14-03 marpierc@indiana.edu  PAGE 13 #%9o / 3 V \ T $ y R Y ILUVWnopqλpjhRUmHnHuhRmHnHu2jh :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu$jh :hR0JUmHnHujh {U h {>*h- hZJhfhJ$+h1=hJ$+h {>* h1=5h {)$%9:  L M V JKLUV|q$!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:V  ! U X! U !  & F!"¯¡~¡ssb¯¡ jqhRUmHnHuhRmHnHu2jh :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHuhfmHnHujhRUmHnHu j{hRUmHnHu"#$&'[\]vwxyz{|}~Ųŧ|ӲsYŲŧH j]hRUmHnHu2jh :hR>*B*UmHnHphuhRmHnHuhfmHnHu jghRUmHnHujhRUmHnHuhRmHnHu%hRCJOJPJQJmHnHtHuh :hR0JmHnHu$jh :hR0JUmHnHu2jh :hR>*B*UmHnHphu:;<=?@PQRkӲӲsӲYӲ2jh :hR>*B*UmHnHphu jShRUmHnHuhRmHnHu2jh :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHujhRUmHnHuhfmHnHu"klmnopqrs¯¡~¡ssb¯¡ j?hRUmHnHuhRmHnHu2jh :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHuhfmHnHujhRUmHnHu jIhRUmHnHu !"#$%&ABCDFG_`az{|Ųŧ|ӲsYŲŧH j+hRUmHnHu2jh :hR>*B*UmHnHphuhRmHnHuhfmHnHu j5hRUmHnHujhRUmHnHuhRmHnHu%hRCJOJPJQJmHnHtHuh :hR0JmHnHu$jh :hR0JUmHnHu2jh :hR>*B*UmHnHphu|}~+,-FӲӲsӲYӲ2j h :hR>*B*UmHnHphu j! hRUmHnHuhRmHnHu2jh :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHujhRUmHnHuhfmHnHu"M\ w:;j!k!!##!v:!v:!v:!v: !v:!v:!v:!v:!v:!v:!v:!v:!!v:!v:gdlgd1=gd1=U ! U X! V  ! FGHJKLMNOjklmop¯¡~¡ssb¯¡ j hRUmHnHuhRmHnHu2j h :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHuhfmHnHujhRUmHnHu j hRUmHnHu  %&'(:;<UVWYZŲŧ|ӲsYŧH| j hRUmHnHu2j~ h :hR>*B*UmHnHphuhRmHnHuhfmHnHu j hRUmHnHujhRUmHnHuhRmHnHu%hRCJOJPJQJmHnHtHuh :hR0JmHnHu$jh :hR0JUmHnHu2j h :hR>*B*UmHnHphuZ[\]^yz{|̩̞g̞V jjhRUmHnHu2j h :hR>*B*UmHnHphuhf5\mHnHujhRUmHnHuhRmHnHu2jt h :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHu !"=>?@UVWpqrtuvwxyӲӲsӲYӲ2jh :hR>*B*UmHnHphu j`hRUmHnHuhRmHnHu2jh :hR>*B*UmHnHphuhRmHnHuh :hR0JmHnHu%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHujhRUmHnHuhfmHnHu"/\ %(CV` &,9EGhijno ¯h0hh<}hf=r h6 h1=6hh1=h {jh {U%hRCJOJPJQJmHnHtHu$jh :hR0JUmHnHuhfmHnHujhRUmHnHu jVhRUmHnHu2)8GZ^ |  i!!!f"""""###$$$$&&&&+),)n)o)p)x))-*.*3*5*+ +++,&,335566=6?6M6 h hh hh hh<}h hh*B 5 h h5 h*B h*B h*B hg@h1=jh1=UmHnHuhh]hlhhh1=CJaJ hVdhVdhVdhh1=<#0$$$'' (i(,)o)p)A-U../"0#033:44F5G57!v:!Y!Y!v: !v:!v:![!D ![!v: !v:!v:!v:!Y!Y!v:!v: & F gd1= & Fgd1=h`hgd1= & Fgd1= & Fgd1=gd1=M6m6666667$777_8`8d8l8888F:G:H:T:c:g:r:s:w::::::;;;9;:;F;G;;;<?<M<z<{<|<<<<<=======>> ? ???ABBBCCCDLDMDpDDDDDhet hFh/h4 !h/ h:Xh1= h]h]h]hlh<}h1=h hN77_8`8l8G:H:r:::;;<{<|<== ? ????@6@@!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v: & Fgd1=gd/ & Fgd/ & Fgd1=gd1=gd]gd]gd]gd1=@ACCCDDFFIIIKKNNNO-Q.QRRUUXXZZ!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v: !v:!v:!v:!v:gd/gdYfgd/gd1=DDEEFIIIII#J]JLMgNoNNN/OPOPPQQRSS#S1S8SSSSUUUU[[ \\\^3^_ _+_/_>_H___OaPaaaodvdueeee{h|hhhj.jmnnnnn p pttttttttx h1=6hLhh6g hVh1= ha hYfheth1=hYfTZ[ \]]^D^{^^^_:_>_V_W_OaPabb\eueff g=g>gg!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:![![![!v:!v: & F!gd1=gdC & F$gd1=gdYfgd1=ggggggh(hBhKhzh{hiikkgllUmmn'n(nlomopp![![![![![![![![![![!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:gdL & Fgd1=gd1= & F"gd1=purvrss#t$tttvvsxtxH{I{R|||||t~u~~12܁݁!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!H4!v:!v:!v:!v:gd1=$gd1= & F#gd1=gd1=x yzzzz {G{I{d{||}>}u~v~~~~~~~~~~~ ݁ށBfgHi͍΍ h A+h1=hjhjh1=Uj0)A h1=UVaJhhfmHnHujh1=Uj)A h1=UVaJjh1=Uh1=hLC݁cdLpBCvxԇfg!H4!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:gdR & FgdL & Fgd1=gdCgd1=gd1=$gd1={[݌ތ%&\]pqӏ*R~!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:gd-$ & Fgde<gde<gd1= & Fgd1=΍$[\]q~ڏۏߐߙ5689ݨz h hh hhhR6h h0Jji,h hU hF!kh hjh hUh,(hh hh {PJnHtHj+h1=Uhh1=0Jj*h1=Ujh1=Uh-h {hJ$+hChe< hhe<h1=h-~ސߐȔɔ ߙ89+,!v:!v:!v:!v:!:!:!:!v:!v:!v:!v:!v: !v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:! wgd hgd h & Fgd- & Fgd1=9@Rop|Лқӛԛ()+,3bco#${ĝ129ΞϞݺŶݒŒy hVd0Jj1hVdUjhVdUhVd hh1=hh6 hhhCJ^JaJhj/h1=Uh hhh1=0Jj-h1=Uh1=jh1=U h$h1=h1=mHsHh hmHsH/12Hٟ!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v:!v: DC$Eƀŕif h^h`gd-gdVdgd1=ͼͼ׸hhno0JmHnHu hL0JjhL0JUhLh {*j1h?Lhno5<KH U\^JaJ h- h:Xh1=ٟڟ!v:#0P/ =!"#$%#0P/ =!"#$%@=6 ^ 8> 0Xhx}|{  =HoҔE" (X" `A%?^r\6Ɇ[B~?|fwfgs ㄬwI%aFA5UD,!.ʿHA-nQ-++  4R7PE(o{ pzC4UuA]Ǎ%.94];$wJVP2j⸬!3Yœ@'r̉M_L*(OMkcXKȬÜ1!~#Bl4O1zDe 3WsMNʞ̻j轨P4tCvsՓ?SOdXZ+>!/oA8})Z%^"Rw%+CwK8G13+U5̦ukehBU\rGu;8W(rePxQo_==:w$UÔ/>LJgokSCVFVF| G{rC%6Q?uCEo8 [ݬoB>Iؾ<)}b<}۷qE}Ot>F}}U|#^Yo~S+;zUAu4{\ 9v4>cܿ7"[@\}Nu98 Da0343tbtg\W7,!캥0YLip^7%Ma_4>&Fݜ&3FQ ܈$3rظz`W4J_.!B~&7qA_4c+@Yc4n ?RqP .a-)mz4ZHɩ&@:qdoZqLmxP|,ߓzQ t=–#.>л+".Cim GIB=wD|K?ě⒌_:Sf<0C_%w!yRU}i>h\KVq<}i0IC[~ie:Aq,YxAg&>6AEl[9  џ}c{-k9AJ+̻? qiD= _Šq~~UT)B<|h+g,ɋvKsĨ[I#rʛW'9x80,Gx6;x:A! ?<#6y/)wh<=ω;,9Ѻ|4硐@R+hpωzWBś(B!]O\!?;mL1!nlnm؈ "`^S$aDnW"!/7q; ||瓰}Ǖ|lK i~C|B J'_|c~CzJ }U;GN ߘ  _Y" b m rA:羃 w0B 侃t.ϐwB0ߙw3!n.|c.|d.|娧5E>*_h[`wGK;;g|ǝ|lKnco/PHA+Bso(B!]O\!? |gB܉o< yrhk$j_x[`wnfB;42;G\ND.| ?<_fLO#_(:)i tg;9.ߙT:fƢR13-y8pϷ%7\TjISf,o3e-{fF213(|g19;s|g52|H- ;= ot ϏwJ\I!?3|̌bfo,7~g0~VgVxjU!f7S|g;Nd;4![B P: 'ߡ;~!wh}|I!?D^wYQ9fƶJ13JgH6ViϚWeتgV=pOl33UA;NaOW|'*ٖgƴSH@!O|1t y~Z<Nucf3D3{JTeNf~|B8o7߳`[{Bߐ)$_|Wx~*:)<wNYYnSSSvN_~QvNV1 7ZŔ*,B;S;NxS4߳w*57wr_@}W(?^E7Aw(NB0Y8e[SJ)SJIos;ϫszl(޴ت)SUY8wG |'l+%L_msҺ)GG$SvDůճ(te9>;8vB}2#KEHἇq-&KȰl_*l_*G cn{ /iBoc[\~;\ؾUؾL=d=~ۗɴ}Uؾb?ciϯ!e~Xlsbxdw_L"Y2m_Wz6HTV'N WC w_*l_Jb`{ 3m_% W'=>NQm_*l_-y>it?cyS>ߊ?Z]&MZ3xw]e>sЯ}eV=Ww*fa-ٳ.]x6M:r MmzZ/ыtE#"niC"hRIڈSKz xe;k@F$Qܩ̫d2\MocՔA.G ]v~eUuyTzZt"z, ɲx(P\HK%9F]*I,F'͚5dW; ьgN\lXGٵh(Jw9qOp9(.'J=[0^K/^N}0ruuɗuOSXّ$ VB =VWp\U$:9w n] f٥Kl,).YJBM~=$"UE<)ڨG\(zi@^Hޘ*gVW;9 .X`ޗՍV͛ŒI^l*XORXO`8<OA7G 1G'1]c>,̘n}W,~(`<ࠃ[~fLbc>bBGm(+(*wz Pz;FNBY']c>,̘&?S}3r c4yzGNռdy׼S]ʨKܞ9PKGrÓzцhE:RreeC%XC%bIcO{tnor.!Výz}^g\ͷHs+uȚʦ:\gk;hگhuUo<ڊU[RkUG|LrY.9CrsHlǡA SN1屧C%EPW(+~ ǀm8ވ H[)@x>y(Gi^JSҜ454atY +`i&K3Z,f4/̈́Hqlaw>9)MiJsU4;46hULkYSbڵHqǯZMڭ_r{IX(hEHI%HqVΛbijZ]^ %~^맟պ:4;)}I$KO3($YW:GO{3Vqhy#H#goJ?祬Mk.JXxhDI>Bs.).=x)!Y=*{"wGh >Ə)=EHI2m1屧K`]H9~h=t i=1屧4S HՑF~('pJgJmtF~.P|kZmT=VN1*Rm2^ePX٢m}9K JmN6kg$ya.>#Od\Y5G~W{ >ZRo/7IC|_N%_C|[!ES3D: !­CI^E(7v&J||.}XJ$JRgeէ$I$*έȑwՇ'ߗ$3{ m'W[F\[pYQ{ZRttt6? H/ w5)7..._3뗜_VʕH#Rho^83~X7)v^QguF}/8fޜ<Zѵw>}j,EK83K]. CMA/}t)` ǿ鏁Ò/}eX$C -v멿scH^9"BKu0{ޢ*z6xZ R>{F1\{ܦ%Cm<)Fο 踊eySMjH%:SM=ߦ6ooGoµTgtgOF 1(q $h߮<)J4S)a.Z?͠X3?ޟFM=wm:F=9?4:͑~c819dʎoNQb0x%d ܹƕkf%XAA3Iv}&F ?8(>{ g q}?8Oc{ {N݁=1F}ׅcT;0SR^{ٌp?5ڌc Okfۙ +x_F[7)C1GԛbVo}6qjjT_` %F•a&ORS(|J6,qLyt].87 U1Η紿_c^q}0zw~E27z $U)-L& #XPWp7SkˮivfXރ5@y8]fqM aQGH7຤78: NqPcfl c9x1,Y?=է$◞f#$3FLfbO`_x B/tK=k{&&z 䓍wsĩ+u|p+P /H߂}َ|Y߸3hJGH]pޖO \^9֨gIvP\Y7Xb&  64#7N=s4BpZe躸k;vDR\ GyA36Nc~y Nk o8ƞ߳ g͗zE!͒v/p|we~&ujv̯6N _˴!l3 CpAu(W{xʨ˙v+g{7WjOuXi3z:xp5;n==NӻUqa_ٞvdg[5$|N1sgGG4~Azpplp4Z%h~_~v]<.'KF&pKٞ}].Tw~_~5}#gp34{.^0/{p7}̾9v9΢ۛT7`ÿΛO)Ocmق V-h4gpcmArbk܆Q>Npp>^o~f뛧;~Yw-v.N|nz _c pAsW(߯XocnC2x5{#hO' VwT.( >8Z݇85 ңݛ ֧B8Z { ՝Ù{͏BbG we1i^KT2'k(ew-wgEl6?ӕ}I=+ճ .m3ak3v8+ضf+Զ׳BP= b_n6ʰzYpG ן\!#Ǎ:`Z%~=ǡzVgADn8%qsQgzcB>#{=/ȭO4+QRvwv@s2͞$?|x,x3ӭ5qW;'5z ^j#g;3.Ү빍]ٳ7pMu(uA=kǺ^u,g+~.CZ#mp۴^7k1_;;>f_|i=q|_7_P'q|hups!=ܿ+n,{`nt=¨ z ○ݎc<ߤy9pYglN0?3s{t&?z1i9dv_+? nf~azօs-PJo YC?˨ e~`xsJ\Y"]SyѨKoJՊ\W)}+"7%>wRx.s6A(gy>*fڥgBFnzA|'-A a+]5윧w9Vz(n$ogH̾=iyc>Cu[r' 2tdsg& )u >d rHA(e:7J H`>f_6)( jirJA+glgle|{Xf^)vsڰYN_l)((w^15A>fiZ:LAq U`%V)S1ܮ־DSOkY/ :g5{=xwo욟Rm~jֶv秗3)uA|MuffP4X3 sOkUu kQ9}3(mfW=v-o@Hv |q0na־VPuw c vV oƅ1ƥ=(G4W>~y.\NV޻.vu;̾9M_m|_~vf¹£7oJ+V ۗ,Q{zQ-c7תɗ~j=p81m1Ko^5;1]pٵzaAwt?6 2X/jg<#Td{7XgW WGv,Ht^J~2=GY_ =1|2?ߑ,(] IɂS/oVf'=ڗ. RǍvg1 c/}jM|Vп]鬬[A9r:ǽN w|5 ]n1~a 65>1ԻցV7O q_J-(l\/U c;ipUւ9Nc@ml{=8,)ȕAe!eT2S7HyS>;SP;Z+[ﶦ o ҳ;%F\]8'| S ͧ!HHC.[x\֯=X)/6[oFI=[Mn}{3x(lR(Q|9Yu4ACVd{)Ŀc y ?z&QL۟{ \\sq%Lx2`b;v~ nsS}('VC_%!NBp]Ȯ]ZR[ٌ μcd\g|7A GU-_3gkYE#B-'27}7::W+ͩݧmi#P’At5Lim)Ɛe|δe_G|@vjK[L4'vH8\ךábc;<7ھ߿V\ؾUؾw;SzCeھn!}?ſPCT/% 7ھ<̴ _mal=vS SߢڃIPOGR֘;'6|_8T/6Ǎ#a (8_yjfv+4ү΄.&?.qctleVQ=(V>ammKLxk֮uxa-1^jW hnW}|իװ]^Xƍchע]}+[qnjkj+3hW'`clت~[[ skitVu~[մ1[uamxʺ4> ԡ/HH$-:٪zպJxummnx_j9nv ǵo|Bor_iZF׶lVJSHS:gϾݠ}/m3-qisqcm{.id#6w|]l_v. qiohKY{׾\n]־꿰Ph[R]nxk`W6('50d»M_{iE/OOT읽ʥ{Ty?"܊';1'Q\! 0Tzw~UVpT ^8n8# m nsۦ@#\'G 6OIq Q#8tQ72wr}0܌}VD?~fu;q :q}\j峷~TYI{+wk&ksV}U*&zh}#Csxyч H:JYUz{F\%LYc33,W0a6(ɭZ{;Q5.J"Wԑ\k^=}\1ƒ@3K;BO_W0n)`7dFonj޹7z3`[FU] \R^1[TJvRW`~.Go%G3oG}o ip4舎,hT$ }x0u:zeG;Cq_k˻^aYvUv*ocV>$,w([{巕 ` &y48&mPH+*/J`^)+ u1}8UX2^S~< rxxx )Mv%EJiWZhZqw#-PnEGJiUL֪DݨɞW=7k=ݵ OoE+UޥUޫ>]5՚x7kͼ۵=Z+aWմDKz:znu&'nXsΙx^YR{I%G(o,ٞu'%ZX= Zɳh-rh=ЊCkJT7n*D{0;2C+(V;,ѪV#ɚdU.YMV'7Wwא7Wwt@-iŽ2yZyȷ |Nfp_9AxFYo`EF)^;8Jy' % %%[uT;M*rכ=9rl`ϝLKmU x ²G`a@EX0,V`ٷ`Q@eX,VM$X#Xv>( ˞vX׊흷%Gz"ecy?%^9 FN|'AsT|QQ5 1rx:Zz;Z{0^Wz_ͤI:BQT:$ĚS-(_xw|'xw e4Ѩ+FDF15hjo[jS#jC$jDvкFu*xio6?>.Y%~}|yxn"G/~W"g(? e[yJP/oQcVݘM3 _q+Zg}.pt?e(teLW uL~gϳU٬}yCY𼦽YyEÛf·˕T(uVM<$@#d-S y:j|WWQKQ2ttg4s43P#)*=9/.|#>.>(>yQ\Y,W\#_ĉk=u環caga'd<ǁ7=FT Os$s:cیGYN5J٧S8X嬙@cKHV(.<_h檥UV2T p'%.0J;t~w~uݩwݥLw70yfjfY) 9 ]㴿!;uv5B5\(a(52l͡egrd![;?q8+W>BA{~nky^VV}^_f[S!X^(oUfʛF??S°`Ϩ|o]MăJ=R]Q)#SoIweU8$U+J4*QOOSe}2@?tRZ(uJR\?DꇕRTߣTw*m}A]eE9oV*lmu[=岰]))Tj{o }j7~&jׯjGi5uIm麬6vuVy9Gz$)uf k8_ -AŸn_ 9K }נ(oʥûokRN3m̙S &T#~$*J&Ą3bHL\+כj o:!ׄ=:_F6 \QJm^ZrF~T}zTϱiS6?5Ol9'p"}MA.\?r@ ȝ 'PrKۣs?(Μj@5Q6%QT21 &ĈCb:sZ /%a=jQaׄ=:H@ n ՅRdζ{jPmWE!K9 [ngKٽ'|,G }C޸ 9 o䎀(g2ʻROΜj@5Q͖%QT21 &ĈCb33U=nPϲm\|z %dsWWdϨQ~R~p+D:|+9{[nE]8k-q] \r@^B~W݊r|{tggN5PfSD*bD̈!1Uwcb?[{В?皰G編;>F!mAu3{T}+>E^䟁릳[i;8oHo|@N}k- =\*™S &T#FIT"L 1"fĐie:5P]5a·/¢+ +`gID}=eOw# c?郑?u=P<'$ķEzskѸƐrB~\*̩TlQH%bB1$M9z?I]s |@j6ׄ=:|%{*u*[ ]mR"ΈOAzA.Raap> '\w.rA3 MDT=:3ΙS &T#كFIT"L 1"fĐvUOQGc^RGO5aשa>WGC3:U "tw:<#>-/l]c?w (3 ?,ByQ.oLo̩TlQH%bB1$nxb->~P۳$ {ODV: j{gz3UNp{($U}x#E=wBnOP`vVRUZO+k`%p#o[@} 6 'Yw`5=Su@`Ài6x("K@/v#0U>Öo򣬍}h4Eu:9X}y.5,CASi*Ub)B}:|'":&rQ@uȧ9|(S)1IGSoG9s-)/iRdl6{U^^ccR'[(fɕ r9ɯ;ȏ8r\ur Md^hj0ռU✥ G3*ȟe)<f["wԲuMnÅڃ+!vxN}ExܹIX'<&,tq?ܠ?蜦/p;}y3:Gevȸ2f9f:qpMwӦ;kӜkSOjs;;#;3UΉY=x7!,)_rV+r{JѪi=,Z@y&s8%x TNxsƕMaE"b)⽬8'clp?',`X0OJ~{J~զ#`KchΥaΙp#P'/g7iO:O:kO%#0z_CJ9ٛ}"Y I"$nUf)@3"  kc3jJk+[Ao:'Ҝh/ijǝ~s>6iGہ/?t@q @;wݗ tMZ@@C{`@`nh^cZQsۧpmhg젖10FK֐}EZ#p d"V^*:p ~$vvȐ s3k`Ώ ُX0B/q=)n'+{ @VUjcX-q<!8Ʊ1&!5f.VƲ徑lo{׋=^GWFOVыd`3ưY= ' o/X|{u!5f.Ƴߵm$N 8pH`PKư`T \ ?oORCY[anz yJHǴǴ4`tÀ`X?@?& Hϓ 07covZSjX1׋EK < ||/:uF>^A@W۫PV^t~S` `d@/`0^&6KfT`hdd]g 07cov| $?e#}bs&`+p,8f儁00cTDiuxX|{uĐ s3k`[Vu`YW j @?.a`%؊`=c`# q@k犭 07cov fű85:6l tnn&>3Y w Lv`p C<ɷWm 07coviH| 엀`?_썰{,_v{CS`?vgmӆPV^tėj2fZ1smZ)`80 wy %aT6RX  꼉!5f./G~`u/>,V-HXۀ "`:_hH em{5K $ ? *h*ѬvF aF;T@i 3 8eORCY[anz lE ɬ}F{"Jf0 ) `X?@?+ |C 07cov|$> s+&C`pG8XS8p ^^VخPV^t?_`x j &z4kKԓXc6@]my!5f.^z2Yo:-Pz4݁A(`2p/K^+p3c}T`40|{uې s3k`߀ `W2z _ǁH? _/G6`:Ð s3k`΋,BHfLh2"X%4`%*@} h$ Ѭ;vzn@ hTJ۫"PV^t~$`_hңY?0LfgHׂވ+=]h6u~!5f.O~o708cX؎y$VTpN]NuӐ s3k`kb2,g,RfDL%tz>o`= @+  |{u^Ð s3k`B~a4,^^ `X۲`}>^sm\Cj(k+[]:o!gͥ45R/=Y  c;>YYv/L!8Z#۫PV^t4-Gi0F؋=,^>v{_F#w >^"۫ 07cov,$A1c~,<2{@y܋Yy8k.a-1P(x rg 07cov鼎BJFl*I-XI!hVGjۀ:=)ŠEkLBkŌ :@>@yCj(k+[]:s^wt0ˀ` >`Xoϐ s3k`#~`p,(.G2@E9U۲r%*@i Ȁ4$p 8jΏRCY[anz y+-U`%#ySr(Ձ@k tGz `hXf h4oRCY[anz $HwhFD^!I` ou `0 L] 07cov|$~ S>}wy dsN)a\-f!,p8ٮ}PV^tv*9S:Ks#Β@U9NΙt9H7Kgq}g h*%H۫s!5f.`+;{H;0X<,C `Xu`׿<< LnFخPV^t`_-`L_E_2ZO9]Y"픀 /p |]; 07co*p^?D@l 4/|Mm=Ԑ s3k`KVro:3P(I: 07coKKe7k֊6DAh`2p/ %` p2`p0 $1Ԑ s3k`W+ԊZQ=ldU8\UԜ)#Y=*Ǭʬ P`@:dN$^nH em{5KPB["kauR vN` g\4`,0tvΐ s3k`οRӜi'qΏ{Tgˀ}t^혳vYEKs<\ɷWs'ɲ$ U X@JIEPD)ҥ# EP ҫtaA *,RU g&y ٿyy>L9e2fѩcI>vxyRڼ n4ϊfkEHv!*Amh !wH݇H=@WhwCn2fۼ]5:u,ɝn6ht"k"cXbuFk8 gX~5V $F.dǰ6hWNKr=.fUH6\L\B4bBp#TЀMJ17 ǷT\~]:Nc7W?ja-!x0s"V\liVQ|ca0<]AՏo?jWNKrīͷS]o&ҧj5 | vP)CE7Ta{|]5:u,ɝn6CeJمPZ@kwNBn &PA)( ~|zjtX; ^m>Hߟ=I#0 &lx Ra9בzz;ó)0ื`jtX; ^m9?#>ҿGͤE!~paL p,.2BԺ'0USǒ)}j8Sp1yK,sv!$, U4tc{/R' RPCPUSǒ)}jT@qH5a:̇`lwپ{I)?``LI01m>Ѯ:Nc7WQ!K$2AaMZY+ oՊ۴&(~p/< X]5:u,ɝn6ԊZAYIF $}~0#I=H,Ǐ!< Ac ~|ۼ]5:u,ɝnB9EI?TSH82;a/|I}GI~ a,y07m>׮:Nc7W_%ҟ#I! \yKʮYU@**xrp &uqovԱ$wJAܾe]ݬ uVt2E+hg] sY޴4Xn+9> ^Y0C_x T8ˮ:Nc7WNҿKwHI{k8?/Z訐3"9t^.0s2+aW|]5:u,ɝn6/ي.""_(SxCE!Q4!JC wCkַGHݍԏ BK BY(~|ۼ]5:u,ɝn6MQNH6`&,aVR$;a#,`L0:m>ڮ:Nc7W!EOH?&$̈́sppH yp(>#JϋŒ8^0w~op]5:u,ɝn6Y/gmLQ2|XJ$-t'Xz$ǐzǏ'<@~|ۼ]5:u,ɝn6MI?I4ɟ% $]iޅX u;?(>tX*츷ljtX; ^m~H a'$By(ܨB%5NW( !/b]5:u,ɝn6o[jY@whE} i; `8c0ԳH=/s $#tTy+jtX; ^mHJ䯑,!WYR_ /ϓaI?H?#I6/ka+a?!~R})<396bWNKr #!F e "*@p(7WMBx%ʄw Sg8''ѩcI>v-v .ꆷᵢ|xF$m􅡬 H=ϓzO$S-4FoUSǒ)}jET\HWH"駐|4 `A?4r|&I^xk ^EqoEvԱ$wJAܢI?HH~dTh"/PQKՠJܥmKvPܯDVܲF%S .i[D+mh-=IB?x &4ςy^H7IǿJY0t6hWNKrī7Qq#ב~_'R'i:| !βNjԚkpv?Iz2+};`3l{oF%S OZ+wB[xGwKDW+MRyg(0d}VwMbClw`,Y,Ƿ͟F%S ?"No$y:kȄwиu0wRׁLjӸvԱ$wJAF| yRM~266_gWNKrīr[]SI %IV5Xԅ{3 I=H='S :@S*6/kWNKrī[b˪.!<^] a9VW.ӕ_**pvX a^P-ѩcI>vx0uw+Y2/aqE;$\C" 2čPA+}`L2.7`X:#ֹ΋w"x &A *_|NlW}Z<{-1'%."dD̓f;Y<.+'eET59AYA a1&|ZvFvuV> G^u$BO9 `~}̢񓧶4F,4F+,5eq1H7FGqcxX"F)18+4rQDk.?2˯.1T5dߵղ7, <߸X+RTr,oJ-_٭Hl]ZuZ?T5+.XO٭gv:NSmW:(Yf?UEdkgoX,OɕTͳ8iPs%]_}=w}LĹ"]sv/Q۫Ẅ=ZsU25%ȧ|'#jmwiX28ʱM3ϋ??OogD>=UTN;ߵvgc?SxН,W5=ڰx+j|T#nÏPUk<>}r'?2Onc`!l3ȀOyO2qeϝɿx')}&'X1˯ےX5kW@~ ϝj^j^3K^CTkw9/6n9YFp9zK>m}?{Z$_4Ykd5CE(w{݌\+;x{:{x{yϺ^VzYѾf$rTU${)mo'v}q_>߃9IO䳞{{{$YO^w"i|GhkrN9u:4_'F*jg1w\qvS:MMCݧ(2l 㥳,՘jmb (KF:>'Sz:sy+c;~G9sE8vX_}0ľ7d-7]CwDdh|HTo=oewGhM먺/z8nOa_kXME_;4hc t0X~{B-`{y w<  ijMKIq`"|jnhn { .A~W3< z@:^7 =U=e=%<=~W)|J~O\yzV$cO4_|?E|zwP}߽w__䝧{雽Oxk諼zPnA{cEk:P[ eޣeQxRr7 *@Lw c\ml~cfzW*}̱ff\u̢)ϼomf@hIdit`y[`Y1ԬXoV 0w: fi6xFV@IYu09B s+|vG%s~:s1\ pMx q8ynH: הPk Vk_cL55ScPE5&TcTU5fUcXe5Vc\u5Ws@5'Psw4v]`Y(0,~ozx>Ӑl Tnu}\*h NCp8.I+u]X]y5yyk;^@ `>ȉ4SDm{L(f< `\ʘx1.2.f2&ŸXǘ _2.2&qq11 2.NŸ؈e|Kյ{[\/K=;n/?яՏӿW TzsK&O@IO%^_ {j 3uyQo=*ʦ2*rSU9+w_">:z|P/=#?hAjrPJ_ shrmK)M͖15Wڷ |?1c|?g{r3SzO?MշIǷAyg+ b}w;A}^k]]_{_YV呬insiM3CޙyhVgGUf͟jnmcy]6װ_Az[>扥=U!vG֎y^T=Z2w宫^3~EBhuS>>̧C|݃|'uάrpݛ}r}i ǔT~5_vVL+0㥸k>c?{gaH_5kzwǖ %>ۧ_NR悢$󡠝KVUgΩx;ڧ5onu7:k[-5JV|*<źzFl:NLNþNuⲻ߯?/W[kurzav%^X{/fku{ k;˜>S~|r=2u,7P%H|bEj_JzܼX5GR7d4%ށ1;Լ>*Ӽw^9< / 7<4T3bg~N$Da\ `>kd߷}*mJY|&'tr3n;Mݻ݌Y1c}x?/5e0&s7op2 #Ͽ`l~ƶCnN3osIޜyǯQb^{>l}O~ne@mtb,?[_J_A疪Oa{Qo^bSQzoo}A}糉/<>|Gsjn[]R#B^) sGfg9s@]6.y+Ar2`7yg_9oO32ޢLuo)~o>oto6&zoQm%6zֶzh;]{ov4Μ>C SP7Mhtظ',(Q77FRҟF7z_󲿇ܧ\T/d"?:/Re.~*Yp^uD|7dle]嫼jTNWVQ^oQ1iQ5iQk$eybeEm7.xK/迚=_IcE3v_VKz0'O蠯ϋ'DMi׿)C}f(I{̄O`,ΓϙxΆfS)g-]cx_ jxmMUdnm*sbZPs9N7 YOn4ɷ?lx|W2WnyWΗJs|I,0^י#{SR=O+8MVkYP6mS5G6u -]U, \_c1TbvCmour=;yAIsv7Xޚ=Kmx<+曙by!*Z3COj!q'ԃ&Q:#΋%B]nB?88 C:lTxC{˩nNmKߛk_gO۟ʗfSyl̽L=5v,/8 !*/S UU0VS7~po;APs}cvrώ+۟oZ_yD-i=ܫ_hmXF ]meQWGyK+K@W#-(U.t ھNαx;g?zBD_nrCζ:笶%L!)FBmePGY.]V [hpzHU?uour=;m1}}+O1$%jevHyԼN ھNαx;g?z#kTGy܈O$<`5lf{:8~y0zPjj97nvhXܳy/kް!+:ҼZZAl{Ѽ{? qxZA#zU?uour=;l/"z.Y"ze[2~o:H}%i|p|&d^+ s]97}s,NOmf8!3V#6=G];VEF,51A7VUއԑ#i&7t UAϩy}cvrώ"JX4nS`6,ens|k>-^0E_'b^Gm_'XܳyBD_&) 9p H yr:'m(o5qY ,j^thߠ{v9gs#!ɺz:jՃBO}}i? FÓ:@Kh~Nhߠ{v9Fkdyyx{2>3q{ކ>5ۿ7ߓLȀ!x^ ܼ ھNαx;g?U}qD_I+xx'~wp#pUY7\G67Mx}X3uour=;oK#2 7f./:AO Oó0/2 }_ '3tU?uour=;Kl},+^xuܖFx>C ~ g[a U᜛ѾA9o''r^7Du.LIՕ!-I+'A ( U4˻^l5pjB9 TѾA9o''r^oߍ.x?U'wy0^K]j_ `6L$<i97}s,NO~v/'nތ*|6 >Cp`*]uPq1G@_u !:7h:9Dl}}#K⮺Lq\\6 xb{|Ƿ7}9qPsj^Gm_'Xܳyv2xû^6{>Qpwݽ?OC}zU?uour=;Gl}Ii$#de[,4Xퟻ_ 8m5YԼ ھNαx;g?~&ϑgrep;XBo#@(QVֻjz/Y]++-P?{༎ ھNαx;g?+뛈n!܍ՕAwu]eyY]k\9Y6БBwUkn5{ m) ,95}s,NOvόdxǻ?q4a%l`6؉~^ [a sa*L ھNαx;g?:v?ߒއ}8[/d2\^Uk˛f,!BԻ(|:7h:9D/߇>߅AY]Ts~_ YJA f{;w.;|]kWP>A#AI(~Nhߠ{v9"zY'~ a  !} ݂VBx&h 1}s,NO>fO {ލV|v)pI)z.W' Ev_ J RdBOsp^Gm_'Xܳy};S(Bϊ+S:3D~njP}H4iqh-T[! TѾA9o''r^ݏFuwtQ;3!8F$x5xT|Ờ߆W#<1}s,NO>jt{^q!~_XBi^p —ރѾA9o''r^Xf ]+]\qmY\p\i,Sş ܩ"/[Tu\6rJ XVsj^Gm_'Xܳya{;;yZ# 0l<|*υ0B/ @ϩy}cvrώ"^Cx;Im l=, {/whߠ{v9{? 񳏀W2!ub.LBp#Tme+lcv^AowC 7A9R}s,NO`dynxwĻ5>(/|X]j|rrx 74s\ѾA9o''r^?yi4Dnԗ; q5ta a(|;I?Ao C3urGm_'XܳyOfħ8+32&i q9.HyT4ψy^0/\I8 _S:7h:9D޶.CqyV53E^(Mf)X÷}+AԉѾA9o''r^o;}%6bE,5֊EHTpΰjI]<%. Ȁa'lU?uour=;׽l} Lkf-!H1SE!*BMh\%ژD{sxP*MPU?uour=;{IfZOXdGlkesK-K' /}"[dUT.0X O@WPsj^Gm_'Xܳy=v.ޛ^w*>q- +M|ݡRJo8ߩ#|av+ã}s,NO伞fώY8TL)!?PZ@kwNvw ԄrP S:7h:9DٶLAxǻ'ޏnO( 5Hl_&|ờ7Jx`p(uour=;m#s|>{3>p28WȤp. "<..!Dp<uour=;׋lԈe-ႲDOn!*P =Ah :TU?uour=;שH x)30[ 6lߍ^|?svZx tsGm_'Xܳyv_r#x^|-_d2AaMZ [6 \ 5q8:7h:9DuM;bVPVnw@#:c}$c?0.95}s,NOlG\{=)͆ 6N k|{Ln`̃Zhߠ{v9m"2Y.}xn$G^f(+Epw:.C@I_rhߠ{v9?{%ͺ :[gE+Sv!}`8L0 MHΈy5a8@ϩy}cvrώ"$}zD_"N8 hBΈyK yȄ`]V:7h:9DK}]CDY/)"o( ԅ5#vq|n *RԼ;;Kؙcvrώ"lMQx{ޏ8NކU_[݉k0 &Xʹy}cvrώ"+}}, O~qL8W@g! 3T)z༎ ھNαx;g?u=-kz=|V%Çŭ8Uűv`}H|;G“{U?uour=;iʈMdY^q:x>`> | _@:Txs`v8uour=;+mw""Y.?}8ZEF퐸*iGE5패wj܋hEY(yAԽ sp^Gm_'Xܳyv׭R ΊZC;,vpgan`$ОS:7h:9D뭶Έ^Nexp~ 4C:샯;^|󸝀C1wXk97}s,NOԼN'W9^=KL3so%b&YL ;xTq=jPJMoMCtv54p+8 l:̅0=C{˩nNmKuIX]W+Cb9MP1&+ |ݡ!40V; LB6DZp6Tt0 ga6Z=+j =B;YSy>fs0%s}cvrώ">IxޟᜁS&OT Dq9J o;D.Q&S!/X|O{3q<{]TxwC"}s,NO^eYL"ާp>ӟ8 -UbP*jiVMC4vzNQJC!j[98}s,NO~v.i[D+mh-Ǯ 0` }߷8UgD>U?uour=;l]},^2_y)NqL dY_5\;۵KyȄͰI˹y}cvrώ"x}JD_?it"[kCJ}T1&Lo> VY;&!r; ,xF`Psj^Gm_'Xܳy=vן?{'qNi/_C& {)ǼyYׁLjS+uour=;׻lO":/נ%cTU2!ȠyPl~'˚ehʢ4c069(k}`=hS5,ڄOȮ'`r(PHI6rCدOyҿmFt d-ŏ7鱬[6R˽5`FYIrـMYRԻV_^ktV%v7T'_sn&m1Q)wy@}%b|-vyBj^X%%,Yz]3nq3mgVᒥ+?do/L݅u<ч}8}"d]wE:}ת{_6ﶏ.w~J@Ν1ﲗZR]sw7M2ZB;6w?_]?bi߿MynIZgŵ߶kV.mE_eQ|.m_ҵ?a9W%>%CK6OKg[ -[m9|~j]ғXG57TcfͫRe]7Tֶn~IWmqKzN /PIm^ڦjkr^^WmW?O>4clw] n5k޵7qzX6@[-O"OI )+(1/[Pc0 iI3tB&m5I7SJ tp0Z#0CݳO:K]~{ws˷쎡16$pXK>b}t+R rM1l7 N:}ggcW}խ.6wcxc No[G6o4[ߗ$f#_\X2?`7 3h DL+דm0O8> )n9nJ8fyX%~'O "8΁ĔRy9{j[CT{j'O]1?%PMD<ڱ>H`rDkQ{1#ӷ[3]X큂-KЋù# 0>Ѐf& ܠtZx8׸ r\?9/d0yɓMܟK+7Lq_~b>Tm2$78JE][؍k4v4փ؏v5Ƶ<)Gr9ikAhUjxh{5퇚Wl޲9J p`Ayܠl'A@x_7P R7p#4nqun ЖL 2S q u_*˧ľjO_Ň~vW^uEǼi.D9Qc~XXT$77X76]^\w6j/|e@~v?7X3Y"1AeܠbTXqr7p`a$7csq/nȸwMm7иA87q"ڒzdp!u_mS ?sx,)z\~(6{v9gb.}s9Ur=&JmMOGb?rl"W mUJqNI='5f;'bxHd&>׷N|le=?}Eʋ7nQ.<^:g=C}9|Y{j~hJFۥV&nį &]d\~?ٓ~|A >!=13{ZG)lȕVdOe|I}l'Qc{"qo_h1 *9✟Try8ERMz޶Yf4?QnюIGk|?b))}#t|މyY9ȾXn_*vێ9ݶzDK%?|w06zԙMp_3jx?`1w/99&H6ڜ_n/ m ej`SܠN^ ×gilG5~j.@v'.&QS.S;r ^$7ޚܡܱUk2[V*Βǝ%Ll.qbpn!Zn0A7o7@K 4n7Lm7иA87q\S$7@\r5-f&mM'4ÎسpBcJ1 |#ӰfMty;B{ڨ_?PճrgwA2[ORx<.]7]c".lPcYe,(L1ň5uS~`Q8&-,GH*_/eQ4h(ɢiW)͢i#>[uLmlȢ#==K-ܪ>UhL%u{ 4!6,/1p{p=w{Xck8"L#_iv]hA5>Mǰ|_:BH2qG'}1pbK8ɏ KV {mX8vEE:aOR=A% *W^{ibrtNcV0AC >{hďEm/w$Og bt1<19.0.R1_$ВMMPFX:=|kݘ? .{9.7G⢗BcIOY'x?y6ߏu&d|fg+ ܆;Fc2VZӖ>olQ~݄<}S <n[M{DyK  _Toc32981059{DyK  _Toc32981059{DyK  _Toc32981060{DyK  _Toc32981060{DyK  _Toc32981061{DyK  _Toc32981061{DyK  _Toc32981062{DyK  _Toc32981062{DyK  _Toc32981063{DyK  _Toc32981063{DyK  _Toc32981064{DyK  _Toc32981064{DyK  _Toc32981065{DyK  _Toc32981065{DyK  _Toc32981066{DyK  _Toc32981066{DyK  _Toc32981067{DyK  _Toc32981067{DyK  _Toc32981068{DyK  _Toc32981068{DyK  _Toc32981069{DyK  _Toc32981069{DyK  _Toc32981070{DyK  _Toc32981070{DyK  _Toc32981071{DyK  _Toc32981071{DyK  _Toc32981072{DyK  _Toc32981072{DyK  _Toc32981073{DyK  _Toc32981074{DyK  _Toc32981074{DyK  _Toc32981075{DyK  _Toc32981075{DyK  _Toc32981076{DyK  _Toc329810764 Dd +0  # A" {j-V-Zϵz @= {j-V-Zϵz< EHG4R x[}lS~~1;Fa$@DF(;4:h C X&Ʋ+12:6EF#U  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~LRoot Entry FЮSData 3WordDocumentObjectPool RЮS_1093265552dO) R ROle EPRINT =CompObj{  !"#%&'()*+-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[] dO)"Microsoft PowerPoint PresentationMSPresentationPowerPoint.Show.89q _#  Oh+'0 X`p|  Slide 1 id idl 1-% EMF ='F, EMF+@XXF\PEMF+"@ @ $@ !@ 0@?@ F(GDIC FXLEMF+*@$?? @$;E E!b $$>>'% % Ld ]PF!??% % $$AA" FEMF+@ FGDICF(GDICSFGDICF(GDICFGDICF(GDIC{b= FXLEMF+*@$?? @$BB+E"D!b $$>>% % Ld}d: UP!??% % $$AAFEMF+@<0VH@A@<0BBB;D3E;D3EB@: $$>>_888 % % V,hOO lYlY% % $$AA( : " FEMF+@ FGDICF(GDICCZFPDEMF+*@$?? @ERw!b $$==% % LdEWH 5p!??% % $$AAF|EMF+@<0VH@A@, @EEXX@: $$==_888 2% % V,0lHHx%hIx%hI% % $$AA( : " FEMF+@ FGDICRp@Arial00 8b0H8  0 0 0d8Q]08h|p䈗Čt60䈗t8(dv%    Tu@ \@LlShell Command 1o2**5*>?*)*) % ( F(GDIC ZFPDEMF+*@$?? @Rw!b $$>>% % Ld W5 !??% % $$AAF|EMF+@<0VH@A@, @X X @: $$>>_888 % % V,# l55tPtP% % $$AA( : " FEMF+@ FGDICRp@Arial00 8b0H8  0 0 0d8Q]08h|p䈗Čt60䈗t8(dv%    T<u @ \@<LlShell Command 2o2**5*>?*)*) % ( F(GDICHFPDEMF+*@$?? @LX!b $$==% % LdEYD%!??% % $$AAF|EMF+@<0VH@A@, @FF@: $$==_888 2% % V,|ZY~XT~XTY% % $$AA( : " FEMF+@ FGDICF(GDIC> FPDEMF+*@$?? @@LX!b $$>>% % Ld@ 1,`"!??% % $$AAF|EMF+@<0VH@A@ , @@@  @ : $$>>_888 % % V,+| 1,1D?\TD?\T,% % $$AA( : " FEMF+@ FGDICF(GDIC*FPDEMF+*@$?? @,!b $$==% % Ld,H_<!??% % $$AAF|EMF+@ <0VH@A@ , @,,@  : $$==_888 2% % V,H_yOyOH_% % $$AA( : " FEMF+@ FGDICRp@Arial00 8b0H8  0 0 0d8Q]08h|p䈗Čt60䈗t8(dv%    T@ \@LxService Implementation2*%&*?**>**))) % ( F(GDIC\ FPDEMF+*@$?? @!b $$>>% % LdY T4/xH !??% % $$AAF|EMF+@ <0VH@A@ , @Z Z @  : $$>>_888 % % V,vn T4/T4**))) % ( F(GDIC+ FGDICRp@Arial00 8b0H8  0 0 0d8Q]08h|p䈗Čt60䈗t8(dv%    TJ@ \@JLlWSDL Interface 1I16****%*) % ( F(GDIC FGDICRp@Arial00 8b0H8  0 0 0d8Q]08h|p䈗Čt60䈗t8(dv%    T@ \@LlWSDL Interface 2I16****%*) % ( F(GDICVFEMF+*@$??@^H@AXVU@ A?`@$@X@( !b $$==_888% '%  ;.x%6.WX4.W.W.W.W.W.W6.x%X4.k%._%._%._%.k%.x%=/xWY$.Y.xW=<?T % % $$AA( " FEMF+@ FGDICF(GDICVVvFEMF+*@$??@^H@AXVU@ A?`@$@fXf@!b $$>>_888% %  ;9C69C+X49C+3C+,C+&C+ C+ C+6 CX4 C&C,C3C9C9C=C+Y$,C,B+=<?WTt % % $$AA( " FEMF+@ FGDICF(GDICFEMF+*@$??@^H@AXVU@ A?`@$@@!b $$==_888% %  ;hIo6{joX4joj{jjj{j6hIX4[IOIOIOI{[IohIo=8jY$k8jP=<? % % $$AA( " FEMF+@ FGDICF(GDIC}FGDICRp@Arial00  8b0H8   0 0 0d  8Q]08 h|p䈗Čt60䈗t8(dv%    T(]z@ \@k L`Local Pipe**&)2*) % ( F(GDIC)UIFEMF+*@$??@^H@AXVU@ A?`@$@99X@!b $$==_888% %  ;o3Y6o3&X4o3&{3&3&3&3&3&63YX43Y3!Y3!Y{3!Yo3Yo3Y=2'Y$3x%P4'=<?*VG % % $$AA( " FEMF+@ FGDICF(GDICUFEMF+*@$??@^H@AXVU@ A?`@$@X@!b $$>>_888% %  ;D,6DcX4D\DWDWDWD\Dc6D,X4D,D,D,D,D,D,=XDY$D E=<?V % % $$AA( " FEMF+@ FGDICF4(EMF+*@$??!b Ld  )??" FEMF+@ ObjInfo PicturesCurrent User #SummaryInformation(2idMicrosoft PowerPointP@@~"DY@Y,՜.+,0     YOn-screen ShowIndiana Universityl$A ArialDefault DesignSlide 1PowerPoint Document( $DocumentSummaryInformation8 _1093265712dO) R ROle      <; !"#$%&'()*+,-./0123456789:]K>?@ABCDEFGHIJ^MNOPQRSTUVWXYZ[\_`abcdghijklmnopqrstuvwxyz{|}~( / 0LDArial(8 08z[ 00@ .  @n?" dd@  @@`` ( . 0AA@3ʚ;ʚ;g4LdLdPz[ 0jppp@ <4dddd| 0h( 80___PPT10 8  ` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@,|?" dd@   " @ ` n?" dd@   @@``PR    @ ` ` p>> $(    6l  `}  T Click to edit Master title style! !  0o  `  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  0u ^ `  X*  0z ^   Z*  0T ^ `  Z*H  0޽h ? 3380___PPT10.Y0n Default DesignV   V(    08 :   6Lp ?Shell Command 1  6 P ?Shell Command 2  0x  0 :    0× @0 :    0Ɨp @  FService Implementation   6ėp  FService Implementation   <ϗ @$  $WSDL Interface 1  <җ t  $WSDL Interface 2RB  s *D RB  s *D   RB  s *D0 0  <֗` t   Local PipeRB  s *D00 RB  s *D H  0޽h ? 3380___PPT10.Y0n  Z R @  (     0ܗ` :   6'p ?Shell Command 1  6 P ?Shell Command 2  0@  0 :   0D @0 :   0p @  FService Implementation  6p  FService Implementation  <, @$  $WSDL Interface 1  < t  $WSDL Interface 2RB  s *D RB  s *D   RB  s *Dp p  < ` t g  Local PipeRB  s *D00 RB  s *D RB  s *D   <@    Remote PipeXB  0Do   <h  <w 1File Transfer Service BindingRB  s *DP  RB  s *D RB  s *D@ @   <  Shell EngineH  0޽h ? 3380___PPT10.Y0nr@ ? #dSlide 2  Fonts UsedDesign Template Slide Titles dO)"Microsoft PowerPoint PresentationMSPresentationPowerPoint.Show.89q _s  Oh+'0 XEPRINTUCompObj{ObjInfoPicturesl 1-% EMFUR'F, EMF+@XXF\PEMF+"@ @ $@ !@ 0@?@ F(GDIC FXLEMF+*@$?? @$;E E!b $$>>'% % Ld ]PF!??% % $$AA" FEMF+@ FGDICF(GDICSFGDICF(GDICFGDICF(GDICbb$ FXLEMF+*@$?? @$BB+E"D!b $$>>% % Lddd! UP!??% % $$AAFEMF+@<0VH@A@<0BBB;D 2E;D 2EB@: $$>>_888 % % V,OO6 l Yl Y% % $$AA( : " FEMF+@ FGDICF(GDICCZFPDEMF+*@$?? @ERw!b $$==% % LdEWH 5p!??% % $$AAF|EMF+@<0VH@A@, @EEXX@: $$==_888 2% % V,0lHHx%hIx%hI% % $$AA( : " FEMF+@ FGDICRp@Arial00 Ċ8lb08 Ċ 0 0 0 Q]0h|plt60`t`(dv%    Tu@ \@LlShell Command 12**5*>?*)*) % ( F(GDIC ZFPDEMF+*@$?? @Rw!b $$>>% % Ld W5 !??% % $$AAF|EMF+@<0VH@A@, @X X @: $$>>_888 % % V,# l55tPtP% % $$AA( : " FEMF+@ FGDICRp@Arial00 Ċ8lb08 Ċ 0 0 0 Q]0h|plt60`t`(dv%    T<u @ \@<LlShell Command 22**5*>?*)*) % ( F(GDICHFPDEMF+*@$?? @LX!b $$==% % LdEYD%!??% % $$AAF|EMF+@<0VH@A@, @FF@: $$==_888 2% % V,|ZY~XT~XTY% % $$AA( : " FEMF+@ FGDICF(GDIC> FPDEMF+*@$?? @@LX!b $$>>% % Ld@ 1,`"!??% % $$AAF|EMF+@<0VH@A@ , @@@  @ : $$>>_888 % % V,+| 1,1D?\TD?\T,% % $$AA( : " FEMF+@ FGDICF(GDIC*FPDEMF+*@$?? @,!b $$==% % Ld,H_<!??% % $$AAF|EMF+@ <0VH@A@ , @,,@  : $$==_888 2% % V,H_yOyOH_% % $$AA( : " FEMF+@ FGDICRp@Arial00 Ċ8lb08 Ċ 0 0 0 Q]0h|plt60`t`(dv%    T@ \@LxService Implementation2*%&*?**>**))) % ( F(GDIC\ FPDEMF+*@$?? @!b $$>>% % LdY T4/xH !??% % $$AAF|EMF+@ <0VH@A@ , @Z Z @  : $$>>_888 % % V,vn T4/T4**))) % ( F(GDIC+ FGDICRp@Arial00 Ċ8lb08 Ċ 0 0 0 Q]0h|plt60`t`(dv%    TJ@ \@JLlWSDL Interface 1I16****%*) % ( F(GDIC FGDICRp@Arial00 Ċ8lb08 Ċ 0 0 0 Q]0h|plt60`t`(dv%    T@ \@LlWSDL Interface 2I16****%*) % ( F(GDICVFEMF+*@$??@^H@AXVU@ A?`@$@X@( !b $$==_888% '%  ;.x%6.WX4.W.W.W.W.W.W6.x%X4.k%._%._%._%.k%.x%=/xWY$.Y.xW=<?T % % $$AA( " FEMF+@ FGDICF(GDICVVvFEMF+*@$??@^H@AXVU@ A?`@$@fXf@!b $$>>_888% %  ;9C69C+X49C+3C+,C+&C+ C+ C+6 CX4 C&C,C3C9C9C=C+Y$,C,B+=<?WTt % % $$AA( " FEMF+@ FGDICF(GDIC5UFEMF+*@$??@^H@AXVU@ A?`@$@EE@!b $$==_888% %  ;hI/6{j/X4j/j;jHjVja{ja6hIaX4[IaOIVOIHOI;[I/hI/=8jY$kH8j=<?6S % % $$AA( " FEMF+@ FGDICF(GDIC}AFGDICRp@Arial00  Ċ8lb08  Ċ 0 0 0  Q]0 h|plt60`t`(dv%    T]/@ \@  L`Local Pipe**&)2*) % ( F(GDIC)UIFEMF+*@$??@^H@AXVU@ A?`@$@99X@!b $$==_888% %  ;o3Y6o3&X4o3&{3&3&3&3&3&63YX43Y3!Y3!Y{3!Yo3Yo3Y=2'Y$3x%P4'=<?*VG % % $$AA( " FEMF+@ FGDICF(GDICUFEMF+*@$??@^H@AXVU@ A?`@$@X@!b $$>>_888% %  ;D,6DcX4D\DWDWDWD\Dc6D,X4D,D,D,D,D,D,=XDY$D E=<?V % % $$AA( " FEMF+@ FGDICF(GDICFEMF+*@$??@^H@AXVU@ A?`@$@@!b $$==_888% %  ;hI6{jX4jj+j8jFjQ{jQ6hIQX4[IQOIFOI8OI+[IhI=8jpY$k88j =<? % % $$AA( " FEMF+@ FGDICF(GDICmFGDICRp@Arial00  Ċ8lb08  Ċ 0 0 0  Q]0 h|plt60`t`(dv%    T ~[@ \@L LdRemote Pipe6*?*)2)) % ( F(GDICAFFEMF+*@$??@AAd @ A?( ?@@@$@F@@!b $$==_888% %  [LDA XT}kb}kblXTlXT}k6bjck6bl6bj % % $$AA( " FEMF+@ FGDICF(GDICFGDICRp@Arial00 Ċ8lb08 Ċ 0 0 0 Q]0h|plt60`t`(dv%    T0@ \@sLFile Transfer Service Binding.*-*)&*1*%&*1*)*) % ( F(GDIC6FEMF+*@$??@^H@AXVU@ A?`@$@4@!b $$>>_888% %  ;`0A6..8X4,.80. 87. 8>. 8E. 8F.86y0AX4z0Av0Ao0Ai0Ab0A`0A=-N8Y$.t7.!8=<?7 % % $$AA( " FEMF+@ FGDICF(GDICFEMF+*@$??@^H@AXVU@ A?`@$@@!b $$==_888% %  ;Z.6Z{jX4ZjZjZjZjZjZ{j6Z.X4Z.Z.Z.Z.Z.Z.=`[8jY$ZkY8j=<? % % $$AA( " FEMF+@ FGDICF(GDICFEMF+*@$??@ ^H@AXVU@ A?`@!$@@! !b $$==_888% %  ;]k6]&0X4]0] 0] 0] 0]0]&06]kX4]k]k]k]k]k]k=\h0Y$].^h0=<? % % $$AA( " FEMF+@ FGDICF(GDIC|c_FGDICRp@Arial00  Ċ8lb08  Ċ 0 0 0  Q]0 h|plt60`t`(dv%    Ty?@ \@ LdShell Engine2**1***) % ( F4(EMF+*@$??!b Ld  )??" FEMF+@ Current User#SummaryInformation(PowerPoint Document(=DocumentSummaryInformation8`p|  Slide 1 id id1idMicrosoft PowerPointP@'z@0`Y@@S{Y՜.+,0     MOn-screen ShowIndiana Universitylg( / 0LDArial(8 08z[ 00@ .  @n?" dd@  @@`` (  0AA@3ʚ;ʚ;g4=d=dPz[ 0bppp@ <4dddd| 0h( 80___PPT10   ` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@,|?" dd@   " @ ` n?" dd@   @@``PR    @ ` ` p>> $(    6k  `}  T Click to edit Master title style! !  0|n  `  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  0t ^ `  X*  0 z ^   Z*  0L~ ^ `  Z*H  0޽h ? 3380___PPT10.YPI[ Default Design  Z R @  (     0` :   6p ?Shell Command 1  6` P ?Shell Command 2  0  0 :   0× @0 :   0Ɨp @  FService Implementation  6ŗp  FService Implementation  <ϗ @$  $WSDL Interface 1  <(ӗ t  $WSDL Interface 2RB  s *D RB  s *D   RB  s *Dp p  <hח` t g  Local PipeRB  s *D00 RB  s *D RB  s *D   <ۗ   Remote PipeXB  0Do   <pߗ <w 1File Transfer Service BindingRB  s *DP  RB  s *D RB  s *D@ @   <  Shell EngineH  0޽h ? 3380___PPT10.Y0nr0oi ? [d A ArialDefault DesignSlide 1  Fonts UsedDesign Template Slide TitlesOh+'0 , H T ` lxGGF Management - GFD-C.3.GF GF&M"[ڐ~$v2y{~{"1vh}1O1&;%1faߧ0ҙRl]xAJ$ ?QڮVV6Q{ Cz߮rD5 -^Gg짃<=Yj]C1d@za4ֆqUގ 'VOC =yDmfzʠ:=Mc,dBZrB4&k8zA4v96m~iϳM ^bh8=c{uuY2Y48o Ш>-bAѶKTF^/bC~L 6lzTL"|jk_HlhC*Uת:C RZS$́? )a=@QݙGbSНdH۠gnnR`̻H(Yksvwxu܏`k "?zhnoIZdh$ܩѡV3ە7 .w:wchh;~jAnW,:W\27I}j̚m53}WV$.Wo-i6l#.ӕ)tyfG?W#yռN#S e lbTzͬl#0DmlA{;kE+(MeېٻxNc,߸\Fuݯ1HQ^>K"DcC"Mm])QHG&Xo쟰e?uN/-u{| Vp'X`M^r}d`(b-9">G5dY3|N~ycye8~9r~( bzLx1M_m~t{^im_Q sR~_gq^A-yLJ_sZ~Rsq~HT|b]|=xnAcy􉗕/n[e6v/+i/$]` ;_SmpPGP-^6S 2$Ε6@9cX PR+b5drtWn;W2tiÔ(+Q zʃZ8>\JwmXN9b1ѻ߮1W)pe)WH^V] :Wi^CŇ(p\vլv]儚aB;x?$1s<?/~FO%6ާ /o[{Z[p߂x7w7j T1f 1~!2rD) )unS㿓uU0vbcO+NJXgb {&ݶ)kO4u(ﺊs*ZJ‰9kd' xSguFPϞ)s0ibN{v=7GhlLulܮ?âhALKֽkʭ 1Oa )t(Ap[V? zJzO}V.u[l~ Em*Ū?S>Jvk뾚=5JncYb*7Pu/ŸK{ŖN6~*>Oe:?N=${0to-gqFE X;r[깾+LSJU2p 5D2.(\*p;ͅ8]0h#tTm*mVbhT ?E!Oٓ8#3*5Ue1&rm oU5Mֹ5$גǁkqCq2X+)_+İ_/%^ \+dxD2<3@ J+=:@Jsh^ZSS*n5N o:6È@p/uVJS4۔SSy99zrj(Z|">ޔh{ ޙ7Bska%ڦm`N-xz&ԥW<ScAހR~# kdK ?7NKF 0/& KF_|)gr;?Gk^ec[X]طhg=Eb}3p&d6lRƾ=ԷWZ*- 29o'ǿ]oȿW/7Z|?+ N;}i2:D2:}}@ Є|Om{aľ=k.\QΌۋ-<*I5UN1L9ՁGq*OT8كt7N M| u ֻ{@}MnMFHF_{1x zsds'Tqj#&éBȋÕG4mf[Ufo'D d>eDd +0  # A"F "UJ?#"I@= "UJ?#T EHG4 x\ pw$.!`. r1tl "1bQ9UD:54CI*3CE-~3i{{6G. {{!-$}2!rܐG\! DBL$cY6!o*DO2N3R+|A9ߦ}kDw)g&)'ʹ>kA`-0#6j{2@}#\_p6>1ln3|GJjME`_9eSrbac}&rsjBe:<R*5Scq1,sdYϪ:7=P5U|yOs:x]|n躘t:<'_ޱA@c"8>r ὂ2|DA.cb8>z>B xϣ#\c6,ZqԎCT &ql e-'3'a 9i^^^_@1wl-9&rL_˘ZS Sq8ԯEPpnϝM*{7]w`$Ob8,bYgv̕N@vKwL&;:2F4S`\1"FJ+3^E Edpȩ yrj<}%r;V`6׻U|? w1}y<|ʯiq;qNH'[I3-?b3x]/l}Џe}FM~vNIJ[gH/Lg'iCyaFn$-?aIyQmkxIF4OYnCE;ggvJc5<ڏԓR^5e={IP1Iǩm7B f']o/Uθjz-l},{Ų/U|*3=28(QxEE΢D+߫lֹ .\V<(L3)EΫOS?7c0R[*,m+li4;4-wlU6acIr@0DZr)/sHs۔SO`A1)ĉ{$}W0xKR-%I#I_ &忰zNms >b!֊\ey]X͵[{=<Q'On2NJl+^rX35}ieFdڞvGh{k{wXU?˭E=~< B}W|.nSƮ'rkہ@+Er`mʓhCނh>[M,Omor*ɩ.]©1!Ne%Hq*VW߿ P+6M=Cm~ s"^f8Ȼp xbT956J%r/y26ĩAss{Sʝ[:7dsds~e9 K*F@+Y;aD?^r SƘnnx9-$9Ħ4rsgz&az.#sv% kMT3yϞg {TS=ӓqqNlt;'$hY%j}_}ZK5}|}%:Η[J>tΏ3/ǺDcK-T=мy4[y۽-zIN_ӸI6^ġc %ՓpP, <$G%me{p "UXMˬ{ɚg%݂8M¿R4>r_'_QoǞ%=/zW³]28~N=~p\oOprb;0E6~)NM00gTgQbgS$=PGߟsi^LJu[vmo:MoؤmTwQvP?Pw=S KX^ǩ#ozqicaym"h$1}qqe`Njrq*7)Wpg s=|X?~>ߣ8m8V'{nԻ4٥i=?Ʃ׹5?8E{Ȟq-I#I1I{5d=4~>I;J"ˏѻOe|f5=yn=e0ZzoR*w6}D;!zqOTq/vZ?"DyK marpierc@indiana.eduyK 8mailto:marpierc@indiana.eduDyK gcf@indiana.eduyK .mailto:gcf@indiana.eduDyK Chttp://www-106.ibm.com/developerworks/webservices/library/ws-bpel/yK http://www-106.ibm.com/developerworks/webservices/library/ws-bpel/DyK Uhttp://www.gridforum.org/ogsi-wg/drafts/draft-ggf-ogsi-gridservice-04_2002-10-04.pdfyK http://www.gridforum.org/ogsi-wg/drafts/draft-ggf-ogsi-gridservice-04_2002-10-04.pdf]DyK :http://www.jxta.org/project/www/docs/jxtaview_01nov02.pdfyK thttp://www.jxta.org/project/www/docs/jxtaview_01nov02.pdfDyK http://www.w3c.org/TR/wsdlyK 6http://www.w3c.org/TR/wsdlDd >  # A"@@b2犝嫲n犝嫲PNG  IHDRh6sRGBIDAT8Ocr X"p)8SD?;vh6@!l]*Ȇ2f#YFO5%r` X5`QF AXh]4N**b""8|tm$y:tH "3u"F׀l zfCp|A,5_[IENDB`1TablefSummaryInformation($DocumentSummaryInformation8, CompObj\jCharlie Catlettharhar Normal.dotl rm10mMicrosoft Word 10.0@̩UC@Մ@7@OQ՜.+,D՜.+,l( px  Argonne National LaboratorynMϖ GGF Management - GFD-C.3 Title| H $ 8 X p  _PID_HLINKS_AdHocReviewCycleID_EmailSubject _AuthorEmail_AuthorEmailDisplayName_ReviewingToolsShownOnceA$ qshttp://www.w3c.org/TR/wsdl :http://www.jxta.org/project/www/docs/jxtaview_01nov02.pdfEqUhttp://www.gridforum.org/ogsi-wg/drafts/draft-ggf-ogsi-gridservice-04_2002-10-04.pdf{+Chttp://www-106.ibm.com/developerworks/webservices/library/ws-bpel/J~~mailto:gcf@indiana.edu5{mailto:marpierc@indiana.edu<h _Toc32981076<b _Toc32981075<\ _Toc32981074<V _Toc32981073<P _Toc32981072<J _Toc32981071<D _Toc32981070=> _Toc32981069=8 _Toc32981068=2 _Toc32981067=, _Toc32981066=& _Toc32981065=  _Toc32981064= _Toc32981063= _Toc32981062= _Toc32981061= _Toc32981060> _Toc32981059s|T GCEShellgTomarpierc@indiana.edunceMarlon Piercenaarl  FMicrosoft Word Document MSWordDocWord.Document.89qbD@D NormalOJQJ_HaJmH sH tH V@V Heading 1$ & Fx<@&5KH \^JaJ J@J Heading 2$ & F@&\]^JaJP@P Heading 3$ & F@&OJQJ\^JaJZ@Z Heading 4$ & F<@&5CJOJQJ\aJT@T Heading 5 & F<@&56CJ\]aJV@V Heading 6 & F<@&5CJOJQJ\aJL@L Heading 7 & F<@& CJOJQJR@R Heading 8 & F<@&6CJOJQJ]L @L Heading 9 & F<@& CJ^JaJDA@D Default Paragraph FontViV  Table Normal :V 44 la (k(No List .O. nobreak$XOX HTML Body 7$8$H$ CJOJQJ_HaJmH sH tH 4@4 Header  !4 @"4 Footer  !6U@16 Hyperlink >*B*ph.)@A. Page NumberLT@RL Block Texth]^h CJOJQJ<"@< Caption xx 5\aJ@^@r@ Normal (Web) CJOJQJHZ@H Plain Text ^OJQJ^JaJ2B@2 Body Textx<P@< Body Text 2 dx>Q@> Body Text 3xCJaJPM@P Body Text First Indent `HC@H Body Text Indenthx^hTN@T Body Text First Indent 2 `RR@R Body Text Indent 2hdx^hTS@T Body Text Indent 3 hx^hCJaJ2?@2 Closing !^8"8  Comment Text"aJ$L@$ Date#RYBR  Document Map$-D M OJQJ^J<[@R< E-mail Signature%8+b8  Endnote Text&aJd$@rd Envelope Address!'@ &+D/^@ CJ^JB%@B Envelope Return(^JaJ::  Footnote Text)aJ:`@: HTML Address*6]Ne@N HTML Preformatted+OJQJ^JaJ: : Index 1,8^`8: : Index 2-8^`8: : Index 3.X8^X`8: : Index 4/ 8^ `8:: Index 508^`8:: Index 618^`8:: Index 72x8^x`8:: Index 83@8^@`8:: Index 948^`8@!@  Index Heading5 5\^J4/@b4 List6h^h`82@r8 List 27^`83@8 List 388^8`84@8 List 49^`85@8 List 5:^`:0@: List Bullet ; & F>6@> List Bullet 2 < & F>7@> List Bullet 3 = & F >8@> List Bullet 4 > & F >9@> List Bullet 5 ? & F BD@B List Continue@hx^hFE@F List Continue 2Ax^FF@"F List Continue 3B8x^8FG@2F List Continue 4Cx^FH@BF List Continue 5Dx^:1@R: List Number E & F >:@b> List Number 2 F & F >;@r> List Number 3 G & F><@> List Number 4 H & F>=@> List Number 5 I & Fl-l  Macro Text"J  ` @ OJQJ^J_HmH sH tH I@ Message HeadergK8$d%d&d'd-DM NOPQ^8`CJ^J>@> Normal Indent L^4O@4 Note HeadingM0K@0 SalutationN6@@6 Signature O^BJ@B SubtitleP$<@&a$CJ^JT,T Table of AuthoritiesQ8^`8L#L Table of FiguresRp^`pN>@2N TitleS$<@&a$5CJ KH\^JaJ D.D  TOA HeadingTx5CJ\^J&@& TOC 1U.@. TOC 2 V^.. TOC 3 W^.. TOC 4 XX^X.. TOC 5 Y ^ .. TOC 6 Z^.. TOC 7 [^.. TOC 8 \x^x.. TOC 9 ]@^@FV@F FollowedHyperlink >*B* phHH  Balloon Text_CJOJQJ^JaJ@j!"@ Comment Subject`5\.X@. Emphasis6] % z z z z z z z z z z z z z z 0$3AQ>_kuvy$}{!N  q  \{00x/:0x{00x/:0x{00x/:0x0w$%9:LMVJKLUV|q$ M  \ w :;jk0 i ,!o!p!A%U&&'"(#(++:,,F-G-//_0`0l0G2H2r22:334{4|455 7 777786889;;;<<>>AAACCFFFG-I.IJJMMPPRRS TUUVDV{VVVW:W>WVWWWOYPYZZ\]u]^^ _=_>_______`(`B`K`z`{`aaccgddUeef'f(flgmghhujvjkk#l$lllnnsptpHsIsRttttttvuvv1w2wyyyzzc{d{{{|L|p||||B}C}}}v~x~fg{[݄ބ%&\]pqӇ*R~ވ߈ȌɌ ߑ89+,12Hٗڗ0000000000000M0M0M0M0MU0MU0MU0MU0MU0MU0MV0MV0MU0MV0MU0MU0MU0MU0MU0MU0MU0MU0M0M0M 00 0 0 0 0 0 0 0 0 0  00k0k0k 0k 0k0k 0k 0k 0k0k0k0k0k0k 0k 0k 0k0k0k0k0k 0k 0k0k0k( 00/0/ 0//0`00`00`0 0`0 0`0 0`0 0`0 0`00`00`000`00`000`0 0//0 7 0 7 0 7 0 70 70 70 70 7 0//0;0;80;80;p0;0; 00A0A0A0A0A 00F0F0FH0F0FH0F0F0F0F0F0F 00S0S0S$ 0S$ 0S$ 0S0S0S0S0S0S0S0S0S0S0S0S 00\]! 0\]! 0\]! 0\]0\]0\]" 0\]" 0\]" 0\]" 0\]" 0\]" 0\]" 0\]" 0\]" 0\]" 0 \]0\]0\]`0\]0\]0\]0\] 0\] 0\] 0\] 0\] 0\]0\]0\]`0\]0\] 00h0h0h0h0hh0h0h0hh0h0h0h0h0h0h0h# 0h# 0h# 0h0h0h0h0h0h0h0hp0h0h0h0h0hx0h 00d{ 0d{ 0d{ 0d{ 0d{ 0d{ 0d{ 0d{0d{0d{0d{0d{0d{0d{ 0 000 0 0 0 0 0 000000 0 00000]0]0]0]0]0]0]0]0]0]0]0000p000000000000000000000p00000000000000000000$%9:LMVJKLUV|q$ M  \ w :;jk0 i ,!o!p!A%U&&'"(#(++:,,F-G-//_0`0l0G2H2r22:334{4|455 7 777786889;;;<<AAACCFFFG-I.IJJMMPPRRS TUUVDV{VVVW:W>WVWWWOYPYZZ\]u]^^ _=_>_______`(`B`K`z`{`aaccgddUeef'f(flgmghhujvjkk#l$lllnnsptpHsIsRttttttvuvv1w2wyyyzzc{d{{{|L|p||||B}C}}}v~x~fg{[݄ބ%&\]pqӇ*R~ވ߈ȌɌ ߑ89+,12Hٗڗ0000000000000M0M0M0M0MU0MU0MU0MU0MU0MU0MV0MV0MU0MV0MU0MU0MU0MU0MU0MU0MU0MU0M0M0M 00 0 0 0 0 0 0 0 0 0  00k0k0k 0k 0k0k 0k 0k 0k0k0k0k0k0k 0k 0k 0k0k0k0k0k 0k 0k0k0k 00/0/ 0//0`00`00`0 0`0 0`0 0`0 0`0 0`00`00`00`00`00`0 0//0 7 0 7 0 7 0 70 70 70 70 7 0//0909@0909 00>0>0>0>0> 00/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D$ 0/D$ 0/D$ 0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D0/D 002]! 02]! 02]! 02]02]02]" 02]" 02]" 02]" 02]" 02]" 02]" 02]" 02]" 02]" 0 2]02]02]02]02]02]02] 02] 02] 02] 02] 02]02]02]02]02] 00h0h0h0h0h0h0h0h0h0h0h0h0h0h0h# 0h# 0h# 0h0h0h0h0h0h0h0h0h0h0h0h0h0h 00j{ 0j{ 0j{ 0j{ 0j{ 0j{ 0j{ 0j{0j{0j{0j{0j{0j{0j{ 0000 0 0 0 0 0 000000 0 00000P0P0P0P0P0P0P0P0P0P0P000000000000000000ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0ӑ0;@0@0@0@0@0@0@0@0@0@0@00"0zz"k|FZM6Dx΍9PSTUVWXZ[\]^_adhkmo#7@Zgp݁~ٟQY`bcefgijlnpRVno#\wyz|<Qlnoq  ! " $ C ` { } ~  , G J K M l     ' ; V Y Z \ {    ? V q t u w uvvvvvvyyyzzzڇ5oӓ(bΖ X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%̕: : XXXXXX!!l,"$ ^ 8>J@(  f  C (Aslide22"`B S  ?`&4 _Ref525097868 _Toc32981059 _Toc32981060 _Toc32981061 _Toc32981062 _Toc32981063 _Toc32981064 _Toc32981065 _Toc32981066 _Toc32981067 _Toc32981068 _Toc32981069 _Toc32981070 _Toc20156277 _Toc32981071 _Toc32981072 _Toc526008660 _Toc32981074 _Toc526008661 _Toc32981075 _Toc32981076_PictureBulletsMM k/ 7;AF\]hd{] UU k07;A Gt]h{o݈݈njnj'2Ԯ2,2,22t+22LK2222 K2‰2É2lĉ2ʼn2GƉ2"lj2:#ȉ2ɉ2\T"ʉ2rˉ2r̉2\͉274Љ2 / T/ //0T000111T2--;;;hqʇ͇??GRRhux&&&5`nnvЗڗ     ! "#$%&--;;;h~ȇ̇҇҇)FQQfsw}}33<<luؗ    ! "#$%& 9*urn:schemas-microsoft-com:office:smarttagsState8*urn:schemas-microsoft-com:office:smarttagsCity>*urn:schemas-microsoft-com:office:smarttags PostalCode:*urn:schemas-microsoft-com:office:smarttagsStreet>!*urn:schemas-microsoft-com:office:smarttags PersonName;*urn:schemas-microsoft-com:office:smarttagsaddress8*urn:schemas-microsoft-com:office:smarttagsdate9'*urn:schemas-microsoft-com:office:smarttagsplace=$*urn:schemas-microsoft-com:office:smarttags PlaceType=#*urn:schemas-microsoft-com:office:smarttags PlaceNameB&*urn:schemas-microsoft-com:office:smarttagscountry-region  14152200120033DayMonthYear'&'$#'!'#$!'#$'!'!'#$!!GO`h0 6 --555588888888::6=8=:=<=>=C=>>>>AA]BcBBBCCHHOO1T3T9T;T9V;V=V?VAVCVmVoVVVVVWWMWUWYY[[bb~bbbbgdidddUeWeffffffZgagiikkllllllm m%p)pRrWrRt]tttttttǁӁ){[fڇ%&)ʈˈӈ=CHN]dtz:>@R!dr{5hlp!r!3355OAYAW W:W*=d< *Eh ;sbE / T!sNrF1V4Hn`N$h}%`H6&hb; HA(^h2f-hD B5F#[c7$?v8rZ[::C<lڗot9}9}@[@UnknownCharlie Catlett Gz Times New Roman5Symbol3& z Arial; BatangG  MS Mincho-3 fg;" HelveticaCFComic Sans MS?5 z Courier New5& zaTahoma;Wingdings"1hlrrjXsF2r& MM!4dϖϖ 2qH?.'GGF Management - GFD-C.3Charlie Catlett $                           ! " #