Instant download Oracle weblogic server 12c administration i exam 1z0-133: a comprehensive certifica

Page 1


Visit to download the full and correct content document: https://textbookfull.com/product/oracle-weblogic-server-12c-administration-i-exam-1z0 -133-a-comprehensive-certification-guide-1st-edition-gustavo-garnica/

More products digital (pdf, epub, mobi) instant download maybe you interests ...

Study Guide for 1Z0 071 Oracle Database 12c SQL Oracle Certification Prep 1st Edition Matthew Morris

https://textbookfull.com/product/study-guide-for-1z0-071-oracledatabase-12c-sql-oracle-certification-prep-1st-edition-matthewmorris/

Oracle Certified Professional Java SE 8 Programmer Exam 1Z0 809 A Comprehensive OCPJP 8 Certification Guide A Comprehensive OCPJP 8 Certification Guide Ganesh Sg Kumar Hari Kiran Sharma Tushar

https://textbookfull.com/product/oracle-certified-professionaljava-se-8-programmer-exam-1z0-809-a-comprehensiveocpjp-8-certification-guide-a-comprehensiveocpjp-8-certification-guide-ganesh-sg-kumar-hari-kiran-sharmatushar/

OCA Oracle Database SQL Exam Guide (Exam 1Z0-071) 1st Edition Steve O’Hearn

https://textbookfull.com/product/oca-oracle-database-sql-examguide-exam-1z0-071-1st-edition-steve-ohearn/

OCP Oracle Certified Professional Java SE 11 Developer

Complete Study Guide Exam 1Z0 815 Exam 1Z0 816 and Exam 1Z0 817 1st Edition Jeanne Boyarsky

https://textbookfull.com/product/ocp-oracle-certifiedprofessional-java-se-11-developer-complete-study-guideexam-1z0-815-exam-1z0-816-and-exam-1z0-817-1st-edition-jeanneboyarsky/

OCP Oracle Certified Professional Java SE 11 Programmer I Study Guide Exam 1Z0 815 Jeanne Boyarsky

https://textbookfull.com/product/ocp-oracle-certifiedprofessional-java-se-11-programmer-i-study-guideexam-1z0-815-jeanne-boyarsky/

Oracle Certified Professional Java SE 7 Programmer Exams 1Z0 804 and 1Z0 805 A Comprehensive OCPJP 7

Certification Guide Expert s Voice in Java S G Ganesh

Tushar Sharma

https://textbookfull.com/product/oracle-certified-professionaljava-se-7-programmer-exams-1z0-804-and-1z0-805-a-comprehensiveocpjp-7-certification-guide-expert-s-voice-in-java-s-g-ganeshtushar-sharma/

Oracle SQL tuning with Oracle SQLTXPLAIN: Oracle database 12c edition Charalambides

https://textbookfull.com/product/oracle-sql-tuning-with-oraclesqltxplain-oracle-database-12c-edition-charalambides/

Oracle SOA Suite 12c handbook 1st Edition Jellema

https://textbookfull.com/product/oracle-soasuite-12c-handbook-1st-edition-jellema/

Oracle Business Intelligence Enterprise Edition 12c

Adrian Ward

https://textbookfull.com/product/oracle-business-intelligenceenterprise-edition-12c-adrian-ward/

Oracle WebLogic Server 12c Administration I Exam 1Z0-133: A Comprehensive Certification Guide

Gustavo Garnica

San Jose, California, USA

ISBN-13 (pbk): 978-1-4842-2561-5

https://doi.org/10.1007/978-1-4842-2562-2

Library of Congress Control Number: 2017962906

Copyright © 2018 by Gustavo Garnica

ISBN-13 (electronic): 978-1-4842-2562-2

This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.

Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark.

The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights.

While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein.

Cover image by Freepik (www.freepik.com)

Managing Director: Welmoed Spahr

Editorial Director: Todd Green

Acquisitions Editor: Susan McDermott

Development Editor: Laura Berendson

Technical Reviewer: Julian Ortiz Iregui

Coordinating Editor: Rita Fernando

Copy Editor: Karen Jameson

Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springersbm.com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation.

For information on translations, please e-mail rights@apress.com, or visit http://www.apress.com/ rights-permissions.

Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales web page at http://www.apress.com/bulk-sales.

Any source code or other supplementary material referenced by the author in this book is available to readers on GitHub via the book’s product page, located at www.apress.com/9781484225615. For more detailed information, please visit http://www.apress.com/source-code.

Printed on acid-free paper

To my sweet wife Lety . . . I love you, thank you for our awesome family.

About the Author

Gustavo Garnica is an experienced Technical Architect and Consultant with over 15 years of international experience implementing and supporting IT infrastructure and operations processes in financial and telecommunications environments. He is a former BEA Systems and Oracle employee, and holds several cloud and enterprise software certifications, including Oracle WebLogic Server certified system administrator. He started developing software back in the Netscape days, and currently architects and operates enterprise software environments on cloud infrastructure.

About the Technical Reviewer

Julian Ortiz Iregui is a Cloud Solutions Architect at Oracle’s Development Organization. He has extensive technical architecture experience in enterprise organizations running Oracle Fusion Middleware for mission-critical systems. Today, he currently focuses on cloud computing and infrastructure.

Acknowledgments

I think I may have made life a little harder for several people while authoring this book. First my family’s. Sorry about keeping you waiting for so long; your love and patience will always be an unequivocal reminder that a book is not the product of authors alone. I extend the same heartfelt gratitude to my editors Susan McDermott and Rita Fernando, to my technical reviewer Julian Ortiz, and also to those who I did not personally meet, but whose work for this book was essential nonetheless. I wish I could also properly thank so many people with whom I worked over the years, and who I look up to. I sincerely expect you will not be disappointed in this work. Lastly, to those in the same category but outside of the technical realm, you have influenced my life so much. Thank you.

Foreword

