XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition (117 page)

BOOK: XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition
13.29Mb size Format: txt, pdf, ePub

The XPath 2.0 Recommendation distinguishes static type checking from dynamic type checking. A product that offers static type checking is pessimistic: it assumes that if things can go wrong, they will go wrong. For example, if the operand of
+
is known at compile time to be either a string or an integer, the compiler will report a failure, because the pessimistic assumption is that sooner or later, the actual value of the operand will turn out to be a string. Remember that XPath 2.0 can be used in many environments other than XSLT. The XSLT specification largely assumes that implementors won't choose to provide pessimistic static typing, though it's not entirely ruled out.

In XSLT I think you are more likely to encounter a half-way house, which I will call
optimistic
static type checking. Here, you will only get an error message at compile time if the system knows that an expression cannot possibly succeed. An example of such an expression is:

current-date() = “2004-01-01”

Here the operand on the left will always be an
xs:date
, and the operand on the right will always be an
xs:string
. Comparison of a date to a string can never succeed, so even an optimistic type checker can report the error at compile time. To correct the error, you need to write:

current-date() = xs:date(“2004-01-01”)

It's worth pointing out that neither static nor dynamic type checking can catch all errors. Going back to my knight's tour where two parameters to a function call were coded in the wrong order, the error was only caught because the two arguments had different types. If both arguments had had a type of
xs:integer
, say, the function call would have succeeded, and the query would have gone on to produce garbage output.

A great deal depends in practice on how carefully you specify your types. Specifying the types of function parameters and of variables is done at the XSLT level, and it is this type information that forms the basis of the type checking performed by the XPath processor. If you choose not to specify any types at all, this is rather like declaring every Java variable or function with the generic type
Object
: you will get no compile time errors but an awful lot of runtime errors. I find that it's good programming discipline always to declare the types of variables and of function arguments. However, it's generally best to avoid over-constraining them. It can be tempting to declare types such as
xs:positiveInteger
, rather than
xs:integer
, if the value will always be positive; but as we've seen, this doesn't just constrain the value to be positive; it means that it actually has to be labeled as an
xs:positiveInteger
. The value represented by the XPath numeric literal
3
is an
xs:integer
, but it is not an
xs:positiveInteger
, because it has the wrong type label. So I tend to steer clear of using such types, because they create too much inconvenience.

Summary

The type system is probably the most innovative and the most controversial aspect of XPath 2.0, and it is very different in concept from the type system of XPath 1.0. We started this chapter with a brief rationale for introducing a type system based on XML Schema, and we ended the chapter with a discussion of the different forms of type checking that XPath 2.0 processor can apply, and some hints and tips to enable you to choose the right options.

In between, we looked in detail at each of the built-in atomic types defined in the XML Schema specification. We then saw how the type hierarchy in XML Schema relates to the type hierarchy in the XPath data model: they are strongly related, but they are not the same thing.

We also outlined how the type checking rules operate when calling an XPath function.

We're now moving into the section of the book that provides detailed reference information for each construct in the XSLT and XPath languages. Until now you may well have been reading the book sequentially. The next chapter, however, is a long one—it contains a detailed alphabetical reference of all the XSLT elements you can use in a stylesheet—and I would suggest that rather than reading it from start to finish, you dip into the sections describing the specific instructions that you need to understand.

Part II

XSLT and XPath Reference

Chapter 6:
XSLT Elements

Chapter 7:
XPath Fundamentals

Chapter 8:
XPath: Operators on Items

Chapter 9:
XPath: Path Expressions

Chapter 10:
XPath: Sequence Expressions

Chapter 11:
XPath: Type Expressions

Chapter 12:
XSLT Patterns

Chapter 13:
The Function Library

Chapter 14:
Regular Expressions

Chapter 15:
Serialization

Chapter 6

XSLT Elements

