100% found this document useful (3 votes)
29 views

(Ebook) Accelerated macOS Core Dump Analysis: Training Course Transcript with LLDB Practice Exercises by Dmitry Vostokov, Software Diagnostics Services ISBN 9781912636754, 1912636751 All Chapters Instant Download

The document provides information about various ebooks authored by Dmitry Vostokov, focusing on core dump analysis for macOS, Linux, and Windows, along with practice exercises and training course transcripts. It highlights the importance of understanding core dump analysis fundamentals, threading, and memory management in software diagnostics. Additionally, it emphasizes the significance of hands-on exercises and the use of symbol files for effective debugging and analysis.

Uploaded by

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

(Ebook) Accelerated macOS Core Dump Analysis: Training Course Transcript with LLDB Practice Exercises by Dmitry Vostokov, Software Diagnostics Services ISBN 9781912636754, 1912636751 All Chapters Instant Download

The document provides information about various ebooks authored by Dmitry Vostokov, focusing on core dump analysis for macOS, Linux, and Windows, along with practice exercises and training course transcripts. It highlights the importance of understanding core dump analysis fundamentals, threading, and memory management in software diagnostics. Additionally, it emphasizes the significance of hands-on exercises and the use of symbol files for effective debugging and analysis.

Uploaded by

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

Download the Full Ebook and Access More Features - ebooknice.

com

(Ebook) Accelerated macOS Core Dump Analysis:


Training Course Transcript with LLDB Practice
Exercises by Dmitry Vostokov, Software Diagnostics
Services ISBN 9781912636754, 1912636751
https://ebooknice.com/product/accelerated-macos-core-dump-
analysis-training-course-transcript-with-lldb-practice-
exercises-49156788

OR CLICK HERE

DOWLOAD EBOOK

Download more ebook instantly today at https://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) Accelerated Mac OS X Core Dump Analysis, Second


Edition: Training Course Transcript with Gdb and Lldb
Practice Exercises by Dmitry Vostokov ISBN 9781908043719,
1908043717
https://ebooknice.com/product/accelerated-mac-os-x-core-dump-analysis-
second-edition-training-course-transcript-with-gdb-and-lldb-practice-
exercises-6778160
ebooknice.com

(Ebook) Accelerated Linux Core Dump Analysis, Third


Edition by Dmitry Vostokov ISBN 9781912636594, 191263659X

https://ebooknice.com/product/accelerated-linux-core-dump-analysis-
third-edition-47839386

ebooknice.com

(Ebook) Memory Dump Analysis Anthology, Volume 2, Revised


Edition by Dmitry Vostokov, Software Diagnostics Institute

https://ebooknice.com/product/memory-dump-analysis-anthology-
volume-2-revised-edition-53663124

ebooknice.com

(Ebook) Encyclopedia of Crash Dump Analysis Patterns Third


Edition by Dmitry Vostokov
Software Diagnostics Institute
https://ebooknice.com/product/encyclopedia-of-crash-dump-analysis-
patterns-third-edition-53663106

ebooknice.com
(Ebook) Memory Dump Analysis Anthology, Volume 3, Revised
Edition by Dmitry Vostokov, Software Diagnostics Institute

https://ebooknice.com/product/memory-dump-analysis-anthology-
volume-3-revised-edition-53663130

ebooknice.com

(Ebook) Memory Dump Analysis Anthology, Volume 2, Revised


Edition by Dmitry Vostokov, Software Diagnostics Institute

https://ebooknice.com/product/memory-dump-analysis-anthology-
volume-2-revised-edition-53663118

ebooknice.com

(Ebook) Accelerated Linux API for Software Diagnostics:


With Category Theory in View by Dmitry Vostokov ISBN
9781912636624, 191263662X
https://ebooknice.com/product/accelerated-linux-api-for-software-
diagnostics-with-category-theory-in-view-50902594

ebooknice.com

(Ebook) Software Trace and Log Analysis A Pattern


Reference by Dmitry Vostokov, Software Diagnostics
Institute ISBN 9781908043825, 1908043822
https://ebooknice.com/product/software-trace-and-log-analysis-a-
pattern-reference-5656244

ebooknice.com

(Ebook) Advanced Windows Memory Dump Analysis with Data


Structures by Dmitry Vostokov ISBN 9781908043849,
1908043849
https://ebooknice.com/product/advanced-windows-memory-dump-analysis-
with-data-structures-6621088

ebooknice.com
Published by OpenTask, Republic of Ireland

Copyright © 2022 by OpenTask

Copyright © 2022 by Software Diagnostics Services

Copyright © 2022 by Dmitry Vostokov

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 publisher’s prior written permission.

Product and company names mentioned in this book may be trademarks of their owners.

OpenTask books and magazines are available through booksellers and distributors worldwide.
For further information or comments, send requests to [email protected].

A CIP catalog record for this book is available from the British Library.

ISBN-l3: 978-1-912636-75-4 (Paperback)

Revision 3.00 (December 2022)

2
Contents

About the Author.............................................................................................................................................................. 5