WebLogic is one the most successful and powerful enterprise application development platforms ever. Thousands of mission-critical applications serving some of the most demanding business computing workloads in the world depend on WebLogic. That is a fact that is unlikely to change any time soon.

Such a computing platform almost inevitably comes with complexities. The complexity in part comes from the wide number of deployments, rich history, and longevity that WebLogic boasts. The WebLogic team does what it can to manage these complexities – principally by making sure that the official WebLogic documentation is both comprehensive and up to date. As good as the official WebLogic documentation is, it has always lacked a certain personal touch and approachability. After all, what better way to learn WebLogic than from your own personal mentor, patiently showing you the ropes and sharing years of hard-earned personal experience in the field? This is equally true whether you are beginning to use WebLogic on the job or are seeking to certify yourself on WebLogic. If you have such a personal mentor around you, consider yourself very lucky. Chances are, however, that most of us that need to work with WebLogic in the real world do not have ready access to such a person. That is where this book and Gustavo Garnica come in.

Gustavo has years of in-depth knowledge and hands-on experience with WebLogic. Much of this knowledge and experience comes from being a part of the WebLogic field team at Oracle and working with some of the most daunting WebLogic deployments in the world. It should not surprise you that Gustavo has worked with almost every feature he has written about in this book in real life. In addition, Gustavo is a friendly, approachable, and patient person by nature. You would be very hard pressed to find a better person to mentor you on WebLogic than Gustavo. He has synthesized all these valuable personal characteristics beautifully into the book. Each complex WebLogic topic is explained in the simplest and most approachable way – covering the basics whenever possible. Gustavo also shares unique knowledge that can only be gained through years of real-world experience working inside the WebLogic team throughout the book. While the book is comprehensive enough, it leaves out just enough detail to keep the book from becoming overwhelming in the way the WebLogic official

foreword

documentation can be. There are ample diagrams, screenshots, and code examples wherever helpful.

The book covers a range of topics including basic installation, configuration, administration, monitoring, logging, clustering, networking, data access, and security. The coverage of domains, the node manager, the console, JMX, and WLST shine particularly bright. The content should definitely be good enough for the purposes of WebLogic certification. Particularly helpful are the sample certification questions and exercises included at the end of each chapter. The sequence of topics covered is very sensible throughout. In fact, beyond the goals of certification, the book is a valuable reference on the bookshelf of anyone working with WebLogic in the real world.

Your decision to make a personal investment in WebLogic and using this book as a tool to do so is undeniably sound. I hope you enjoy the book and learn as much from it as I did!

Introduction

Some time ago as an Oracle employee, and while on a consulting assignment with some very nice IT folks in Caracas, Venezuela, I spoke with someone in a product management team in Oracle regarding the configuration of the environment I was working on. He also happened to be an Apress author. I do not think he remembers our brief conversation but I do. He shared with me that it was his point of view that basically anyone could achieve anything in technology given the right time and resources.

Becoming a certified Oracle WebLogic Server System Administrator is certainly a task where this true notion can be validated.

For experienced WebLogic Server administrators, passing the exam will require almost no effort as they will most likely already have spent enough time and resources around WebLogic Server so that they will have gained the breadth and depth of knowledge required by exam 1Z0-133.

For anybody else interested in passing the exam, the effort will require a varying investment of time and resources, depending on their previous exposure to Java EE and Java application servers in general, and to WebLogic Server in particular.

The Certification Process and Requirements

As published on the Oracle University website, the 1Z0-133 exam is a proctored exam delivered at PearsonVue centers around the world. Passing the exam earns the designation of Oracle Certified Associate, Oracle WebLogic Server 12c Administrator certification.

At the time of writing this book, the exam has a duration of 120 minutes and is comprised of 77 multiple choice questions with a minimum passing score of 64%, and is validated against Oracle WebLogic Server version 12.1.2 (released in June 2013).

Figure 1 shows these details as published in the Oracle University website.

In order to register and schedule the exam, candidates must have active accounts with both Oracle and PearsonVue. The Oracle account can be created at www.oracle.com and the PearsonVue account can be created at www.pearsonvue.com/oracle. Creating a PearsonVue account will also create an Oracle Testing ID. This ID must then be entered at Oracle University’s certification website at certview.oracle.com, thus linking the Oracle and PearsonVue accounts. There is a one-hour delay between the time that the Oracle Testing ID has been created by PearsonVue and the time that it will be recognized by the CertView website.

Once the candidate profile has been completed, the exam can be purchased and scheduled directly from PearsonVue. The Oracle account can then be used to access exam history, scores, and other details regarding the certification efforts at the CertView website.

The exam experience is simple and standardized across test centers. Candidates are required to present a photo ID at the selected test center and are not allowed to introduce any objects into the test room. The exam terminal presents a simple user interface displaying one question and its possible answers per each screen. The questions can be marked for later review.

Once all questions have been answered, the exam may be submitted to Oracle for grading. After a short period of time, usually under 30 minutes, a notification of the exam result will be emailed to the candidate. There is a delay of around 24 hours between the time that the notification of exam results is received and the time that the results will also appear in the CertView website.

Figure 1. D etails of Oracle University exam 1Z0-133

The two possible exam results are pass or fail. Regardless of the exam results, feedback will be provided to help identify any questions that were answered incorrectly. Users with a failing score should return to this feedback in preparing for future attempts.

Once Oracle has notified a candidate of a passing score, he or she has officially become a certified Oracle WebLogic Server 12c Administrator. PearsonVue and Oracle also offer badges for certain certifications. These badges are useful to publish certification credentials to third parties and on social networks such as LinkedIn.

At the time of writing this book, there are no hard requirements enforced by Oracle or by PearsonVue for a candidate to meet before attempting the exam, other than a policy that specifies that a candidate who fails must wait 14 days before attempting the same exam again, with a maximum of 4 attempts in a 12-month period. Candidates should consult the Oracle certification website though, in order to ensure that the requirements have not changed.

