World Library  
Flag as Inappropriate
Email this Article

Units of textile measurement

Article Id: WHEBN0009091963
Reproduction Date:

Title: Units of textile measurement  
Author: World Heritage Encyclopedia
Language: English
Subject: Yarn, Crochet, Textile, Den, Conductive textile
Collection: Textiles, Units of Density
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Units of textile measurement

Textile fibers, threads, yarns and fabrics are measured in a multiplicity of units.

  • A fiber, a single filament of natural material, such as cotton, linen or wool, or artificial material such as nylon, polyester, metal or mineral fiber, is measured in terms of linear mass density, the weight of a given length of fiber. Various units are used to refer to the measurement of a fiber, such as: the denier and tex (linear mass density of fibers), super S (fineness of wool fiber), worsted count, woolen count, cotton count (or Number English Ne), Number metric (Nm) and yield (the reciprocal of denier and tex).
  • A yarn, a spun agglomeration of fibers used for knitting, weaving or sewing, is measured in terms of cotton count and yarn density.
    Thread made from two threads plied together, each consisting of three yarns
  • Thread, usually consisting of multiple yarns plied together producing a long, thin strand used in sewing or weaving, is measured in the same units as yarn.
  • Fabric, cloth typically produced by weaving, knitting or knotting textile fibers, yarns or threads, is measured in units such as the momme, thread count (a measure of the coarseness or fineness of fabric), ends per inch (e.p.i) and picks per inch (p.p.i).

Contents

  • Units of measure for fibers 1
    • Denier 1.1
    • Tex 1.2
    • S or super S number 1.3
    • Worsted count 1.4
    • Yield 1.5
  • Yarn and thread 2
    • Cotton count 2.1
    • Yarn length 2.2
    • Thread 2.3
    • Yarn Diameter conversion 2.4
  • Fabric 3
    • Grams per square meter / GSM of fabric 3.1
    • Mommes 3.2
    • Thread count 3.3
      • Industry standard 3.3.1
    • Ends per inch 3.4
    • Picks per inch 3.5
  • Quality 4
    • Martindale 4.1
  • References 5
  • Bibliography 6
  • External links 7

Units of measure for fibers

The linear density of a fiber is commonly measured in units of denier or tex. Traditional units include worsted count, cotton count and yield. Tex is more likely to be used in Canada and Continental Europe, while denier remains more common in the United States and United Kingdom. The International System of Units uses kilogram per metre for linear densities; in some contexts, the tex unit is used instead.

Denier

Denier or den (abbreviated D), a unit of measure for the linear mass density of fibers, is defined as the mass in grams per 9000 meters.[1] The denier is based on a natural reference: a single strand of silk is approximately one denier; a 9000-meter strand of silk weighs about one gram. The term denier comes from the French denier, a coin of small value (worth 112 of a sou). Applied to yarn, a denier was held to be equal in weight to 124 of an ounce. The term microdenier is used to describe filaments that weigh less than one gram per 9000 meters.

One can distinguish between filament and total measurements in deniers. Both are defined as above, but the first relates to a single filament of fiber — commonly known as denier per filament (DPF) — whereas the second relates to a yarn.

Broader terms such as 'fine' may be applied, either because the overall yarn is fine or because fibers within this yarn are thin. A 75-denier yarn would be considered fine even if it contains only a few fibers, such as thirty 2.5-denier fibers, but a heavier yarn, such as 150 denier, is only considered fine if its constituent fibers are individually as thin as one denier.[1]

The following relationship applies to straight, uniform filaments:

DPF = total denier / quantity of uniform filaments
The denier system of measurement is used on two- and single-filament fibers. Some common calculations are as follows:
1 denier = 1 gram per 9000 meters[2]
= 0.11 milligrams per meter

In practice, measuring 9000 meters is both time-consuming and unrealistic. Generally a sample of 900 meters is weighed, and the result is multiplied by ten to obtain the denier weight.

  • A fiber is generally considered a microfiber if it is one denier or less.
  • A one-denier polyester fiber has a diameter of about ten micrometers.
  • In tights and pantyhose, the linear density of yarn used in the manufacturing process determines the opacity of the article in the following categories of commerce: ultra sheer (below 10 denier), sheer (10 to 30 denier), semi-opaque (30 to 40 denier), opaque (40 to 70 denier) and thick opaque (70 denier or higher).[3]

For single fibers, instead of weighing, a machine called a vibroscope is used. A known length of the fiber (usually 20mm) is set to vibrate, and its fundamental frequency measured, allowing the calculation of the mass and thus the titer.

Tex

Tex is a unit of measure for the linear mass density of fibers, yarns and thread and is defined as the mass in grams per 1000 meters.[4] The unit code is "tex". The most commonly used unit is actually the decitex (abbreviated dtex), which is the mass in grams per 10,000 meters. When measuring objects that consist of multiple fibers, the term "filament tex" is sometimes used, referring to the mass in grams per 1000 meters of a single filament.

