#html 1
#html 2 #html 3 #html 4#html 5
#html 6
#data * #result 1 /2 /2/1 /2/2 /2/2/1 #result 1 /2/2 /2/2/1 #result 2 /2 /2/1 /2/2 /2/2/1 #result 2 /2/2 /2/2/1 #result 3 /2 /2/1 /2/2 /2/2/1 /2/2/2 #result 3 /2/2 /2/2/1 /2/2/2 #result 3 /2/2/1 #result 4 /2 /2/1 /2/2 /2/2/1 /2/2/1/1 #result 4 /2/2 /2/2/1 /2/2/1/1 #result 4 /2/2/1 /2/2/1/1 #data * #ns http://www.w3.org/1999/xhtml #result 1 /2 /2/1 /2/2 /2/2/1 #data * #ns http://www.w3.org/2000/svg #result 1 #data *|* #result 1 /2 /2/1 /2/2 /2/2/1 #data h|* #ns h http://www.w3.org/1999/xhtml #result 1 /2 /2/1 /2/2 /2/2/1 #data s|* #ns s http://www.w3.org/2000/svg #result 1 #data |* #result 1 #data p #result 1 /2/2/1 #result 2 #result 3 /2/2/1 /2/2/2 #result 4 /2/2/1 #data q #result 1 #result 2 /2/2/1 #result 3 #result 4 /2/2/1/1 #data *|p #result 1 /2/2/1 #data p #ns http://www.w3.org/1999/xhtml #result 1 /2/2/1 #data p #ns http://www.w3.org/2000/svg #result 1 #data |p #result 1 #data h|p #ns h http://www.w3.org/1999/xhtml #result 1 /2/2/1 #data s|p #ns s http://www.w3.org/2000/svg #result 1 #xml nullns#data p + p * #result 7 /2/2 /2/2/2/1 /2/2/3/1 #data p ~ p * #result 7 /2/2 /2/2/2/1 /2/2/3/1 #data :-manakai-current #result 7 /2 #result 7 /2/1 #result 7 /2/2 #result 7 /2/2/1 #result 7 /2/2/1/1 #data * :-manakai-current #result 7 /2 #result 7 /2/1 #result 7 /2/2 #result 7 /2/2/1 #result 7 /2/2/1/1 #data :-manakai-current * #result 7 /2/2 /2/2/1 /2/2/1/1 /2/2/2 /2/2/2/1 /2/2/3 /2/2/3/1 #data :-manakai-current > * #result 7 /2/2 /2/2/1 /2/2/2 /2/2/3 #data :-manakai-current > * > * #result 7 /2/2 /2/2/1/1 /2/2/2/1 /2/2/3/1 #html 8
#html 9
#data [align] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [align][align] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [align] #ns http://www.w3.org/1999/xhtml #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [*|align] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [|align] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [html|align] #ns html http://www.w3.org/1999/xhtml #result 7 #result 8 #result 9 #data [|Align] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [*|Align] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [|ALIGN] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [*|ALIGN] #result 7 #result 8 /2/2/1 #result 9 /2/2/1 #data [|align=""] #result 8 /2/2/1 #result 9 #data [*|align=""] #result 8 /2/2/1 #result 9 #data [|align="lef"] #result 8 #result 9 #data [*|align="lef"] #result 8 #result 9 #data [|align="left"] #result 8 #result 9 /2/2/1 #data [*|align="left"] #result 8 #result 9 /2/2/1 #data [|align="leftright"] #result 8 #result 9 #data [*|align="leftright"] #result 8 #result 9 #data [|align="center"] #result 8 #result 9 #data [*|align="center"] #result 8 #result 9 #data [|align^="l"] #result 8 #result 9 /2/2/1 #data [*|align^="l"] #result 8 #result 9 /2/2/1 #data [|align^="left"] #result 8 #result 9 /2/2/1 #data [*|align^="left"] #result 8 #result 9 /2/2/1 #data [|align^="leff"] #result 8 #result 9 #data [*|align^="leff"] #result 8 #result 9 #data [|align^="leftright"] #result 8 #result 9 #data [*|align^="leftright"] #result 8 #result 9 #data [|align^="t"] #result 8 #result 9 #data [*|align^="t"] #result 8 #result 9 #data [|align$="t"] #result 8 #result 9 /2/2/1 #data [*|align$="t"] #result 8 #result 9 /2/2/1 #data [|align$="l"] #result 8 #result 9 #data [*|align$="l"] #result 8 #result 9 #data [|align$="left"] #result 8 #result 9 /2/2/1 #data [*|align$="left"] #result 8 #result 9 /2/2/1 #data [|align$="leff"] #result 8 #result 9 #data [*|align$="leff"] #result 8 #result 9 #data [|align$="rightleft"] #result 8 #result 9 #data [*|align$="rightleft"] #result 8 #result 9 #data [|align*="l"] #result 8 #result 9 /2/2/1 #data [*|align*="l"] #result 8 #result 9 /2/2/1 #data [|align*="t"] #result 8 #result 9 /2/2/1 #data [*|align*="t"] #result 8 #result 9 /2/2/1 #data [|align*="ef"] #result 8 #result 9 /2/2/1 #data [*|align*="ef"] #result 8 #result 9 /2/2/1 #data [|align*="eg"] #result 8 #result 9 #data [*|align*="eg"] #result 8 #result 9 #data [|align*="x"] #result 8 #result 9 #data [*|align*="x"] #result 8 #result 9 #data [|align*="left"] #result 8 #result 9 /2/2/1 #data [*|align*="left"] #result 8 #result 9 /2/2/1 #data [|align*="leftright"] #result 8 #result 9 #data [*|align*="leftright"] #result 8 #result 9 #data [|align|="l"] #result 8 #result 9 #data [*|align|="l"] #result 8 #result 9 #data [|align|="x"] #result 8 #result 9 #data [*|align|="x"] #result 8 #result 9 #data [|align|="left"] #result 8 #result 9 /2/2/1 #data [*|align|="left"] #result 8 #result 9 /2/2/1 #data [|align|="lefa"] #result 8 #result 9 #data [*|align|="lefa"] #result 8 #result 9 #html 10
#data [|lang|="en"] #result 10 /2/2/1 #data [*|lang|="en"] #result 10 /2/2/1 #data [|lang|="en-"] #result 10 #data [*|lang|="en-"] #result 10 #data [|lang|="en-US"] #result 10 /2/2/1 #data [*|lang|="en-US"] #result 10 /2/2/1 #html 11
#data
[|class~=a]
#result 11
#data
[*|class~=a]
#result 11
#data
[|class~=aaa]
#result 11
/2/2/1
/2/2/2
#data
[*|class~=aaa]
#result 11
/2/2/1
/2/2/2
#data
[|class~=bbb]
#result 11
/2/2/1
#data
[*|class~=bbb]
#result 11
/2/2/1
#data
[|class~=ccc]
#result 11
/2/2/1
#data
[*|class~=ccc]
#result 11
/2/2/1
#xml nullnsattr
#data
.foo
#result htmlclass1
/2/2/1
/2/2/2
#data
.foo.bar
#result htmlclass1
/2/2/2
#data
.bar.foo
#result htmlclass1
/2/2/2
#data
.bar
#result htmlclass1
/2/2/2
#data
.\b
#result htmlclass1
/2/2/3
#data
.xyz
#result htmlclass1
/2/2/3
#data
.BAR
#result htmlclass1
/2/2/4
#data
.ho\.ge
#result htmlclass1
/2/2/5
#data
.foo\ bar
#result htmlclass1
#html htmlid1
#data
| #foo
#result htmlid1
/2/2/1
#data
| #foo\ bar
#result htmlid1
/2/2/2
#data
| #\ foo\20
#result htmlid1
/2/2/3
#data
| #bar
#result htmlid1
#xml xmlid1
]>
aaaaaaaaaaaaaaaaaaaaaaaaaa
abcdefghijklmnopqrstuvwxyz
#html 13
aaaaaaaaaaaaaaaaaaaaaaaaaa
abcdefghijklmnopqrstuvwxy
#data
:root
#result 13
/2
#result 13 /2
#result 13 /2/2
#data
span:root
#result 13
#data
p:nth-child(1)
#result 13
/2/2/1
#data
p:nth-child(2)
#result 13
/2/2/2
#data
p:nth-child(-10)
#result 13
#data
p:nth-child(0)
#result 13
#data
p:nth-child(2n)
#result 13
/2/2/2
#data
p:nth-child(2n+1)
#result 13
/2/2/1
/2/2/3
#data
p:nth-child(3n)
#result 13
/2/2/3
#data
p:nth-child(3n-1)
#result 13
/2/2/2
#data
p:nth-child(n)
#result 13
/2/2/1
/2/2/2
/2/2/3
#data
p:nth-child(n+3)
#result 13
/2/2/3
#data
p:nth-child(n+4)
#result 13
#data
p:nth-child(-n)
#result 13
#data
p:nth-child(-3n)
#result 13
#data
p:nth-child(n-10)
#result 13
/2/2/1
/2/2/2
/2/2/3
#data
p:nth-child(-n+2)
#result 13
/2/2/1
/2/2/2
#data
p:nth-last-child(1)
#result 13
/2/2/3
#data
p:nth-last-child(2)
#result 13
/2/2/2
#data
p:nth-last-child(3)
#result 13
/2/2/1
#data
p:nth-last-child(4)
#result 13
#data
p:nth-last-child(12)
#result 13
#data
p:nth-last-child(0)
#result 13
#data
p:nth-last-child(-1)
#result 13
#data
p:nth-last-child(2n)
#result 13
/2/2/2
#data
p:nth-last-child(2n+1)
#result 13
/2/2/1
/2/2/3
#data
p:nth-last-child(2n+2)
#result 13
/2/2/2
#data
p:nth-last-child(2n+3)
#result 13
/2/2/1
#data
p:nth-last-child(2n+4)
#result 13
#data
p:nth-last-child(3n)
#result 13
/2/2/1
#data
p:nth-last-child(3n+2)
#result 13
/2/2/2
#data
p:nth-last-child(2n-1)
#result 13
/2/2/1
/2/2/3
#data
p:nth-last-child(2n-2)
#result 13
/2/2/2
#data
p:nth-last-child(2n-3)
#result 13
/2/2/1
/2/2/3
#data
p:nth-last-child(-n)
#result 13
#data
p:nth-last-child(n)
#result 13
/2/2/1
/2/2/2
/2/2/3
#data
p:nth-last-child(-n+3)
#result 13
/2/2/1
/2/2/2
/2/2/3
#data
p:nth-last-child(-n-2)
#result 13
#data
p:nth-last-child(-2n)
#result 13
#data
p:nth-last-child(-2n+2)
#result 13
/2/2/2
#data
p:nth-last-child(-2n+1)
#result 13
/2/2/3
#data
p:nth-last-child(-12n)
#result 13
#html types
para1
para2
para3
a
#data
:empty
#result empty
/2/1
/2/2/1
/2/2/3
/2/2/5/1
#data
p:empty
#result empty
/2/2/1
/2/2/3
#xml emptyxml
z