The only soft requirement for passing the exam is being conversant with the 16 topics covered. These topics range from a very basic introduction to WebLogic Server, the product installation and basic configuration, and a review of the components and features that most administrators use in their day-to-day work.

The following is the complete list of topics covered by the exam:

• Overview of WebLogic Server

• Installing and patching WebLogic Server

• Creating domains

• Starting servers

• Using the Administration Console

• Configuring JDBC

• Monitoring a domain

• Node Manager

• Deploying applications

• Network channels and virtual hosts

• Creating and configuring clusters

InTroduCTIon

• Cluster proxies and sessions

• Cluster communication, planning, and troubleshooting

• Transactions

• WebLogic Server security

• Backing up and upgrading WebLogic Server

The depth of the exam questions covering these topics is such that a person with limited experience administering WebLogic Server could probably find it hard to tackle. Unfortunately, there is probably no way to objectively define a certain period of time of actual work experience with WebLogic Server that will qualify a candidate to pass the exam. Candidates should aim to gain experience working with the product, either on the job, supporting real business applications on real production environments, or at least performing guided exercises in a laboratory for a reasonable amount of time.

Practical experience will directly impact their ability to answer the questions correctly. To illustrate this, consider the following question:

1. Which is the correct set of options available when configuring feature X:

a. A, B, and C

b. C, D, and E

c. B, D, and F

d. All of the above

I remember a question like this from when I first became an Oracle WebLogic Server certified administrator. I had recently worked with that particular feature in more than a few environments, I knew how to use it correctly and I thought I had it right but I did not.

I knew very well what the options were individually, and I was able to quickly recognize which one of the choices included an invalid option, but, to my surprise, it was the first time that I had to think of these as sets of options rather than individual options that could be used separately.

As exemplified by this, experience administering WebLogic Server should be considered a first-class requirement for passing the exam, as opposed to simply having an understanding of the concepts involved.

Approach to Presenting the Content

The topics that the Oracle WebLogic Server 12c: Administration I certification exam indeed covers can be classified in two groups:

• Topics that review how to configure and use the implementation of a portion of the Java EE 6 specification1 in WebLogic Server, such as Java Database Connectivity.

• Topics that review how to configure and use the features through which Oracle differentiates its product from other Java application servers, such as with the WebLogic Administration Console or WebLogic Scripting Tool.

Note not all elements of the Java ee 6 specification implemented in oracle weblogic server are covered in exam 1Z0-133. The outstanding subset is covered in exam 1Z0-134.

Each chapter in this book will present the content using the following structure:

• Brief description of the topic

• Step-by-step descriptions of well-known procedures to configure and use WebLogic Server features

• List of recommended exercises to perform

• List of sample certification questions related to the topic covered

The topic description may include introductory information regarding the relevant element of the Java EE specification. When included, this information will be brief and provided solely as a general contextual reference to the topic at hand. Often, there may be more than one way to perform a single administration task in WebLogic Server, such as configuring a feature using a CLI interface, writing and invoking a script to automate the configuration, or using the Administration Console

1The Java EE compatibility page in the Oracle website at URL: http://www.oracle.com/ technetwork/java/javaee/overview/compatibility-jsp-136984.html includes links to the Java EE 7 specification version, as well as links to our target Java EE 6 version.

to achieve the same goal. Each topic will cover the as many ways to perform the administration procedures as the logical sequence of chapters allows.

As stated before, seasoned WebLogic Server administrators may have enough of a refresher in preparing for the certification exam by simply challenging themselves to respond correctly to all of the sample questions, whereas new administrators may find that the recommended exercises will provide good practice for the concepts presented in each chapter. Answering the sample questions will then be a good way to assert whether or not they are making the required progress in their preparation.

Recommended Exercises and Sample Questions

The recommended exercises will be listed by a simple statement describing a requirement, such as:

• Configure A by using B.

No specific steps required to complete the exercises will be specified. It is expected that the candidate will have gained enough understanding and context to the exercise statement in order to resolve it. Candidates should be able to infer the specific procedure to perform from the content presented in the corresponding chapter.

A laboratory or development environment upon which to complete the exercises will be required. Completing the practices listed in Chapter 3 will result in such an environment, which can then be cloned or otherwise enabled to complete all practices in subsequent chapters.

Even though clustering and other high availability features will be addressed in the topics, the CPU and RAM requirements of the laboratory will be minimal so that these can be accomplished on any fairly recent laptop geared for geeks.

The sample questions in the book have been formulated to resemble the type and depth of questions found in the certification exam and will test the understanding of the topic covered but should not be considered a comprehensive reference. The answers to these sets of questions can be found in Appendix A.

CHAPTER 1 Overview

Java technology was created by a group of brilliant engineers from Sun Microsystems headed by Dr. James Gosling. It could probably be fair to state that nearly all technologists around the world have at least heard about, if not used, Java. This chapter provides both, a brief of Java technology and an overview of the Java EE 6 features implemented in WebLogic Server 12c.

Today the Java ecosystem appears more alive than ever. Java became 20 years old in 2015 and was also named TIOBE 1 programming language of the year. Some would say that there has never been a better time to work with Java technology, and I believe there is truth in that statement, considering the recent evolution of the language and the platform.

Java is run truly just about everywhere. It can be found in places ranging from homes to scientific laboratories, from gaming consoles and Blu-ray players to the computers in the control room of NASA’s Jet Propulsion Laboratory.

In enterprise computing around the globe, a very large number of applications with extreme requirements of availability and performance, in the most demanding industries such as finance and telecommunications, are powered by Java application servers such as WebLogic Server.

Nowadays, it is possible to launch a Java application server instance, deploy upon it a modern application, and have it up and running, listening for requests, in just a few seconds. It is possible to run enterprise Java technology on all sorts of infrastructure, from high-end appliances to commodity hardware, from virtual machines to cloud servers and containers.