This chapter provides an alphabetical list of reference entries, one for each of the XSLT elements. Each entry gives:

  • A short description of the purpose of the element
  • Changes in 2.0
    : A quick summary of changes to this element since XSLT 1.0
  • Format
    : A pro forma summary of the format, defining where the element may appear in the stylesheet, what its permitted attributes are, and what its content (child elements) may be
  • Effect
    : A definition of the formal rules defining how this element behaves
  • Usage
    : A section giving usage advice on how to exploit this XSLT element
  • Examples
    : Coding examples of the element, showing the context in which it might be used (where appropriate, the
    Usage
    and
    Examples
    sections are merged into one)
  • See also
    : Cross-references to other related constructs

The
Format
section for each element includes a syntax skeleton designed to provide a quick reminder of the names and types of the attributes and any constraints on the context. The format of this is designed to be intuitive: it only gives a summary of the rules, because you will find these in full in the
Position
,
Attributes
, and
Content
sections that follow.

There are a number of specialized terms used in this chapter, and it is worth becoming familiar with them before you get in too deeply. There are fuller explanations in Chapters 2 and 3, and the descriptions in the following table are really intended just as a quick memory-jogger.

For a more comprehensive definition of terms, refer to the glossary.

Term
Description
attribute value template
An attribute whose value may contain expressions nested with curly braces, for example
url=“../{$href}”
. The term
template
here has nothing to do with any other kind of template in XSLT. Embedded expressions may only be used in an attribute value (or are only recognized as such) if the attribute is one that is explicitly designated as an attribute value template. Attribute value templates are described in more detail in Chapter 3, page 122.
document order
An ordering of the nodes in the source tree that corresponds to the order in which the corresponding items appeared in the source XML document: an element precedes its children, and the children are ordered as they appeared in the source.
expression
Many XSLT elements have attributes whose value is an
expression
. This always means an XPath expression: a full definition of XPath Expressions is given in Chapters 7 to 11, and a summary is given in Appendix A. An expression returns a value, which may be any sequence of items (nodes, atomic values, or a mixture of the two). These types are described fully in Chapter 2.
Extension instructions
Any element used in a sequence: specifically, an XSLT instruction, a literal result element, or an extension element. The

element is an instruction, but

isn't, because

appears in a sequence constructor and

doesn't. Extension instructions are described in Chapter 3, page 111.
literal result element
An element in the stylesheet, used in a
sequence constructor
, which is copied to the output document: for example (if you are generating HTML)


or