Presentation Slides and Transcript ................................................................................................................................... 7
Core Dump Collection..................................................................................................................................................... 27
ARM64 Disassembly ....................................................................................................................................................... 33
Practice Exercises ........................................................................................................................................................... 45
Exercise X0 .................................................................................................................................................................. 50
Exercise X1 .................................................................................................................................................................. 55
Exercise X2 .................................................................................................................................................................. 68
Exercise X3 .................................................................................................................................................................. 75
Exercise X4 .................................................................................................................................................................. 79
Exercise X5 .................................................................................................................................................................. 90
Exercise X6 .................................................................................................................................................................. 96
Exercise X7 ................................................................................................................................................................ 130
Exercise X8 ................................................................................................................................................................ 140
Exercise X9 ................................................................................................................................................................ 165
Exercise X10 .............................................................................................................................................................. 195
Exercise X11 .............................................................................................................................................................. 205
Exercise X12 .............................................................................................................................................................. 218
App Source Code .......................................................................................................................................................... 227
App0 ......................................................................................................................................................................... 228
App1 ......................................................................................................................................................................... 229
App2 ......................................................................................................................................................................... 230
App3 ......................................................................................................................................................................... 232
App4 ......................................................................................................................................................................... 234
App5 ......................................................................................................................................................................... 236
App6 ......................................................................................................................................................................... 238
App7 ......................................................................................................................................................................... 240
App8 ......................................................................................................................................................................... 242
App9 ......................................................................................................................................................................... 245
App10 ....................................................................................................................................................................... 247
App11 ....................................................................................................................................................................... 249

3
4
About the Author

5
Dmitry Vostokov is an internationally recognized expert, speaker,
educator, scientist, inventor, and author. He is the founder of the
pattern-oriented software diagnostics, forensics, and prognostics
discipline (Systematic Software Diagnostics), and Software Diagnostics
Institute (DA+TA: DumpAnalysis.org + TraceAnalysis.org). Vostokov has
also authored more than 50 books on software diagnostics, anomaly
detection and analysis, software and memory forensics, root cause
analysis and problem solving, memory dump analysis, debugging,
software trace and log analysis, reverse engineering, and malware
analysis. He has over 25 years of experience in software architecture, design, development, and
maintenance in various industries, including leadership, technical, and people management roles.
Dmitry also founded Syndromatix, Anolog.io, BriteTrace, DiaThings, Logtellect, OpenTask Iterative
and Incremental Publishing (OpenTask.com), Software Diagnostics Technology and Services (former
Memory Dump Analysis Services) PatternDiagnostics.com, and Software Prognostics. In his spare
time, he presents various topics on Debugging.TV and explores Software Narratology, its further
development as Narratology of Things and Diagnostics of Things (DoT), Software Pathology, and
Quantum Software Diagnostics. His current interest areas are theoretical software diagnostics and its
mathematical and computer science foundations, application of formal logic, artificial intelligence,
machine learning and data mining to diagnostics and anomaly detection, software diagnostics
engineering and diagnostics-driven development, diagnostics workflow and interaction. Recent
interest areas also include cloud native computing, security, automation, functional programming, and
applications of category theory to software development and big data.

6
Presentation Slides and Transcript

7
8
Hello, everyone, my name is Dmitry Vostokov, and I teach this training course. The third edition of this
course covers the M2 ARM64 platform and LLDB debugger. GDB debugger exercises were removed. If
you are interested in GDB and ARM64 there’s a Linux course available.

9
The prerequisites are hard to define. Some of you have software development experience and some
do not. However, one thing is certain: to get most of this training you are expected to have basic
troubleshooting experience. Another thing I expect you to be familiar with is hexadecimal notation
and that you have seen or can read programming source code in some language, preferably in C. The
ability to read assembly language has some advantages but for most parts not necessary for this
training. I hope to provide all the necessary explanations in this edition. Windows or, better, Linux
memory dump analysis experience may really help here and ease the transition but is not absolutely
necessary. If you have attended training or read books Accelerated Windows Memory Dump Analysis
or Accelerated Linux Core Dump Analysis, you would find a similar approach here.

10
Our primary goal is to learn core dump analysis in an accelerated fashion. So first we review
absolutely essential fundamentals necessary for core dump analysis. Also, this training is about user
process core dump analysis and not about kernel core dump analysis. An additional goal is to leverage
Windows or Linux debugging and memory dump analysis experience you may have.

11
For me, there were many training formats to consider, and I decided that the best way is to
concentrate on hands-on exercises. Specifically, for this training, I developed 12 of them, and they
utilize the same pattern-oriented approach I used in Accelerated Windows Memory Dump Analysis
and Accelerated Linux Core Dump Analysis training courses.

12
This is a roughly planned schedule. This edition also includes ARM64 disassembly and I discuss it
after we do some core dump analysis to have some context and possible “aha” moments.

13
Now I show you some pictures. We use 64-bit examples because all Mx Macs are 64-bit.