1The TIOBE Programming Community index is described as an indicator of the popularity of programming languages whose ratings are based on several factors including the number of skilled engineers worldwide.

© Gustavo Garnica 2018

G. Garnica, Oracle WebLogic Server 12c Administration I Exam 1Z0-133, https://doi.org/10.1007/978-1-4842-2562-2_1

For New Administrators

Java technology includes among other elements a programming language and a platform. At a high level, the Java platform can be described as the environment in which applications written in the Java programming language can be run. In this book, we touch on two of such Java platforms, namely, Java Standard Edition or Java SE, and Java Enterprise Edition or Java EE.

The Java SE platform is comprised of the basic elements required to run Java applications, including a Java Virtual Machine, the core API, as well as development and deployment tools. The Java EE platform provides its own API and a runtime environment for developing and running enterprise applications. Java EE sits on top of Java SE.

The evolution of the Java EE platform is guided by the Java Community Process through expert groups that are comprised of individuals and organizations interested in the development of the Java technology. These expert groups work on Java Specification Requests that later become part of the Java EE Platform Specification. The Java EE specification can then be implemented by product vendors.

WebLogic Server administrators are expected to be able to perform installation, configuration, maintenance, and other operations on the full Java EE technology stack. This includes having a proper understanding of the JVM, the Java SE and EE APIs, and related tools and components, as well as the runtime environment and the enterprise applications deployed on it. Typically, WebLogic Server administrators are also skilled at working with related software products, from operating systems and file systems to networking tools, from load balancers and proxies to databases and so forth.

Enterprise Applications

Enterprise applications are named so because they exist to resolve the requirements of information systems in large enterprises. For applications, enterprise requirements include but are not limited to persistence, distribution, transactionality, security, ubiquity, etc. For infrastructure, enterprise requirements include scalability, availability, fault tolerance, performance, etc.

In order to tackle these requirements, enterprise applications are commonly designed to separate functionality into tiers. Typically, at least three tiers can be easily identified: a front tier, a middle tier, and a data tier. Depending on the application requirements, these tiers can be further subdivided by isolating even more specific functionality into additional tiers. Java EE defines the technologies that once implemented support to each of these tiers.

Enterprise applications are developed as self-contained components that reside in one of these tiers. Before execution, an application component must be assembled into a Java EE module and deployed into the right container for its type. The assembly process specifies container configuration settings for each component in the Java EE module and for the Java EE application at large. Most of the configuration is defined through annotations in the application code rather than on XML deployment descriptors, some of which have now become optional.

Java Application Servers

A Java application server, such as Oracle WebLogic Server, implements the Java EE APIs and provides the required standard infrastructure services in the form of runtime environments or containers. Examples of these containers include the web container for front tier components and the EJB container for business logic components residing in the middle tier.

Enterprise applications are developed, deployed, and run on a container that supports the specific services required by it. Application components are meant to interact with one another, but they will only do so indirectly, through the platform services available in the container where they have been deployed. Figure  1-1 depicts the logical Java EE architecture described in the preceding paragraphs at a very basic level.

Figure 1-1. Logical view of the Java EE architecture Chapter 1 Overview

In this logical view the Java platforms are represented by the larger rectangles. These two platforms, Java SE and Java EE, will work in unison everywhere a Java enterprise application is run. The same architectural elements may be seen running application components in any tier of the Java enterprise architecture as described before.

Java EE Services

A partial list of the standard services supported by Java EE containers include the following:

• Hyper Text Transfer Protocol (HTTP) – Web clients are commonly processed and transferred for display on a client browser using the HTTP protocol, including over SSL or TLS. Relevant Java EE APIs include Servlet, JSP, JSF, and Web Services.

• Java Transaction API (JTA) – used by the container and the application components to demarcate transaction boundaries.

Another random document with no related content on Scribd:

and there were rumors of a mob forming among the sturdy Viking of that section. Malone had for weeks been urging his colleagues to attempt a general clean-up; and at last, moved by conditions more obvious to their common sense than the conjectures of a Dublin dreamer, they had agreed upon a final stroke. The unrest and menace of this evening had been the deciding factor, and just about midnight a raiding party recruited from three stations descended upon Parker Place and its environs. Doors were battered in, stragglers arrested, and candle-lighted rooms forced to disgorge unbelievable throngs of mixed foreigners in figured robes, miters and other inexplicable devices. Much was lost in the mêlée for objects were thrown hastily down unexpected shafts, and betraying odors deadened by the sudden kindling of pungent incense. But spattered blood was everywhere, and Malone shuddered whenever he saw a brazier or altar from which the smoke was still rising.

He wanted to be in several places at once, and decided on Suydam's basement flat only after a messenger had reported the complete emptiness of the dilapidated dance-hall church. The flat, he thought, must hold some clue to a cult of which the occult scholar had so obviously become the center and leader; and it was with real expectancy that he ransacked the musty rooms, noted their vaguely charnal odor, and examined the curious books, instruments, gold ingots, and glass-stoppered bottles scattered carelessly here and there. Once a lean, black-and-white cat edged between his feet and tripped him, overturning at the same time a beaker half full of red liquid. The shock was severe, and to this day Malone is not certain of what he saw; but in dreams he still pictures that cat as it scuttled away with certain monstrous alterations and peculiarities.

Then came the locked cellar door, and the search for something to break it down. A heavy stool stood near, and its tough seat was more than enough for the antique panels. A crack formed and enlarged, and the whole door gave way—but from the other side; whence poured a howling tumult of icecold wind with all the stenches of the bottomless pit, and whence reached a sucking force not of earth or heaven, which, coiling sentiently about the

paralyzed detective, dragged him through the aperture and down unmeasured spaces filled with whispers and wails, and gusts of mocking laughter.

