100% found this document useful (7 votes)
957 views

Download ebooks file (Ebook) Mastering Go: create Golang production applications using network libraries, concurrency, and advanced Go data structures by Tsoukalos, Mihalis ISBN 9781838555320, 1838555323 all chapters

The document provides information about various eBooks available for download, focusing on programming with Go, including titles like 'Mastering Go' by Mihalis Tsoukalos. It outlines the content covered in the book, such as Go's data structures, concurrency, and network programming. Additionally, it mentions the author's background and the publishing details from Packt Publishing.

Uploaded by

saxtaeunate
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (7 votes)
957 views

Download ebooks file (Ebook) Mastering Go: create Golang production applications using network libraries, concurrency, and advanced Go data structures by Tsoukalos, Mihalis ISBN 9781838555320, 1838555323 all chapters

The document provides information about various eBooks available for download, focusing on programming with Go, including titles like 'Mastering Go' by Mihalis Tsoukalos. It outlines the content covered in the book, such as Go's data structures, concurrency, and network programming. Additionally, it mentions the author's background and the publishing details from Packt Publishing.

Uploaded by

saxtaeunate
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Download Full Version ebook - Visit ebooknice.

com

(Ebook) Mastering Go: create Golang production


applications using network libraries, concurrency,
and advanced Go data structures by Tsoukalos,
Mihalis ISBN 9781838555320, 1838555323
https://ebooknice.com/product/mastering-go-create-golang-
production-applications-using-network-libraries-concurrency-
and-advanced-go-data-structures-20632852

Click the button below to download

DOWLOAD EBOOK

Discover More Ebook - Explore Now at ebooknice.com


Instant digital products (PDF, ePub, MOBI) ready for you
Download now and discover formats that fit your needs...

Start reading on any device today!

(Ebook) Mastering Go: Create Golang production


applications using network libraries, concurrency, and
advanced Go data structures by Mihalis Tsoukalos ISBN
9781788626545, 1788626540
https://ebooknice.com/product/mastering-go-create-golang-production-
applications-using-network-libraries-concurrency-and-advanced-go-data-
structures-7394854
ebooknice.com