14
If you are coming from Windows or Linux background, you find fundamentals almost the same. For
every process, the macOS memory range is divided into kernel space part, user space part, and 4GB
non-accessible part to catch null pointers. This non-accessible region is different from Windows
where it is only a few Kb or Linux where it is 64KB on my Debian system. I follow the long tradition to
use red color for the kernel and blue color for the user part. Please note that there is a difference
between space and mode. Mode is the execution privilege attribute, for example, code running in
kernel space has higher execution privilege than code running in user space. However, kernel code
can access user space and access data there. We say that such code is running in kernel mode. On the
contrary, the application code from user space is running in user mode and because of its lower
privilege, it cannot access kernel space. This prevents accidental kernel modifications. Otherwise, you
could easily crash your system. I put addresses on the right. This uniform memory space is called
process virtual space because it is an abstraction that allows us to analyze core dumps without
thinking about how it is all organized in physical memory. When we look at process dumps, we are
concerned with virtual space only. In this training, we would only see user space. The picture is
conceptually unchanged from Intel Macs and it is consistent with what we see in spindump and
vmmap output.
15
When an app is loaded all its referenced frameworks, and dynamic libraries are mapped to virtual
memory space. Different sections of the same file (like code and data) may be mapped into a different
portion of memory. In contrast, modules in Windows and shared libraries in Linux are organized
sequentially in virtual memory space. A process then is setup for running, and a process ID is assigned
to it. If you run another such app, it will have a different virtual memory space.

16
When we save a process core memory dump, a user space portion of the process space is saved
without any kernel space stuff. However, we never see such large core dumps unless we have memory
leaks. This is because process space has gaps unfilled with code and data. These unallocated parts are
not saved in a core dump. However, if some parts were paged out and reside in a page file, they are
usually brought back before saving a core dump. On the Mx platform, dumps are about 3GB.

17
Now we come to another important fundamental concept in macOS core dump analysis: thread. It is
basically a unit of execution, and there can be many threads in a given process. Every thread just
executes some code and performs various tasks. Every thread has its ID. In this training, we also learn
how to navigate between process threads. Note that threads transition to kernel space via the
libsystem_kernel dynamic library similar to ntdll in Windows or the libc in Linux. Threads additional to
the main thread (POSIX Threads) originate from the libsystem_c dynamic library.

18
Every thread needs a temporary memory region to store its execution history and temporary data.
This region is called a thread stack. Please note that the stack region is just any other memory region,
and you can use any LLDB data dumping commands there. We will also learn how to get thread stack
region address range. Examining raw stack data can give some hints about the past app behavior: the
so-called Execution Residue pattern.

19
Now we explain thread stack traces. Suppose we have source code where FunctionA calls FunctionB at
some point and FunctionB calls FunctionC and so on. This is a thread of execution. If FunctionA calls
FunctionB, you expect the execution thread to return to the same place where it left and resume from
there. This is achieved by saving a return address in the thread stack region. So every return address
is saved and then restored during the course of a thread execution. Although the memory addresses
grow from top to bottom in this picture, return addresses are saved from bottom to top. This might
seem counter-intuitive to all previous pictures, but this is how you would see the output from LLDB
commands. What LLDB does when you instruct it to dump a backtrace from a given thread is to
analyze the thread raw stack data and figure out return addresses, map them to a symbolic form
according to symbol files and show them from top to bottom. Note that FunctionD is not present in the
raw stack data on the left because it is a currently executing function called from FunctionC. However,
FunctionC called FunctionD, and the return address of FunctionC was saved. In the box on the right, we
see the result of the LLDB command.

20
The difference from WinDbg here is that the return address is on the same line for the function to
return (except for FunctionD, where the address is the next instruction to execute) whereas in
WinDbg it is for the function on the next line. There’s not difference from GDB except offsets.

21
Here I’d like to show you why symbol files are important and what stack traces you get without them.
Symbol files just provide mappings between memory address ranges and associated symbols like the
table of contents in a book. So in the absence of symbols, we are left with bare addresses that are
saved in a dump. For example, without AppA symbols, we have the output shown in the box on the
right.

22
Now we talk about access violation exceptions. During the thread execution, it accesses various
memory addresses doing reads and writes. Sometimes memory is not present due to gaps in virtual
address space or different protection levels like read-only or no-execute memory regions. If a thread
tries to violate that, we get an exception that is also translated to a traditional UNIX signal. Certain
regions are forbidden to read and write such as the first 4GB. If we have such an access violation
there, then it is called a NULL pointer access. Note that every thread can have an exception (a victim
thread) and it often happens that there are multiple exceptions. It is also sometimes the case that code
can catch these exceptions preventing a user from seeing error messages. Such exceptions can
contribute to corruption, and we call then hidden.

23
However, not all exceptions happen from invalid access. Many exceptions are generated by the code
itself when it checks for some condition, and it is not satisfied, for example, when the code checks a
buffer or an array to verify whether it is full before trying to add more data. If it finds it is already full,
the code throws an exception translated to SIGABRT. We would see that in one of our practice
examples when C++ code throws a C++ exception. Such exceptions are usually called runtime
exceptions.

24
A few words about logs, checklists, and patterns. Core memory dump analysis is usually an analysis of
a text for the presence of diagnostic patterns. We run commands, they output text, and then we look at
that textual output, and when we find suspicious diagnostic indicators, we execute more commands.
Here pattern and command checklists can be very useful.