Tex is used for measuring fiber size in many products, including cigarette filters, optical cable, yarn and fabric.

S or super S number

Not a true unit of measure, S or super S number is an index of the fineness of the wool fiber and is most commonly seen as a label on wool apparel, wool fabric, and yarn.

Worsted count

Yarn spinning factory

Worsted count (or spinning count) is an indirect measure of the fineness of the fiber in a worsted wool yarn expressed as the number of 560-yard[5] (1 yard = 0.9144 meters) lengths (hanks) of worsted yarn that a pound (0.45359237 kilograms) of wool yields. The finer the wool, the more yarn and the higher the count. It has been largely replaced by direct measures.

Yield

Similar to tex and denier, yield is a term that helps describe the linear density of a roving of fibers. However, unlike tex and denier, yield is the inverse of linear density and is usually expressed in yards/lb.
Tex (g/km) Yield (yards/lb)
550 900
735 675
1100 450
1200 413
2000 250
2200 225
2400 207
4400 113

Yarn and thread

Cotton count

  • Cotton count is another measure of linear density. It is the number of hanks (840 yd or 770 m) of skein material that weigh 1 pound (0.45 kg). Under this system, the higher the number, the finer the yarn. In the United States cotton counts between 1 and 20 are referred to as coarse counts. A regular single-knit T-shirt can be between 20 and 40 count; fine bed sheets are usually in the range of 40 to 80 count. The number is now widely used in the staple fiber industry.
  • Hank: a length of 7 leas or 840 yards (770 m)
  • One lea – 120 yards (110 m)

Yarn length

l/m = 1693 × lm/Nec × m/kg, where l/m is the yarn length in meters, lm/Nec is the English cotton count and m/kg is the yarn weight in kilograms.

English cotton count (Nec) is an indirect counting system, that is, the higher the number the finer the yarn.

  • Thread: a length of 54 inches (1.4 m) (the circumference of a warp beam)
  • Bundle: usually 10 pounds (4.5 kg)
  • Lea: a length of 80 threads or 120 yards (110 m)[6]

To convert denier to cotton count: lm/Nec = 5315/ρ/den, where lm/Nec is the cotton count and ρ/den is the density in denier.

To convert tex to cotton count: lm/Nec = 590.5/ρ/tex, where lm/Nec is the cotton count and ρ/tex is the density in tex.

Thread

Thread is a cotton yarn measure, equal to 54 inches (1.4 m).

Yarn Diameter conversion

Approximate yarn measurement comparison
Denier m/g Tex Worsted Cotton Woolen (run) Linen (lea)
50 180 5.6 160 106 56 298
75 120 8.3 106 72 37 198
100 90 11.1 80 53 28 149
150 60 16.6 53 35 19 99
200 45 22.2 40 27 14 74
300 30 33.4 27 18 9.3 50
400 22.5 44.4 20 13 7.0 37
500 18 55.5 16 11 5.6 30
700 12.9 77.7 11.4 7.6 4.0 2
1000 9 111 8.0 5.3 2.8 15
1500 6 166 5.3 3.5 1.9 10
2000 4.5 222 4.0 2.7 1.4 7

Fabric

Because a fabric is sheet-like (i.e., 2-dimensional), it is measured in terms of surface density or in terms of the number of threads involved in a piece of fabric of given size.

Grams per square meter / GSM of fabric

In the International System of Units, surface density is measured in kilograms per square meter. For fabrics, grams per square meter (GSM) is a more practical unit of measure.

Mommes

Mommes (mm), traditionally used to measure silk fabrics, the weight in pounds of a piece of fabric if it were sized 45 inches by 100 yards. One momme = 4.340 grams per square meter; 8 mommes is approximately 1 ounce per square yard or 35 grams per square meter.

The momme is based on the standard width of silk of 45 inches wide (though silk is regularly produced in 55-inch widths, and, uncommonly, in even larger widths).

The usual range of momme weight for different weaves of silk are:

  • Habutai—5 to 16 mm
  • Chiffon—6 to 8 mm (can be made in double thickness, i.e. 12 to 16 mm)
  • Crepe de Chine—12 to 16 mm
  • Gauze—3 to 5 mm
  • Raw silk—35 to 40 mm (heavier silks appear more 'wooly')
  • Organza—4 to 6 mm
  • Charmeuse—12 to 30 mm

The higher the weight in mommes, the more durable the weave, and the more suitable it is for heavy-duty use. And, the heavier the silk, the more opaque it becomes. This can vary even between the same kind of silk. For example, lightweight charmeuse is translucent when used in clothing, but 30-momme charmeuse is opaque.

Thread count

Image showing how to determine the number of twists per inch in a piece of yarn

Thread count or threads per inch (TPI)[7] is a measure of the coarseness or fineness of fabric. It is measured by counting the number of threads contained in one square inch of fabric or one square centimeter, including both the length (warp) and width (weft) threads. The thread count is the number of threads counted along two sides (up and across) of the square inch, added together. It is used especially in regard to cotton linens such as bed sheets, and has been known to be used in the classification of towels.

