100% found this document useful (6 votes)
71 views

PDF SAS Certified Specialist Prep Guide Base Programming Using SAS 9 4 Sas Download

SAS

Uploaded by

bawoogroux
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (6 votes)
71 views

PDF SAS Certified Specialist Prep Guide Base Programming Using SAS 9 4 Sas Download

SAS

Uploaded by

bawoogroux
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 62

Download the full version of the textbook now at textbookfull.

com

SAS Certified Specialist Prep Guide Base


Programming Using SAS 9 4 Sas

https://textbookfull.com/product/sas-certified-
specialist-prep-guide-base-programming-using-
sas-9-4-sas/

Explore and download more textbook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

SAS certification prep guide base programming for SAS 9


Fifth Edition. Edition Sas Sas Sas

https://textbookfull.com/product/sas-certification-prep-guide-base-
programming-for-sas-9-fifth-edition-edition-sas-sas-sas/

textbookfull.com

SAS Certification Prep Guide Base Programming for SAS 9


4th Edition Sas Institute

https://textbookfull.com/product/sas-certification-prep-guide-base-
programming-for-sas-9-4th-edition-sas-institute/

textbookfull.com

Step by Step Programming with Base SAS 9 4 Second Edition


Sas Institute

https://textbookfull.com/product/step-by-step-programming-with-base-
sas-9-4-second-edition-sas-institute/

textbookfull.com

Agriculture to Zoology. Information Literacy in the Life


Sciences Jodee L. Kuden

https://textbookfull.com/product/agriculture-to-zoology-information-
literacy-in-the-life-sciences-jodee-l-kuden/

textbookfull.com
Basic Mechanical Engineering 2nd Edition Pravin Kumar

https://textbookfull.com/product/basic-mechanical-engineering-2nd-
edition-pravin-kumar/

textbookfull.com

Asynchronous Programming in Rust 1st Edition Carl Fredrik


Samson

https://textbookfull.com/product/asynchronous-programming-in-rust-1st-
edition-carl-fredrik-samson/

textbookfull.com

Blood royal the Wars of the Roses 1462 1485 First Pegasus
Books Hardcover Edition Bicheno

https://textbookfull.com/product/blood-royal-the-wars-of-the-
roses-1462-1485-first-pegasus-books-hardcover-edition-bicheno/

textbookfull.com

Biomedical Image Registration 6th International Workshop


WBIR 2014 London UK July 7 8 2014 Proceedings 1st Edition
Sébastien Ourselin
https://textbookfull.com/product/biomedical-image-registration-6th-
international-workshop-wbir-2014-london-uk-
july-7-8-2014-proceedings-1st-edition-sebastien-ourselin/
textbookfull.com

Life in Treaty Port China and Japan Donna Brunero

https://textbookfull.com/product/life-in-treaty-port-china-and-japan-
donna-brunero/