25
26
Core Dump Collection

27
28
Here I’d like to show you how to collect core dumps because by default this option is switched off on
macOS and there are further complications compared to previous versions.

29
You should also have a directory /cores where all process core dumps are stored.

30
31
32
ARM64 Disassembly

33
34
35
There are 31 general registers from X0 and X30, with some delegated to specific tasks such as
addressing stack frames (Frame Pointer, FP, X29) and return addresses, the so-called Link Register
(LR, X30). When you call a function the return address of a caller is saved in LR, not on the stack as in
Intel/AMD x64. The return instruction in a callee will use the address in LR to assign it to PC and
resume execution. But if a callee calls other functions the current LR needs to be manually saved
somewhere, usually on the stack. There’s Stack Pointer, SP, of course. To get zero values there’s the
so-called Zero Register, XZR. All X registers are 64-bit, and 32-bit lower parts are addressed via the W
prefix. Additionally, when disassembly runtime functions you may see the usage of 128-bit SIMD
registers(and also 64-bit floating point registers). These may be used to speed up some common
operations such as zero-initializing structures. The References slide provides links to the ARM64
instruction set architecture. Next, we just briefly look at some aspects related to our exercises.

36
This slide shows a few examples of CPU instructions that involve operations with registers, for
example, moving a value and doing arithmetic. The direction of operands is the same as in Intel x64
disassembly flavor if you are accustomed to WinDbg and GDB on Windows and Linux platforms. It is
equivalent to an assignment. BLR is a call to some function whose address is in the register. BL means
Branch and Link.

37
Before we look at operations with memory, let's look at a graphical representation of memory
addressing. A thread stack is just any other memory region, so instead of SP and X29 (FP), any other
register can be used. Please note that the stack grows towards lower addresses so to access the
previously pushed values you need to use positive offsets from SP.

38
Constants are encoded in instructions but if we need arbitrary values, we must get them from
memory. Square brackets are used to show memory access relative to an address stored in some
register. There’s also an option to adjust the value of the register after load, the so-called
Postincrement, which can be negative. As we see later, loading pairs of registers can be useful.

39
Storing operand order goes in the other direction compared to other instructions. There’s a possibility
to Preincrement the destination register before storing values.

40
Because the size of every instruction is 4 bytes (32 bits) it is only possible to encode a part of a large
4GB address range, either as a relative offset to the current PC or via ADRP instruction. Goto (an
unconditional branch) is implemented via the B instruction. Function calls are implemented via the
BL (Branch and Link) instruction. For conditional branches please look at the official documentation
provided on the References slide. We don’t use these instructions in our exercises.

41
When a function is called from the caller, a callee needs to do certain operations to make a room for
local variables on the thread stack and save LR if there are further calls in the function body. There
are different ways to do that and the assembly language code on the left is one of them. I use a
different color in the diagram on the right to highlight the updated SP and X29 (FP) values before
proc2 is called. Please also note an example of zero register usage. For simplicity of illustration, I only
use 64-bit values.

42
You may have noticed on the previous diagram that the new X29 (FP) points to the X29 of the caller
and below the previous X29 is the return address of the caller. So, if you know either the return
address in LR or X29 you can reconstruct the stack trace if the compiler follows the preceding
function prolog convention.

43
Another feature we encounter in our exercises is pointer authentication. The References slide
contains the link to the PAC paper, so I only mention that some parts of a pointer value (higher bits)
contain verification codes. Memory dumping commands automatically ignore these parts to show the
real address value in order to provide a symbolic reference if any. However, these bits may be a part
of the real virtual address (or considered such erroneously) as shown on this slide. In this case, you
can use the so-called typed memory print in LLDB which doesn’t remove these high bits.

44
Practice Exercises

45
Other documents randomly have
different content
“yellows” can be considered as certain. The only sure way is to dig
out and burn every tree as soon as it is seen to be affected. This
plan has been followed in Michigan, where, between 1870 and
1880, the disease was very bad. Now hardly a case of “yellows”
can be found in many of the peach regions. Constant attention
and prompt action have proved successful, in this case, at least.

SELECTED SEEDS 8 pkts. for 25 cents. Sweet Pea,


Aster, Pansy, Phlox, Poppy, Petunia, Zinnia, and Marguerite
Carnation (or 60 Oxalis Bulbs). G. T. GRAEFF, Box 1576,
Philadelphia, Pa.

$5.00 Worth for $1.00!


“The Cream of New Chrysanths.”
Pres. Smith, Maud Dean, Kate Brown, G. W. Childs, Nivens, Mrs.
F. L. Ames, Hicks Arnold, Golden Gate.
This set of 8 Gems $1.00; 6 sets $5.00, by mail. Mention this
Magazine, and we will give you free 2 Choice Carnations.
McMULLEN & PASFIELD, 20 Bedford Avenue, Brooklyn, N. Y.

Straws show which way the wind blows. Watch them—and be