Of course it was a dream. All the specialists have told him so, and he has nothing tangible to prove the contrary. Indeed, he would rather have it thus; for then the sight of old brick slums and dark foreign faces would not eat so deeply into his soul. But at the time it was all horribly real, and nothing can ever efface the memory of those nighted crypts, those titan arcades, and those half-formed shapes of hell that strode gigantically in silence holding half-eaten things whose still surviving portions screamed for mercy or laughed with madness. Odors of incense and corruption joined in sickening concert, and the black air was alive with the cloudy, semi-visible bulk of shapeless elemental things with eyes. Somewhere dark sticky water was lapping at onyx piers, and once the shivery tinkle of raucous little bells pealed out to greet the insane titter of a naked phosphorescent thing which swam into sight, scrambled ashore, and climbed up to squat leeringly on a carved golden pedestal in the black ground.

Avenues of limitless night seemed to radiate in every direction, till one might fancy that here lay the root of a contagion destined to sicken and swallow cities, and engulf nations in the fetor of hybrid pestilence. Here cosmic sin had entered, and festered by unhallowed rites had commenced the grinning march of death that was to rot us all to fungus abnormalities too hideous for the grave's holding. Satan here held his Babylonish court, and in the blood of stainless childhood the leprous limbs of phosphorescent Lilith were laved. Incubi and succubae howled praise to Hecate, and headless mooncalves bleated to the Magna Mater. Goats leaped to the sound of thin accursed flutes, and AEgipans chased endlessly after misshapen fauns over rocks twisted like swollen toads. Moloch and Ashtaroth were not absent; for in this quintessence of all damnation the bounds of consciousness were let down, and man's fancy lay open to vistas of every realm of horror and every forbidden dimension that evil had power to mold. The world and nature were helpless against such assaults from unsealed wells of night, nor could any sign or prayer check the Walpurgissage of horror which had come when a sage with the hateful locked and brimming coffer of transmitted demon-lore.

Suddenly a ray of physical light shot through these fantasms, and Malone heard the sound of oars amidst the blasphemies of things that should be dead. A boat with a lantern in its prow darted into sight, made fast to an iron ring in the slimy stone pier, and vomited forth several dark men bearing a long burden swathed in bedding. They took it to the naked phosphorescent thing on the carved gold pedestal, and the thing tittered and pawed the bedding. Then they unswathed it, and propped upright before the pedestal the gangrenous corpse of a corpulent old man with stubby beard and unkempt white hair. The phosphorescent thing tittered again, and the men produced bottles from their pockets and anointed its feet with red, whilst they afterward gave the bottles to the thing to drink from.

All at once, from an arcaded avenue leading endlessly away, there came the demoniac rattle and wheeze of a blasphemous organ, choking and rumbling out of the mockeries of hell in cracked, sardonic bass. In an instant every moving entity was electrified; and forming at once into a ceremonial procession, the nightmare horde slithered away in quiet of the sound—goat, satyr, and AEgipan, incubus, succuba, and lemur, twisted toad and shapeless elemental, dog-faced howler and silent strutter in darkness— all led by the abominable naked phosphorescent thing that had squatted on the carved golden throne; and that now strode insolently bearing in its arms the glassy-eyed corpse of the corpulent old man. The strange dark man danced in the rear, and the whole column skipped and leaped with Dionysiac fury. Malone staggered after them a few steps, delirious and hazy, and doubtful of his place in this or any world. Then he turned, faltered, and sank down on the cold damp stone, gasping and shivering as the demon organ croaked on, and the howling and drumming and tinkling of the mad procession grew fainter and fainter.

Vaguely he was conscious of chanted horrors, and shocking croakings afar off. Now and then a wail or whine of ceremonial devotion would float to him through the black arcade, whilst eventually there rose the dreadful Greek incantation whose text he had read above the pulpit of that dance-hall church.

"O friend and companion of night thou who rejoicest in the baying of dogs (here a hideous howl burst forth) and spilt blood (here nameless

sounds vied with morbid shriekings), who wanderest in the midst of shades among the tombs (here a whistling sigh occurred), who longest for blood and bringest terror to mortals (short, sharp cries from myriad throats), Gorgo (repeated as response), Mormo (repeated with ecstasy), thousandfaced moon (sighs and flute notes), look favorably on our sacrifices!"

As the chant closed, a general shout went up, and hissing sounds nearly drowned the croaking of the cracked bass organ. Then a gasp as from many throats, and a babel of barked and bleated words—"Lilith, Great Lilith, behold the Bridegroom!" More cries, a clamor of rioting, and the sharp, clicking footfalls of a running figure. The footfalls approached, and Malone raised himself to his elbow to look.

The luminosity of the crypt, lately diminished, had now slightly increased; and in that devil-light there appeared the fleeing form of that which should not flee or feel or breathe—the glassy-eyed, gangrenous corpse of the corpulent old man, now needing no support, but animated by some infernal sorcery of the rite just closed. After it raced the naked, tittering, phosphorescent thing that belonged on the carven pedestal, and still farther behind panted the dark men, and all the dread crew of sentient loathsomenesses. The corpse was gaining on its pursuers, and seemed bent on a definite object, straining with every rotting muscle toward the carved golden pedestal, whose necromantic importance was evidently so great. Another moment and it had reached its goal, whilst the trailing throng labored on with more frantic speed. But they were too late, for in one final spurt of strength which ripped tendon from tendon and sent its noisome bulk floundering to the floor in a state of jellyish dissolution, the staring corpse which had been Robert Suydam achieved its object and its triumph. The push had been tremendous, but the force had held out; and as the pusher collapsed to a muddy blotch of corruption the pedestal he had pushed tottered, tipped, and finally careened from its onyx base into the thick waters below, sending up a parting gleam of carven gold as it sank heavily to undreamable gulfs of lower Tartarus. In that instant, too, the whole scene of horror faded to nothingness before Malone's eyes; and he

fainted amidst a thunderous crash which seemed to blot out all the evil universe.

VII