(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason;


Viles, James ISBN 9781459699816, 9781743365571,
9781925268492, 1459699815, 1743365578, 1925268497
https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374

ebooknice.com

(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena


Alfredsson, Hans Heikne, Sanna Bodemyr ISBN 9789127456600,
9127456609
https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312

ebooknice.com

(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT


II Success) by Peterson's ISBN 9780768906677, 0768906679

https://ebooknice.com/product/sat-ii-success-
math-1c-and-2c-2002-peterson-s-sat-ii-success-1722018

ebooknice.com
(Ebook) Go Systems Programming: Master Linux and Unix
system level programming with Go by Mihalis Tsoukalos ISBN
9781787125643, 1787125645
https://ebooknice.com/product/go-systems-programming-master-linux-and-
unix-system-level-programming-with-go-7206744

ebooknice.com

(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master


the SAT Subject Test: Math Levels 1 & 2) by Arco ISBN
9780768923049, 0768923042
https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-
arco-master-the-sat-subject-test-math-levels-1-2-2326094

ebooknice.com

(Ebook) Cambridge IGCSE and O Level History Workbook 2C -


Depth Study: the United States, 1919-41 2nd Edition by
Benjamin Harrison ISBN 9781398375147, 9781398375048,
1398375144, 1398375047
https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044

ebooknice.com

(Ebook) Hands-on Go Programming: Learn Google’s Golang


Programming, Data Structures, Error Handling and
Concurrency ( English Edition) by Sachchidanand Singh;
Prithvipal Singh ISBN 9789389898194, 9389898196
https://ebooknice.com/product/hands-on-go-programming-learn-googles-
golang-programming-data-structures-error-handling-and-concurrency-
english-edition-34690530
ebooknice.com

(Ebook) Network Programming with Go Language : Essential


Skills for Programming, Using and Securing Networks with
Open Source Google Golang by Jan Newmarch; Ronald Petty
ISBN 9781484280959, 1484280954
https://ebooknice.com/product/network-programming-with-go-language-
essential-skills-for-programming-using-and-securing-networks-with-
open-source-google-golang-43739744
ebooknice.com
Mastering Go

Create Golang production applications using network libraries,


concurrency, and advanced Go data structures
Mihalis Tsoukalos

BIRMINGHAM - MUMBAI
Mastering Go
Copyright © 2018 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or
transmitted in any form or by any means, without the prior written permission of the publisher,
except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information
presented. However, the information contained in this book is sold without warranty, either express
or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable
for any damages caused or alleged to have been caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and
products mentioned in this book by the appropriate use of capitals. However, Packt Publishing
cannot guarantee the accuracy of this information.

Acquisition Editors: Frank Pohlmann, Suresh Jain


Project Editor: Kishor Rit
Content Development Editor: Gary Schwarts
Technical Editors: Gaurav Gavas, Nidhisha Shetty
Proofreader: Tom Jacob
Indexer: Mariammal Chettiyar
Graphics: Tom Scaria
Production Coordinator: Shantanu Zagade

First published: April 2018

Production reference: 1270418

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.

ISBN 978-1-78862-654-5

www.packtpub.com
Packt Upsell

mapt.io

Mapt is an online digital library that gives you full access to


over 5,000 books and videos, as well as industry leading tools
to help you plan your personal development and advance your
career. For more information, please visit our website.
Why subscribe?
Spend less time learning and more time coding with
practical eBooks and Videos from over 4,000 industry
professionals

Improve your learning with Skill Plans built especially


for you

Get a free eBook or video every month

Mapt is fully searchable

Copy and paste, print, and bookmark content


PacktPub.com
Did you know that Packt offers eBook versions of every book
published, with PDF and ePub files available? You can upgrade
to the eBook version at www.PacktPub.com and as a print book
customer, you are entitled to a discount on the eBook copy. Get
in touch with us at [email protected] for more details.

At www.PacktPub.com, you can also read a collection of free technical


articles, sign up for a range of free newsletters, and receive
exclusive discounts and offers on Packt books and eBooks.
Contributors
About the author
Mihalis Tsoukalos is a technical author, a Unix
administrator, a developer, and a mathematician, who enjoys
learning new things. He has written more than 250 technical
articles for many publications, including Sys Admin, MacTech,
Linux User and Developer, Usenix ;login:, Linux Format, and
Linux Journal.

Mihalis is also the author of Go Systems Programming, by


Packt Publishing, 2017 and the technical editor for MongoDB
in Action, Second Edition, by Manning. Mihalis' research
interests include databases, operating systems, and statistics.
You can reach him at http://www.mtsoukalos.eu/ and @mactsouk. He is
also a photographer (http://www.highiso.net/).

I would like to thank the people at Packt Publishing for helping me write this book, including Frank
Pohlmann and Gary Schwartz, my technical reviewer, Mat Ryer, Radhika Atitkar, for her
encouragement and trust, and Kishor Rit, for answering all my questions and encouraging me
during the whole process.

For all people everywhere: You will never change your life until you change something you do
daily!
About the reviewer
Mat Ryer has been programming computers since he was 6
years old. He would build games and programs, first in BASIC
on a ZX Spectrum and then in AmigaBASIC and AMOS on
Commodore Amiga with his father. Many hours were spent on
manually copying the code from the Amiga Format magazine
and tweaking variables or moving GOTO statements around to
see what might happen. The same spirit of exploration and
obsession with programming led Mat to starting work with a
local agency in Mansfield, England, when he was 18, where he
started to build websites and other online services.

After several years of working with various technologies and


industries in London and around the world, Mat noticed a new
systems language called Go that Google was pioneering. Since
it addressed very pertinent and relevant modern technical
challenges, Mat started using it to solve problems while the
language was still in the beta stage. He has used it ever since.
Mat contributes to open-source projects and founded Go
packages, including Testify, Moq, Silk, and Is, as well as a
macOS developer tool called BitBar.

In 2018, Mat co-founded Machine Box and still spends a lot of


time speaking at conferences, writing about Go on his blog, and
is an active member of the Go community.
What this book covers
Chapter 1 , Go and the Operating System, begins by talking about
the history of Go and the advantages of Go before describing
the godoc utility and explaining how you can compile and
execute Go programs. After that, it talks about printing the
output and getting user input, working with the command-line
arguments of a program, and using log files. The last topic of
the first chapter is error handling, which plays a key role in Go.

Chapter 2 , Understanding Go Internals, discusses the Go garbage


collector and the way it operates. Then it talks about unsafe
code and the unsafe package, how to call C code from a Go
program, and how to call Go code from a C program. After that,
it showcases the use of the defer keyword and presents the
strace(1) and dtrace(1) utilities. In the remaining sections of the
chapter, you will learn how to find information about your Go
environment and the use of the Go assembler.

Chapter 3 , Working with Basic Go Data Types, talks about the


data types offered by Go, which includes arrays, slices, and
maps as well as Go pointers, constants, loops, and working
with dates and times. You would not want to miss this chapter!
Chapter 4 , The Uses of Composite Types, begins by teaching you
about Go structures and the struct keyword before discussing
tuples, strings, runes, byte slices, and string literals. The rest of
the chapter talks about regular expressions and pattern
matching, the switch statement, the strings package, the math/big
package, and about developing a key-value store in Go.

Chapter 5 , Enhancing Go Code with Data Structures, is about


developing your own data structures when the structures
offered by Go do not fit a particular problem. This includes
developing binary trees, linked lists, hash tables, stacks, and
queues and learning about their advantages. This chapter also
showcases the use of the structures found in the container
standard Go package. The last topic of this chapter is random
number generation.

Chapter 6 , What You Might Not Know About Go Packages, is all


about packages and functions, which also includes the use of
the init() function, the syscall standard Go package, and the
text/template and html/template packages. This chapter will definitely
make you a better Go developer!

Chapter 7 , Reflection and Interfaces for All Seasons, discusses


three advanced Go concepts: reflection, interfaces, and type
methods. The last part of the chapter is about object oriented
programming in Go!
Chapter 8 , Telling a Unix System What to Do, is about systems
programming in Go, which includes subjects such as the flag
package for working with command-line arguments, handling
Unix signals, file input and output, the bytes package, and the
io.Reader and io.Writer interfaces. As I told you before, if you are

really into systems programming in Go, then getting Go


Systems Programming after reading Mastering Go is highly
recommended!

Chapter 9 , Concurrency in Go – Goroutines, Channels, and


Pipelines, discusses goroutines, channels and pipelines, which
is the Go way of achieving concurrency. You will also learn
about the differences between processes, threads, and
goroutines, and the sync package and the way the Go scheduler
operates.

Chapter 10 , Concurrency in Go – Advanced Topics, will continue


from the point where the previous chapter left off and make
you a master of goroutines and channels! You will learn more
about the Go scheduler, the use of the powerful select keyword
and the various types of Go channels as well as shared memory,
mutexes, the sync.Mutex type, and the sync.RWMutex type. The last
part of the chapter will talk about the context package, worker
pools, and how to detect race conditions.

Chapter 11 , Code Testing, Optimization, and Profiling, discusses


code testing, code optimization, and code profiling as well as
about cross compilation, creating documentation,
benchmarking Go code, creating example function, and finding
unreachable Go code.

Chapter 12 , The Foundations of Network Programming in Go, is


all about the net/http package and how you can develop web
clients and web servers in Go. This also includes the use of the
,
http.Response http.Request and http.Transport structures and the
http.NewServeMux type. You will even learn how to develop an entire
website in Go! Furthermore, in this chapter, you will learn how
to read the configuration of your network interfaces and how to
perform DNS lookups in Go.

Chapter 13 , Network Programming – Building Your Own


Servers and Clients, talks about creating UDP and TCP servers
and clients in Go, using the functionality offered by the net
package. Other topics included in this chapter are how to create
RPC clients and servers as well as develop a concurrent TCP
server in Go and read raw network packages!
Packt is searching for
authors like you
If you're interested in becoming an author for Packt, please
visit authors.packtpub.com and apply today. We have worked with
thousands of developers and tech professionals, just like you, to
help them share their insight with the global tech community.
You can make a general application, apply for a specific hot
topic that we are recruiting an author for, or submit your own
idea.
Table of Contents
Title Page

Copyright and Credits

Mastering Go

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the author

About the reviewer

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book


Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

1. Go and the Operating System

The structure of the book

The history of Go

Why learn Go?

Go advantages

Is Go perfect?

What is a preprocessor?

The godoc utility

Compiling Go code

Executing Go code

Two Go rules

You either use a Go package or do not include it

There is only one way to format curly braces

Downloading Go packages
Unix stdin, stdout, and stderr

About printing output

Using standard output

Getting user input

About := and =

Reading from standard input

Working with command-line arguments

About error output

Writing to log files

Logging levels

Logging facilities

Log servers

A Go program that sends information to log files

About log.Fatal()

About log.Panic()

Error handling in Go

The error data type

Error handling

Additional resources

Exercises

Summary
2. Understanding Go Internals

The Go compiler

Garbage Collection

The Tricolor algorithm

More about the operation of the Go Garbage

Collector

Unsafe code

About the unsafe package

Another example of the unsafe package

Calling C code from Go

Calling C code from Go using the same file

Calling C code from Go using separate files

The C code

The Go code

Mixing Go and C code

Calling Go functions from C code

The Go package

The C code

The defer keyword

Panic and Recover


Using the panic function on its own

Two handy Unix utilities

The strace tool

The dtrace tool

Your Go environment

The Go Assembler

Node Trees

Learning more about go build

General Go coding advices

Additional Resources

Exercises

Summary

3. Working with Basic Go Data Types

Go loops

The for loop

The while loop

The range keyword

Examples of Go for loops

Go arrays

Multi-dimensional arrays

The shortcomings of Go arrays


Go slices

Performing basic operations on slices

Slices are being expanded automatically

Byte slices

The copy() function

Multidimensional slices

Another example of slices

Sorting slices using sort.slice()

Go maps

Storing to a nil map

When you should use a map?

Go constants

The constant generator iota

Go pointers

Dealing with times and dates

Working with times

Parsing times

Working with dates

Parsing dates

Changing date and time formats


Additional resources

Exercises

Summary

4. The Uses of Composite Types

About composite types

Structures

Pointers to structures

Using the new keyword

Tuples

Regular expressions and pattern matching

Now for some theory

A simple example

A more advanced example

Matching IPv4 addresses

Strings

What is a rune?

The Unicode package

The strings package

The switch statement

Calculating Pi with great accuracy


Developing a key/value store in Go

Additional resources

Exercises

Summary

5. Enhancing Go Code with Data Structures

About graphs and nodes

Algorithm complexity

Binary trees in Go

Implementing a binary tree in Go

Advantages of binary trees

Hash tables in Go

Implementing a hash table in Go

Implementing the lookup functionality

Advantages of hash tables

Linked lists in Go

Implementing a linked list in Go

Advantages of linked lists

Doubly linked lists in Go

Implementing a doubly linked list in Go


Advantages of doubly linked lists

Queues in Go

Implementing a queue in Go

Stacks in Go

Implementing a stack in Go

The container package

Using container/heap

Using container/list

Using container/ring

Generating random numbers

Generating random strings

Additional Resources

Exercises

Summary

6. What You Might Not Know About Go Packages

About Go packages

About Go functions
Anonymous functions

Functions that return multiple values

The return values of a function can be named!

Functions with pointer parameters

Functions that return pointers

Functions that return other functions

Functions that accept other functions as

parameters

Developing your own Go packages

Compiling a Go package

Private variables and functions

The init() function

Reading the Go code of a standard Go package

Exploring the code of the net/url package

Looking at the Go code of the log/syslog package

Creating good Go packages

The syscall package

Finding out how fmt.Println() really works

Text and HTML templates

Generating text output


Constructing HTML output

Basic SQLite3 commands

Additional resources

Exercises

Summary

7. Reflection and Interfaces for All Seasons

Type methods

Go interfaces

About type assertion

Developing your own interfaces

Using a Go interface

Using switch with interface and data types

Reflection

A simple Reflection example

A more advanced reflection example

The three disadvantages of reflection

Object-oriented programming in Go!

Additional resources

Exercises

Summary

8. Telling a Unix System What to Do


About Unix processes

The flag package

The io.Reader and io.Writer interfaces

Buffered and unbuffered file input and output

The bufio package

Reading text files

Reading a text file line by line

Reading a text file word by word

Reading a text file character by character

Reading from /dev/random

Reading the amount of data you want from a file

Why are we using binary format?

Reading CSV files

Writing to a file

Loading and saving data on disk

The strings package revisited

About the bytes package

File permissions

Handling Unix signals

Handling two signals

Handling all signals


Exploring the Variety of Random
Documents with Different Content
— Hyvä, alotti kanadalainen, puhukaa, niinkuin pelottoman soturin
ja kristityn tulee. Mitä meiltä tahdotte? Kuinka aijotte vankejanne
kohdella?

Mutta Bastardi halusi vain puolittain ilmaista aikeensa. Vaikka hän


piti melkein varmana, että hän saavuttaisi tarkoitusperänsä, halusi
hän kuitenkin säästää, ellei verta niin aikaa, ja hän toivoi
mielettömyydessään, että soturit suostuisivat vankeuteen ennen
kuolemaa, josta ei heitä mikään pelastaisi.

— En tosiaankaan tiedä, miten teitä kohtelisin, lausui hän, mutta


Mustalintu, jonka sotureja on mukanani, tahtoo välttämättömästi
teidät ja olenkin kunniani kautta luvannut teidät hänelle.

Vastauksessaan käytti mestitsi intiaanilais-espanjalaista murretta,


ja hänen viimeisiä sanojaan lausuessaan näkivät metsästäjät
pensastossa silmiä, jotka hehkuivat kuin tiikerin.

— Sitä arvelenkin, sanoi Rosenholz, ja mitä Mustalintu meillä


tekisi?

— Sen tahdon sanoa teille, sanoi mestitsi kääntyen intiaaniin. Mitä


tekisi Mustalintu Kotkalla, Matkijalinnulla ja etelän soturilla? Vastaa
hiljaa, veljeni.

— Kolme seikkaa, vastasi apahi. Ensin tulisi heidän koirien tavoin


olla hänen majassaan, sitten kuivaisi hän nuotionsa ääressä heidän
päänahkansa ja lopuksi antaisi hän heidän sydämensä soturiensa
syötäväksi; sillä he ovat urhoollisia miehiä ja heidän rohkeutensa
siirtyy niitten sydämiin, jotka ovat maistaneet heidän sydäntänsä.
— Hyvä, sanoi mestitsi, tarkoin kuunneltuaan intiaanin sanoja,
mestitsi kertoo nämä sanat heille.

Kääntyen Rosenholziin koki hän hymyillä. —

— Suuri intiaanipäällikkö, lausui hän englannin kielellä, jota ei


Fabian ymmärtänyt, vakuuttaa vangeillensa ystävyyden, jollaista
rohkeille tulee osoittaa; hän lupaa heille parhaat metsästysmaat ja
kauniimmat naisensa.

— Hyi, Rosenholz, huudahti José, on häpeäksi kuunnella tuota


roistoa; etkö huomaa, että hän pilkkaa suoruuttasi?

— Mitä sanoo Matkijalintu? kysyi vanha rosvo.

— Hän sanoo, vastasi José, että hän tahtoo olla yhtä jalomielinen
ja lupaa teille: sinulle uuden iskun pyssynsä perästä, pojallesi
puukon piston rintaan ja hänen petollisen kielensä korpeille.

— Ah! huudahti Bastardi hammasta purren ja ojensi nopeasti


pyssynsä.

Rosvo unohti lupauksensa vangita metsästäjät elävänä.

Ei José eikä Rosenholz olisi ehtinyt kumartua alas ja toinen heistä


olisi ollut mennyttä, kun heidän pyssynsä oli syrjässä, ellei samassa
olisi ammuttu laukausta heidän takaansa ja mestitsi alkanut horjua.

Ampuja oli Fabian.

Onnettomuudeksi ei hänen pyssynsä kantanut pitkälle, joten


hänen luotinsa kadotti voimansa mestitsin vaippaan.
Bastardi horjahti kuitenkin luodin sattuessa häneen ja olisi syössyt
kultalaaksoon, jossa Rosenholz pian olisi hänet lopettanut, ellei
hänen isänsä olisi tarttunut häneen.

Voimakkailla käsillään kantoi hän hänet rinteeltä pois.

Samalla kuin rosvot, katosivat intiaanitkin pensaitten taakse.

32.

HYÖKKÄYS JA PUOLUSTUS.

He olivat hankalassa asemassa. Taistelu oli välttämätön ja uhkasi


muuttua tuliseksi ja katkeraksi, mutta ystävykset, joitten vastustajat
olivat paljon lukuisemmat, saivat luottaa vain itseensä ja hyviin
aseisiinsa. Näitäkään he eivät saaneet liian usein käyttää. Sitäpaitsi
oli heillä vain hiukkasen muonavaroja. Tämän vaaran uhatessa
liittyivät he sitä lujemmin toisiinsa.

Hetkiseksi vain uhkaavan vaaran pelko valtasi näitten urhojen


sydämen; sitten päättäväisyys ja järkähtämätön rohkeus paisutti
heidän rintaansa, ja tarkoin harkitsivat he kaikki käytettävinä olevat
puolustuskeinot.

Järkähtämätön ystävyys yhdisti Josén ja Rosenholzin; se oli


syntynyt kymmenen vuoden yhteisissä taisteluissa ja vaaroissa.
Atlannin rannoilta Tyynen meren rannoille asti olivat molempien
metsästäjäin pyssyt samalla kertaa pamahtaneet; epälukuisissa
tuimissa taisteluissa olivat he toistensa rinnalla seisoneet, jakaen ilot
ja surut. Nälkä ja jano, joka rikkoo vanhempain ja lasten välin, ei
ollut voinut katkaista heitä yhdistäviä siteitä, vaan keskenänsä olivat
he jakaneet viimeisen vesipisaran, viimeisen ruoan tähteen. Sellaista
ystävyyttä voipi ainoastaan erämaassa tavata.

Sumussa loistava tuli herätti kanadalaisen huomion.

— Tuo valo ei miellytä minua, sanoi hän. Vaikka viitat tällä puolen
suojelevatkin meitä riittävästi, on kuitenkin hieman värisyttävää, kun
tietää olevansa luotien uhkaamana takaakin päin. Nuo roistot
varmaankin tahtovat kääntää huomiomme hyökkäyksen
alkukohdasta pois. Kukkuloita peittävä usva ei estä intiaaneja
lähettämästä luotituiskua päällemme.

— Olet oikeassa, sanoi José. En luule, että tuo vanha rosvo ja


hänen poikansa ovat sitoutuneet jättämään meidät aivan
vahingoittumattomina Mustallelinnulle, vaan tilaisuuden sattuessa
koettavat he varmaankin pirullisella taidollaan murtaa olkapäämme
tai katkaista kätemme tai jalkamme.

— Tänne, Fabian, jatkoi Rosenholz, tässä on sinun paikkasi. Pidä


tarkoin varalla tuota nuotiota ja kohdista pyssysi sinnepäin. Heti kun
sumussa näet pyssyn väläyksen, täytyy sinun vapisematta ja
rohkeasti lauaista pyssysi sitä paikkaa kohti, jossa näet tulen
leimahtavan sytytinreiästä.

Rosenholzin määräyksen mukaan asettui Fabian viittojen taakse ja


ojensi pyssynsä ylöspäin.

Molemmat toiset makasivat maassa, kasvot vihollisiin


käännettyinä. Pyssyn suu ei ulettunut rahtuistakaan kallion
ulkopuolelle ja siinä he tarkoin tähystelivät vihollisten liikkeitä.
Äkkiä katkaisi hiljaisuuden kaksi toistaan seuraavaa laukausta.
Toinen tuli vuorelta, toinen kalliolta, josta Fabian oli turhaan
ampunut vihollista.

Kolme kertaa perättäin uudistuivat nämät kaksinkertaiset


laukaukset. Männyistä irtautuneita kuorenpalasia ja oksia putosi
heidän päällensä, eikä luultavasti Fabianinkaan luodit olleet sen
enempää vahingoittaneet vihollista.

— Anna minulle paikkasi, sanoi Rosenholz ja asetu minun


paikalleni. José, näytä hänelle, miten hänen tulee pitää pyssyänsä,
näyttämättä itseään.

Tätä sanoessaan konttasi Rosenholz takaperin ja Fabian hiipi


varovasti
Josén luo.

Paikalleen päästyänsä tarkasti Rosenholz pikaisella silmäyksellä


vuoret ja aavikon. Hän hämmästyi, nähdessään kallion juurella
olevan järven rannalle nostetun pystyyn muutamia suuria latteita
kiviä, lyhyen matkan päähän toisistaan.

Sellaisia kiviä oli neljä, eikä Rosenholz hetkeäkään epäillyt, ettei


yhtä monta vihollista ollut niiden takana, estämässä metsästäjien
pakoa sille suunnalle. Sitten käänsi hän katseensa vuorelle, josta tuli
vielä heikosti kajasti.

Intiaanin kärsivällisyydellä alkoi hän odottaa.

Sillä aikaa vaihtoivat toistensa rinnalla liikkumattomina makaavat


José ja Fabian muutamia sanoja. José ei ollut vielä lakannut
puhumasta, kun hän äkkiä laukaisi.
Raivokas kiljunta seurasi.

— Tuo ei enää karju, siitä olen varma, sillä pistänpä vetoa, että
luoti meni silmän läpi aivoihin.

— Niin, jatkoi José, uudelleen ladaten pyssyään, nuo metsärosvot


ovat hirvittäviä. Olen nähnyt isän ja pojan koettavan murhata
toisiansa. Olen nähnyt kuinka poika kumartui armoa pyytävän isänsä
yli, kuinka hän otti terävän puukkonsa nylkeäksensä isänsä
päänahan, kun muuan intiaani sattui paikalle ja henkensä uhalla esti
kauhean rikoksen.

— Niin, lisäsi hän, mitä voi sellaisilta pedoilta odottaa? Hoi,


Rosenholz, meillä on yhtä vihollista vähemmän.

— Sen tiedän, kun sinä ammut, vastasi Rosenholz tyynesti ja


kääntymättä tarkastavasta asemastaan.

Syvä hiljaisuus seurasi Josén kamalaa kertomusta, ja ystävykset


makasivat kalliolla yhtä liikkumattomina kuin hevosen runko ja
kuolleet aavikolla.

Kaksi pitkää tuntia kului siten.

Aurinko oli melkein kohtisuorassa heidän päällänsä, ja loi hehkuvia


säteitänsä kukkulalle. Mäntyjen varjot eivät enää voineet kuumuutta
lieventää. Aavikon tuuli puhalsi kuumana kuin uunista tuleva, nälkä
ja jano alkoivat ystävyksiä vaivata.

— Sanopa, Rosenholz, mitä nyt pitäisit yksinkertaisimmastakin


ateriasta, joka eteesi katettaisiin?
— Mitäpä tuosta, José! Olemmehan jo kerran neljäkolmatta tuntia
paastonneet taistellessamme aamusta toiseen aamuun. Jos olet
nälissäsi, niin pureskele männyn kuorta, ja vakuutanpa, että pihkan
katkera maku vie ruokahalusi.

— Kiitoksia paljon, mutta kyllä minä pidän kauriin tai härän paistin
palan parempana, vastasi José, joka oli taasen tullut leikkisälle
tuulelle. Etkö näe aavikolla ainoatakaan elävää olentoa, jonka voisit
pyssylläsi kaataa?

— Kyllä näen neljäkin, mutta ne piilevät koloissa litteiden kivien


takana, samallaisten kuin meitä suojelevatkin, sanoi kanadalainen,
luoden silmäyksen aavikolle, jossa oli nähnyt ylös nostetut kivet,
jotka nyt olivat kumossa. Kas, jatkoi Rosenholz, nuo roistot ovat
kaataneet kivet päällensä, mutta elleivät ketut yön tullessa ole
poistuneet luolistansa, niin menemme ja tapamme ne.

Tätä sanoessaan tarkasteli hän yhä sitä kohtaa, jossa nuotio oli
ollut. Tiheässä usvassa saattoi sen nähdä ainoastaan tummemman
viirun avulla, joka syntyi sammutetun tulen savusta.

José sitä vastoin saattoi nähdä asemaansa muuttamatta ahtaan


ampumareikänsä kautta kultalaaksoon.

— Niinkuin huomaatte, en pettynyt väittäessäni, ettei Baraja ollut


liittolaisilleen ilmoittanut kultasuonen olemassa-oloa, sanoi José
Fabianille; muuten näkisimme mestitsin tovereinensa hiipivän
laaksoon tai ainakin luovan uteliaita katseita sinne. Silloin olisi ollut
mainio tilaisuus ampua heidän kalloonsa. Heitä rehellisemmät
ihmiset eivät, sen voin vakuuttaa, ole voineet vastustaa tuon kullan
lumoavaa voimaa.
— Tein varmaankin väärin, kun salasin sen heidän katseiltaan.
Mutta mitä pirua he tuumivat, kun eivät liikahda paikaltaan. Sen
tahtoisin tietää, lisäsi José levottomasti.

— Ehkäpä he aikovat valloittaa asemamme hyökkäyksellä ja


odottavat yön tuloa, sanoi Fabian.

— Sitä toivoisin, vaikka en heidän lukuaan tunne… Muuan tapaus


keskeytti Josén.

Rosenholz näki kaksi tuliviirua tunkeutuvan usvaverhon läpi, ja


kahdenkertainen pamaus ei ollut vielä hänen korviinsa ehtinyt, kun
väläys leimahti hänen omasta pyssystään.

Näiden kolmen laukauksen ääni kuului melkein yht'aikaa, mutta


seuraukset olivat erilaiset.

Kaksi yhdellä kerralla viittoihin sattuvaa luotia, jotka iskivät juuri


siihen, missä viitat olivat puihin sidotut, saivat ne putoamaan,
samalla kuin Rosenholz, joka oli tähdännyt sytytinreiästä
leimahtavaan tuleen, antoi toiselle ampujalle kuolinhaavan.

Vuorelta alas syöksyvä intiaani koetti, vaikka turhaan, saada kiinni


terävistä kallion syrjistä, joihin hän pudotessaan satutti itsensä. Siinä
kimmahti hän syrjään, eikä syöksynyt vesiputouksen kuiluun, vaan
järveen, jonka vesi loiskahti korkealle.

Järvelle muodostui yhä useampia renkaita, kunnes ne rannalla


katosivat; vesi sai entisen tyyneytensä ja kuvasti rauhallisena
taivasta ja vuoria. Metsästäjät eivät enää kuulleet muuta kuin kivien
ratinan, kun ne vuoresta irtautuneina vyöryivät järveen.
— Kumpikin meistä saa nyt vetää viirun pyssynsä perään, sillä
noita roistoja on nyt kahta vähemmän, sanoi José. Se oli todellakin
oiva laukaus!

Mutta Rosenholz mietti aivan toista; hän ei enää välittänyt voiton


merkkien piirtämisestä pyssynsä perään, jossa ei enää ollut juuri
tilaakaan.

Ensin arveli hän, että he viittojen pudottua olivat vuorelta tulevien


luotien saavutettavissa, sekä etteivät männyt suojelleet heitä enää
yhtä paljon; myöskään ei voinut ajatellakaan suojelevien viittojen
uudelleen ripustamista.

Muuan seikka, jota hän aikoi käyttää hyödyksensä, kiinnitti


myöskin hänen huomiotansa.

Vuorelta järveen pudotessaan oli intiaani temmannut irti järven


pinnan yläpuolella kallion koloissa kasvavaa pitkää heinää; samoin oli
hän lamannut kaislaa, jonka tummat tähkät ja viheriät korret
sekaantuivat ruohoon.

Täten saattoi nähdä holvimaisen, leveän aukon kallion seinässä.

Tämä aukko näytti olevan jotenkin tilava, vaikkapa pimeän


kanavan suu, ja se olikin todella sen maanalaisen kanavan suu,
johon Baraja oli edellisenä päivänä nähnyt Punakäden ja Bastardin
ruuhellaan menevän.

Rosenholz ei tätä tiennyt, mutta hän ajatteli, mitä hyötyä heillä


siitä olisi, jos nälkä pakottaisi heidät pakenemaan. Samalla ei hän
kuitenkaan lakannut tähystämästä vihollista. Ammutun intiaanin
toverin täytyi varmaankin, jos hän tahtoi välttää uhkaavaa vaaraa,
mennä kallion yli vievää kapeata polkua. Rosenholz ei pettynytkään.
Pian keksi hänen kotkansilmänsä liehuvan pääkoristeen, joka näkyi
ylempänä ja alempana ja katosi taasen näkyäksensä.

Hetkisen pysyivät liehuvat höyhenet liikkumatta. Vakuutettuna siitä


että hänen vihollisensa piti häntä silmällä, oli Rosenholz
kääntävinään päänsä toisaalle. Villi soturi näyttäytyi kokonaan
kalliolta, joko sitten varmemmin kohdataksensa vihollisen, joka ei
näyttänyt olevan varuillaan, tahi uhitellaksensa häntä, minkä intiaanit
toisinaan tekevät, se kun heitä miellyttää.

Apahi heilutteli pyssyään ampumatta ja päästi uhittelevan huudon.

Mutta huuto päättyi kuolon kiljahduksella. Rosenholzin luoti oli


sattunut. Pyssy putosi hänen kädestään, itse astui hän jonkun
askeleen, mutta syöksähti sitten kultalaaksoon, jossa ei
liikahtanutkaan.

— Tämä on mainiota! sanoi José. Rosenholz ei ruutia tuhlaa.

Sillä aikaa konttasi Rosenholz toveriensa luo, jotka puristivat


hänen kättänsä äänettömän ilon ja kiitollisuuden merkiksi.

— Tuo kuollut, sanoi Rosenholz, ei uneksikaan lepäävänsä


kullassa. Älkäämme kuitenkaan sitä ajatelko, vaan miettikäämme,
miten pelastuisimme tästä vaarallisesta asemasta.

Sitten kertoi hän tovereillensa lyhykäisesti sivuseikat äskeisestä


intiaanin järveen syöksymisestä; hän kertoi nähneensä maanalaisen
aukon, joka toisiinsa näytti yhdistävän järven ja Sumuvuorten
sisustan.
Se saattoi pelastaa heidät. Järvi oli kuitenkin syvä, eikä voinut
toivoa päästä aukolle ruutia kastelematta ja tekemättä siis aseitaan
kelpaamattomaksi. Mutta tätä kiinteää kalliota ei myöskään voinut
temmata paikoiltaan kuten taannoista saarta.

Ystävysten neuvotellessa pysyivät viholliset tyyninä ja näyttivät


aikovan jatkaa piiritystä.

33.

INTIAANIT VALMISTAUTUVAT KUOLEMAAN.

Piiritetyt kuuntelivat levottomina vesiputouksen kumeaa kohinaa,


sillä siellä oli heidän viimeinen pakopaikkansa. Silloin viisi intiaania
laskeutui tähystelevin katsein vuorelle varustusten taa.

Vastapäätä heitä oli hautakukkula kamaline koristuksineen. Ei


ihmisolennon jälkeäkään voinut huomata siellä, ei yksikään pyssyn
piippu kimallellut auringossa, synkät männyt vain hiljaa häilyivät
metsästäjien päitten päällä; muuten vallitsi kaikkialla mitä syvin
hiljaisuus.

Apahit tiesivät kuitenkin aivan hyvin, että vähinkin varomattomuus


tuottaisi heille kuoleman. Heidän alapuolellaan istuivat molemmat
erämaan rosvot poltellen punertavasta savesta tehdyillä
intiaanipiipuilla. Heidän vieressään olivat heidän pitkät pyssynsä ja
tuon tuostakin loivat he katseen vaaleaan ja levottomaan Barajaan.
Vielä eivät ryövärit aavistaneet petosta, jonka hän oli heille tehnyt;
sattumus saattoi kuitenkin ilmaista sen. Mies pelkäsi senvuoksi
henkeänsä ja aarretta, eivätkä molempien rosvojen uhkaukset olleet
omiansa rauhoittamaan häntä.

Molemmat neuvottelivat, miten parhaiten voisivat täyttää


Mustallelinnulle antamansa lupauksen ja jättää metsästäjät elävinä
hänelle. He kysyivät eräältä lähellä olevalta Vuorikauris-nimiseltä
intiaanilta saadakseen samalla kuulla liittolaistensa mielipiteen,
minkä neuvon hän antaisi. Tämä ehdotti, että nälällä pakotettaisiin
metsästäjät antautumaan, mutta tämä keino tuntui molemmista
rosvoista liian pitkälliseltä, sillä heidän voitonhimonsa halusi
pikemmin päästä perille.

Ehdolla, että kolme arvalla määrättyä soturia uhrautuisi hänen


aikeensa hyväksi, lupasi Bastardi hankkia viholliset elävinä heille.
Empimättä ilmaisivat intiaanit olevansa valmiit siihen ja päästivät
pitkän riemuhuudon. Molemmat rosvot ilmaisivat nyt aikeensa ja heti
ryhdyttiin uhreja valitsemaan.

Eräs intiaani otti arpanappulat taskustansa ja määrättiin, että


kolme alimman numeron saanutta uhrautuisi toisten hyväksi.

Tämän kamalan uhkapelin aikana pysyivät intiaanit aivan tyyninä,


eivätkä väreelläkään ilmaisseet, mitä heidän sydämissään liikkui.

Vuorikauris koetti ensin onneansa. Hän puisti nappuloita ja pudotti


ne hiekalle, ja hänen tummat silmänsä seurasivat viekkaasti niitä,
mutta ei jänterekään värähtänyt.

— Kaksitoista! sanoi mestitsi, laskettuansa, samalla kuin hänen


isänsä kirjoitti luvun hiekkaan.
Kun ei voitu noutaa aavikolla olevia neljää intiaania antaumatta
varmaan kuolemaan, vapautettiin heidät arvan heitosta.

Toinen soturi seurasi Vuorikaurista. Hän ei edes viitsinyt puistaa


nappuloita. Toisen kerran vyöryivät ne hiekkaan.

— Kaksi! huudahti Bastardi.

— Soturit valittavat Kalliosydämen kuolemaa, sanoi intiaani, pitäen


oman ruumissaarnansa; he sanovat, että hän on ollut sankari.

Yksi silmä kummastakin nappulasta oli pudonnut, intiaanin


kohtalosta ei siis ollut epäilystä; mutta lausuttuansa yllämainitun,
hän kovalla voimanponnistuksella pidätti sydämensä valtavat liikkeet.

Kun intiaani, jonka kohtalo siten oli määrätty, näin osoitti


välinpitämättömyyttä, jota ei hänen sydämensä tuntenut, vetivät
jäljellä olevat arpaa.

Kaksi ja kuusi olivat alimmat tähän asti tulleet numerot ja enää oli
jäljellä yksi intiaani, joka ei ollut arpaa vetänyt hengestänsä.

Luultavaa oli, että hän heittäisi samoin kuin Vuorikauriskin.

Kuuden jälkeen oli alin luku yhdeksän. Hän saattoi toivoa


heittävänsä enemmän.

Kaikista ponnistuksista huolimatta ei apahi saattanut pidättää


kättänsä vapisemasta.

Punakäsi rypisti otsaansa, mestitsi nauroi ivallisesti, ja intiaanit


murisivat.
Soturi pidätti kätensä juuri kun oli heittämäisillään, ja katsahtaen
miettivästi ja surullisesti ympärilleen lausui heikkouttaan puolustaen:

— Huokaavan tuulen majassa on nuori vaimo, joka on ollut siellä


ainoastaan yhdeksän kuukautta, ja soturin poika, joka tänään näkee
auringon kolmannen kerran.

Hän heitti nappulat.

— Viisi! kiljaisi melkein iloisella äänellä vanha rosvo, jota


kummastutti, että saattoi rakastaa vaimoaan ja lastaan.

— Nälkä ja huoli tulevat vieraiksi Huokaavan tuulen majaan, lisäsi


intiaani vienolla, sointuisella äänellä, josta oli nimensäkin saanut.

Onnettoman viimeiset ajatukset kääntyivät niihin kahteen


heikkoon olentoon, jotka samalla menettäisivät soturin rakkauden ja
turvan; hän istui äänetönnä erillään, eivätkä toisetkaan hänestä
välittäneet.

Mestitsi loi isäänsä riemuitsevan katseen, johon tämä vastasi


inhottavalla hymyllä.

Kun intiaanien mestitsin aikeen mukaan tuli uhrautua toinen


toisensa jälkeen, määrättiin, että he toistamiseen löisivät arpaa siitä,
missä järjestyksessä se tapahtuisi.

Tässä voitti Huokaava tuuli sen edun, että jäi viimeiseksi.

Tämän kaiken kestäessä mietti Baraja, tunnustaisiko asian


todellisen laidan rosvoille.
Lopuksi päätti hän yhä vain pysyä äänetönnä ja odottaa asiain
menoa.

37.

PIIRITYKSEN JATKUMINEN.

Intiaanien vielä neuvotellessa liittolaistensa kanssa alkoi aurinko


vaipua länteen, ja rasittava, helteinen tuuli puhalsi, ajaen suuria
valkoisia pilviä pitkin taivaan lakea.

Pilvet levenivät ja tummenivat, ja lähestyvän myrskyn enteenä


häilyivät männyn oksat edestakaisin.

Mustat kotkat, erämaan lentävät asukkaat, etsivät suojaa kalliolta.

— Voitko noista intiaanien parista huudahduksesta päättää,


paljonko heitä on? kysyi Rosenholz Josélta.

— En; sitä paitsi mietin levottomasti, minkä pirullisen sotajuonen


viekas mestitsi ja julma Punakäsi ovat keksineet. Sinä samoinkuin
minäkin, olet kuullut etäältä heidän äänensä. Jotain he ovat
keksineet, siitä olen varma, sillä sen todistaa äskeinen riemuhuuto.

— Me olemme käyttäneet kaikkia varovaisuuskeinoja, mitä uljaat


ja järkevät miehet voivat, sanoi Fabian, ja kun on velvollisuutensa
täyttänyt, täytyy kohtaloonsa alistua.

— Tehkäämme niin, sanoi José, mutta nyt minun on polttava jano.


Te, don Fabian, olette vesiputousta lähimpänä, katsokaa, ettekö
vaaratta saattaisi ammentaa vettä pullooni, jos sidomme sen
latauskeppini päähän.

— Antakaa tänne se, sanoi Fabian, se käy helposti ja minäkin


tahtoisin sammuttaa janoni.

Fabian konttasi putouksen luo, täytti pullon ja kaikki joivat. Tämä


virkisti heitä ja uudelleen alkoivat he tähystellä.

Mutta janon sammuttua tuli uudelleen nälkä; kello oli lähes neljä,
ja kaksitoista tuntia oli kulunut siitä, kun piiritetyt söivät niukan
ateriansa. Heidän täytyi kuitenkin odottaa yön tuloa voidaksensa
turvallisesti ryhtyä syöntipuuhiin, jossa puute pakotti heidät
kohtuullisiksi.

Heidän varustuksensa suojelivat heitä vihollisten luodeilta


ainoastaan heidän ollessaan pitkällään maassa. Mutta jos he
vähänkin kohottivat itseänsä, olivat he intiaanien luotien esineenä.

Pitkän odotuksen jälkeen saapui hetki, jolloin metsästäjät luulivat


huomanneensa liikettä vastapäätä olevalla kukkulalla. Siellä kasvavat
pensaat häilyivät edes takaisin. Pian nähtiin kuinka bisoninnahkainen
vaippa laskettiin oksien päälle.

— Tuo on jonkun sotajuonen alkua, sanoi Rosenholz; ehkäpä siten


koetetaan kääntää huomiomme sieltä, missä vaara todella piilee.

— Kyllä se tuolta tulee, luota siihen, sanoi José; heti kun viisi tahi
kuusi nahkaa on tuon päälle laskettu, voipi kaksi miestä asettua
niiden taakse; heidän suojuksensa läpi eivät meidän luotimme
tunkeudu, vaikka ei välikään ole pitkä.
Josén tätä lausuessa heitti hänen aavistuksensa todistamiseksi
näkymätön käsi toisen vaipan edellisen päälle.

— Olkoon miten tahansa, lisäsi Rosenholz, kyllä minä ainakin


pidän silmällä kaikki pensaat, eikä ainoakaan silmä voi minun
huomaamattani tähystellä lehtien välistä.

Ei kauvan viipynyt, ennenkuin kolmas nahka liittyi edellisiin, ja


vielä näkivät metsästäjät viisi nahkaa laskettavan edellisten päälle;
niiden karvat olivat vuoroin sisään vuoroin ulospäin käännetyt.

Nämät vaipat tiheine karvoineen muodostivat suojuksen, joka oli


yhtä vahva kuin jalan paksuinen muuri.

— Tuo on epäilemättä tuon ilkeän mestitsin puuhia, sanoi José,


eivätkä meidän kaikkienkaan silmät ehdi näkemään, mitä tuon vallin
takana tehdään. Kas, nyt voisi mies tuolla melkeinpä seisoa ja hän
pitäisi meidät tiukalla.

— Kas, sanoi Rosenholz, näenpä miten pensaat tuolla alhaalla


vasemmalla häilyvät, vaikka niin vähän, että intiaani, joka saa ne
häilymään, voipi otaksua meidän luulevan sen tuulen teoksi.
Rosenholzin viittaama paikka oli kukkulan toisessa päässä, vastaisella
puolella bisonin nahkojen muodostamaa vallia. Kallion kieleke peitti
tässä aukon, josta ihminen vaaratta uskalsi katsahtaa alaspäin.

— Älä välitä siitä veitikasta, sanoi José, vaan epäile mestitsiä ja


hänen inhottavaa isäänsä.

— Taivas antaa käsiimme sen miehen, joka on syynä tähän


kaikkeen.
Näetkö hänet? kysyi Rosenholz tukahdutetun kiukun äänellä.
Kallionkielekkeen taakse kumartui ihminen, jota tuskin
huomasikaan tiheässä pensastossa, mutta jonka piirteet Rosenholzin
terävä silmä pikemmin arvasi kuin näki.

Henkilö pysyi liikkumattomana, eikä uskaltanut syrjäyttää


suojelevia oksia.

— Käännä pyssysi hieman viistoon, José, sanoi Rosenholz. Kas


niin, hyvä, se ei saa ulottua sinua suojelevan kiven ulkopuolelle…

Hänet keskeytti Josén pyssyn pamaus.

Baraja, jonka päähän luoti sattui, ojensi haavoitetun käärmeen


tavoin ruumistansa; hän ei enää voinut pidättää sitä, vaan vyöryi
rinnettä alas, temmaten mukanaan kappaleen suojelevaa vihantaa
aitausta ja putosi kultalaaksoon.

Hänen suonenvedon tapaisesti puristettujen käsiensä viimeiset


värähdykset paljastivat osan peitettyä kultaa, jonka hän sai
hengellänsä maksaa ja johon hän kuolonkamppauksessaan iski
hampaansa.

Sattumalta peitti hänen irtitempaamansa ruoho uudelleen aarteen.


Metsästäjiä lukuun ottamatta oli Pedro Diaz ainoa, jolle ei paikan
tietäminen ollut henkeä maksanut.

— Tuo roisto uinuu kullassa korviansa myöten, sanoi José.

— Jumalan tuomio! lausui kanadalainen.

— Etsi nyt sinulle luvattua aarretta, perhanan mestitsi! sanoi José;


teinpä oikein viisaasti, kun peitin sen.
Taivas oli sillä aikaa mennyt pilveen ja kaiku toisti ukkosen
ensimäisen, kaukaisen jyrinän. Sitä seurasi syvä, mahtava hiljaisuus,
lähenevän myrskyn enne.

— Kamala yö on tulossa, sanoi Rosenholz, ja meidän on


taisteleminen sekä ihmisiä että luonnonvoimia vastaan. Fabian,
konttaa katsomaan, onko ruutimme suojassa myrskyltä. Luo samalla
silmäys aavikolle nähdäksesi, vieläkö ne neljä rosvoa ovat luolissaan.

Fabianin poistuessa täyttämään Rosenholzin käskyä, lausui


jälkimäinen huoahtaen Josélle.

— Sydämeni on yhtä synkkä kuin nuo sadetta ja ukkosta uhkaavat


pilvet.
Olen arka kuin nainen, synkät aavistukset, joita ei tuo lapsi saa
huomata, ovat masentaneet rohkeuteni, josta tähän asti olen
ylpeillyt.
José, etkö mitenkään voi lohduttaa vanhaa toveriasi?

— En, Rosenholz-parka, vastasi tämä. Jos sentään, josta Jumala


varjelkoon, noitten luoti sattuisi sinuun, niin…

— En puhu itsestäni, lausui Rosenholz keskeyttäen hänet; nyt


pidän henkeäni arvossa Fabianin tähden, enkä itseni. Älä suutu
suorapuheisuudestani, sillä jos saisin teidän molempien kanssa elää
kuolemaani saakka, tuntuisi se minusta matkustukselta noita
viehättäviä, kukkarantaisia jokia myöten, joita usein olemme
ruuhessamme kulkeneet, toisinaan sytyttäen öisen nuotiomme
magnolioitten ja sumachpuitten siimekseen, toisinaan ollen
alallamme majavia pyydystämässä, tahi joen rannalle juomaan
tulleita hirviä ampumassa.
— Kyllä ymmärrän, sanoi José, sinä et pelkää kuolemaa, vaan
eroamista hänestä, niinkuin jo ennenkin on tapahtunut.

— Niin juuri, José! Olet koskettanut sydämeni arimpaan kohtaan.


Jos joutuisin noitten intiaanien käsiin, niin älä, samoin kuin ennen,
seuraa jälkiäni viikkokausia, vaan jätä kykenemätön ukko sillensä.
Saata Fabian takaisin Espanjaan, auta häntä kadonneen
omaisuutensa takaisin saamisessa, äläkä päästä häntä unohtamaan,
että on ollut ihminen, jolle hänen näkemisensä oli kuin aavikon puun
varjo, kuin savupatsas, joka ohjaa eksyneen metsästäjän oikealle,
kuin sumun läpi tuikkiva pohjantähti, joka on hänelle tien viittana.

Ukko vaikeni, sydämeensä sulkien synkät mietteensä.

Fabian palasi paikalleen.

— Ampumavaramme ovat suojassa, sanoi hän, enkä nähnyt


ketään aavikolla.

— Nuo roistot ovat jääneet luoliinsa kuin huuhkaimet, jotka vasta


yöllä uskaltavat esiintyä, sanoi José. Sitten näemme heidän hiipivän
tämän kukkulan juurelle, sillä varmaan he nyt vain odottavat pimeän
tuloa hyökätäksensä päällemme.

— Sitä en luule, sanoi Rosenholz; mutta jos yö tulee, ennenkuin


he ovat suunnitelmansa toteuttaneet, tiedän henkilön, joka säästää
heiltä puolen matkaa. Me kahden, José, hyökkäämme aivan kuin
sinä yönä, jolloin Arkansasin rannoilla voitimme intiaanit, jotka
luulivat olevansa turvassa majavanluolissa, joihin olivat piiloutuneet.

— Niinpä niinkin, vastasi José, jos meidät joskus sidotaan puuhun


ja käsketään virittämään kuolinvirtemme, niin on meillä pitkä
hautausvirsi veisattavana.

Hyökkäys viipyi kuitenkin vastoin Rosenholzin otaksumista.


Savupatsas oli jo hetken tiheänä kohonnut kukkulan takaa.

Aluksi eivät metsästäjät voineet käsittää, miksi intiaanit olivat


sytyttäneet tulen, jonka savu näkyi, mutta nälkä saattoi heidät
arvaamaan syyn. Tuuli toi mukanansa miellyttävän tuoksun, eivätkä
he voineet erehtyä sen aiheuttajasta.

— Kas vaan noita koiria, sanoi José, heillä on metsänriistaa


mukanaan ja nyt he paistavat sitä, samalla kuin meidän laistemme
kristittyjen täytyy tyytyä sen hajuun. Se todistaa, että he ovat
päättäneet pitää meitä saarroksessa täällä ja toivovat voittavansa
nälällä sen, mitä eivät väkivallalla saa. Pidinpä mestitsiä ja hänen
isäänsä parempina, sillä vaikka he ovatkin kehnoja rosvoja, ei heiltä
rohkeutta puutu.

Vähitellen lakkasi savu näkymästä ja äkkiä kajahti hurja huuto,


jota kuunnellessa täytyi olla vahvat hermot.

Metsästäjät eivät kuitenkaan tästä pelästyneet. Hyökkäystä he


eivät pelänneet, vaan pitkällistä piiritystä.

— Vastaammeko siihen? kysyi José.

— Emme, sanoi Rosenholz, vaan annamme pyssyjemme vastata.


Tarkastele tarkoin jokaista oksaa, jokaista ruohon kortta, ikäänkuin
edessämme olisi joukko käärmeitä. Nuo pedot kyllä haluavat päättää
taistelun vielä päivän koittaessa ennen myrskyn puhkeamista.

— Jumala suokoon, ettet pettyisi, sillä huomispäivä tuottaisi vain


uusia vaaroja.
— Tuo peto, jonka äsken kaadoimme tuonne kultavuoteelle, on
tuonut tänne nuo roistot, Punakäden ja mestitsin tovereinensa
anastamaan aarretta, eivätkä he tienneet, että kolme soturia
Gilajoen saarelta vartioitsi sitä. Luultavasti on Mustalintu päässyt
soturiensa tuhoojien jäljille, ja huomenna ovat he kaikki täällä.

— Puhvelinnahkainen suojus liikkui äsken, sanoi Fabian. Näin


myöskin sen takana mestitsin päätä koristavien punaisten nauhojen
liikkuvan.

Siitä osasta kukkulaa, jossa Punakäsi ja mestitsi olivat


puhvelinnahkojen suojassa, eivät piiritetyt jättäneet tuuman
vertaakaan vartioimatta. Mutta voidaksensa osua kukkulan juurella
oleviin vihollisiin, täytyi heidän suunnata pyssynsä alaspäin; samoin
täytyi ampujan pistää pyssyn piippu ulos ampumareijästä, itseään
kuitenkaan paljastamatta.

— Jumal' auta! huudahti José äkkiä, tuolla on intiaani, joka joko


on suuttunut elämään tai myöskin tahtoo tarkastaa kultalaakson
puolta.

Näin sanoen viittasi hän intiaanin käteen, joka varovasti käänsi


syrjään vuoren juurella kasvavia pensaita.

— Vetäy hieman takaisin oikealle, sanoi Rosenholz Fabianille. José


on aivan vastapäätä häntä, eikä voi osata häneen panematta itseään
vaaraan.

Fabian väistyi vesiputoukseen päin lähes kukkulan syrjälle,


tehdäksensä tilaa Rosenholzille.
— Intiaani, lisäsi Rosenholz, on mieletön; kas vaan, hän näyttää
ärsyttävän meitä ampumaan ja tahtoo ilmaista olopaikkansa.

Todellakin taivutti vihollinen, jonka käden ainoastaan saattoi


nähdä, pensaita syrjään, liikkeitään salaamatta.

— Ehkäpä se on vain sotajuoni, jolla tahdotaan suunnata meidän


huomiotamme sinne, sanoi José, mutta ole huoletta, kyllä minä
pidän varalla.

— Sotajuoni! toisti Rosenholz, ei suinkaan. Nyt on tuo veitikka


aivan pyssyni suussa ja voisin murtaa hänen kätensä peukalon ja
kämmenen välistä. Väistypä Fabian vielä vähän takaperin; minun
täytyy suunnata enemmän vasemmalle, sillä kun käsi on tuossa, on
ruumis vähän sivulla. Hyvä! Nyt olen oikeassa asennossa.

Rosenholzin lausuessa näitä viimeisiä sanoja, tunkeutui petolinnun


kimeä kiljahdus ilmasta metsästäjien korviin, ja samalla päästi
intiaani pensaan. Hänen kätensä katosi.

Petolintuja leijaili ylhäällä pilvissä, ja laskeutuessaan alas näyttivät


ne suuremmilta.

Ei José eikä Rosenholz voineet oikein selittyä tuota kiljahdusta,


eikä päättää, oliko se merkkinä vai tuliko se ilmassa leijailevilta
kotkilta.

Ukkosen jyrähdys Sumuvuorilla ajoi linnut pakoon.

Kaikki eläimet näyttivät etsivän suojaa myrskyltä, joka oli


puhkeamaisillaan. Maakin näytti peittävän kasvonsa. Ihmiset vain
eivät häiriytyneet, he koettivat saada tilaisuutta toisiansa
tappaaksensa.
— Tuo punainen piru näyttäytyy kyllä uudelleen, sanoi Rosenholz,
sillä ei kukaan liiku tuolla vastapäätä, eivätkä he voi hyökätä
päällemme kukkulalta, vaan aavikolta.

Valmiina ampumaan jokaisen, joka uskaltautui kukkulan ja


vuoriston välille, oli Rosenholzin pyssyn suu suunnattuna
pensastoon, jota ei nyt edes tuuli pannut liikkeelle.

— Ahaa, sanoi Rosenholz, tuolla se veitikka taasen on, hän


röyhkeilee; mutta enpä ole nähnyt intiaanin tuolla tavoin
menettelevän. Hän lienee joku elämäänsä kyllästynyt, joka on
päättänyt antautua ensi tilassa ammuttavaksi.

Intiaani oli tullut yhdellä hyppäyksellä vuoren rinteeltä


kultalaaksoa ympäröivään pensastoon ja vaikka pensaat suojelivatkin
muun osan hänen ruumistaan, kohosi hänen päänsä kuitenkin sen
yli.

— Tuo veitikka ei muuta tahdokaan, sanoi Rosenholz, jonka täytyi


ampua alaspäin ja pistää pyssynsä suu ampumareijästä ulos. Se ei
ulottunut puolta jalkaakaan kiven ulkopuolelle. Melkein samalla
kertaa kuului kolme laukausta ja kaksi tuskan huudahdusta.
Ensimäinen laukaus tuli metsäsissin pyssystä ja ensimäinen
huudahdus intiaanilta, joka uhitellen päästi kuolon kiljahduksen.
Toiset melkein samanaikaiset laukaukset tulivat Punakäden ja
mestitsin pyssystä. Toisen huudahduksen päästi Rosenholz. Kaksi
luotia oli samalla kertaa sattunut hänen pyssyynsä, joka kirposi
hänen kädestään ja vyöryi alas kuolevan intiaanin luo. Tällä oli vielä
voimaa tarttua siihen, hänen heikko kätensä heitti sen vuoren
juurelle, ja sitten ei hän enää liikahtanutkaan. Hurja ilon huudahdus
seurasi tätä tapausta, samalla kuin kanadalainen loi kuolettavan
tuskallisen katseen Fabianiin ja Joséhen. Sillä aikaa pimeni taivas
yhä.

35.

URHOJEN ONNETTOMUUS.

Kaukaisen lännen erämaissa on kolme asiaa aivan välttämätöntä,


peloton sydän, nopea, kestävä hevonen ja tarkka pyssy.
Järkähtämätön rohkeus, sellainen kuin metsästäjien, tekee hevosen
tarpeettomaksi; mutta pyssyttä on rohkeakin mies vaaran uhkaama
olento, jota nälkä ja pedot ahdistavat ja jonka intiaanit tappavat.

Kanadalaisen kelpo ase, hänen uskollinen toverinsa monissa


vaarallisissa seikkailuissa Kanadan metsistä Sumuvuorille saakka, oli
nyt tuolla, omistajansa kädestä kirvonneena. Vanha metsäsissi loi
yhtä surullisen silmäyksen pyssyynsä kuin olisi se ollut hänen
rakkaimman ystävänsä hengetön ruumis. Hänestä tuntui, että hän oli
menettänyt ei ainoastaan puolustusaseensa, vaan vieläpä oman
kasvattipoikansa hengen. Aavikoiden harmaahapsinen soturi tunsi
silmiensä käyvän kosteiksi; hän oli hevostaan itkevän arapialaisen
kaltainen. Kyynel vyöryi hänen poskelleen.

— Nyt on teitä vain kaksi tällä kalliolla — vanhaa Rosenholzia ei


tule ottaa lukuun, sanoi hän vihdoin koettaen salata heikkouttaan.
Olen nyt lapsi, jolle viholliset voivat tehdä mitä tahtovat. Fabian
poikani, sinulla ei enää ole isää, joka sinua puolustaisi… Sitten vaipui
hän synkkään äänettömyyteen, kuten voitettu intiaani.
Hänen toverinsa olivat samoin vaiti; nuo kolme tunsivat heitä
kohdanneen onnettomuuden suuruuden. Hyödytöntä uhkarohkeutta
olisi ollut koettaa anastaa takaisin ase, joka ehkä oli luotien
runtelema. Jos he sitä aikoivat, niin antautuivat he intiaanein, joitten
lukua eivät tienneet, saarrettavaksi, vaikka heillä vesiputouksessa oli
tie, millä vankeuden välttäisivät.

— Ymmärrän sinut, lausui José, nähdessään toverinsa


tähystelevän veteen, joka pudotessaan hiukan kimalteli; mutta vielä
ei olla niin pitkällä. Sinä olet minua taitavampi ampuja, ja pyssyni
sopii paremmin sinulle kuin itselleni.

Näin sanoen tarjosi hän asettansa.

— Kun meillä kolmella on edes yksikin pyssy, on se teidän,


Rosenholz, lisäsi Fabian. Olen Josén kanssa samaa mieltä;
voisimmeko jalompiin ja uskollisempiin käsiin luovuttaa ainoan
pelastuskeinomme?

— Kiitos, lapseni, kiitos, vanha sotatoverini, mutta en saata


tarjoustanne hyväksyä, sillä onni ei suosi minua.

Näin sanoen ojensi Rosenholz takaisin Josén antaman pyssyn.

— Mutta Jumalan kiitos, alotti hän uudelleen, kun hänen


tuskallinen alakuloisuutensa vähitellen muuttui raivoavaksi vimmaksi,
jollainen toisinaan valtasi tämän jättiläisen, vielä on minulla jäljellä
puukkoni, millä voin halaista jokaisen, joka näyttäytyy, ja kädet,
jotka voivat kuristaa heidät, tai murskata heidän päänsä kiviä
vastaan.

José ei vielä ottanut pyssyänsä.


— No, sinä mestitsi koira, sinä valkoisen rodun häpeätahra — te
kuljeksivat intiaanit — uskallatteko ryömiä piilostanne ja tulla tänne!
huudahti Rosenholz vimmoissaan Punakädelle, mestitsille ja heidän
liittolaisilleen, — nyt on ainoastaan kaksi teidän vastassanne. Mitä on
soturi ilman pyssyä?

Mahtava ukkosen jyrinä mustista pilvistä masensi hänen äänensä,


mutta hänen uhkauksensa tuntui vaikuttaneen. Toinen intiaani,
kulkien lähes samaa tietä kuin äsken kaatunutkin, oli tullut
kultalaakson pensastoon, mutta hän salasi itsensä niin huolellisesti,
että voi nähdä ainoastaan hänen silmänsä, päänsä ja punaiset
hiusnauhansa.

— Hän se on, tuo mestitsikoira! huudahti José, joka luuli


tuntevansa hänet, samalla kuin hänen kätensä kurottui pyssyyn.
Mutta Rosenholz ehti ennen häntä.

Kostontunteen sokaisemana ja suuttuneena pyssynsä


kadottamisesta sieppasi kanadalainen Josén aseen, ja suuntasi
sydämessään raivoavan, malttamattoman vihan valtaamana sen
mestitsiä kohti. Kun tämä oli samalla paikalla, jossa äskeinenkin
intiaani, täytyi metsästäjän, jos mieli osata häneen, pistää pyssynsä
ulos samoin kuin äskenkin.

Intiaani kaatui kuoliaaksi haavoitettuna pensastoon. Mutta kaksi


laukausta kuului taasen samalla kuin kanadalaisenkin ja särki pyssyn
hänen kädestään.

— Voih! huusi kanadalainen jyrisevällä äänellä nousten melkein


kokonaan ylös ja uhaten kuollutta vihollista särkyneellä pyssyn
perällä.
— Piru sinut vieköön, kirottu mestitsi! huusi hän puistaen ruumiille
kättään.

Pilkkanauru kajahti vastapäätä olevalta kukkulalta ja hetkiseksi


näyttäytyi mestitsi terveenä vahingoittumattomana, hiukset hajallaan
liehuen pirullinen ivahymy huulillaan, puhvelin nahkojen takaa. Sitten
katosi hän yhtä nopeasti.

Intiaani oli lainannut mestitsin pääkoristeet herättääksensä


vihollistensa vimmaa, jonka tarkoitusperän hän oli saavuttanutkin.

— Lumivuorien kotka on päivällä liikkuvan pöllön kaltainen; hänen


silmänsä ei voi erottaa päällikköä soturista, huusi mestitsi.

— Voi, José, tuo ihminen saattaa meidät onnettomuuteen; tästä


hetkestä on meidän kesken taistelu elämästä ja kuolemasta!
huudahti Rosenholz, asettuen paikalleen ja kiroten puoliääneen.

— Vannon äitini sielun kautta, sanoi José, että jos Jumala minulle
elon päiviä suo, pistän puukkoni juurta myöten tuon puoleksi
valkoisen, puoleksi mustan pirun sydämeen.

Ikäänkuin taivas olisi tahtonut osoittaa kuulleensa tämän valan,


pimensi se äkkiä koko seudun; tulisten käärmeiden näköisiä
salamoita risteili ja ukkonen jyrisi. Vuoren kaiku toisti tämän jyrinän,
salaman valo valaisi omituisella, kaamealla valolla metsästäjiä.

Kanadalaisen ja Josén silmissä hehkui kiivas tuli, ikäänkuin


saarroksessa olevan leijonan.

Heitä kohdannut kamala onnettomuus ei ollut heidän rohkeuttaan


masentanut, hetkeksi vain muuttanut sen surulliseksi
alakuloisuudeksi. Selvästi näkyi, että molemmat miehet, jotka
hetkeksi taipuivat kuin myrskyn notkistamat tammet, taasen
kohottautuisivat.

Tuollainen nöyryytyksen tunne, joka valtaa vanhan soturin, kun


nuoret rekryytit anastavat hänen aseensa, valtasi nyt vihan sijaan
kanadalaisen.

Vähitellen saavutti Josékin tavallisen reippautensa ja


leikillisyytensä.

— Fabian, sanoi kanadalainen surullisesti, olen liiaksi luottanut


voimaani ja kokemukseeni; mitä tämä voima, mitä tämä kokemus
minua hyödyttää? Fabian, José, antakaa anteeksi minulle!
Mielettömyyteni on teidät turmioon saattanut.

— Siitä puhumme sittemmin, sanoi José. Aseesi on kädestäsi


murskattu, samoin kuin ne olisivat murskatut minun kädestäni —
siinä kaikki. Mutta luuletko, ettei meillä ole muuta tekemistä kuin
naisten tavoin valittaminen, kuin haavoitettu puhveli, joka odottaa
kuolemaa?

— Mitäpä voisi soturi, jonka käsiä hirvi nyt vaaratta voisi nuolla?
sanoi kanadalainen nöyrästi.

— Selvää on, ettemme ennen yötä voi paeta täältä; tehkäämme


siis hyökkäys. Fabian suojelee meitä pyssyllään täältä. Tiedäthän
Rosenholz, että sellaiset rohkeat yritykset toisinaan onnistuvat. Kas
näin! Tuolla alhaalla kivien takana makaa neljä roistoa, jotka meidän
täytyy tappaa luoliinsa. Nyt on lähes yhtä pimeä kuin yöllä, meitä on
kaksi neljää vastaan — siinä kaikki!

Sitten kääntyi José Fabianiin jatkaen:


— Vaikka ette kokonaan lakkaakaan tähystelemästä noita vuorella
olevia roistoja, tulee teidän kuitenkin etupäässä, itseänne
näyttämättä, tarkata noita aavikolla olevia. Jos viimemainitut meidät
huomaavat ja joku heistä liikahtaa, niin ampukaa hänet; jos he ovat
hiljaa, niin kyllä me heistä huolen pidämme. Rosenholz, tämä on
varmaan sinunkin mielipiteeksi! Toimeen siis! Kun olemme
muutaman iskun antaneet, palaan minä noutamaan teitä, don
Fabian! ja sitten lähdemme.

Rosenholz suostui tuumaan, joka jo rohkeudellaan miellytti häntä


ja jonka pimeän suojassa saattoi toteuttaa. Kostokin häntä siihen
kiihotti.

He silmäsivät aavikolle, varmistuaksensa, ettei kukaan sieltä ollut


lähtenyt.

Sitten luisuivat molemmat metsästäjät puukko hampaissa


kukkulalta alas niin nopeasti, että Fabian tuskin luuli heidän
lähteneen, kun he jo piiloutuivat järven rannalla olevaan kahilaan.

Fabian tuskin uskalsi hengittää, seuratessaan heidän liikkeitänsä.

Intiaaneja peittävät kivilaatat olivat yhtä liikkumattomia kuin


muutkin kivet. Synkän, häntä ympäröivän äänettömyyden
tyynnyttämänä seurasi Fabian Josén ja Rosenholzin liikkeitä.
Molemmat olivat pysähtyneet ja näkyivät neuvottelevan hetkisen.

Sitten he varovasti painautuivat rannalla olevaan kahilaan. Pian


katosivat he kokonaan.

Myrsky pani kahilan niin kovaan liikkeeseen, että Rosenholz ja


José voivat huomaamattomasti lähetä.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebooknice.com

You might also like