convinced. When you see all sorts of washing powders patterned
after Pearline; when you see it imitated in appearance, in name,
in everything except merit; when you find three persons using
Pearline where two used it a year ago; when you hear it as a
household word with the best
housekeepers; when you find
its former enemies now its
staunchest friends;—then you
may know the wind is taking
you along toward Pearline.
Why not go with it? You are
losing money by trying to
head the other way; money,
and labor, and time and
patience.
Go with the rest—use
Pearline—and you stop losing,
and begin to gain. Millions
realize that there is
everything to gain and nothing to lose—with Pearline.

Blowing
Peddlers and some grocers will tell you, “this is as good as” or
“the same as Pearline.” IT’S FALSE—but what a puff for Pearline.
JAMES PYLE, New York.

The Innisfallen Greenhouses


Have been favorably known for more than twenty years,
and always give satisfaction. In order to increase my business, I
make the following
SPECIAL OFFERS
which are marvels of cheapness.
NEW EVER-BLOOMING
DWARF CALLA,

“THE GEM”
This is a novelty of great
merit. The only objection to
the old variety is that it
sometimes grows tall and
scraggly, but the “Little
Gem” is of strong and dwarf
habit. The foliage which is of
a lustrous dark green is in
great abundance. The flowers
are produced in the greatest
profusion, being literally an
ever-bloomer, it will bloom
freely all summer in the open ground, in September it can be
lifted and potted and will continue blooming all winter. The “Little
Gem” Calla will continue to grow and bloom for years without
ceasing, and the quantity of flowers which a large plant will
produce is astonishing, the flowers are snowy white in color, and
of good size, it seldom grows higher than fifteen inches. Price for
plants that will bloom this season, 30 cents each. For $1.00 I
will mail 5 plants to one address.
ONLY $1.00 will buy any one of the collections named below,
delivered safely by mail, postpaid, to any address. The collections
are all fine, strong plants of the best varieties and are marvels of
cheapness. Every plant is plainly labeled, and there are no two
varieties alike in the same collection.
FOR $1.00 I will mail FREE 20 Prize-winning
Chrysanthemums; 20 fine Single and Double Flowering
Geraniums for $1.00; 20 Choice Ever-Blooming Carnations
for $1.00; 20 Flowering Begonias for $1.00; 20 Assorted
Flowering Plants for $1.00; 20 Fancy Leaved Coleus for
$1.00.
For $5.00 you can select any six of the above
Collections.
To every one who sends an order from this advertisement and
mentions this magazine, we will send FREE a valuable plant.
ORDER NOW and ask for our CATALOGUE of BEAUTIFUL
FLOWERS for 1894.
CHARLES A. REESER, INNISFALLEN GREENHOUSES,
SPRINGFIELD, O.

FREE A MAGNIFICENT PREMIUM PACKAGE of


FLOWER SEEDS. Do YOU read this magazine? Vick’s Magazine
says its readers comprise the best people in the land. Everybody
knows that’s so. We want to make you our own friend, and are
willing to make it worth your while to get acquainted. So, if you
will send us 10 cents, for 3 months subscription to Homes and
Hearths, we will send you as a present, transportation prepaid,
our unequalled Premium Package, containing 200 choice, fresh,
guaranteed varieties of flower seeds from largest growers,
including Sweet Peas (Boreatton, Grand Blue, Queen of England,
Isa Eckford, etc.), also Pansies (Rex, Gold Margined, Snow
Queen, etc.), Asters (Jewel, Perfection, Victoria, etc.), and many
others. The whole is a perfect wealth of flowers, fit for a royal
garden. Homes and Hearths is an attractive 16-page monthly, with
lovely original illustrations, splendid and absorbing original stories:
special departments for news about dress, FASHIONS and for
HOME DECORATION; best selected matter; FIRESIDE FUN; a
perfect Mine of pleasure and value. The cash premiums which you
will find in it are the most liberal ever made. Address HOMES
AND HEARTHS PUB. CO., New York.
Poppies FREE. Send us 10 cents for a sample copy of
INGALL’S MAGAZINE and we will send you a “YARD OF
POPPIES,” all in their Beautiful Colors—FREE. Address J. F.
Ingalls, Lynn, Mass. Box H2

A FINE ROSE And packet of beautiful FLOWER


SEEDS, with catalogue, for 10c.
ALFRED F. CONARD, Box 5, 10 West Grove, Pa.
Late President Dingee & Conard Co.

850,000 GRAPE VINES


100 Varieties. Also Small Fruits, Trees, &c. Best rooted
stock. Genuine, cheap. 2 sample vines mailed for 10c. Descriptive
price-list free. LEWIS ROESCH, Fredonia, N. Y.
INDEX.
A Cottage Lot 69
Architects, Curious, 66
Begonias, Perhaps 74
Book Notice—
Our Native Grape 72
Calla, A Yellow-Flowered, 72
Cannas, The New French, 68
Don’t Forget the Potatoes 73
Flower Stand, A Pretty, 77
Fruit Trees, Care of, 75
Growing Onion Sets 73
Hanging Baskets 78
Letter Box—
Lady Washington and Other Plants 70
Roses in Kansas 70
Ixia—Spider Lily 70
Plants About a Fish Pond 70
Osage Orange Hedge 70
Vase in a Cemetery 71
Carnations in the House 71
Madeira Vine 71
Mildew on Cucumber Vines 71
Moles 71
Pine Apple Air Plant 71
Phyllocactus latifrons 71
Mammoth Freesias 71
Wormy Raspberries—Violets—Storing Cauliflower 71
Mabel Ray’s Lesson 65
March Work 72
Marguerite Carnations 77
Mesembryanthemum 76
Peach Yellows 80
Plant Bed, The, 72
Poetry—
March 65
Vick’s Flowers 68
Lines to a Skunk Cabbage 68
Rose Leaves 69
The Difference 68
Unemployed in England, The, 78
Illustrations—
Birds Nests 66, 67
Plan of Grounds 69