textbookfull.com
The Negotiator Professionals 7 1st Edition Jessica
Gadziala [Gadziala

https://textbookfull.com/product/the-negotiator-professionals-7-1st-
edition-jessica-gadziala-gadziala/

textbookfull.com
The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2019. SAS® Certified Specialist Prep Guide: Base Programming
Using SAS® 9.4. Cary, NC: SAS Institute Inc.
SAS® Certified Specialist Prep Guide: Base Programming Using SAS® 9.4
Copyright © 2019, SAS Institute Inc., Cary, NC, USA
ISBN 978-1-64295-179-0 (Hard copy)
ISBN 978-1-64295-176-9 (Epub)
ISBN 978-1-64295-177-6 (Mobi)
ISBN 978-1-64295-178-3 (PDF)
All Rights Reserved. Produced in the United States of America.
For a hard copy book: No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means,
electronic, mechanical, photocopying, or otherwise, without the prior written permission of the publisher, SAS Institute Inc.
For a web download or e-book: Your use of this publication shall be governed by the terms established by the vendor at the time you acquire this
publication.
The scanning, uploading, and distribution of this book via the Internet or any other means without the permission of the publisher is illegal and
punishable by law. Please purchase only authorized electronic editions and do not participate in or encourage electronic piracy of copyrighted
materials. Your support of others' rights is appreciated.
U.S. Government License Rights; Restricted Rights: The Software and its documentation is commercial computer software developed at private
expense and is provided with RESTRICTED RIGHTS to the United States Government. Use, duplication, or disclosure of the Software by the
United States Government is subject to the license terms of this Agreement pursuant to, as applicable, FAR 12.212, DFAR 227.7202-1(a), DFAR
227.7202-3(a), and DFAR 227.7202-4, and, to the extent required under U.S. federal law, the minimum restricted rights as set out in FAR
52.227-19 (DEC 2007). If FAR 52.227-19 is applicable, this provision serves as notice under clause (c) thereof and no other notice is required to be
affixed to the Software or documentation. The Government’s rights in Software and documentation shall be only those set forth in this Agreement.
SAS Institute Inc., SAS Campus Drive, Cary, NC 27513-2414
February 2019
SAS® and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other
countries. ® indicates USA registration.
Other brand and product names are trademarks of their respective companies.
P1:certsppg
Contents

How to Prepare for the Exam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii


Accessibility Features of the Prep Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

PART 1 SAS Certified Specialist Prep Guide 1

Chapter 1 • Setting Up Practice Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3


Accessing Your Practice Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Chapter 2 • Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5


Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
The Basics of the SAS Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
SAS Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Referencing SAS Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Chapter 3 • Accessing Your Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25


SAS Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Viewing SAS Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Chapter 4 • Creating SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33


Referencing an External Data File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
The IMPORT Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Reading and Verifying Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Using the Imported Data in a DATA Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Reading a Single SAS Data Set to Create Another . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Reading Microsoft Excel Data with the XLSX Engine . . . . . . . . . . . . . . . . . . . . . . . . . 47
Creating Excel Worksheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Writing Observations Explicitly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Chapter 5 • Identifying and Correcting SAS Language Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . 59


Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Correcting Common Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

Chapter 6 • Creating Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75


Creating a Basic Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Selecting Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Identifying Observations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Sorting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Generating Column Totals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Specifying Titles and Footnotes in Procedure Output . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Assigning Descriptive Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Using Permanently Assigned Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
iv Contents

Chapter 7 • Understanding DATA Step Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109


How SAS Processes Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Compilation Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Execution Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Debugging a DATA Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Testing Your Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

Chapter 8 • BY-Group Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129


Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Preprocessing Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
FIRST. and LAST. DATA Step Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

Chapter 9 • Creating and Managing Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141


Creating Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Modifying Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Specifying Lengths for Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Subsetting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Transposing Variables into Observations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Using SAS Macro Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

Chapter 10 • Combining SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175


How to Prepare Your Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Methods of Combining SAS Data Sets: The Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
One-to-One Reading: Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Concatenating: Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Match-Merging: Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Match-Merge Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Renaming Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Excluding Unmatched Observations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

Chapter 11 • Processing Data with DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207


The Basics of DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Constructing DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Nesting DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Iteratively Processing Observations from a Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Conditionally Executing DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

Chapter 12 • SAS Formats and Informats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225


Applying SAS Formats and Informats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
The FORMAT Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Defining a Unique Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Associating User-Defined Formats with Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

Chapter 13 • SAS Date, Time, and Datetime Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241


SAS Date and Time Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
Reading Dates and Times with Informats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Example: Using Dates and Times in Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Displaying Date and Time Values with Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Contents v

Chapter 14 • Using Functions to Manipulate Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253


The Basics of SAS Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
SAS Functions Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Converting Data with Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Manipulating SAS Date Values with Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Modifying Character Values with Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Modifying Numeric Values with Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Nesting SAS Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

Chapter 15 • Producing Descriptive Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307


The MEANS Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
The FREQ Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331

Chapter 16 • Creating Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335


The Output Delivery System (ODS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Creating HTML Output with ODS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
Creating PDF Output with ODS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Creating RTF Output with ODS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Creating EXCEL Output with ODS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
The EXPORT Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

PART 2 Workbook 363

Chapter 17 • Practice Programming Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365


Scenario 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Scenario 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Scenario 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Scenario 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Scenario 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Scenario 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Scenario 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
Scenario 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Scenario 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
Scenario 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373

PART 3 Quiz Answer Keys and Scenario Solutions 375

Appendix 1 • Chapter Quiz Answer Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377


Chapter 2: Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Chapter 3: Accessing Your Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Chapter 4: Creating SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Chapter 5: Identifying and Correcting SAS Language Errors . . . . . . . . . . . . . . . . . . . 380
Chapter 6: Creating Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Chapter 7: Understanding DATA Step Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Chapter 8: BY-Group Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Chapter 9: Creating and Managing Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Chapter 10: Combining SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Chapter 11: Processing Data with DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
vi Contents

Chapter 12: SAS Formats and Informats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388


Chapter 13: SAS Date, Time, and Datetime Values . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Chapter 14: Using Functions to Manipulate Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Chapter 15: Producing Descriptive Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Chapter 16: Creating Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391

Appendix 2 • Programming Scenario Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393


Scenario 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Scenario 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Scenario 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Scenario 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Scenario 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Scenario 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Scenario 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Scenario 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
Scenario 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Scenario 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
vii

How to Prepare for the Exam

Requirements and Details

Requirements
To complete examples in this book, you must have access to SAS windowing
environment, SAS Enterprise Guide, or SAS Studio.

Exam Objectives and Updates to This Book


The current exam objectives and a list of any updates to this book are available at
www.sas.com/certify. Exam objectives are subject to change.

Take a Practice Exam


Practice exams are available for purchase through SAS and Pearson VUE. For more
information about practice exams, see www.sas.com/base_programmer_cert.

Registering for the Exam


To register for the SAS 9.4 Base Programming – Performance-Based Exam, see the SAS
Global Certification website at www.sas.com/certify.

Additional Resources for Learning SAS Programming

From SAS Software

Help • SAS ®9: Select Help ð SAS Help and Documentation.


• SAS Enterprise Guide: Select Help ð SAS Enterprise
Guide Help.
• SAS Studio: Select the Help icon .

Documentation • SAS ®9: Select Help ð SAS Help and Documentation.


• SAS Enterprise Guide: Access online documentation on the
web.
• SAS Studio: Select the Help icon and then click Help.
viii How to Prepare for the Exam

On the Web

Base SAS Glossary support.sas.com/baseglossary

Bookstore www.sas.com/books

Certification www.sas.com/certify

Communities communities.sas.com

Knowledge Base support.sas.com/notes

Learning Center www.sas.com and click Learn. Then select


Get Started with SAS.

SAS Documentation support.sas.com/documentation


documentation.sas.com

SAS Global Academic Program www.sas.com and click Learn. Then select
For Students and Educators.

SAS OnDemand support.sas.com/ondemand/

Syntax Quick Reference Guide support.sas.com/content/dam/SAS/support/en/


books/data/base-syntax-ref.pdf

Training www.sas.com/training

Technical Support support.sas.com. Then select Technical


Support.

Syntax Conventions

In this book, SAS syntax looks like this example:


DATA output-SAS-data-set
(DROP=variables(s) | KEEP=variables(s));
SET SAS-data-set <options>;
BY variable(s);
RUN;
Here are the conventions that are used in the example:
• DATA, DROP=, KEEP=, SET, BY, and RUN are in uppercase bold because they
must be spelled as shown.
• output-SAS-data-set, variable(s), SAS-data-set, and options are in italics because
each represents a value that you supply.
• <options> is enclosed in angle brackets because it is optional syntax.
Syntax Conventions ix

• DROP= and KEEP= are separated by a vertical bar ( | ) to indicate that they are
mutually exclusive.
The example syntax that is shown in this book includes only what you need to know in
order to prepare for the certification exam. For complete syntax, see the appropriate SAS
reference guide.
x How to Prepare for the Exam
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
xi

Accessibility Features of the


Prep Guide

Overview
The SAS Certified Specialist Prep Guide: Base Programming Using SAS 9.4 is a test
preparation document that uses the following environments and products:
• SAS windowing environment
• SAS Enterprise Guide
• SAS Studio or SAS University Edition

Accessibility Documentation Help


The following table contains accessibility information for the listed products:

Accessibility Documentation Links

Where to Find Accessibility


Product or Environment Documentation

Base SAS (Microsoft Windows, UNIX, and support.sas.com/baseaccess


z/OS)

SAS Enterprise Guide support.sas.com/documentation/onlinedoc/


guide/index.html

SAS Studio support.sas.com/studioaccess

Documentation Format
Contact [email protected] if you need this document in an alternative digital
format.
xii Accessibility Features of the Prep Guide
1

Part 1

SAS Certified Specialist Prep


Guide

Chapter 1
Setting Up Practice Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Chapter 2
Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Chapter 3
Accessing Your Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Chapter 4
Creating SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Chapter 5
Identifying and Correcting SAS Language Errors . . . . . . . . . . . . . . . . . 59

Chapter 6
Creating Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Chapter 7
Understanding DATA Step Processing . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Chapter 8
BY-Group Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

Chapter 9
Creating and Managing Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

Chapter 10
Combining SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175

Chapter 11
Processing Data with DO Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

Chapter 12
SAS Formats and Informats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
2

Chapter 13
SAS Date, Time, and Datetime Values . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

Chapter 14
Using Functions to Manipulate Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253

Chapter 15
Producing Descriptive Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307

Chapter 16
Creating Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
3

Chapter 1

Setting Up Practice Data

Accessing Your Practice Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3


Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Practice Data ZIP File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Accessing Your Practice Data

Requirements
To complete examples in this book, you must have access to SAS Studio, SAS
Enterprise Guide, or the SAS windowing environment.

Practice Data ZIP File


The ZIP file includes SAS data sets, Microsoft Excel workbooks (.xlsx), CSV files
(.csv), and TXT files (.txt) that are used in examples in this book. To access these files
and create your practice data, follow the instructions below.

Instructions
1. Navigate to support.sas.com/content/dam/SAS/support/en/books/data/base-guide-
practice-data.zip, download and save the practice data ZIP file.
2. Unzip the file and save it to a location that is accessible to SAS.
3. Open the cre8data.sas program in the SAS environment of your choice.
• SAS Studio: In the Navigation pane, expand Files and Folders and then navigate
to the Cert folder within the practice-data folder.
• SAS Enterprise Guide: In the Servers list, expand Servers ð Local ð Files, and
then navigate to the Cert folder in the practice-data folder.
• SAS windowing environment: Click File ð Open Program, and then navigate
to the Cert folder in the practice-data folder.
4. In the Path macro variable, replace /folders/myfolders with the path to the
Cert folder and run the program.
%let path=/folders/myfolders/cert;
4 Chapter 1 • Setting Up Practice Data

Important: The location that you specify for the Path macro variable and the
location of your downloaded SAS programs should be the same location.
Otherwise, the cre8data.sas program cannot create the practice data.

Your practice data is now created and ready for you to use.
TIP When you end your SAS session, the Path macro variable in the
cre8data.sas program is reset. To avoid having to rerun cre8data.sas every
time, run the libname.sas program from the Cert folder to restore the libraries.
5

Chapter 2

Basic Concepts

Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
The Basics of the SAS Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
SAS Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Global Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
DATA Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
PROC Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
SAS Program Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Processing SAS Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Log Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Results of Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
SAS Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Predefined SAS Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Defining Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
How SAS Files Are Stored . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Storing Files Temporarily or Permanently . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Referencing SAS Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Referencing Permanent SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Referencing Temporary SAS Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Rules for SAS Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
VALIDVARNAME=System Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
VALIDMEMNAME=System Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
When to Use VALIDMEMNAME=System Option . . . . . . . . . . . . . . . . . . . . . . . . . 17
SAS Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Overview of Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Descriptor Portion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
SAS Variable Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Data Portion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
SAS Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Extended Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Chapter Quiz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
6 Chapter 2 • Basic Concepts

Getting Started
In the SAS 9.4 Base Programming – Performance-Based exam, you are not tested on the
details of running SAS software in the various environments. However, you might find
such information useful when working with the practice data.
You can access a brief overview of the windows and menus in the SAS windowing
environment, SAS Enterprise Guide, and SAS Studio at http://video.sas.com/. From
Categories select How To Tutorials ð Programming. Select the video for your SAS
environment. Other tutorials are available from the SAS website.

The Basics of the SAS Language

SAS Statements
A SAS statement is a type of SAS language element that is used to perform a particular
operation in a SAS program or to provide information to a SAS program. SAS
statements are free-format. This means that they can begin and end anywhere on a line,
that one statement can continue over several lines, and that several statements can be on
the same line. Blank or special characters separate words in a SAS statement.
TIP You can specify SAS statements in uppercase or lowercase. In most situations,
text that is enclosed in quotation marks is case sensitive.
Here are two important rules for writing SAS programs:
• A SAS statement ends with a semicolon.
• A statement usually begins with a SAS keyword.
There are two types of SAS statements:
• statements that are used in DATA and PROC steps
• statements that are global in scope and can be used anywhere in a SAS program

Global Statements
Global statements are used anywhere in a SAS program and stay in effect until changed
or canceled, or until the SAS session ends. Here are some common global statements:
TITLE, LIBNAME, OPTIONS, and FOOTNOTE.

DATA Step
The DATA step creates or modifies data. Input for a DATA can include raw data or a
SAS data set. Output from a DATA step can include a SAS data set or a report. A SAS
data set is a data file that is formatted in a way that SAS can understand.
For example, you can use DATA steps to do the following:
• put your data into a SAS data set
• compute values
The Basics of the SAS Language 7

• check for and correct errors in your data


• produce new SAS data sets by subsetting, supersetting, merging, and updating
existing data sets

PROC Step
The PROC step analyzes data, produces output, or manages SAS files. The input for a
PROC (procedure) step is usually a SAS data set. Output from a PROC step can include
a report or an updated SAS data set.
For example, you can use PROC steps to do the following:
• create a report that lists the data
• analyze data
• create a summary report
• produce plots and charts

SAS Program Structure


A SAS program consists of a sequence of steps. A program can be any combination of
DATA or PROC steps. A step is a sequence of SAS statements.
Here is an example of a simple SAS program.
Example Code 1 A Simple SAS Program

title1 'June Billing'; /* #1 */


data work.junefee; /* #2 */
set cert.admitjune;
where age>39;
run; /* #3 */
proc print data=work.junefee; /* #4 */
run;

1 The TITLE statement is a global statement. Global statements are typically outside
steps and do not require a RUN statement.
2 The DATA step creates a new SAS data set named Work.JuneFee. The SET
statement reads in the data from Cert.AdmitJune. The new data set contains only
those observations whose value for Age is greater than 39.
3 If a RUN or QUIT statement is not used at the end of a step, SAS assumes that the
beginning of a new step implies the end of the previous step. If a RUN or QUIT
statement is not used at the end of the last step in a program, SAS Studio and SAS
Enterprise Guide automatically submit a RUN and QUIT statement after the
submitted code.
4 The PROC PRINT step prints a listing of the new SAS data set. A PROC step begins
with a PROC statement, which begins with the keyword PROC.
8 Chapter 2 • Basic Concepts

Output 2.1 PRINT Procedure Output

Processing SAS Programs

When a SAS program is submitted for execution, SAS first validates the syntax and then
compiles the statements. DATA and PROC statements signal the beginning of a new
step. The beginning of a new step also implies the end of the previous step. At a step
boundary, SAS executes any statement that has not been previously executed and ends
the step.
Example Code 2 Processing SAS Programs

data work.admit2; /* #1 */
set cert.admit;
where age>39;
proc print data=work.admit2; /* #2 */
run; /* #3 */

1 The DATA step creates a new SAS data set named Work.Admit2 by reading
Cert.Admit. The DATA statement is the beginning of the new step. The SET
statement is used to read data. The WHERE statement conditionally reads only the
observations where the value of the variable Age is greater than 39.
2 The PROC PRINT step prints the new SAS data set named Work.Admit2. The
PROC PRINT statement serves as a step boundary in this example because a RUN
statement was not used at the end of the DATA step. The PROC step also implies the
end of the DATA step.
3 The RUN statement ends the PROC step.

TIP The RUN statement is not required between steps in a SAS program. However, it
is a best practice to use a RUN statement because it can make the SAS program
easier to read and the SAS log easier to understand when debugging.
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
The Basics of the SAS Language 9

Log Messages
The SAS log collects messages about the processing of SAS programs and about any
errors that occur. Each time a step is executed, SAS generates a log of the processing
activities and the results of the processing.
When SAS processes the sample program, it produces the log messages shown below.
Notice that you get separate sets of messages for each step in the program.

Log 2.1 SAS Log Messages for Each Program Step

5 data work.admit2;
6 set cert.admit;
7 where age>39;
8 run;

NOTE: There were 10 observations read from the data set CERT.ADMIT.
WHERE age>39;
NOTE: The data set WORK.ADMIT2 has 10 observations and 9 variables.
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds

9 proc print data=work.admit2;


NOTE: Writing HTML Body file: sashtml.htm
10 run;

NOTE: There were 10 observations read from the data set WORK.ADMIT2.
NOTE: PROCEDURE PRINT used (Total process time):
real time 0.35 seconds
cpu time 0.24 seconds

Results of Processing

The DATA Step


Suppose you submit the sample program below:
data work.admit2;
set cert.admit;
where age>39;
run;

When the program is processed, it creates a new SAS data set, Work.Admit2, containing
only those observations with age values greater than 39. The DATA step creates a new
data set and produces messages in the SAS log, but it does not create a report or other
output.

The PROC Step


If you add a PROC PRINT step to this same example, the program produces the same
new data set as before, but it also creates the following report:
data work.admit2;
set cert.admit;
where age>39;
run;
10 Chapter 2 • Basic Concepts

proc print data=work.admit2;


run;

Figure 2.1 PRINT Procedure Output

Other Procedures
SAS programs often invoke procedures that create output in the form of a report, as is
the case with the FREQ procedure:
proc freq data=sashelp.cars;
table origin*DriveTrain;
run;

Figure 2.2 FREQ Procedure Output

Other SAS programs perform tasks such as sorting and managing data, which have no
visible results except for messages in the log. (All SAS programs produce log messages,
but some SAS programs produce only log messages.)
proc sort data=cert.admit;
by sex;
run;
SAS Libraries 11

Log 2.2 SAS Log: COPY Procedure Output

11 proc sort data=cert.admit;


12 by sex;
13 run;

NOTE: There were 21 observations read from the data set


CERT.ADMIT.
NOTE: The data set CERT.ADMIT has 21 observations and 9
variables.
NOTE: PROCEDURE SORT used (Total process time):
real time 0.01 seconds
cpu time 0.00 seconds

SAS Libraries

Definition
A SAS library contains one or more files that are defined, recognized, and accessible by
SAS, and that are referenced and stored as a unit. One special type of file is called a
catalog. In SAS libraries, catalogs function much like subfolders for grouping other
members.

Predefined SAS Libraries


By default, SAS defines several libraries for you:
Sashelp
a permanent library that contains sample data and other files that control how SAS
works at your site. This is a Read-Only library.
Sasuser
a permanent library that contains SAS files in the Profile catalog and that stores your
personal settings. This is also a convenient place to store your own files.
Work
a temporary library for files that do not need to be saved from session to session.
You can also define additional libraries. When you define a library, you indicate the
location of your SAS files to SAS. After you define a library, you can manage SAS files
within it.
Note: If you are using SAS Studio, you might encounter the Webwork library. Webwork
is the default output library in interactive mode. For more information about the
Webwork library, see SAS Studio: User’s Guide.

Defining Libraries
To define a library, you assign a library name to it and specify the location of the files,
such as a directory path.
You can also specify an engine, which is a set of internal instructions that SAS uses for
writing to and reading from files in a library.
12 Chapter 2 • Basic Concepts

You can define SAS libraries using programming statements. For information about how
to write LIBNAME statements to define SAS libraries, see Assigning Librefs on page
25.
TIP Depending on your operating environment and the SAS/ACCESS products that
you license, you can create libraries with various engines. Each engine enables you
to read a different file format, including file formats from other software vendors.
When you delete a SAS library, the pointer to the library is deleted, and SAS no longer
has access to the library. However, the contents of the library still exist in your operating
environment.

How SAS Files Are Stored


A SAS library is the highest level of organization for information within SAS.
For example, in the Windows and UNIX environments, a library is typically a group of
SAS files in the same folder or directory.
The table below summarizes the implementation of SAS libraries in various operating
environments.

Table 2.1 Environments and SAS Libraries

Environment Library Definition

Windows, UNIX a group of SAS files that are stored in the


same directory. Other files can be stored in the
directory, but only the files that have SAS file
extensions are recognized as part of the SAS
library.

z/OS a specially formatted host data set in which


only SAS files are stored.

Storing Files Temporarily or Permanently


Depending on the library name that you use when you create a file, you can store SAS
files temporarily or permanently.

Table 2.2 Temporary and Permanent SAS Libraries

Temporary SAS libraries last only for the If you do not specify a library name when you
current SAS session. create a file, the file is stored in the temporary
SAS library, Work. If you specify the library
name Work, then the file is stored in the
temporary SAS library. When you end the
session, the temporary library and all of its
files are deleted.
Referencing SAS Files 13

Permanent SAS libraries are available to you To store files permanently in a SAS library,
during subsequent SAS sessions. specify a library name other than the default
library name Work.
In the example, when you specify the library
name Cert when you create a file, you are
specifying that the file is to be stored in a
permanent SAS library.

Referencing SAS Files

Referencing Permanent SAS Data Sets


To reference a permanent SAS data set in your SAS programs, use a two-level name
consisting of the library name and the data set name:
libref.dataset
In the two-level name, libref is the name of the SAS library that contains the data set,
and data set is the name of the SAS data set. A period separates the libref and data
set name.

Figure 2.3 Two-Level Permanent SAS Name

Referencing Temporary SAS Files


To reference temporary SAS files, you can specify the default libref Work, a period, and
the data set name. For example, the two-level name, Work.Test, references the SAS data
set named Test that is stored in the temporary SAS library Work.
Random documents with unrelated
content Scribd suggests to you:
beszél.
– Azt beszéli a poronty, magyarázá azután a csavargó, hogy az
apja, anyja mind halálán van, őtet meg a többi testvérét
szétküldözték, hogy menjenek a világba, holnap eltemetik az apját,
holnapután eladják a házát, s most ez sír, mert nem tudja, hogy
merre van a világ? – Gyerünk ifjasszony, nem tartozik ez mi ránk.
– Ismeri kend talán a szülőit?
– Hogyne? A vén Simkó az, a kinek háza itt az út mellett látszik
leégve. – No, adjon egy krajczárt annak a gyereknek, aztán
menjünk.
Cynthia azonban e helyett felvette a gyermeket az ölébe, s nagy
byzanczi shawljával beburkolgatá s oda szorítá magához,
biztatgatva, hogy ne sírjon, majd visszaviszi az apjához és azután
nem kell neki elmenni a világba.
A csavargó, botjára támaszkodva nézte, hogy mit csinál? Olyan
vadul leránczolá szemöldeit, mintha nem tetszenék neki ez a munka.
– Siessünk, barátom! szólt Cynthia s a morogva közeledő
szelindek kényszeríté a csavargót előre menni, mindenütt sarkában
szaglálva s minden mozdulatát gyanusan kisérve. Ha az ember néha
magasabbra találta emelni botját, úgy villogtak az eb szemei zöldes-
veres fényben.
A csavargó félig magában, félig az ebhez beszélve, dörmögé
szlávul:
– Morogj, morogj. Veled majd hamar elkészülnék én, csak azt a
gyereket ne vette volna fel.
Cynthia gyanútlan, félelem nélkül lépett az ember nyomaiba,
egyedül a gyermekkel volt elfoglalva, azt ápolá, vigasztalta, a
gyermek utóbb aprózott sírással elaludt ölében.
– Nem lesz nehéz az a gyerek? szólt egyszer a csavargó,
hátrafordulva; majd én viszem.
– Csitt! alszik, monda a hölgy és még lépni sem mert oly
hangosan, mint azelőtt, nehogy fölébreszsze.
A hold nemsokára újra kiszabadult a felhők közől s Cynthia itt
már egészen ismerni látszék az utat. Jól emlékezék a szénégető
tanyára balrul, attól nem messze kell lenni a leégett háznak. Mint
valami nagy vár romja tünt az elő a fák közől az éjszaka optikai
csalásában.
– Itt van a ház; szólt a csavargó. Tegyük le azt a porontyot, innen
haza talál.
Cynthia nem felelt neki, hanem egyenesen a háznak tartott,
belépett a be sem reteszelt ajtón; a kutya odafeküdt a küszöbön
keresztül.
A csavargó az ablakhoz ment, onnan nézett be a szobába.
A tűzhelyen néhány hasáb fa égett, az világítá be a kis szűk
szobát; a hányt-vetett deszkákon keresztül a hold oda sütött egy
ágyra, melyen egy elsoványodott női alak feküdt, vénebb a nyomor,
mint az idő miatt, egy rossz gubával takarózva; az ágylábnál egy
férfi feküdt hanyatt, hátával a falnak támaszkodva s két kezét hóna
alá dugva, talán hogy melegebbje legyen.
– Tietek ez a gyermek? kérdé a grófnő a rábámuló pór szülőktől.
Miért hagyjátok elveszni? Nem kell kétségbe esni mindjárt, jó az
Isten.
– Hát mit csináljunk? szólt siránkozó hangon a pór, a nő csak
nyögni tudott már; nincs mit enni adjunk neki, jobb ha elvesz,
holnap minket is kiűznek a házból, adósság, portió miatt, bár
egyenesen a temetőbe mennénk innen. Meg sem hagynak halni
békességgel. Bár legalább meghalhatnánk egy fekvő-helyünkben.
Nem, mint a haldokló kutyát, kihúznak a sövény mellől az árokba.
– Azt talán nem fogják tenni.
– Oh azt teszik. Ez az új úr ott a kastélyban nem igen számlálja
az embereket, a kik meghalnak.
Cynthia szive mélyében megborzadt.
– Mennyi az a tartozás, a miért el akarják venni a házatokat?
– Száz forint, nyögött a pór, mintha oly súlyos volna ez összeg,
hogy ki sem birja lélekzettel.
Cynthia ezüst száz forintot értett, pedig azon a vidéken még most
is váltóban számítanak.
– Hát a gazdaság rendbehozása mennyibe kerülne?
– Oh Istenem. Az is száz. Húsz esztendeig izzadtunk, koplaltunk,
s egy esztendő alatt mind elvesztettük. Sok pénz az nagyon. Nem
lehet azt megbirni, nem.
Cynthia kivette a keblébe tett tárczát s a benne volt kétszáz
pengőt oda adta a férfinak.
– A gyermekre gondot viseljetek. Isten áldjon.
Azzal sietve kijött a házból.
A szegény család örömsikoltása kihangzott utána, a beteg anya
egész a küszöbig vonszolta magát ágyából, hogy szótlan sirásával
tudassa áldását, melynek más hangot adni nem birt; a férfi csak ezt
rebegé: én Istenem, oh én Istenem! s nem tudott hová lenni azzal a
sok pénzzel.
Cynthia most előre sietett; mintha az áldó hangok elől akarna
szabadulni, vezetője a háta mögött maradt, a nagy komondor meg a
mellett.
A csavargó egyre csóválta fejét s dörmögött, hol a gyanakodó
kutyához beszélve; most már öklében sem tartotta a görcsös botot,
hanem hóna alá vette.
– Furcsa ez, nagyon furcsa… De bolond kutya vagy te, hogy úgy
morogsz rám, hiszen jó ember vagyok én… Fölvette a gyereket és
oda adta neki a pénzét… Hm, hm. – Jó szelindek, ne szaglálj engem.
Én ölném azt meg, nem te, a ki a te kisasszonyodat bántani
merné!… Ki hinne el ilyet a mai világban, ha nem látta volna?…
Cynthia észrevevé, hogy nagyon előre sietett, s megállt, hogy
kisérőjét bevárja.
– Sietős dolga van a kisasszonynak? kérdé a csavargó, most már
sokkal lágyabb, csaknem elérzékenyült hangon.
– Elfáradt, jó öreg, úgy-e? viszonzá a delnő s maga mellett
hagyta a vénet ballagni. Lassabban is mehetünk.
– Vén vagyok már, kisasszonyom. Megnyomorított az idő, meg
más is. De nem panaszképen mondom. A mi bajom volt,
megérdemeltem, s a mit megszolgáltam, azért kiszenvedtem.
Cynthia odahívta egészen magához az öreg bujdosót, s bár a
komondor mindig kettőjök közé furakodott váltig, egész bizalmasan
beszélgetett vele; belehozta a beszédbe, elmondatta vele élte egész
történetét, zajos, bűnös fiatalságát, hosszú fogságának éveit, iszákos
és gonosz életét, elhagyatott voltát. A vén ember sok dolgot
elmonda őszintén, töredelmes szivvel, miket az itélő biró előtt és a
gyóntató atyának ki nem vallott soha.
A hölgy nem pirongatá, nem gyalázta érte, hanem szánta és
megismeré róla, hogy a mit lelkében szenvedett, az még több és
nehezebb volt, mint a miket a törvény mért valaha rá, s majd mind
jobban lesz az még ezután.
– Furcsa ez, nagyon furcsa… dörmögé az öreg ember, fejét
csóválgatva. Soha ilyen lénynyel nem jött ő még össze, a kinek így
elmondta volna minden búját, baját, a ki vigasztalta volna valaha
életében!
Ezalatt mindig közelebb jöttek a brenóczi vár fekete tornyai, mik
az út mélyén keresztül régóta láthatók voltak a holdvilágos tájon.
Cynthia figyelmes szemei észrevették a gyertyafényt, mely még most
is világít a kastélyban. Tehát Krénfy úr még ébren van. A gyertyafény
majd az egyik, majd a másik ablakot világítja meg. Krénfy most
vizsgálja sorba a szobákat. Végre megállapodik egy helyen. Cynthia
messziről is ismeri azt a szobát. Az erkélyterem az. Krénfy úr ott
szentel egy órát az ábrándozásnak.
Az erdő szélében megállítá kísérőjét a grófnő.
– Ne jőjjön tovább, innen oda találok magam is. A járást
ismerem.
A csavargó leült egy nagy kőre az útfelen s azt mondta: hogy
várni fog, míg a kisasszony visszatér. Bár ne esnék rajta semmi baj.
***
Krénfy úr el volt fáradva, mint egy lóversenyből hazatért paripa.
Ez nagy munkába kerülő nap volt. Reggeltől estig a méltóságos urak
mulattatásával erőltetni magát; keresztülesni mindazon kínzáson, a
mit egy szárazföldre kihúzott viziállat érez a nem neki rendeltetett
légkörben; azután, hogy a grófok eltávoztak, még be kelle számolni
a cselédséggel, nehogy egy nappal többet hiába fizessen nekik;
kiveszekedni magát bérencz inasokkal, ledisputálni tőlök egy pár
garast, fölétetett zabért, eltört findzsa-fülekért s azután meg a
porczellán- és edényárus biztosával czivakodni, hogy úgy kapta már
törötten az edényeket; zongorákat, tükröket még azon éjjel
összepakoltatni, mert azok mind napszámban vannak ott; –
szőnyegeket felgöngyölgetni, függönyöket, csillárokat leszedetni és
azokat mind a számukra rendeltetett deszka ládákba elpakolni, s
minden egyes emberrel lármázni, huzakodni, s mikor ez mind
megvan, akkor még újra végigfutni valamennyi szobát, nem tévedt-e
valami igaz jószág a sok idegen vagyon közé?
És azután a mint magára maradt, a mint bezárt minden ajtót
egyenkint, a mint a kastélybeli zaj, lárma, csörömpölés, kalapácsolás
lassankint elcsendesült, akkor elkezdték valami különös érzések
szállni meg mellének azt a részét, a hol a poéták állítása szerint a
szívnek kellene lenni. Kezdte érezni, hogy ez a kastély sokkal
üresebb ma, mint volt azelőtt. A szobák között is kezdett
különbséget tenni: az egyik nem oly kivánatos, mint a másik. Azt
hitte, hogy azokat a lábnyomokat is észrevehette a tükörsima
parquetten, a mik ott végig lejtettek, s képzelte magában, hogy a
mikor ezeket a tündérpicziny lábnyomokat azok az utána úszó
hosszú hajfürtök beseprik, hogy senki se találjon reájok. Itt állt, ezen
a helyen ült, ezen az ablakon nézett ki, oda mutatott, hol arczképe
állt egykor és sehol semmi nyoma ittlétének többé. Krénfy úr
százszor is összekeres minden széket, minden asztalalját, nem
vesztett-e el valamit a csodálatos hölgy nála? nem feledett-e el ott
valami csekélységet, csak egy gombostűt! Hisz az oly rendes dolog,
hogy hölgyek egy-egy gombostűt elejtenek; – ez semmit, semmit.
A zongora-terembe, hol annyi elragadtatással kísérte Cynthia
ábrándjait, nagy bajára nem mehetett, mert az be volt zárva. A
kulcsát a grófnő vitte el magával, azt gondolva, hogy ide költöznek
át nehány napra, s hihetőleg elfeledte azt visszaküldeni. Lakatost
pedig a városból kelle hozatni, a ki felnyissa.
Krénfy úr testben, lélekben kimerülten rogyott le egy székre s
fejét lehajtá az asztalra, mint egy őrült.
E pillanatban úgy tetszék neki, mintha ama bezárt ajtó zárába
egy kulcsot tolnának be csendesen.
Egyszerre felugrott. Hallgatózék. Talán csak képzelődött, vagy
álmodta ezt a hangot.
Most egyet fordult a kulcs a zárban.
Krénfy első gondolatja az volt, hogy rablók akarnak rá törni, s
hirtelen lekapva pisztolyait a falról, elkiáltá magát:
– Ki az? mit akar? Én lövök!
És mind a két pisztolyt az ajtónak szegezte.
A kulcs másodszor is elfordult, az ajtó feltárult s a két pisztoly
nyilása előtt ott állt Cynthia grófnő.
Krénfy halavány volt és reszketett, a hideg veriték ragyogott
egész orczáján.
Cynthia nyugodtan, szeliden nézett rá.
A férfi a rémülettől és csodálkozástól elfogultan állt e váratlan
tünemény előtt; csak későre jutott annyi is eszébe, hogy azokat a
pisztolyokat még sem kellene olyan sokáig a grófnéra szegezve
tartani, hanem elhajítani a szegletbe.
Cynthia nem várta a megszólítást, nem várta, hogy bámuló
látogatottja kérdéshez jőjjön, maga sietett hozzá.
– Uram. Kérem, ne üssön zajt. Egyedül jövök. Egy rövid szóra.
– A grófnő! hebegé Krénfy. Hogy jött ide? Honnan? Lehet-e ez?
– Rendkívüli dolog mindenesetre; de nem lehetett másképen.
Engedje ön, hogy leüljek; elfáradtam, gyalog jövök Maróthról.
– Gyalog idáig? ebben az éjszakában? szólt Krénfy, kiben minden
szónál növekedett az elbirhatatlan bámulat.
Cynthia leült egy asztal mellé. Látszott rajta, hogy egészen el volt
fulladva.
– Láthatja ön uram, hogy valami borzasztó oknak kell annak
lenni, a mi engem erre kényszerített. Röviden kell mondanom, mert
minden pillanat veszély rám nézve. Kérem önt, üljön mellém. Krénfy
úr égett és fázott, midőn a kérelmet teljesítenie kellett; félig gyanítá
e látogatás okát.
– Ön néhány óra előtt egy levelet kapott Strassbourgból; azt a
levelet ön elég gondatlan volt bátyámnak megmutatni.
– Oh kérem… Krénfy úr valamit akart hazudni.
– Már ez megtörtént. Most tudja meg ön ennek a következését.
Azt a levelet egy ember irta önnek, a ki most Strassbourgban az
adósok börtönében ül és onnan nem szabadulhat; Illés ez emberrel
már egyszer vivott párbajt, s akkor ő sebesült meg. Nem fog
nyugodni addig, azt fogadta fel, míg ismét és ismét nem kényszeríti
a megverekedésre, a mig csak egyik kettőjük közől el nem esik.
– Istenem! sopánkodék Krénfy úr.
– Nem titkolom el az okot sem, mely miatt Illés ez ember ellen
tör; ez a férfi nekem gyermekkori ismerősöm. Ez az én bűnöm.
Láthatja ön, hogy semmit sem titkolok el ön előtt. Kezébe tettem le
jó híremet, ön engem semmivé tehet egy szavával. Elmondhatja,
hogy brenóczi Maróth Cynthia egy éjfél utáni órában önt egyedül
fölkereste, saját hálótermében, hogy itt ön előtt megvallotta bűneit,
hogy ön látta őt maga előtt sírni, könyörögni, bűneit megvallani,
magáról elfelejtkezni. E perczben csak Isten hatalmában és az
önében vagyok. Mindent koczkára tettem e lépéssel.
Vannak emberek, kiket hasonló bizalmas vallomások nagyon
lehűtöttek volna. Krénfy úr nem tartozott azok közé. Ez eszme őt
felmelegíté. Ezek a szavak közel hozták, lealázták hozzá ezt a büszke
grófnőt, a ki most nem volt előtte egyéb, mint egy bájos némber, a
kinek úgy illik, ha sír, ha könyörög, ha ótalomért esd. Egy botlás azt
szerzi a nőnek, hogy egyszerre mindazok ismerősüknek tartják, kik
azelőtt rá sem mertek nézni.
Krénfy úr igen tökéletes fogalmat vélt alkotni magában Cynthia
grófnő felől, a midőn őt e helyzetben látva, így gondolkodott:
«Ez egy könnyelmű kalandornő, a ki nem hiába okoz főfájást a
brenóczi grófoknak. Megismerkedett tilos úton egy deli korhelylyel,
azt persze a grófok megugratták; most megtudta, hogy egykori
kedvese külföldön az adósok börtönébe jutott, szeretné onnan
kiszabadítani; nem azért, mintha különösen hűséges akarna hozzá
lenni, mert hiszen hasonló korhelyt találhatott, talált is bizonyosan
eleget; hanem mert az ilyen hölgyek rendesen jó szivűek szoktak
lenni. Az összeg mindössze sem sok, a tárgy megéri az áldozatot.
Szép hölgyek miatt sok fösvény ember tett már elveiből kivételt.
Meglássuk, hogy mit tehetünk érte.
– Kezében vagyok önnek… szólt reszkető hangon Cynthia. Olyan
lépést tettem, a mit ha csak egy lélek megtud, el vagyok veszve.
Önnek csak egy szóval kell tudatni bátyámmal, hogy itt voltam és
semmivé vagyok téve.
(Van eszemben, gondolá Krénfy úr, – hogy főbe lövessem
magamat.)
– Legyen nyugodt nagysád, szólt egész bizalmasan közelebb
huzódva Cynthiához. Senki sem fog erről megtudni semmit.
Fölkelt, megvizsgálta az ajtókat. Azután ismét visszatért.
Minden ajtó zárva van. Beszélhetünk nyugodtan.
Azzal egy szivart vett fel asztaláról, meggyújtotta a gyertyánál s
levetve magát a pamlagra a grófnő mellé, elkezde fesztelenül
beszélni, mint a ki nagyon otthon érzi magát helyzetében.
Oh a grófnőnek e perczben egészen másutt jártak érzelmei,
gondolatai, hogy sem a durva figyelmetlenséget észre is vette volna.
– Nagyságod azt kivánja ugyebár, szólt Krénfy, nagy füstkötelet
fújva szájából, hogy Tarnóczy urat az adósok börtönéből
kiszabadítsuk. Bizzék bennem. Nagysád kedvéért mindent
megcselekszem. Nekem ugyan Illés gróf megtiltotta, hogy ez ügybe
avatkozzam, de nagysád szemeinek egy pillantása elfeledteti velem
azt a tilalmat.
Cynthia most is oly gyanútalanul nézett ez emberre, mint a kinek
eszméje sincs arról, a mire ez e pillanatban gondol.
– Az összeg, melyet Tarnóczy úrnak kell küldeni, elég szép. Úgy
hiszem ezer frank. Azonfelül még a perköltségek és a szükséges uti
költség, hogy Tarnóczy úr rögtön eltünhessen Strassbourgból, ez fog
tenni ismét ezer frankot.
– Istenem, Istenem! sóhajta Cynthia, ki minden pénzkészletét ez
órában egy nyomorult családnak ajándékozá.
– Ha épen nagysádnak nem volna kezénél ez összeg, ámbátor ez
órában nagyon ki vagyok költekezve, a méltóságos grófoknak nagy
összegeket kellett kifizetnem, de nagysád bűbájos szavára kész
vagyok azt előteremteni a föld alól is.
Cynthia nem merte arczán mutatni örömét. Érzé, hogy teljes
szüksége van önmérsékletére, minden indulatos köszönet és
hálálkodás helyett a száraz szerződési térre vitte a kérdést.
– Én e szivességet nem akarom sem ingyen, sem biztosíték
nélkül elfogadni. A brenóczi grófok minden jószágaikat zálogba
vetették már, de még nekem van egy csekély birtokom, melyet
anyám hagyott rám. Szegény jó anyám. Nem szép tőlem, hogy az ő
sírjára alkuszom. Ő nem tartozott a brenóczi nagy urak közé, kiket
utódaik kriptástul együtt eladnak, a hogy feküsznek sorban. Ő egy
igénytelen, sokat szenvedett nő volt, ki a legegyszerűbb sírkő alatt
nyugszik, a legcsöndesebb kertben, csak néhány lépésnyire attól a
háztól, a hol annyit szenvedett. Ezt a házat, ezt a kertet, ezt a sírt én
zálogba adom önnek. Látja ön, milyen nagy kincseket áldozok fel. Én
nem tudom, mennyit érhet ez mindössze? de gondolom, hogy
kétezer frank fedve lehet általa. Kérem uram, adjon ön tollat
kezembe és mondja, hogy mit irjak? Az idő rám nézve rövid.
Krénfy úr sokszerűen megbűvölve érzé magát a különös nő által,
annyiféle érzésen vitte őt keresztül, a mitől ő máskor távol tudta
magát tartani; majd vágyat érzett iránta, majd szánalmat, majd
végtelenül magasan látta őt, majd végtelenül alant.
– Jól van, én nagysád kedvéért mindent megteszek, szólt
nemeslelkű szenvelgéssel, s letette szájából a szivart, mert az nem
illett a nemeslelkűség kifejezéséhez. Nagysád ez ügyet sürgetősnek
találja, ugy-e bár?
– Oh igen, meg kell előznöm Illést, ki holnap egyenesen
Strassbourgba indul, hogy azt a párbajt folytassa, melynek vagy ő,
vagy Tarnóczy fog végre áldozatul esni. Láthatja ön, hogy miért
tettem e kétségbeesett lépést.
– Tökéletesen értem. Erre nézve nagyon könnyű lesz segítenünk.
Nagysád ír egy levelet Saint Gris strassbourgi kereskedőnek, vagy
talán más akármi név alatt, akár névtelenül, ez nem jelent semmit.
Sőt legjobb is lesz, ha épen semmi nevet sem tesz levele alá, ez
minden lehető kellemetlenséget elhárít.
A lehető kellemetlenségek közt leglehetőbbnek tartotta Krénfy úr
azt, hogy Illés gróf, ha megtudja közremunkálását, felnyársalja.
– Én félek nevemet aláirni, felelt Cynthia. Egyébiránt úgy teszek,
a hogy ön kivánja.
– E levélhez mellékel nagysád egy váltót kétezer frankról, mely
általam lesz elfogadva; az említett bankár régi összeköttetésben áll
velem s váltóim készpénzül forognak kezében. Nagysád utasítni
fogja őt, hogy e váltó értékéből levonva Tarnóczy úr adósságát, őt
rögtön szabadon bocsátani siessen, s a fenmaradó összeget
kézbesítve neki, adja tudtára, hogy illanjon tova, mig Illés gróf oda
nem érkezik.
Cynthia grófnő e lenéző kifejezésre egészen elfeledkezett
magáról.
– Uram! ő nem gyáva! monda indulattól reszkető hangon. Azután
halk hangon tevé hozzá: nem akarom, hogy megölje testvéremet.
Krénfy úr bocsánatot kért válogatatlan szavaiért, nem akart
bántani velök.
– Nagysád maga leggyorsabban fogja eszközölni e levél
elküldését; az egyszerű levélpostával térítvény mellett elébb kézben
leend az, mint Illés gróf megérkezhetnék.
– Kérek uram egy tollat.
Krénfy úr oda húzta a grófnő elé iróasztalát, azzal a kis réz
dæmonnal tintatartója fölött, egy jó tollat keresett ki számára s
odanyújtá, hogy irjon vele.
Valóban nem volt tréfa dolog ezeket a finom rózsáshegyű
gyöngéd ujjakat elnézni, mint simulnak végig a papiron, hajszálnál
vékonyabb betükből font sorokat rajzolva arra és elnézni, mint kisérik
ezek a nagy fekete szemekre zárt hosszú selyempillák ezeket a
microscopicus betüket, s elnézni, mint rebegik utána néha ezek a
piros, élveteg ajkak egy reszketeg rándulással a leirt szót… Krénfy úr
három váltót elrontott, a midőn így szemközt ülve a grófnővel, rajta
felejté szemeit.
A levél készen volt. Krénfy úr átadta a váltót, Cynthia
összehajtotta a levelet s egy finom kis amethyst gyűrűvel lepecsételé
azt. Krénfy úr saját kezével írta rá a czímet.
– És most irjuk meg a záloglevelet. Mondja ön, mit irjak.
– Óh könyörgöm, elvégzem én azt magam; szólt Krénfy úr, és
hozzá fogott a záloglevél irásához, de alig tudott vele elkészülni s
annyi minden bohóságot belefirkált, hogy maga sem igazodott ki
belőle; azok a száraz hivatalos műszavak sehogy sem jutottak
eszébe, inkább szerette volna azok helyett ezt irni: «én szeretlek, én
imádlak, én bolond vagyok;» vagy földhöz csapni a tollat és nem irni
semmit.
– Készen van ön? kérdezé Cynthia, látva, hogy Krénfy úr oly
sokáig mereszti rá szemeit, s a toll hegyét rágja.
– Igen, felelt az, s úgy reszketett a keze, midőn a grófnőnek
átadta az irást.
Cynthia végig futott rajta; talán nem is olvasta azt, hanem maga
elé tette és teljes nyugalommal aláirta a nevét.
Mikor Krénfy úr e szép selyemszál nevet leirva látta, már akkor
tökéletesen eszén kívül volt, szemei égtek, arcza hevült; mindenről
elfelejtkezett, csak e bűbájos tünemény számára volt érzése,
gondolatja. Nem törődött vagyonával, nem Illés gróf pisztolyaival,
nem a pokol valamennyi bűnhödésével. Őrült volt.
Cynthia pedig minderről nem tudott semmit.
Mikor nevét aláirta, a nélkül, hogy ránézne az emberre,
odanyujtá neki az iratot.
Krénfy úr egy perczig reszkető kezeiben tartá Cynthia grófnő
kötelezvényét, s akkor egyszerre kétfelé repeszté azt.
– Mit tesz ön? kiálta föl a grófnő, s egyszerre rátekinte a férfira.
Egy pillanat elég volt a grófnőnek az indulatzavart arczra, hogy
azon helyzetet átértse, melyben forog. Még csak szempillái
rezzenésével sem árulá el magát.
Közönyös, hideg tekintettel vett újra maga elé egy tiszta
papirlapot; biztos, szilárd kézzel ráirta a keletet és saját nevét,
azután felvette a ketté hasított iratot s azt a fehér lappal együtt
Krénfy elé helyezve, csendes, de határozott hangon mondá:
– Irja ön uram újra. Én ajándékot elfogadni nem tudok.
Krénfy gondolá magában, hogy így még jobb. Szive teljes
rosszaságát visszanyeré.
– Kérem önt, irja le ezt ismét, szólt Cynthia és fölkelve, fél
kezével azon szék karjára támaszkodott, melyen Krénfy ült és írt,
kinek úgy tetszék, hogy a grófnő vállain keresztül nézi az irását.
A férfi sietett az irással, nem törődött most a betük szépségével,
nem a helyesirással, csak mentül elébb készen legyen vele, úgy
tetszék neki, hogy a delnő forró lehellete minden perczben éri
arczát, a mint háta mögött állva nézi, hogy ugyanazt másolja-e le?
Az a kis rézördög úgy látszott vigyorogni, kezeivel, lábaival verni az
ütenyt a rossz gondolatokhoz.
Az utolsó sorok alig birtak már valami olvasható jelleggel.
Egy hosszú gondolatjel a végére.
– Készen van, grófkisasszony! szólt rekedten a férfi s lázongó
kebellel ugrott fel a székről.
És ime, – a grófnő nem volt sehol.
Krénfy bámulva tekinte körül. Senkisem volt rajta kívül a
teremben.
Végig simítá kezével homlokát. Keze hideg volt, mint a jég és
homloka forró, mint a tűz. Azt képzelé néhány perczig, hogy álomból
ébredt.
Hanem hiszen az oklevél ott fekszik az asztalán, a grófnő saját
aláirásával. Két percz előtt itt állt ő még, a toll még nedves, melylyel
írt; neki itt kell közel valahol lenni.
Minden ajtó zárva volt, csak a zongora-teremhez vezető volt
nyitva; abból pedig sehova sem volt kijárás.
Krénfy sebesen futott azon terembe, két szoba vezetett odáig,
mindkettő tárva-nyitva volt, egyikben sem talált senkit; a
harmadikba lépett és az is üres volt.
Csak egy nagy falitükör állt az átelleni falon, mely egy perczre
visszadöbbenté; úgy tetszék neki, a mint véletlenül belé pillanta,
mintha négy öt végig kinyitott szoba következnék még azután,
melyekből egy vad, bódult kinézésű férfi tör elő: a milyennel nem jó
éjszaka ily magányos házban találkozni. Idő kellett hozzá, míg
észrevette, hogy az saját arcza.
Hanem most már nem mondott le erről az arczról. Ha mindjárt
egyenesen a kárhozatra kellene is azzal mennie. A hölgynek itt kell
valahol elrejtve lennie.
Összeszaladgálta az egész szobát, székeket, pamlagokat
elránczigált helyökből. A legapróbb butort megnézte minden oldalról,
a legkisebb fiókokat kinyitogatá, a szőnyegeket letépte. Sehol senki.
Ismét visszarohant az elhagyott szobákba, összehányt, vetett
minden utjába eső tárgyat. Néha egy-egy perczre megállt merően,
hogy nagy lelki erőfeszítéssel eszébe juttasson magának valami
elképzelhető rejteket, mit még nem keresett meg és azután újra
visszafutott oda, a hol már tizszer volt és újra felhányta butorait és
lábaival toporzékolt, mint a ki meg van dühödve.
Minden ajtót, minden ablaktáblát megpróbált.
Mind zárva voltak. Az ablakokat kinyitogatá, kinézett a
holdvilágos éjszakába. Olyan csendes, olyan néma volt minden. A
hűs éjszakai levegő égő arczába csapott kivülről. A fák susogásán
kívül semmi nesz; még a kutyák sem ugatnak. Itt nem járhatott
idegen.
Pedig itt volt. – Hová lett? – Semmi nyoma…
Most egyszerre jutott eszébe, – talán a hűs éji lég hozta azt, –
hogy titkos látogatója ép oly megfoghatlanul jött e zárt, kijárástalan
termekbe, mint a hogy távozott. Erre nem volt nyugalmas ideje
hamarább eszmélni.
Itt titkos kijárásnak kell lenni e szobákból.
Ez a gondolat egyuttal meg is rettenté. Ez ismeretlen úton ugyan
az, ki csábító arczczal jelent meg nála, éles késsel is küldhet valakit
reá, midőn alszik!
Elkezdte a falakat kopogtatni. Sehol sem talált ürességet a
szőnyegek alatt. Talán a padlat négyszögei félremozdíthatók? A
teríték szőnyegein semmi rendetlenség sem látszott. Az ész megállt
vele, nem tudott hová gondolni többé. Az az egy nem jutott eszébe,
hogy az ajtók küszöbeit vizsgálja, melyeknek egyike, valamely
egyszerű szeg kirántása után, rögtön lesülyed s miután a rajta állót a
földszintre leszállította, egy rúgó nyomására ismét fölemelkedik.
A hideg veriték csorgott homlokáról e hosszas keresés
sikertelensége után. Bezárta valamennyi ajtaját és azután leült
iróasztala mellé, maga elé vette pisztolyait s eszméletlenül bámult
leégő gyertyája fényébe.
Az éji őr künn a kastély előtt vontatott hangon kiáltá:

«Éjfél után óra kettő!


Dicsértessék a teremtő!

***
Éjfél után két óra volt, midőn Cynthia grófnő elhagyta a brenóczi
kastélyt. Az ismeretes rejtek-út egy széles közfal üregében vezetett
végig s kívül egy vékony márvány lap által volt álczázva, mely
szorosan odaillett a bástyák alját szegélyező többi márványkoczkák
közé, s ajtó gyanánt befelé nyilt.
A mint Krénfy figyelmesen másolta egyik iratot a másikról,
Cynthia felhasználta a perczet, s nesztelenül el tudott suhanni háta
mögül, úgy hogy midőn ez az utolsó szavakat irta, akkor ő már a
várkertben volt, hová a hosszú bástya vezetett, azon a szűk sötét
rejtek úton, melyen évek óta nem járt emberi nyom, most a
tekervényes angol kerten kellett végig futnia még, hogy az erdőt
elérje, melynek szélében kisérőjét elhagyá.
A nagy komondort, midőn ide jött, bayadér shawljával egy fához
megkötötte örvénél fogva, a mit az csendesen engedett magával
tenni. Annyi volt neki azt a vékony foulard kendőt elszakítani, mint
egy pókhálót. Cynthia attól tartott, hogy egész a házig találja őt
kisérni e jóakaratú pártfogója, s a házi ebek zajt ütnek miatta. Ott
találta, a hol hagyá. Az eb tudta, hogy csendesen kell neki lenni,
csak a farkát csóválta, mig Cynthia eloldá a fától.
Azután futott előre az eb, hátra-hátra tekintve s olyankor füleit
hegyezve és nyelvét kitolva, mintha mondaná, hogy már most
siessünk!
A vén csavargó ott várt az erdőszélen Cynthiára. A legszélső fákig
előre mert jönni.
Cynthia egyenesen oda futott hozzá.
– Nagyon köszönöm önnek, hogy megvárt. Igen nagy szükségem
van önre. Ennek a levélnek holnap reggel a a legelső posta-
állomáson kell lenni.
– Ott lesz.
– Ezen levéltől két ember élete függ, ha gyorsan nem jut kézhez,
meghal valaki és az leghamarább én leszek.
– Sietek vele, kisasszonyom.
– Ime vegye ön ezt jutalmul jó öreg, szólt Cynthia, lecsatolva
gyémántos karkötőjét s az öregnek nyújtva.
– Én? kiálta az, visszaijedve s eltávolító mozdulatot tett kérges
kezével. Nekem nem kell az; nekem semmi sem kell. Tudja:
megteszem én azt egy jó szóért, – semmi másért. Tegye el előlem
azt a ragyogó portékát. Valamit mondok. Mikor éjszaka egyedül jár
sötét erdőn keresztül, ne rakjon fel olyan ékszereket magára.
Oh Cynthia erre nem is gondolt. Hisz az rá nézve mind nem volt
értékes tárgy. Hanem a postára mindenesetre pénz kell. E végett oda
nyujtá a csavargónak zománczos portmonnaie-ját, melyben az
apróbb érczpénzt szokta tartani.
A csavargó kivett belőle egy huszast.
– Ennyi elég lesz a postára. A többit visszaadta.
– Oh nem lesz elég, monda a grófnő, a levél igen messze megy.
És azzal még néhány darab pénzt tukmált rá az öregre s kérte,
hogy már most siessen, maga pedig ellenkező irányban indult sebes
léptekkel a maróti útra.
A csavargó egy darab ideig gondolkozva állt, azután utána sietett
a delnőnek.
Cynthia észrevette, hogy követi s bevárta.
– Mi kell, öreg?
– Bocsásson meg, kisasszony. Nem engedhetem, hogy így
egyedül térjen vissza, elkisérem az erdőn keresztül. Tudja, nem
szeretném, ha valami baj érné. Még majd ezekre a szegény
emberekre hárulna a gyanú, a kiknek pénzét adta.
– Oh ez nem baj. Csak a levéllel siessen. Én nem félek, engem
megvéd az Isten.
Azzal sietve ment tova, úgy ellebbenve, mint valami holddal járó
tünemény.
A vén csavargó fejcsóválva dörmögte magában:
– Az Isten, az Isten! Milyen nagyon kell bízni annak az Istenben,
a ki egyedül védtelenül mer járni setét ismeretlen éjszakában, és a ki
egy levelet egy ismeretlen csavargóra mer bízni, a melytől emberek
élete, halála függ. Milyen különös az, milyen különös!…

Három órát ütött István gróf ismétlő zsebórája, midőn a feje


fölötti szobában valami neszt hallott.
– Ön az, Cynthia? kérdé a gróf.
– Igen, atyám.
– Mit csinál?
– Öltözöm az úthoz. Négy órakor el kell indulnunk.
– Úgy? tudom, szólt a gróf s nagyot ásított, mint a hogy a
közönséges emberek szoktak s inasa után csengetve, felöltözteté
magát, miután legelébb szokása szerint egy pohár mandulatejet
czukorral megivott.
Néhány percz múlva Cynthia is lejött hozzá, egészen más úti
ruhába öltözve, mint tegnap.
István gróf gondolá magában, hogy a kinek a pipereváltoztatás
még az úton is eszébe jut, annál nem igen lehetnek veszélyesek a
szív sebei.
– Hogyan aludt ön? kérdezé Cynthiát udvarias nyájassággal.
– Igen jól, de keveset. Atyám sokat zörgött álmában.
– Valóban? Álmodhattam valamit, már nem jut eszembe.
István gróf valóban azt hitte, hogy Cynthia hallotta, miszerint ő
nyugtalanul aludt.
Pontban négy órakor előálltak a hintók, az ég kezdett már
szürkülni; a hold közel volt a láthatárhoz, és fénye nem vetett
árnyékot többé.
Cynthia grófnő engedelmet kért atyjától, hogy egy perczre
meglátogathassa anyja sírját, István gróf nem ellenzé, sőt maga is
elkisérte odáig. Oh a gróf nem fél a kisértetektől. A kik már
meghaltak, azok jó emberek.
Cynthia semmi túlságos komédiát sem követett el anyja sírja
előtt, mint ezt István gróf talán várta, egyszerűen oda térdelt a fűbe,
és megcsókolva a követ, susogá:
– Köszönöm jó tanácsodat, anyám, édes anyám.
Azután még egyszer megcsókolá a sírkövet, és felkelt, karját
István gróf karjába akasztá, ki őt udvariasan felvezeté a hintókig és
gondolá magában, hogy milyen derék nő az, a ki még holta után is
ad jó tanácsokat a leányának.
Ott fölsegíté Cynthiát a hintóba, kitől könyezve bucsúzott el a vén
kulcsár feleségestül és a mint azok elbucsúztak, oda jött a hintóhoz
a nagy házi kutya, lobonczos farkával mind összesározva a
körülállókat s hiába mondták neki: csihi-te! juhoz-te! erővel oda
furakodott a hintóhoz, föltette két lábát a szőnyegre s orrával a
grófnő kezeit kereste.
A grófnő úgy tett, mintha most látta volna először az ebet, s
lehajolt hozzá, megczirogatva fejét.
– Oh be szép eb, jaj be kedves eb. Adják nekem, elviszem
magammal! elfér itt a lábunk alatt; nem lesz alkalmatlan.
S mielőtt választ adhattak volna neki, fölsegítette a nagy
medvényi komondort a hintóba, mely szépen meghúzta magát a
lábai alatt.
– Már látott valaha valaki ilyet, dörmögé a kulcsárnéhoz a
társalkodóné; ezt a nagy kegyetlen komondort elhozni magával
Bécsbe. Képes lesz ott a szalonban tartani. Ilyen bolond szeszélyei
vannak. Ezt most csak azért teszi, hogy engemet szekirozzon vele,
mert tudja, hogy mennyire félek a kutyáktól.
István gróf vállat vont rá:
– Nem kell a szeszélyeinek ellenmondani…
… Hét óra után néhány perczczel érkeztek meg a hintók a megyei
székvárosba.
Illés gróf rögtön sietett Cynthiát a vendéglőben fölkeresni.
– Vártalak. Jó jelnek tartom, hogy siettél. Határoztál-e már?
Cynthia óráját nézte.
– Nyolcz óráig tart határidőm. Még csak húsz percz hét után.
– Igaz. Majd addig elfecsegjük az időt.
Legjobb időtöltés volt ez idő alatt Illés grófnak a nagy
komondoron gyakorolni dressirozó szenvedélyét, mely eleinte úrnője
széke alá behúzta magát, de miután az előhívta, kénytelen volt
magát Illés gróf tanrendszerének alávetni, ki őt két lábra állította,
fejét felemelve tartani, orra hegyén kenyérdarabokat egyensulyozni
tanítá. Az ilyenekhez nem szokott komondor nyugtalanul szűkölt,
nyihogott, s fejét mindig Cynthia felé forgatá, mintha kérdené tőle:
«ne kapjak ennek az inába?»
De úrnője ilyesmire nem látszott őt bátorítani. Csak azzal
vigasztalta, hogy majd nem soká tart ez.
Illés gróf azután azt próbálta, hogy széttépett zsemlyéket hajigált
fel az eb előtt: hogyan tudja elkapni. Az hozzá sem kapott.
– Oh be ostoba állat ez, hisz ez semmit sem tud.
Egyszerre ütötte a nyolcz órát. Illés gróf abba hagyta a
kutyamulatságot s testvéréhez fordult.
– Grófnő, nyolcz óra. Tetszett elhatározni magát?
– Igen.
– Lemond?
– Soha sem, felelt Cynthia és félre fordítá fejét.
Illés gróf egy couplet danáit dudorászta, míg felöltönyét magára
vevé.
– Akkor én utazom.
– A hova tetszik.
– Adieu.
A postakocsi készen állt. Illés gróf elbucsúzott atyjától s a hintóba
veté magát. Midőn a fogadó előtt elhajtott, felnézett Cynthia
ablakaira. A grófnő nem állt ott; még csak utána sem nézett…
… Cynthia grófnő ezután mintegy négy hét mulva, midőn már
Bécsben voltak, egy levélkét kapott Illés gróftól, melyben csak ez
volt irva:
«Cynthia! ön valóban egy ördögi némber.»

VI. A KIS TÜNDÉR HÁZA.


A boldogult Tarnóczy Mihály életében egyike volt a legjobb
gazdáknak. Jó karban tartott vagyona megért kétszázezer pengőt.
Teljes életében irtózott az adósságtól; soha semminemű kötelezvény,
váltó, vagy egyéb adóslevél azon megtiszteltetésben nem részesült,
hogy az ő nevét leirva viselje; sőt e névaláirási iszonya annyira ment
nála, hogy ha valami ártatlan bizonyítványt, vagy egyéb levelet
kellett aláirnia, nevét mindig oly szorosan a végsorok alá irta, hogy a
benne levő hosszú betűk szárai beleolvadtak a felettök levő irásba,
ilyenformán biztosítva magát az ellen, hogy névaláirásából váltót ne
csináljanak, melyre, mint sokszor gyűlölettel mondá, a
legkeskenyebb fidibusz is alkalmatos.
S lám, hogy elesik az alma a fájától; egyetlen figyermeke, Béla,
épen nem ütött e tekintetben apjára. Ő már huszonhárom éves és
tizenegy hónapos korában revocált mintegy negyvenezer forint
adósságot s igen valószinű volt, hogy azután sem felejtette el a
nevét leirni.
Ez a jó fiú mindazon phasisokon keresztül ment, a miket a fiatal
tékozlók meg szoktak érni; ruháit eladta, ha megszorult; adósa volt
minden embernek, a kivel valaha három szót váltott; el-elszökött,
úgy hogy hirét sem lehetett hallani; engedte magát ujságokban
hirdettetni; bujósdit játszott egy csomó váltóügyvéd, pinczér,
mesterember, mosóné, vendéglős és más egyéb fogdmegekkel
esztendőkig; ha pedig pénzt kapott, az épen csak addig tartott nála,
a míg senkivel sem beszélt, egy jó szóra kiosztotta azt a legelső
bolondok és semmiháziak között. Ha ma kifizették az adósságát, egy
hó mulva megint annyi volt neki, mert az tökéletesen mindegy volt
ránézve, hogy a kapott száz forintért ezeret irjon-e alá, vagy
tizezeret?
Ilyenformán legokosabb dolog volt őt sorsára bízni és nem
törődni vele. Az öreg Tarnóczy a leghiggadtabb phlegmával hallotta
fia bohóságait, miket olykor hirül hoztak neki, s teljesen meg volt
nyugodva abban a jövendő kilátásban, hogy majd mikor ő meghal,
ezt az ő szépen rendezett birtokát milyen egyszerre dobra fogják
ütni, hogy vezeti egyik üzér erre, a másik arra ökreit, lovait
kötőféknél fogva; Béla fia ott fog állni a kerítésen kívül egy rossz
köpönyegben, egy kölcsönkért köpönyegben.
Pedig milyen szép, milyen daliás fiú volt! mikor az országgyűlésen
járt, minden leány, minden asszony utána volt bolondulva, mennyi
szerencsét csinálhatott volna életében, ha nem olyan szeles bolond.
Hanem már ennek mind vége van. Ezen segíteni nem lehet.
Mikor az öreg úr érezte közelgő halálát, oda hívta betegágyához
leányát, Irént.
Akkor még ez nem volt idősebb tizenöt évesnél; de már akkor is
oly okos, oly figyelmes teremtés; anyja halála óta ő vezette az egész
házi gazdaságot és pedig az öreg úr teljes elégültségére.
Az ember a ránézésnél fogva alig merte volna ezt róla feltenni;
hisz alig látszott idősebbnek tizenkét éves gyermeknél, oly finom, oly
parányi volt; apró kezecskék, lábacskák, mikről alig lehet elhinni,
hogy arra legyenek rendeltetve, mikre más ember keze és lába; oly
piczi kis száj és oly ártatlan, halavány arcz; hacsak ezek a nagy,
komoly, eleven szemek nem hirdették volna, hogy az, a kit mi
gyermeknek néztünk első pillanatra, komoly, tiszteletreméltó delnő, a
kivel okosan kell beszélni és meggondolni, hogy mit mondunk előtte,
mert ha balgaságot találunk kiejteni, ő bizonyosan megigazít, s ha
valamit nem tudunk, ő tudni fogja és megmagyarázza.
Midőn betegágya elé hivatá Tarnóczy Mihály okos leánykáját,
megmagyarázá neki, hogy egész vagyoni állapotja mennyiben áll?
Előkeresteté vele az illető okiratokat, ott azokat elrendezve,
csomagokba kötözteté s azután tudtára adá, hogy azok között melyik
a legutolsó végrendelete. Kötelezvényekben közel kétszázezer pengő
forintja volt; ez tisztán keresmény. Ezt az egész összeget Irénnek
hagyta, hogy azt halála után rögtön minden gyámnoki őrködés
nélkül kezéhez vehesse, vele rendelkezhessék szabadon. Négyszem
között elmondá azután leányának, hogy ez a szép jószág, mihelyt az
ő szemét befogják, Béla kezére jut, mint ősi; azt pedig egy év alatt
elfoglalják tőle azok, kik annyiban rosszabbak a sírban lakó
férgeknél, hogy az eleven embert eszik meg. A birtok, a kastély, a
szép kertek kótyavetyére fognak jutni. Irén ne engedje azt idegen
kézre szállni; hanem vegye meg. Így az ő szerzeménye leend az.
«Legalább te akkor nem fogod engedni, hogy szegény szerencsétlen
bátyád az útfélen haljon meg».
Ez volt az öreg Mihály úr szava.
És minden akként teljesedett be. A mint ő meghalt, egyik idéző
levél a másikat követte a tarnóczi ház kapuján s nem sokára eladó
lett jószág és ház, s Irén azt atyja hagyatékából magához váltá,
miáltal alig tizenhét éves korában a tarnóczi uradalomnak teljes
hatalmú úrnőjévé lett.
Tizenhét éves leány, tündéri szépséggel és a mellett szabadon
rendelkezhető nagy birtokkal nem igen maradhatott titokban a
környék ifjai előtt. Az ilyen árvának örömest akad gondviselője.
Hanem Irén nem olyan könnyen választott magának pártfogót, a
kit a jó magyar nők ezen megtisztelő czímmel szoktak nevezni: «az
én uram». A ki neki ura akart lenni, annak őt elébb meg kellett
hódítani.
Ennek következtében soha Gyimóton és Karádfalván annyi
kosarat nem kötöttek, mint a mennyit ez a kicsi parányi tündér
kiosztogatott jók és gonoszak között. Utoljára elnevezték kis
Turandotnak, a minek ő nagyon örült, mert legalább kevesebbet
alkalmatlankodtak neki.
Ő odahaza is igen jól találta magát. Tökéletes ura volt tetteinek,
saját tetszése szerint választhatta házi körét.
Hajdani nevelőnője, madame Rayon, beszármazott lengyel nő,
kinek férje Francziaországban esett el a juliusi napokban, most
rendes gondnoka, felügyelője, barátnéja, mindenese. Ez pörlekedik
helyette a hol kell, ez lót-fut gazdaság, cselédség után, elfogadja,
mulattatja a vendégeket, nyáron kirándulásokat rendez füvészeti,
bogarászati nemes élvekkel összekötve, télen hangversenyeket
jótékony czélokra és magasztalja a maga kedves tündérkéjét
boldogok s boldogtalanok előtt.
Azután van a háznál egy Czenczi kisasszony; született siketnéma,
a kit még Irén nagyanyja fogadott fel s a ki ereklyeként szállt
leányról leányra; most már sokkal idősebb, mint hogy évszámai után
tudakozódni udvariatlanság ne lenne. Igen mulatságos teremtés.
Arczra csaknem mumiaszerű már, ezer ránczra alkalmazva, azonban
ezen ránczok mindegyike mosolyog; s miután a hölgyekkel közös
vágy, a gondolatnak másokkal közlése iránt, benne a legnagyobb
fokra van kifejlődve, a szokott organum azonban hiányzik hozzá, e
miatt a néma-beszéd legfurcsább játékaival szokta rendesen
meglepni a reá figyelmezőt, minden újjával, szemeivel,
arczfintorításával iparkodva megértetni vele közlendő eszméit. Az
idegen rendkívül jól mulathatja vele magát. Hanem Irén igen
komolyan, a legszivesebb tisztelettel szokott vele bánni, néma
beszédén nem szokott mosolyogni s másoktól is rossz néven veszi,
ha abban mulatságot találnak.
E két hölgyen kívül még egy csaknem mindennapos látogatója
van Irénnek, a szép Dobokyné; igaz ugyan, hogy ez asszonyságot
már huszonkét év óta hivják szépnek, hanem azért valóban szép ő
most is s nem kis igényt tart rá, hogy bájai elismertessenek; ha
hozzá juthat, bele is szövi a beszélgetésbe azon historiai tényeket,
miszerint L’Enclos Ninon ötven éves korában tartatott a legszebbnek
s Cleopatra hatvan felé járt, mikor Antoniust meghódítá.
A szép Dobokyné egy sajátszerű szenvedélyéről ismeretes a
környékben.
Milyen boldog sorsuk volt a classicus költőknek, a kikre nézve
meg volt határozva a hét főerény, a hét főbűn, a hét főszenvedély;
csak embert kellett találniok, a kit beleillesszenek, s kész volt a
classicus mű, csak commentátorok kellettek hozzá.
Pedig Dobokyné szenvedélye akkor is bizonyosan ismeretes
lehetett már; hanem talán nem ütötte meg a classicitas mértékét, –
sokkal mulatságosabb ez, mint hogy erénynek nevezzük: a derék
asszonyságnak a «házasságszerzés» volt uralkodó szenvedélye.
Nem létezhetett miatta békével fiatal férfi és leány, hogy valami
uton beléjök ne kötött legyen; mielőtt észrevették volna,
«összebeszélte» őket, hanem azután hibái jóvátevéseül ugyanannyi
házasságot el is rontott. Elébb megcsinálta, azután elrontotta;
ilyenformán rettegés volt reá gondolni mind a házasságon kívül,
mind azon belül élő férfiaknak és némbereknek.
S hogy ez a törekvés tisztán szenvedély volt nála, azt ő saját
magán is bebizonyította. Tíz év óta volt özvegy; ez alatt legalább
ugyanannyiszor járt jegyben, s ugyanannyiszor bomlott fel leendő
házassága, néha már épen az oltárnál mentek széjjel. Vagy szerette
a férfit, a kit választott, de nem becsülte, vagy becsülte, de nem
szerette; vagy szerette, de az nem szerette őt; vagy becsülte, de az
nem becsülte őt; – az Isten őrizzen, hogy tovább folytassam ezt az
összeállítást, a mi hasonlatos volna a «kulcs nélküli lakat»
theoriájához!
Hogy e szerint valahányszor megjelent a Tarnóczy-kastélyban,
mindig volt valakije in petto, magyarul mondva: «a begyében», azt
előre lehet gondolni; a környék valamennyi fiatal embereinek a nevét
sorra próbálta már a «kulcs nélküli szívhez», de egyik sem nyitotta
azt fel. Irén nem akart semmiről hallani, s ha valakit nagyon dícsért
előtte szép rokona, azzal tréfálta vissza: «hogy ha olyan derék az,
miért nem megy ő maga hozzá?»
Azon az estén, hogy a három táblabiró körútját végezve a
környékben, Tarnóczra, mint végső állomásra betért, épen jelen volt
Dobokyné kis rokonánál; hanem ezúttal nagyon rosszkor jött, mert
az udvar, a pajta, a pitvarok mind tele voltak éhen holt tótokkal, a
kikkel a háznép minden tagja el volt foglalva, maga Irén ott
működött mindenütt, hogy ételükről, ruházatjokról gondoskodjék, s
ha Dobokyné felkereste, csak annyit nyert vele, hogy a kezébe
nyomott vagy egy irtóztató nagy ollót, hogy segítsen neki ingeket,
mellényeket szabni a szegény emberek számára, egész vég
vásznakból, varrta az egész házi cselédség, vagy a konyhán állította
dologba, rábizva egy-egy nagy főzőkanalat, melylyel irtóztató
üstökben fővő gombóczokat kellett rendben tartani, vagy felkérte,
hogy az életkiosztást segítse végrehajtani, mely rendkívüli munkáktól
a derék asszonyság egyre ájuldozott.
Ha neki ezeket a nyomorult parasztokat így kellene látni napokig,
ő nervosába esnék, ő rajta még a mágneskura sem segítene, ő teljes
életére szerencsétlenné tenné magát.
Pedig ez a látvány mindennap szaporodott, nem hogy fogyott
volna; a szegény inséges csak oda tartott, a hol enni adtak neki;
Irénnek alig volt már annyi helye a kastélyban, mennyin maga és
vendégei megszorulhassanak, alig jutott ideje olvasásra s gyakran
megesett, hogy saját maga, hozzátartozandóival együtt, csak késő
este jutott az elhült, elázott ebédhez, a nagy szolgálat miatt.
Hanem azért Dobokyné nem hagyta el a házat, sem ideglázba
nem esett; most megint volt valakije, a kit mindenesetre elő kellett
hozni Irén előtt, egy derék fiatal ember, a kinek annyival több
kilátása lehet Irén hajlamát megnyerhetni, minthogy az
instellationalis bálban tánczolt is vele s mint az ifjú ember maga
dicsekszik, egy bokrétát kapott is Iréntől emlékbe, melyet szünten
szivartárczájában hordoz, neki is megmutatta.
Erről azután van mit hallani Irénnek. Nem állhat meg, nem ülhet
le egy pillanatra, hogy Dobokyné valami furcsát ne mondjon neki a
derék Csejti Gazsiról, a ki milyen ügyes, derék fiatal ember, milyen
qualificált ifjú, micsoda carrierja van neki, már is tiszteletbeli
főjegyző, fölségesen lovagol. Azután következnek a féltréfás
példálózások a bálban töltött kedves órákra, bizonyos ott feledett
bokrétákra, mik miatt a szegény kis leánynak egy pillanatig sincs
helyben maradása.
Késő este végezte el a takarítást Irén, kinek ilyen roppant nagy
családról kellett gondoskodni s miután meggyőződött róla, hogy
házán belül senki sem maradt éhen, épen akkor érkezett egy új
csoport udvarára, kiket egy megyei hajdú vezetett odáig.
A hajdú engedelmet kért, hogy a kisasszonynyal rögtön
szólhasson. Felvezették hozzá. Néhány percz mulva maga lejött Irén
az udvarra, az újon érkezett csoport közől kiválasztotta azt a kis hat
éves leánykát, öreg apjával együtt s felviteté őket saját
előszobájába, ott ágyat vettetett számukra, a többieket elhelyezteté
a még üresen álló csűrben.
Dobokyné most kezdett még csak az igazi ájuláshoz. Ez a leány
már az előszobába is behordja a koldusokat, az ember ki sem mehet
a nélkül, hogy keresztül ne lépjen rajtok, az ajtón keresztül
kénytelen hallani nyöszörgéseiket, sopánkodásaikat; ha vasból volna
az ember idegzete, még sem állaná ki. Ez a három némber itt a
háznál, ez mind más, ezek kiállják: Irénben épen semmi érzékenység
sincs, az a volt nevelőné még orvosi tudományokat is tanult, tehát
szinte érzéketlen, Czenczi kisasszony pedig nem hall semmit; de oly
sensitive hölgy, mint a szép Dobokyné, képes halálra ijedni, ha
valami ilyen borzas fejű koldus azt találja neki mondani éjszaka,
hogy – adjon egy darab kenyeret.
Hanem azért még sem szökik meg a háztól. Fülhegygyel kivette a
hajdú beszédéből, hogy éjszakára a megyei körutazó küldöttség ide
fog betérni s másnap itt fog határozatot hozni a rögtöni teendők
felől. Itt Dobokynénak okvetlenül jelen kellett lenni. Ha Dobokyné
soha egy regényt sem olvasott volna életében, pedig sokat olvasott,
mégis igen természetesen így kellett okoskodnia: a küldöttség tagjai
között van egy fiatal ember, derék, okos, férfias ifjú, ez meg fogja
látni Irént, Irén meg fogja látni őt, egymásba szeretnek, s azzal a
regény be van fejezve.
Oh ebből semminek sem szabad lenni! Hát akkor a szegény Csejti
Gazsi hová legyen? Dobokyné annak szánta Irént és most más
constellatiókat nem szabad az ő számításai közé keverni.
Azon kívül még egy különösebb oka is volt, le nem feküdni addig,
a míg a küldöttek meg nem érkeztek, hanem fenvirrasztani Irénnel
együtt és ájuldozni attól a gondolattól, hogy ennyi meg ennyi vég
vásznat mind magok a háziak varrjanak fel, ingeknek rongyos
emberek számára. A küldöttség elnöke, az alispán, ezelőtt tizenhat
esztendővel az ő nyilatkozott imádója volt. Akkor még nem volt
alispán, hanem csak kezdő tiszti ügyész. Dobokyné igazán érzett
iránta hajlamot, mint ifjú leány, hanem a közben megkérte kezét
Doboky úr, ki igen nagy birtokú volt és főbirói hivatalt viselt, s biz ő
elfelejté a fiatal ügyészt a főbiró kedvéért s annak lett nejévé.
Később elégszer megbánta ezt. Doboky úr egy tisztújítás
alkalmával kimaradt hivatalából, erre következett az, hogy miután
befolyását veszté, osztozatlan testvérei, kiknek osztályrészét
bitorolta, beperelték, exequálták, csak a saját harmadrésze maradt
neki. Lippay ellenben mindig magasabbra lépett, majd másodalispán,
végre első alispán lett, megnyerte őseinek egy régi zálogos perét,
mely rögtön nagy uradalmakhoz juttatá, s első tekintély vált belőle a
megyében.
A szép Dobokyné nagyokat sohajtott, hogyha erre gondolt, s
midőn ez alkalommal megtudá, hogy Lippay ide fog jönni, az a
gondolatja támadt, ha nem lehetne-e tizenhat évet kifelejteni az élet
sorából s ott kezdenie, a hol félbenszakadt.
Lippay az ő férjhez menete után még csak kisérletet sem tőn a
nősülésre; nem volt legkisebb hire, hogy valaha bárkit megkért,
megszeretett, vagy még csak biztatott volna is. Ez jelent valamit. Itt
szikra van a hamu alatt.
Éjfél körül lehetett már az idő, midőn az udvarra begördülő
hintók zörgése hirdeté, hogy a várt vendégek megérkeztek.
Néhány percz alatt lekászolódott mindenki a szekérről s Leonora
(az volt a hajdani nevelőnő neve) a három táblabiró úr kiséretében
feljött a kastélyba.
Következett a kölcsönös bemutatás. Leonora elbeszélé a
történteket, a miket egyszer meghallani is, úgy hiszem, elég unalmas
volt az olvasóra nézve. Dobokyné láttára Lippay alispán úr azt
mondá, hogy mi már régi ismerősök vagyunk, a mire Dobokyné
sohajtva jegyzé meg, hogy óh nagyon régiek!
Irén szokott szivességgel fogadá vendégeit, öregét, fiatalát s
rájok bizta, hogy helyezzék magukat kényelembe.
Már most tisztességes regényi eljárás szerint az következnék,
hogy Fenyéry és Irén, mint a két legjámborabb jellem a többi között,
a mint megpillantják egymást, rögtön egymásba szeressenek; ebből
támadnának illendő jelenetek titkos sohajtozással és obligát
holdvilággal illusztrálva; regényhős és regényhősné szenvednének
sokat, míg végre a szerző, ha annyi papirost teleirt, a mennyire
szerződve volt, megszánná őket s összeadná kihirdetés, dispensatio
s egyéb ceremonialék nélkül. Hanem ezt a mulatságot nem
köszönnék meg a mi becsületes táblabiráink, a kik tizenkét óra óta
egy falatot sem ettek, s el vannak fáradva és csigázva; az ilyen
holdvilágos jelenet nagyon gonosz tréfa volna rájok nézve.
Irén talán három szót sem váltott Fenyéryvel, hanem ment a
konyhába és az ebédlőbe, a vacsorát elkészíteni, feltálaltatni;
Fenyérynek pedig esze ágában sem volt, hogy szivéhez kapjon,
elénekelve: «látni téged és szeretni pillanatnak míve volt», hanem
előkeresteté iróeszközeit s egy szögletbe leülve, nagy sietséggel
megirá a bizottmánynak e napról szóló jegyzőkönyvét.

You might also like