Malone's dream, experienced in full before he knew of Suydam's death and transfer at sea, was curiously supplemented by some oddities of the case; though that is no reason why anyone should believe it. The three old houses in Parker Place, doubtless long rotten with decay in its most insidious form, collapsed without visible cause while half the raiders and most of the prisoners were inside; and both of the greater number were instantly killed. Only in the basements and cellars was there much saving of life, and Malone was lucky to have been deep below the house of Robert Suydam. For he really was there, as no one is disposed to deny. They found him unconscious by the edge of the night-black pool, with a grotesquely horrible jumble of decay and bone, identifiable through dental work as the body of Suydam, a few feet away. The case was plain, for it was hither that the smugglers' underground canal led; and the men who took Suydam from the ship had brought him home. They themselves were never found, or identified; and the ship's doctor is not yet satisfied with the certitudes of the police.

Suydam was evidently a leader in extensive man-smuggling operations, for the canal to his house was but one of several subterranean channels and tunnels in the neighborhood. There was a tunnel from this house to a crypt beneath the dance-hall church; a crypt accessible from the church only through a narrow secret passage in the north wall, and in whose chambers some singular and terrible things were discovered. The croaking organ was there, as well as a vast arched chapel with wooden benches and a strangely figured altar. The walls were lined with small cells, in seventeen of which— hideous to relate—solitary prisoners in a state of complete idiocy were found chained, including four mothers with infants of disturbingly strange appearance. These infants died soon after exposure to the light; a

circumstance which the doctors thought rather merciful. Nobody but Malone, among those who inspected them, remembered the somber question of old Delrio: "An sint unquan daemones incubi et succubae, et an ex tali, congressu proles nasci queat?"

Before the canals were filled up they were thoroughly dredged, and yielded forth a sensational array of sawed and split bones of all sizes. The kidnapping epidemic, very clearly, had been traced home; though only two of the surviving prisoners could by any legal thread be connected with it. These men are now in prison, since they failed of conviction as accessories in the actual murders. The carved golden pedestal or throne so often mentioned by Malone as of primary occult importance was never brought to light, though at one place under the Suydam house the canal, was observed to sink into a well too deep for dredging. It was choked up at the mouth and cemented over when the cellars of the new houses were made, but Malone often speculates on what lied beneath. The police, satisfied that they had shattered a dangerous gang of maniacs and alien smugglers, turned over to the Federal authorities the unconvicted Kurds, who before their deportation were conclusively found to belong to the Yezidee clan of devilsworshippers. The tramp ship and its crew remain an elusive mystery, though cynical detectives are once more ready to combat its smuggling and rumrunning ventures. Malone thinks these detectives show a sadly limited perspective in their lack of wonder at the myriad unexplainable details, and the suggestive obscurity of the whole case; though he is just as critical of the newspapers, which saw only a morbid sensation and gloated over a minor sadist cult when they might have proclaimed a horror from the universe's very heart. But he is content to rest silent in Chepachet, calming his nervous system and praying that time may gradually transfer his terrible experience from the realm of present reality to that of picturesque and semimythical remoteness.

Robert Suydam sleeps beside his bride in Greenwood Cemetery. No funeral was held over the strangely released bones, and relatives are grateful for the swift oblivion which overtook the case as a whole.

The scholar's connection with the Red Hook horrors, indeed, was never emblazoned by legal proof; since his death forestalled the inquiry he would

otherwise have faced. His own end is not much mentioned, and the Suydams hope that posterity may recall him only as a gentle recluse who dabbled in harmless magic and folk-lore.

As for Red Hook—it is always the same. Suydam came and went; a terror gathered and faded; but the evil spirit of darkness and squalor broods on amongst the mongrels in the old brick houses; and prowling bands still parade on unknown errands past windows where lights and twisted faces unaccountably appear and disappear. Age-old horror is a hydra with a thousand heads, and the cults of darkness are rooted in blasphemies deeper than the well of Democritus. The soul of the beast is omnipresent and triumphant, and Red Hook's legions of blear-eyed, pockmarked youths still chant and curse and howl as they file from abyss to abyss, none knows whence or whither, pushed on by blind laws of biology which they may never understand. As of old more people enter Red Hook than leave it on the landward side, and there are already rumors of new canals running underground to certain centers of traffic in liquor and less mentionable things.

The dance-hall church is now mostly a dance-hall, and queer faces have appeared at night at the windows. Lately a policeman expressed the belief that the filled-up crypt has been dug out again, and for no simply explainable purpose. Who are we to combat poisons older than history and mankind? Apes danced in Asia to those horrors, and the cancer lurks secure and spreading where furtiveness hides in rows of decaying brick.

Malone does not shudder without cause—for only the other day an officer overheard a swarthy squinting hag teaching a small child some whispering patois in the shadow of an areaway. He listened, and thought it very strange when he heard her repeat over and over again:

"O friend and companion of night thou who rejoicest in the baying of dogs and spilt blood, who wanderest in the midst of shades among the tombs, who longest for blood and bringest terror to mortals, Gorgo, Mormo, thousand-faced moon, look favorably on our sacrifices!"

*** END OF THE PROJECT GUTENBERG EBOOK THE HORROR AT RED HOOK ***

Updated editions will replace the previous one—the old editions will be renamed.

Creating the works from print editions not protected by U.S. copyright law means that no one owns a United States copyright in these works, so the Foundation (and you!) can copy and distribute it in the United States without permission and without paying copyright royalties. Special rules, set forth in the General Terms of Use part of this license, apply to copying and distributing Project Gutenberg™ electronic works to protect the PROJECT GUTENBERG™ concept and trademark. Project Gutenberg is a registered trademark, and may not be used if you charge for an eBook, except by following the terms of the trademark license, including paying royalties for use of the Project Gutenberg trademark. If you do not charge anything for copies of this eBook, complying with the trademark license is very easy. You may use this eBook for nearly any purpose such as creation of derivative works, reports, performances and research. Project Gutenberg eBooks may be modified and printed and given away—you may do practically ANYTHING in the United States with eBooks not protected by U.S. copyright law. Redistribution is subject to the trademark license, especially commercial redistribution.