D. and C.
ROSES
Will grow anywhere, with a little sunshine, water, and care.
You can learn how to grow them, and every other flower of
import, from our
New Guide to Rose Culture
for 1894. If you so request, we will send free, this book and a
copy of our Floral Magazine, ‘Success with Flowers.’
The Dingee & Conard Company,
West Grove, Pa.

When writing to advertisers, mention Vick’s Magazine.

A BARGAIN Collection of Flower Seeds


19 Choice Annuals (everybody’s favorites), all new fresh
seeds, sure to grow and bloom this season. Pansy, 40 colors
and markings; Phlox, 10 colors; Verbena, 18 colors; Pinks,
10 colors; Petunia, 10 colors; Asters, 12 colors; Balsam, 8
colors; Mignonette Sweet mixed Sweet Peas, 12 colors
and Sweet Alyssum.
FOR 12 CENTS and the name and address of two of your
friends who grow flowers, I will send, post-paid, the complete
collection, one pkt. each of the ten varieties (enough for any
ordinary garden.) This is a BONAFIDE offer, made to
introduce my home grown flower seeds to new customers and
which I guarantee to please you or the amount paid
refunded, and the seeds given as a present.
Address, Miss C. H. LIPPINCOTT,
319 and 323 Sixth Street, South, MINNEAPOLIS, MINN.
SEEDS GIVEN AWAY
FOR TRIAL. I have found that the best way to advertise good
Seeds is to give away a sample for trial. If you will send me a 2-
cent stamp to pay postage, I will mail free one package, your
selection, of either Cabbage, Carrot, Celery, Cucumber, Lettuce,
Musk or Water Melon, Onion, Parsnip, Pepper, Pumpkin, Radish,
Spinach, Squash, Tomato, Turnip, or of Flower Seeds—Aster,
Balsam, Celosia, Carnation, Mignonette, Pansy, Phlox, Poppy,
Sweet Peas, Zinnia, or Verbena, and one of my 1894 Catalogues.
Under any circumstances do not buy your Seeds until you see it,
for I can save you money. Over 200,000 people say my seeds are
the cheapest and best. I have earliest vegetables on record.
Discount and large prizes to agents. 50 cents worth of Seeds free
with $1.00 order. Write to-day. F. B. MILLS, Box 30, Rose Hill,
N. Y.

ELEGANT PALMS
From India and the Isles of the Sea. 5 Glorious Plants, different
sorts, post paid, 60c. These will grow and flourish everywhere.
PALM SEED.
It is child’s-play to make them grow. Send 5c. postage for our
great catalogue, (130 pages); or catalogue and one large package
of 5 different kinds of Palm seed, free for 20c. postage. 100
packages $10. A child can sell 100 packages in two evenings after
school and make $5.00.

JOHN A. SALZER SEED CO. LA CROSSE,


WIS.

NORTH STAR CURRANT


is perfectly hardy;will stand any climate; strongest grower—3 to 4
feet in one summer. Fruit Large, sweet, most delicious flavor.
Berries do not shell or drop off; most prolific. Picks 25 per cent.
more fruit. Full particulars and fine colored plates free.
THE JEWELL NURSERY CO.,
Nursery Ave. 39, Lake City, Minnesota.
When writing to advertisers, mention Vick’s Magazine.

FREE Catalogue HOME-GROWN


NORTHERN SEEDS
Guaranteed fresh and reliable. Large pkts. 2 to 5 cts. Direct
from Grower. Novelty presents with every order. Catalogue, Free
—or with 2 packets Seeds, 5 cents; 35 packets,
$1.00. Send to-day.
A. R. AMES, Madison, Wis.

Banquet Strawberry.
Equal to wild berry in flavor. CROSBY PEACH, frost proof.
Fruits every year. Colored Plates. Full descriptions. Free
Catalogue. All fruits. Write at once. HALE BROS., South
Glastonbury, Conn.

CONARD’S SUNSHINE PANSIES and Red, White and


Blue SWEET PEAS are the best. 1 pkt. each, 2 for 10c. Large
pkts. 2 for 20c., with catalogue. Alfred F. Conard, Box 5, West
Grove, Pa., Late Prest, Dingee & Conard Co.
HOW DO YOU SPELL SOAP DEAR?
WHY MA, P-E-A-R-S OF COURSE!

SEEDS A $3.00 BOX of NEW, RARE and