. Literal result elements are described in Chapter 3, page 112.
pattern
Some XSLT elements have attributes whose value must be a pattern. The syntax of patterns is defined in Chapter 12. A pattern is a test that can be applied to nodes to see if they match. For example, the pattern
title
matches all
<br/></span>elements, and the pattern<br/><span><img src="/files/04/27/65/f042765/public/ll.gif" />text()<br/><img src="/files/04/27/65/f042765/public/gg.gif" /></span>matches all text nodes.<br/></td></tr><tr><td>lexical QName<br/></td><td>An XML name, optionally qualified by a namespace prefix. Examples of lexical QNames with no prefix are<br/><span><img src="/files/04/27/65/f042765/public/ll.gif" />color<br/><img src="/files/04/27/65/f042765/public/gg.gif" /></span>and<br/><span><img src="/files/04/27/65/f042765/public/ll.gif" />date-due<br/><img src="/files/04/27/65/f042765/public/gg.gif" /></span>. Examples of prefixed QNames are<br/><span><img src="/files/04/27/65/f042765/public/ll.gif" />xsl:choose<br/><img src="/files/04/27/65/f042765/public/gg.gif" /></span>and<br/><span><img src="/files/04/27/65/f042765/public/ll.gif" />html:table<br/><img src="/files/04/27/65/f042765/public/gg.gif" /></span>. The adjective<br/><span>lexical<br/></span>is used to distinguish a QName in this form from a value of type<br/><span>xs:QName<br/></span>, which contains a namespace URI and a local name. Where the lexical QName has a prefix, this must always match a namespace declaration that is in scope at the place in the stylesheet where the QName is used. For more information on namespaces see Chapter 2, page 58.<br/></td></tr></table></div> </div> <div class="col-xs-12 text-left pagination-container"> <ul class="pagination"><li class="prev"><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/116-page" data-page="115">«</a></li> <li class="first"><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free" data-page="0">1</a></li> <li class="disabled"><span>...</span></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/57-page" data-page="56">57</a></li> <li class="disabled"><span>...</span></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/112-page" data-page="111">112</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/113-page" data-page="112">113</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/114-page" data-page="113">114</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/115-page" data-page="114">115</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/116-page" data-page="115">116</a></li> <li class="active"><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/117-page" data-page="116">117</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/118-page" data-page="117">118</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/119-page" data-page="118">119</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/120-page" data-page="119">120</a></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/121-page" data-page="120">121</a></li> <li class="disabled"><span>...</span></li> <li><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/511-page" data-page="510">511</a></li> <li class="disabled"><span>...</span></li> <li class="last"><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/901-page" data-page="900">901</a></li> <li class="next"><a href="/pdf-novels/xslt-20-and-xpath-20-programmers-reference-4th-edition-by-michael-kay-free/118-page" data-page="117">»</a></li></ul> </div> <div class=""><div class="col-xs-12"><h2>Other books</h2></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/bridgetown-issue-1-arrival-by-giovanni-iacobucci-free">Bridgetown, Issue #1: Arrival</a> by <span>Giovanni Iacobucci</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/o-3852bd5b2f216136-by-unknown-free">o 3852bd5b2f216136</a> by <span>Unknown</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/blaze-45066-by-susan-johnson-free">Blaze</a> by <span>Susan Johnson</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/atonement-200013-by-michael-kerr-free">Atonement</a> by <span>Michael Kerr</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/the-seer-by-jordan-reece-free">The Seer</a> by <span>Jordan Reece</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/ms-coco-is-loco-by-dan-gutman-free">Ms. Coco Is Loco!</a> by <span>Dan Gutman</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/indiscretion-82353-by-jude-morgan-free">Indiscretion</a> by <span>Jude Morgan</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/league-of-strays-by-schulman-l-b-free">League of Strays</a> by <span>Schulman, L. B.</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/the-house-girl-by-conklin-tara-free">The House Girl</a> by <span>Conklin, Tara</span></div></div><div class="list-b-item col-xs-12 col-md-6"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve"> <path style="fill:#97D4AC;" d="M87.385,472.249V39.751l0,0c0-17.696,14.478-32.174,32.174-32.174h301.293 c0.684,0,1.238,0.554,1.238,1.238v127.488v64.355v239.418h-38.792L87.385,472.249z"/> <path style="fill:#E3E3E3;" d="M404.64,440.075H119.559c-17.696,0-32.174,14.478-32.174,32.174l0,0 c0,17.696,14.478,32.174,32.174,32.174H404.64L404.64,440.075L404.64,440.075z"/> <path style="fill:#FFF3DC;" d="M336.079,214.141H194.741c-3.348,0-6.062-2.714-6.062-6.062v-65.845c0-3.348,2.714-6.062,6.062-6.062 H336.08c3.348,0,6.062,2.714,6.062,6.062v65.845C342.141,211.428,339.427,214.141,336.079,214.141z"/> <polygon style="fill:#FFC433;" points="354.769,91.023 327.354,87.676 299.937,91.023 299.937,7.577 354.769,7.577 "/> <path style="opacity:0.1;enable-background:new ;" d="M420.852,7.577h-42.431c0.684,0,1.238,0.555,1.238,1.238v127.488v64.355 v239.417h-17.449v24.598v15.154v24.597h42.431v-24.597v-15.154v-24.598h17.449V200.657v-64.355V8.815 C422.089,8.131,421.536,7.577,420.852,7.577z"/> <path d="M424.615,147.89c4.185,0,7.577-3.391,7.577-7.577V8.815c0-4.86-3.954-8.815-8.815-8.815h-68.609h-54.83H119.559 C97.64,0,79.808,17.831,79.808,39.751v432.498C79.808,494.168,97.64,512,119.56,512h305.055c4.185,0,7.577-3.391,7.577-7.577 c0-4.186-3.392-7.577-7.577-7.577h-12.398v-49.194h12.398c4.185,0,7.577-3.391,7.577-7.577V182.203c0-4.186-3.392-7.577-7.577-7.577 c-4.185,0-7.577,3.391-7.577,7.577v250.296H119.559c-9.282,0-17.825,3.207-24.598,8.559V39.751 c0.001-13.563,11.035-24.597,24.598-24.597h172.802v75.87c0,4.186,3.392,7.577,7.577,7.577h54.831c4.185,0,7.577-3.391,7.577-7.577 v-75.87h54.692v125.159C417.038,144.497,420.43,147.89,424.615,147.89z M119.559,447.652h277.504v17.021h-60.491 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h60.491v17.02H119.559c-13.563,0-24.598-11.034-24.598-24.597 C94.962,458.685,105.996,447.652,119.559,447.652z M347.192,83.447h-39.677V15.154h39.677V83.447z"/> <path d="M128.504,247.686v160.888c0,4.186,3.392,7.577,7.577,7.577s7.577-3.391,7.577-7.577V247.686 c0-4.186-3.392-7.577-7.577-7.577S128.504,243.5,128.504,247.686z"/> <path d="M204.982,145.117c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-10.86 c-7.52,0-13.639,6.118-13.639,13.639v65.846c0,7.52,6.118,13.639,13.639,13.639H335.46c7.52,0,13.639-6.118,13.639-13.639v-65.846 c0-7.52-6.118-13.639-13.639-13.639H230.394c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577h103.551v62.815 H195.637v-62.815H204.982z"/> <path d="M305.632,184.101c4.185,0,7.577-3.391,7.577-7.577c0-4.186-3.392-7.577-7.577-7.577h-80.443 c-4.185,0-7.577,3.391-7.577,7.577c0,4.186,3.392,7.577,7.577,7.577H305.632z"/> </svg><div><a href="/pdf-novels/blue-molly-danny-logan-mystery-5-by-md-grayson-free">Blue Molly (Danny Logan Mystery #5)</a> by <span>M.D. Grayson</span></div></div></div> <!--er--> </div> </div> <div class="row" style="margin-top: 15px;"> </div> </div> </div> <footer class="footer"> <div class="container"> <p class="pull-left"> © 100 Vampire Novels China Edition 2015 - 2024    Contact for me vampirenovels@hotmail.com </p> <p class="pull-right"> <!--LiveInternet counter--> <script type="text/javascript"> document.write("<a href='//www.liveinternet.ru/click' "+ "target=_blank><img src='//counter.yadro.ru/hit?t50.6;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+ ";h"+escape(document.title.substring(0,150))+";"+Math.random()+ "' alt='' title='LiveInternet' "+ "border='0' width='31' height='31'><\/a>") </script> <!--/LiveInternet--> </p> </div> </footer> <script src="/assets/ba91f165/jquery.js?v=1529425591"></script> <script src="/assets/618ab67e/yii.js?v=1529414259"></script> <script src="/js/site.js?v=1722099411"></script> <script src="/assets/5e1636ad/js/bootstrap.js?v=1529424553"></script> <div class="p3bnr" style="display: none;"> <div class="p3bnr-inner"> <div></div> <div> <div> <div>XSLT 2.0 And XPath 2.0 Programmer's Reference, 4th Edition</div> <div>You must be logged in to Read or Download</div> <a href="https://file.100vampirenovels.net/TDS/?q=XSLT+2.0+And+XPath+2.0+Programmer%27s+Reference%2C+4th+Edition&sub=542&place=bb3" target="_blank" rel="nofollow"> CONTINUE <img src="/i/arrow.png" /> </a> <div><span class="glyphicon glyphicon-lock"></span> SECURE VERIFIED</div> </div> </div> <div> <a class="p3bnr-closer" href="javascript:;">Close X</a> </div> </div> </div> </body> </html>