START: FULL LICENSE

THE FULL PROJECT GUTENBERG LICENSE

PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the free distribution of electronic works, by using or distributing this work (or any other work associated in any way with the phrase “Project Gutenberg”), you agree to comply with all the terms of the Full Project Gutenberg™ License available with this file or online at www.gutenberg.org/license.

Section 1. General Terms of Use and Redistributing Project Gutenberg™ electronic works

1.A. By reading or using any part of this Project Gutenberg™ electronic work, you indicate that you have read, understand, agree to and accept all the terms of this license and intellectual property (trademark/copyright) agreement. If you do not agree to abide by all the terms of this agreement, you must cease using and return or destroy all copies of Project Gutenberg™ electronic works in your possession. If you paid a fee for obtaining a copy of or access to a Project Gutenberg™ electronic work and you do not agree to be bound by the terms of this agreement, you may obtain a refund from the person or entity to whom you paid the fee as set forth in paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only be used on or associated in any way with an electronic work by people who agree to be bound by the terms of this agreement. There are a few things that you can do with most Project Gutenberg™ electronic works even without complying with the full terms of this agreement. See paragraph 1.C below. There are a lot of things you can do with Project Gutenberg™ electronic works if you follow the terms of this agreement and help preserve free future access to Project Gutenberg™ electronic works. See paragraph 1.E below.

1.C. The Project Gutenberg Literary Archive Foundation (“the Foundation” or PGLAF), owns a compilation copyright in the collection of Project Gutenberg™ electronic works. Nearly all the individual works in the collection are in the public domain in the United States. If an individual work is unprotected by copyright law in the United States and you are located in the United States, we do not claim a right to prevent you from copying, distributing, performing, displaying or creating derivative works based on the work as long as all references to Project Gutenberg are removed. Of course, we hope that you will support the Project Gutenberg™ mission of promoting free access to electronic works by freely sharing Project Gutenberg™ works in compliance with the terms of this agreement for keeping the Project Gutenberg™ name associated with the work. You can easily comply with the terms of this agreement by keeping this work in the same format with its attached full Project Gutenberg™ License when you share it without charge with others.

1.D. The copyright laws of the place where you are located also govern what you can do with this work. Copyright laws in most countries are in a constant state of change. If you are outside the United States, check the laws of your country in addition to the terms of this agreement before downloading, copying, displaying, performing, distributing or creating derivative works based on this work or any other Project Gutenberg™ work. The Foundation makes no representations concerning the copyright status of any work in any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other immediate access to, the full Project Gutenberg™ License must appear prominently whenever any copy of a Project Gutenberg™ work (any work on which the phrase “Project Gutenberg” appears, or with which the phrase “Project Gutenberg” is associated) is accessed, displayed, performed, viewed, copied or distributed:

This eBook is for the use of anyone anywhere in the United States and most other parts of the world at no cost and with almost no restrictions whatsoever. You may copy it, give it away or re-use it under the terms of the Project Gutenberg License included with this eBook or online at www.gutenberg.org. If you are not located in the United States, you will have to check the laws of the country where you are located before using this eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived from texts not protected by U.S. copyright law (does not contain a notice indicating that it is posted with permission of the copyright holder), the work can be copied and distributed to anyone in the United States without paying any fees or charges. If you are redistributing or providing access to a work with the phrase “Project Gutenberg” associated with or appearing on the work, you must comply either with the requirements of paragraphs 1.E.1 through 1.E.7 or obtain permission for the use of the work and the Project Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted with the permission of the copyright holder, your use and distribution must comply with both paragraphs 1.E.1 through 1.E.7 and any additional terms imposed by the copyright holder. Additional terms will be linked to the Project Gutenberg™ License for all works posted with the permission of the copyright holder found at the beginning of this work.

1.E.4. Do not unlink or detach or remove the full Project Gutenberg™ License terms from this work, or any files containing a part of this work or any other work associated with Project Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this electronic work, or any part of this electronic work, without prominently displaying the sentence set forth in paragraph 1.E.1 with active links or immediate access to the full terms of the Project Gutenberg™ License.

1.E.6. You may convert to and distribute this work in any binary, compressed, marked up, nonproprietary or proprietary form, including any word processing or hypertext form. However, if you provide access to or distribute copies of a Project Gutenberg™ work in a format other than “Plain Vanilla ASCII” or other format used in the official version posted on the official Project Gutenberg™ website (www.gutenberg.org), you must, at no additional cost, fee or expense to the user, provide a copy, a means of exporting a copy, or a means of obtaining a copy upon request, of the work in its original “Plain Vanilla ASCII” or other form. Any alternate format must include the full Project Gutenberg™ License as specified in paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying, performing, copying or distributing any Project Gutenberg™ works unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing access to or distributing Project Gutenberg™ electronic works provided that:

• You pay a royalty fee of 20% of the gross profits you derive from the use of Project Gutenberg™ works calculated using the method you already use to calculate your applicable taxes. The fee is owed to the owner of the Project Gutenberg™ trademark, but he has agreed to donate royalties under this paragraph to the Project Gutenberg Literary Archive Foundation. Royalty payments must be paid within 60 days following each date on which you prepare (or are legally required to prepare) your periodic tax returns. Royalty payments should be clearly marked as such and sent to the Project Gutenberg Literary Archive Foundation at the address specified in Section 4, “Information about donations to the Project Gutenberg Literary Archive Foundation.”

• You provide a full refund of any money paid by a user who notifies you in writing (or by e-mail) within 30 days of receipt that s/he does not agree to the terms of the full Project Gutenberg™ License. You must require such a user to return or destroy all

copies of the works possessed in a physical medium and discontinue all use of and all access to other copies of Project Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of any money paid for a work or a replacement copy, if a defect in the electronic work is discovered and reported to you within 90 days of receipt of the work.