BEAUTIFUL FLOWERS FREE
HARD TIMES OFFER—We know that one trial will convince
you that we have the BEST as well as the CHEAPEST Seeds
to be found anywhere in America, so we will mail you FREE
for trial the following 15 Packets of Choice Seeds and two
Grand Bulbs;
1 BEAUTIFUL SPOTTED GLADIOLUS BULB, sure to
bloom. 1 EXCELSIOR TUBEROSE BULB, Lovely and
Fragrant, ☞ BELL’S Show Mixtures are Finest and
Rarest Sorts in the World.

ASTER, Bell’s Show Mixture.


PINK, Bell’s Show Mixture.
VERBENA, Bell’s Show Mixture.
PETUNIA, Bell’s Show Mixture.
PHLOX, Bell’s Show Mixture.
ALYSSUM, White Wave, Choice White.
CALLIOPSIS, Golden Wave, Extremely Showy.
PANSY, Bell’s Ever-blooming Greenland, Brilliant.
COLUMBINE, Queen Victoria, Choice New D’ble.
BUSH MORNING GLORY, Double Violet, Pretty.
GODETIA, Double Show, New Double, Rare.
WONDERFUL MEXICAN PRIMROSE, Worth 25c.
LINUM, Perpetual Flowering, Blooms all Summ’r
SWEET PEAS, Beautiful Home Mixed, Large Flower
HARDY ANNUALS, 400 Choice Sorts, Mixed.

☞ All the above 15 Packets Seeds and 2 Bulbs Mailed


FREE on the following conditions; (This is to prevent people
sending who have no use for them). Send us 25 Cents and we
will mail all the above, postpaid, with our “Book on Summer
Gardening,” and send you in the box a check for the 25
cents; this check you can return to us and get 25cts. worth of
Seeds at any time. So you see the box of Seeds costs you
nothing. We have 1200 of the choicest varieties and do this to
get your patronage. Book mailed free on application to all seed
buyers. Address, J. J. BELL, Flowers, Broome Co., N. Y.

GRAND BOX FREE.


SEND FOR IT.
LOVELY FLOWERS
EASILY GROWN.

JOSEPH GILLOTT’S STEEL PENS.


THE MOST PERFECT OF PENS.
Gold Medal, Paris Exposition, 1889,
AND THE AWARD AT THE WORLD’S COLUMBIAN EXPOSITION,
CHICAGO.

VICKS’ SEEDS ARE GUARANTEED TO CONTAIN THE GERM OF


LIFE.

The Greatest Medical Discovery of the Age.


KENNEDY’S
MEDICAL DISCOVERY
DONALD KENNEDY, OF ROXBURY, MASS.,
Has discovered in one of our common pasture weeds a remedy
that cures every kind of Humor, from the worst Scrofula down to a
common Pimple.
He has tried it in over eleven hundred cases, and never failed
except in two cases (both thunder humor). He has now in his
possession over two hundred certificates of its value, all within
twenty miles of Boston.
A benefit is always experienced from the first bottle, and a
perfect cure is warranted when the right quantity is taken.
When the lungs are affected it causes shooting pains, like
needles passing through them; the same with the Liver or Bowels.
This is caused by the ducts being stopped, and always disappears
in a week after taking it.
If the stomach is foul or bilious it will cause squeamish feelings
at first.
No change of diet ever necessary. Eat the best you can get, and
enough of it Dose, one tablespoonful in water at bed-time. Read
the Label. Send for Book.

The “Charmer” Pea


Pleases Everybody Because:—Very Productive; Highest
Quality; Fine Flavor; Staying Qualities; Great Merit; Deep
Green Color, Large Peas, Closely Packed; Nine in a Pod.
This new variety of large podded, handsome Table Pea,
introduced by us, jumped at a bound into instantaneous favor all
over the United States.
The plants stand from three and a half feet
to four feed high, and bear large, long pods,
mostly in pairs, which are packed remarkably
close with flattened, greenish-white, wrinkled
peas, and these, when cooked, are of the
finest flavor and color. The weight of the Pea
compared to the pod is much greater than
usual, producing more shelled peas than any
other variety.
In season it follows Little Gem and comes
before Champion of England. Both for the
market and family garden this Pea will be
found of the highest merit.
Everybody is charmed with this variety, and
whether for private use or marketing, a liberal
quantity should be planted.
Price, per packet 10 cents; per pint 30 cents; per quart 50
cents.

Vick’s Pea, King of the Dwarfs.


This new seedling, introduced by us, in season follows closely
McLean’s Little Gem, coming into market in the space intervening
between the early and the late varieties. The vines are sturdy and
remarkably vigorous, growing about two inches taller than the
Little Gem, and bearing a profusion of pods and Peas in the pod,
with all of the principal dwarf varieties, including the American
Wonder, we find that the King of the Dwarfs outyields them all by
20 per cent., all planted at the same time, on the same soil, with
equal cultivation.
It is a cross between American Wonder and McLean’s Little
Gem, and is the most promising of forty different seedlings. In
flavor it is unsurpassed.
Price, per packet 15 cents; per pint 75 cents; per quart
$1.25.

JAMES VICK’S SONS, Rochester, N.


Y.

VICKS’ SEEDS DO NOT DISAPPOINT. THE HARVEST IS GREAT.