Industry standard

Thread count is often used as a measure of fabric quality, so that "standard" cotton thread counts are around 150 while good-quality sheets start at 180 and a count of 200 or higher is considered percale. Some, but not all, of the extremely high thread counts (typically over 500) tend to be misleading as they usually count the individual threads in "plied" yarns (a yarn that is made by twisting together multiple finer threads). For marketing purposes, a fabric with 250 two-ply yarns in both the vertical and horizontal direction could have the component threads counted to a 1000 thread count although "according to the National Textile Association (NTA), which cites the international standards group ASTM, accepted industry practice is to count each thread as one, even threads spun as two- or three-ply yarn. The Federal Trade Commission in an August 2005 letter to NTA agreed that consumers 'could be deceived or misled' by inflated thread counts.[8] In 2002, ASTM proposed a definition for "thread count"[9] that has been called "the industry's first formal definition for thread count".[10] A minority on the ASTM committee argued for the higher yarn count number obtained by counting each single yarn in a plied yarn and cited as authority the provision relating to woven fabric in the Harmonized Tariff Schedule of the United States, which states each ply should be counted as one using the "average yarn number."[11]

Ends per inch

Ends per inch (EPI or e.p.i.) is the number of warp threads per inch of woven fabric.[7][12] In general, the higher the ends per inch, the finer the fabric is. The current fashion is to wear T-shirts with a higher thread count, such as soft and comfortable "30 single" tee shirt that has 30 threads per inch as contrasted to the standard T-shirt with an 18 thread count per inch.

Ends per inch is very commonly used by weavers who must use the number of ends per inch in order to pick the right reed to weave with. The number of ends per inch varies on the pattern to be woven and the thickness of the thread. Plain weaves generally use half the number of warps per inch for the number of ends per inch, whereas denser weaves like a twill weave will use a higher ratio like two thirds of the number of warps per inch. Finer threads require more threads per inch than thick ones, and thus result in a higher number of ends per inch.

The number of ends per inch in a piece of woven cloth varies depending on the stage of manufacture. Before the cloth is woven, the warp has a certain number of ends per inch, which is directly related to the size reed being used. After weaving the number of ends per inch will increase, and it will increase again after being washed. This increase in the number of ends per inch (and picks per inch) and shrinkage in the size of the fabric is known as the take-up. The take-up is dependent on many factors, including the material and how tightly the cloth is woven. Tightly woven fabric shrinks more (and thus the number of ends per inch increases more) than loosely woven fabric, as do more elastic yarns and fibers.

Picks per inch

Picks per inch/Inch (or p.p.i.) is the number of weft threads per inch of woven fabric.[12] A pick is a single weft thread,[13] hence the term. In general, the higher the picks per inch, the finer the fabric is.

Quality

Martindale

The unit Martindale quantifies a textile's resistance to abrasion when used for upholstery.

References


-- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p-------------------------------------------------------------------------------- -- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p
  1. ^ a b
  2. ^
  3. ^ All About Denier
  4. ^ {{Navbox |name = Television drama series |title = Television drama series |state = autocollapse |listclass = hlist |group1 = By location

    |list1 =

    |group2 = Genres

    |list2 =

    |group3 = List by country

    |list3 =

    |group4 = Format |list4 =

    • Serial
    • [[Procedural drama|P#REDIRECT
  5. ^ {{Navbox |name = Television drama series |title = Television drama series |state = autocollapse |listclass = hlist |group1 = By location

    |list1 =

    |group2 = Genres

    |list2 =

    |group3 = List by country

    |list3 =

    |group4 = Format |list4 =

    • Serial
    • [[Procedural drama|P#REDIRECT
  6. ^ {{Navbox |name = Television drama series |title = Television drama series |state = autocollapse |listclass = hlist |group1 = By location

    |list1 =

    |group2 = Genres

    |list2 =

    |group3 = List by country

    |list3 =

    |group4 = Format |list4 =

    • Serial
    • [[Procedural drama|P#REDIRECT
  7. ^ a b Schwalbe Tires: What does carcass EPI mean?
  8. ^ Federal Trade Commission Letter retrieved from NTA website February 9, 2009
  9. ^ Revised Test Method Further Defines Fabric Count
  10. ^ Hometextilestoday.com "Down For the (Thread) Count"
  11. ^ Down For the (Thread) Count – 25 October 2004 – Home Textiles Today
  12. ^ a b {{Navbox |name = Television drama series |title = Television drama series |state = autocollapse |listclass = hlist |group1 = By location

    |list1 =

    |group2 = Genres

    |list2 =

    |group3 = List by country

    |list3 =

    |group4 = Format |list4 =

    • Serial
    • [[Procedural drama|P#REDIRECT
  13. ^ "Pick." The Oxford English Dictionary. 2nd ed. 1989.

Bibliography

External links

  • Textiles Intelligence Glossary
  • Textile Yarn Count Conversion Calculator
  • Yarn Count Conversion Calculation
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.