• You comply with all other terms of this agreement for free distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™ electronic work or group of works on different terms than are set forth in this agreement, you must obtain permission in writing from the Project Gutenberg Literary Archive Foundation, the manager of the Project Gutenberg™ trademark. Contact the Foundation as set forth in Section 3 below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend considerable effort to identify, do copyright research on, transcribe and proofread works not protected by U.S. copyright law in creating the Project Gutenberg™ collection. Despite these efforts, Project Gutenberg™ electronic works, and the medium on which they may be stored, may contain “Defects,” such as, but not limited to, incomplete, inaccurate or corrupt data, transcription errors, a copyright or other intellectual property infringement, a defective or damaged disk or other medium, a computer virus, or computer codes that damage or cannot be read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for the “Right of Replacement or Refund” described in paragraph 1.F.3, the Project Gutenberg Literary Archive Foundation, the owner of the Project Gutenberg™ trademark, and any other party distributing a Project Gutenberg™ electronic work under this agreement, disclaim all liability to you for damages, costs and

expenses, including legal fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE, STRICT LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE FOUNDATION, THE TRADEMARK OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you discover a defect in this electronic work within 90 days of receiving it, you can receive a refund of the money (if any) you paid for it by sending a written explanation to the person you received the work from. If you received the work on a physical medium, you must return the medium with your written explanation. The person or entity that provided you with the defective work may elect to provide a replacement copy in lieu of a refund. If you received the work electronically, the person or entity providing it to you may choose to give you a second opportunity to receive the work electronically in lieu of a refund. If the second copy is also defective, you may demand a refund in writing without further opportunities to fix the problem.

1.F.4. Except for the limited right of replacement or refund set forth in paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied warranties or the exclusion or limitation of certain types of damages. If any disclaimer or limitation set forth in this agreement violates the law of the state applicable to this agreement, the agreement shall be interpreted to make the maximum disclaimer or limitation permitted by the applicable state law. The invalidity or unenforceability of any provision of this agreement shall not void the remaining provisions.

1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation, the trademark owner, any agent or employee of the Foundation, anyone providing copies of Project Gutenberg™ electronic works in accordance with this agreement, and any volunteers associated with the production, promotion and distribution of Project Gutenberg™ electronic works, harmless from all liability, costs and expenses, including legal fees, that arise directly or indirectly from any of the following which you do or cause to occur: (a) distribution of this or any Project Gutenberg™ work, (b) alteration, modification, or additions or deletions to any Project Gutenberg™ work, and (c) any Defect you cause.

Section 2. Information about the Mission of Project Gutenberg™

Project Gutenberg™ is synonymous with the free distribution of electronic works in formats readable by the widest variety of computers including obsolete, old, middle-aged and new computers. It exists because of the efforts of hundreds of volunteers and donations from people in all walks of life.

Volunteers and financial support to provide volunteers with the assistance they need are critical to reaching Project Gutenberg™’s goals and ensuring that the Project Gutenberg™ collection will remain freely available for generations to come. In 2001, the Project Gutenberg Literary Archive Foundation was created to provide a secure and permanent future for Project Gutenberg™ and future generations. To learn more about the Project Gutenberg Literary Archive Foundation and how your efforts and donations can help, see Sections 3 and 4 and the Foundation information page at www.gutenberg.org.

Section 3. Information about the Project Gutenberg Literary Archive Foundation

The Project Gutenberg Literary Archive Foundation is a non-profit 501(c)(3) educational corporation organized under the laws of the state of Mississippi and granted tax exempt status by the Internal Revenue Service. The Foundation’s EIN or federal tax identification number is 64-6221541. Contributions to the Project Gutenberg Literary Archive Foundation are tax deductible to the full extent permitted by U.S. federal laws and your state’s laws.

The Foundation’s business office is located at 809 North 1500 West, Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up to date contact information can be found at the Foundation’s website and official page at www.gutenberg.org/contact

Section 4. Information about Donations to the Project Gutenberg Literary Archive Foundation

Project Gutenberg™ depends upon and cannot survive without widespread public support and donations to carry out its mission of increasing the number of public domain and licensed works that can be freely distributed in machine-readable form accessible by the widest array of equipment including outdated equipment. Many small donations ($1 to $5,000) are particularly important to maintaining tax exempt status with the IRS.

The Foundation is committed to complying with the laws regulating charities and charitable donations in all 50 states of the United States. Compliance requirements are not uniform and it takes a considerable effort, much paperwork and many fees to meet and keep up with these requirements. We do not solicit donations in locations where we have not received written confirmation of compliance. To SEND DONATIONS or determine the status of compliance for any particular state visit www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states where we have not met the solicitation requirements, we know of no

prohibition against accepting unsolicited donations from donors in such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot make any statements concerning tax treatment of donations received from outside the United States. U.S. laws alone swamp our small staff.

Please check the Project Gutenberg web pages for current donation methods and addresses. Donations are accepted in a number of other ways including checks, online payments and credit card donations. To donate, please visit: www.gutenberg.org/donate.

Section 5. General Information About Project Gutenberg™ electronic works

Professor Michael S. Hart was the originator of the Project Gutenberg™ concept of a library of electronic works that could be freely shared with anyone. For forty years, he produced and distributed Project Gutenberg™ eBooks with only a loose network of volunteer support.

Project Gutenberg™ eBooks are often created from several printed editions, all of which are confirmed as not protected by copyright in the U.S. unless a copyright notice is included. Thus, we do not necessarily keep eBooks in compliance with any particular paper edition.

Most people start at our website which has the main PG search facility: www.gutenberg.org.

This website includes information about Project Gutenberg™, including how to make donations to the Project Gutenberg Literary Archive Foundation, how to help produce our new eBooks, and how to subscribe to our email newsletter to hear about new eBooks.

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.