1894 COLUMBIAS ARE BEYOND CRITICISM

No bicycle ever made at all approaches them in beauty and


style joined to excellence of construction, none so strongly
appeals to the experienced rider as meeting every requirement of
a perfect mount.
The need of repairs for Columbias will be infrequent under our
new system of inspection, which now begins with a scientific
analysis of the raw material by a metallurgist, and only ends when
thorough tests have been made of the complete machine and all
its parts.
1894 Standard Price, $125.00.
Seven newly designed wheels are shown in our 1894 Catalogue which will
interest every cyclist. Our agents furnish it free, or we mail it for two two-cent
stamps.
POPE MFG. CO.
BOSTON, NEW YORK, CHICAGO, HARTFORD.

BRIGGS PIANOS. Celebrated for their Beautiful Tone,


Action, Design, and Great Durability.
Easy Terms. Old instruments taken in exchange. Write for
Catalogue and Full Information.
BRIGGS PIANO CO. 621 Albany Street, Boston, Mass
*** END OF THE PROJECT GUTENBERG EBOOK VICK'S
ILLUSTRATED MONTHLY MAGAZINE, VOLUME 17, NO. 5, MARCH,
1894 ***

Updated editions will replace the previous one—the old editions


will be renamed.

Creating the works from print editions not protected by U.S.


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

START: FULL LICENSE


THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the


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

Section 1. General Terms of Use and


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

1.B. “Project Gutenberg” is a registered trademark. It may only


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

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

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


Gutenberg:

1.E.1. The following sentence, with active links to, or other


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

This eBook is for the use of anyone anywhere in the United


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

1.E.2. If an individual Project Gutenberg™ electronic work is


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

1.E.3. If an individual Project Gutenberg™ electronic work is


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

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files
containing a part of this work or any other work associated with
Project Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute


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

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

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™
works unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or


providing access to or distributing Project Gutenberg™
electronic works provided that:

• You pay a royalty fee of 20% of the gross profits you


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

• You provide a full refund of any money paid by a user who


notifies you in writing (or by e-mail) within 30 days of
receipt that s/he does not agree to the terms of the full
Project Gutenberg™ License. You must require such a user
to return or destroy all copies of the works possessed in a
physical medium and discontinue all use of and all access to
other copies of Project Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full


refund of any money paid for a work or a replacement
copy, if a defect in the electronic work is discovered and
reported to you within 90 days of receipt of the work.

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

1.E.9. If you wish to charge a fee or distribute a Project


Gutenberg™ electronic work or group of works on different
terms than are set forth in this agreement, you must obtain
permission in writing from the Project Gutenberg Literary
Archive Foundation, the manager of the Project Gutenberg™
trademark. Contact the Foundation as set forth in Section 3
below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend


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

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except


for the “Right of Replacement or Refund” described in
paragraph 1.F.3, the Project Gutenberg Literary Archive
Foundation, the owner of the Project Gutenberg™ trademark,
and any other party distributing a Project Gutenberg™ electronic
work under this agreement, disclaim all liability to you for
damages, costs and expenses, including legal fees. YOU AGREE
THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE, STRICT
LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT
EXCEPT THOSE PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE
THAT THE FOUNDATION, THE TRADEMARK OWNER, AND ANY
DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE
TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL,
PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you


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

1.F.4. Except for the limited right of replacement or refund set


forth in paragraph 1.F.3, this work is provided to you ‘AS-IS’,
WITH NO OTHER WARRANTIES OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied


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

1.F.6. INDEMNITY - You agree to indemnify and hold the


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

Section 2. Information about the Mission


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

Volunteers and financial support to provide volunteers with the


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

Section 3. Information about the Project


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

The Foundation’s business office is located at 809 North 1500


West, Salt Lake City, UT 84116, (801) 596-1887. Email contact
links and up to date contact information can be found at the
Foundation’s website and official page at
www.gutenberg.org/contact
Section 4. Information about Donations to
the Project Gutenberg Literary Archive
Foundation
Project Gutenberg™ depends upon and cannot survive without
widespread public support and donations to carry out its mission
of increasing the number of public domain and licensed works
that can be freely distributed in machine-readable form
accessible by the widest array of equipment including outdated
equipment. Many small donations ($1 to $5,000) are particularly
important to maintaining tax exempt status with the IRS.

The Foundation is committed to complying with the laws


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

While we cannot and do not solicit contributions from states


where we have not met the solicitation requirements, we know
of no prohibition against accepting unsolicited donations from
donors in such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot


make any statements concerning tax treatment of donations
received from outside the United States. U.S. laws alone swamp
our small staff.

Please check the Project Gutenberg web pages for current


donation methods and addresses. Donations are accepted in a
number of other ways including checks, online payments and
credit card donations. To donate, please visit:
www.gutenberg.org/donate.

Section 5. General Information About


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

Project Gutenberg™ eBooks are often created from several


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

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

This website includes information about Project Gutenberg™,


including how to make donations to the Project Gutenberg
Literary Archive Foundation, how to help produce our new
eBooks, and how to subscribe to our email newsletter to hear
about new eBooks.
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