case=<> 464s # lexed <[> len=1 464s # <\[> case=<> qm=464s # _lex out <\[> 464s ok 17 - _lex \Q[ 464s # _lex <\Q]> 464s # lexed <\Q> len=2 464s # state change qm=case=<> 464s # lexed <]> len=1 464s # <\]> case=<> qm=464s # _lex out <\]> 464s ok 18 - _lex \Q] 464s # _lex <\Q(> 464s # lexed <\Q> len=2 464s # state change qm=case=<> 464s # lexed <(> len=1 464s # <\(> case=<> qm=464s # _lex out <\(> 464s ok 19 - _lex \Q( 464s # _lex <\Q)> 464s # lexed <\Q> len=2 464s # state change qm=case=<> 464s # lexed <)> len=1 464s # <\)> case=<> qm=464s # _lex out <\)> 464s ok 20 - _lex \Q) 464s # _lex <\Qa+b*c?> 464s # lexed <\Q> len=2 464s # state change qm=case=<> 464s # lexed len=1 464s # case=<> qm=464s # lexed <+> len=1 464s # <\+> case=<> qm=464s # lexed len=1 464s # case=<> qm=464s # lexed <*> len=1 464s # <\*> case=<> qm=464s # lexedlen=1 464s # case=<> qm= 464s # lexed > len=1 464s # <\?> case=<> qm=464s # _lex out 464s ok 21 - _lex \Qa+b*c? 464s # _lex 464s # lexed len=1 464s # case=<> qm=<> 464s # lexed <\L> len=2 464s # state change qm=<> case=464s # lexed len=1 464s # case= qm=<> 464s # lexed len=1 464s # case= qm=<> 464s # lexed <\U> len=2 464s # state change qm=<> case= 464s # lexed len=1 464s # case= qm=<> 464s # lexed len=1 464s # case= qm=<> 464s # lexed <\E> len=2 464s # state change qm=<> case=<> 464s # lexed len=1 464s # case=<> qm=<> 464s # lexed <\Q> len=2 464s # state change qm= case=<> 464s # lexedlen=1 464s # case=<> qm= 464s # lexed <+> len=1 464s # <\+> case=<> qm=464s # _lex out 464s ok 22 - _lex a\LBC\Ude\Ef\Qg+ 464s # _lex 464s # lexed len=1 464s # case=<> qm=<> 464s # lexed <\uC> len=3 464s # apply case= to464s # _lex out 464s ok 23 - _lex a\uC 464s # _lex <\Q\/?> 464s # lexed <\Q> len=2 464s # state change qm= case=<> 464s # lexed <\/> len=2 464s # backslashed <\/> 464s # <\/> case=<> qm=464s # lexed > len=1 464s # <\?> case=<> qm=464s # _lex out <\/ \?> 464s ok 24 - _lex \Q\/? 464s # add464s # _lex
464s # token
<> 464s clean
464s # backslash 464s # case L 464s # backslash 464s # Q 464s # token <> 464s clean 464s # token <+> <> 464s clean <\+> 464s # E 464s # token
<> 464s clean 464s ok 25 - add p\L\QA+\EZ 464s # add <^\Qa[b[> 464s # _lex <^\Qa[b[> 464s # token <^> <> 464s clean <^> 464s # backslash 464s # Q 464s # token <> 464s clean 464s # token <[> <> 464s clean <\[> 464s # token <> 464s clean 464s # token <[> <> 464s clean <\[> 464s ok 26 - add ^\Qa[b[ 464s # add <\x45> 464s # _lex <\x45> 464s # backslash 464s # x 45 464s # cooked 464s # giving 464s ok 27 - _lex(\x45) with debug 464s ok 28 - insert(undef) 464s # add <67abc123def+> 464s # _lex <67abc123def+> 464s # lexed <6> len=1 464s # <6> case=<> qm=<> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <1> len=1 464s # recover as , save <1> 464s # case=<> qm=<> 464s # redo <1> 464s # <1> case=<> qm=<> 464s # lexed <2> len=1 464s # <2> case=<> qm=<> 464s # lexed <3> len=1 464s # <3> case=<> qm=<> 464s # add remaining case=<> qm=<> 464s # _lex out <6 7 abc 1 2 3 def+> 464s ok 29 - 67abc123def+ with \d lexer 464s ok 30 - 67ab12de+ with \d lexer 464s # add <67\Q1a*\E12jk> 464s # _lex <67\Q1a*\E12jk> 464s # lexed <6> len=1 464s # <6> case=<> qm=<> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <1> len=1 464s # recover <\Q> as <\Q>, save <1> 464s # state change qm= case=<> 464s # redo <1> 464s # <1> case=<> qm=464s # lexed len=1 464s # case=<> qm=464s # lexed <*> len=1 464s # <\*> case=<> qm=464s # lexed <\E> len=2 464s # state change qm=<> case=<> 464s # lexed <1> len=1 464s # <1> case=<> qm=<> 464s # lexed <2> len=1 464s # <2> case=<> qm=<> 464s # add remainingcase=<> qm=<> 464s # _lex out <6 7 1 a \* 1 2 jk> 464s ok 31 - 67\Q1a*\E12jk with \d lexer 464s # add <67\Q1a*45k+> 464s # _lex <67\Q1a*45k+> 464s # lexed <6> len=1 464s # <6> case=<> qm=<> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <1> len=1 464s # recover <\Q> as <\Q>, save <1> 464s # state change qm= case=<> 464s # redo <1> 464s # <1> case=<> qm=464s # lexed len=1 464s # case=<> qm=464s # lexed <*> len=1 464s # <\*> case=<> qm=464s # lexed <4> len=1 464s # <4> case=<> qm=464s # lexed <5> len=1 464s # <5> case=<> qm=464s # lexedlen=1 464s # case=<> qm= 464s # lexed <+> len=1 464s # <\+> case=<> qm=464s # _lex out <6 7 1 a \* 4 5 k \+> 464s ok 32 - 67\Q1a*45k+ with \d lexer 464s # add <7\U6a> 464s # _lex <7\U6a> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <6> len=1 464s # recover <\U> as <\U>, save <6> 464s # state change qm=<> case= 464s # redo <6> 464s # <6> case= qm=<> 464s # add remaining case= qm=<> 464s # _lex out <7 6 A> 464s ok 33 - 7\U6a with \d lexer 464s # add <8\L9C> 464s # _lex <8\L9C> 464s # lexed <8> len=1 464s # <8> case=<> qm=<> 464s # lexed <9> len=1 464s # recover <\L> as <\L>, save <9> 464s # state change qm=<> case=464s # redo <9> 464s # <9> case= qm=<> 464s # add remaining case= qm=<> 464s # _lex out <8 9 c> 464s ok 34 - 8\L9C with \d lexer 464s # add <57\Q2a+23d+> 464s # _lex <57\Q2a+23d+> 464s # lexed <5> len=1 464s # <5> case=<> qm=<> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <2> len=1 464s # recover <\Q> as <\Q>, save <2> 464s # state change qm= case=<> 464s # redo <2> 464s # <2> case=<> qm=464s # lexed len=1 464s # case=<> qm=464s # lexed <+> len=1 464s # <\+> case=<> qm=464s # lexed <2> len=1 464s # <2> case=<> qm=464s # lexed <3> len=1 464s # <3> case=<> qm=464s # lexedlen=1 464s # case=<> qm= 464s # lexed <+> len=1 464s # <\+> case=<> qm=464s # _lex out <5 7 2 a \+ 2 3 d \+> 464s ok 35 - 57\Q2a+23d+ with \d lexer 464s # add <67\Uabc\E123def> 464s # _lex <67\Uabc\E123def> 464s # lexed <6> len=1 464s # <6> case=<> qm=<> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <1> len=1 464s # recover <\Uabc\E> as <\Uabc\E>, save <1> 464s # backslashed <\Uabc\E> 464s # <\Uabc\E> case=<> qm=<> 464s # redo <1> 464s # <1> case=<> qm=<> 464s # lexed <2> len=1 464s # <2> case=<> qm=<> 464s # lexed <3> len=1 464s # <3> case=<> qm=<> 464s # add remainingcase=<> qm=<> 464s # _lex out <6 7 \Uabc\E 1 2 3 def> 464s ok 36 - 67\Uabc\E123def with \d lexer 464s # add <67\Q(?:a)?\E123def> 464s # _lex <67\Q(?:a)?\E123def> 464s # lexed <6> len=1 464s # <6> case=<> qm=<> 464s # lexed <7> len=1 464s # <7> case=<> qm=<> 464s # lexed <1> len=1 464s # recover <\Q(?:a)?\E> as <\Q(?:a)?\E>, save <1> 464s # backslashed <\Q(?:a)?\E> 464s # <\Q(?:a)?\E> case=<> qm=<> 464s # redo <1> 464s # <1> case=<> qm=<> 464s # lexed <2> len=1 464s # <2> case=<> qm=<> 464s # lexed <3> len=1 464s # <3> case=<> qm=<> 464s # add remaining case=<> qm=<> 464s # _lex out <6 7 \Q(?:a)?\E 1 2 3 def> 464s ok 37 - 67\Uabc\E123def with \d lexer 464s # _insert_path [0 \. 2] into [0 \. 0] 464s # at path (<0> \. 0) 464s # at path (0 <\.> 0) 464s # at path (0 \. <0>) 464s # token 2 not present 464s # path=[0 \. {0=>[0] 2=>[2]}] 464s # _insert_path [0 \. 7] into [0 \. {0=>[0] 2=>[2]}] 464s # at path (<0> \. {0 2}) 464s # at path (0 <\.> {0 2}) 464s # at (off=2 len=3) {0=>[0] 2=>[2]} 464s # add path (7:[]) into [0 \. {0=>[0] 2=>[2]}] at off=2 to end=2 464s # _insert_path [0 \. 0 1] into [0 \. {0=>[0] 2=>[2] 7=>[7]}] 464s # at path (<0> \. {0 7 2}) 464s # at path (0 <\.> {0 7 2}) 464s # at (off=2 len=3) {0=>[0] 2=>[2] 7=>[7]} 464s # descend key=0 [0] 464s # at path (<0>) 464s # at path (0) 464s # added remaining [0 {* 1=>[1]}] 464s # _insert_path [0 \. 0 0 3] into [0 \. {0=>[0 {* 1=>[1]}] 2=>[2] 7=>[7]}] 464s # at path (<0> \. {0 7 2}) 464s # at path (0 <\.> {0 7 2}) 464s # at (off=2 len=3) {0=>[0 {* 1=>[1]}] 2=>[2] 7=>[7]} 464s # descend key=0 [0 {* 1=>[1]}] 464s # at path (<0> {1 }) 464s # at (off=1 len=2) {* 1=>[1]} 464s # add path (0:[3]) into [0 {* 1=>[1]}] at off=1 to end=1 464s ok 38 - pretty 0.0 0.2 0.7 0.01 0.003 464s # _insert_path [d a r k n e s s] into [d o g] 464s # at path ( o g) 464s # at path (d g) 464s # token a not present 464s # path=[d {a=>[a r k n e s s] o=>[o g]}] 464s # _insert_path [d o g g e r e l] into [d {a=>[a r k n e s s] o=>[o g]}] 464s # at path ( {o a}) 464s # at (off=1 len=2) {a=>[a r k n e s s] o=>[o g]} 464s # descend key=o [o g] 464s # at path ( g) 464s # at path (o ) 464s # at path (o g) 464s # added remaining [o g {* g=>[g e r e l]}] 464s # _insert_path [d a r k] into [d {a=>[a r k n e s s] o=>[o g {* g=>[g e r e l]}]}] 464s # at path ( {o a}) 464s # at (off=1 len=2) {a=>[a r k n e s s] o=>[o g {* g=>[g e r e l]}]} 464s # descend key=a [a r k n e s s] 464s # at path ( r k n e s s) 464s # at path (a k n e s s) 464s # at path (a r n e s s) 464s # last token to add 464s # convert to node for sentinel 464s # _reduce_path 0 [d {a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]}] 464s # _reduce_node 1 in {a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]} opt=0 464s # |_scan_node head=[g o] tail={* g=>[g e r e l]} 464s # | check=[l e r e g] 464s # | slide in h=[] t={* l=>[l e r e g]} p=[g o] 464s # | slide potential [l e r e g] over [g o] 464s # | slide path [l e r e g] 464s # | slide out h=[] s={* l=>[l e r e g]} p=[g o] 464s # _reduce_node 3 in {g=>[g e r e l]} opt=1 464s # | fast fail {* g=>[g e r e l]} 464s # | +failed o 464s # |_scan_node head=[k r a] tail={* n=>[n e s s]} 464s # | check=[s s e n] 464s # | slide in h=[] t={* s=>[s s e n]} p=[k r a] 464s # | slide potential [s s e n] over [k r a] 464s # | slide path [s s e n] 464s # | slide out h=[] s={* s=>[s s e n]} p=[k r a] 464s # _reduce_node 3 in {n=>[n e s s]} opt=1 464s # | fast fail {* n=>[n e s s]} 464s # | +failed a 464s # |_scan_node counts: reduce=0 fail=2 464s # |_scan_node done opt=0 reduce={} fail=[[o g {* g=>[g e r e l]}] [a r k {* n=>[n e s s]}]] 464s # | +fail [o g {* g=>[g e r e l]}] 464s # | +fail [a r k {* n=>[n e s s]}] 464s # _reduce_fail 2 fail={a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]} 464s #| head=[] tail={a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]} 464s #| unshift d 464s #| tail nr=2 t0= 464s # _reduce_path 0 out head=[] tail=[d {a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]}] 464s # final head=[] tail=[d {a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]}] 464s # final path=[d {a=>[a r k {* n=>[n e s s]}] o=>[o g {* g=>[g e r e l]}]}] 464s ok 39 464s # _insert_path [l i t] into [l i m i t] 464s # at path ( i m i t) 464s # at path (l m i t) 464s # at path (l i i t) 464s # token t not present 464s # path=[l i {m=>[m i t] t=>[t]}] 464s # _reduce_path 0 [l i {m=>[m i t] t=>[t]}] 464s # _reduce_node 1 in {m=>[m i t] t=>[t]} opt=0 464s # |_scan_node push reduce (t:[]) 464s # |_scan_node push reduce (t:[i m]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t] [t i m]]} fail=[] 464s # | do [[t] [t i m]] 464s # _insert_path [t i m] into [t] 464s # at path ( ) 464s # at path (t) 464s # added remaining [t {* i=>[i m]}] 464s # | _do_reduce common=[t] tail={* i=>[i m]} 464s # |_reduce_node 1 common=[t] tail={* i=>[i m]} 464s #| head=[t] tail={* i=>[i m]} 464s #| push i leaves [l] 464s #| push l leaves [] 464s #| tail nr=3 t0=HASH n=2 464s #| scan k= p=[] 464s #| scan k=i p=[i m] 464s # | slide in h=[t] t={* i=>[i m]} p=[i l] 464s # | slide potential [i m] over [i l] 464s # | slide=tail=i 464s # | slide path [m i] 464s # | slide out h=[t i] s={* m=>[m i]} p=[l] 464s # _reduce_path 0 out head=[t i] tail=[{* m=>[m i]} l] 464s # final head=[t i] tail=[{* m=>[m i]} l] 464s # unrev path in [{* m=>[m i]} l] 464s # unrev node in {m=>[m i]} opt=1 464s # _unrev path fast [m i]# -> [i m] 464s # unrev node out {* i=>[i m]} 464s # unrev path out [l {* i=>[i m]}] 464s # _unrev path fast [t i]# -> [i t] 464s # final path=[l {* i=>[i m]} i t] 464s ok 40 464s # _insert_path [s e a h o r s e] into [s e a f o o d] 464s # at path ( e a f o o d) 464s # at path (sa f o o d) 464s # at path (s e f o o d) 464s # at path (s e a o o d) 464s # token h not present 464s # path=[s e a {f=>[f o o d] h=>[h o r s e]}] 464s # _insert_path [s e a] into [s e a {f=>[f o o d] h=>[h o r s e]}] 464s # at path ( e a {f h}) 464s # at path (sa {f h}) 464s # at path (s e {f h}) 464s # last token to add 464s # add sentinel to node 464s # _reduce_path 0 [s e a {* f=>[f o o d] h=>[h o r s e]}] 464s # _reduce_node 1 in {f=>[f o o d] h=>[h o r s e]} opt=1 464s # |_scan_node push reduce (d:[o o f]) 464s # |_scan_node push reduce (e:[s r o h]) 464s # |_scan_node counts: reduce=2 fail=0 464s # |_scan_node done opt=1 reduce={d=>[[d o o f]] e=>[[e s r o h]]} fail=[] 464s # | -simple opt=1 unrev [e s r o h] 464s # _unrev path fast [e s r o h]# -> [h o r s e] 464s # | -simple opt=1 unrev [d o o f] 464s # _unrev path fast [d o o f]# -> [f o o d] 464s # _reduce_fail 2 fail={* f=>[f o o d] h=>[h o r s e]} 464s #| head=[] tail={* f=>[f o o d] h=>[h o r s e]} 464s #| unshift a 464s #| unshift e 464s #| unshift s 464s #| tail nr=4 t0= 464s # _reduce_path 0 out head=[] tail=[s e a {* f=>[f o o d] h=>[h o r s e]}] 464s # final head=[] tail=[s e a {* f=>[f o o d] h=>[h o r s e]}] 464s # final path=[s e a {* f=>[f o o d] h=>[h o r s e]}] 464s ok 41 464s # _insert_path [c a t] into [b i r d] 464s # at path ( i r d) 464s # token c not present 464s # path=[{b=>[b i r d] c=>[c a t]}] 464s # _insert_path [d o g] into [{b=>[b i r d] c=>[c a t]}] 464s # at (off=0 len=1) {b=>[b i r d] c=>[c a t]} 464s # add path (d:[o g]) into [{b=>[b i r d] c=>[c a t]}] at off=0 to end=0 464s # _insert_path [e l e p h a n t] into [{b=>[b i r d] c=>[c a t] d=>[d o g]}] 464s # at (off=0 len=1) {b=>[b i r d] c=>[c a t] d=>[d o g]} 464s # add path (e:[l e p h a n t]) into [{b=>[b i r d] c=>[c a t] d=>[d o g]}] at off=0 to end=0 464s # _insert_path [f o x] into [{b=>[b i r d] c=>[c a t] d=>[d o g] e=>[e l e p h a n t]}] 464s # at (off=0 len=1) {b=>[b i r d] c=>[c a t] d=>[d o g] e=>[e l e p h a n t]} 464s # add path (f:[o x]) into [{b=>[b i r d] c=>[c a t] d=>[d o g] e=>[e l e p h a n t]}] at off=0 to end=0 464s # _reduce_path 0 [{b=>[b i r d] c=>[c a t] d=>[d o g] e=>[e l e p h a n t] f=>[f o x]}] 464s # _reduce_node 1 in {b=>[b i r d] c=>[c a t] d=>[d o g] e=>[e l e p h a n t] f=>[f o x]} opt=0 464s # |_scan_node push reduce (t:[a c]) 464s # |_scan_node push reduce (g:[o d]) 464s # |_scan_node push reduce (x:[o f]) 464s # |_scan_node push reduce (d:[r i b]) 464s # |_scan_node push reduce (t:[n a h p e l e]) 464s # |_scan_node counts: reduce=4 fail=0 464s # |_scan_node done opt=0 reduce={d=>[[d r i b]] g=>[[g o d]] t=>[[t a c] [t n a h p e l e]] x=>[[x o f]]} fail=[] 464s # | -simple opt=0 unrev [d r i b] 464s # _unrev path fast [d r i b]# -> [b i r d] 464s # | _do_reduce([[t a c] [t n a h p e l e]]) 464s # | do [[t a c] [t n a h p e l e]] 464s # _insert_path [t n a h p e l e] into [t a c] 464s # at path ( a c) 464s # at path (t c) 464s # token n not present 464s # path=[t {a=>[a c] n=>[n a h p e l e]}] 464s # | _do_reduce common=[t] tail={a=>[a c] n=>[n a h p e l e]} 464s # unrev node in {a=>[a c] n=>[n a h p e l e]} opt=0 464s # _unrev path fast [a c]# -> [c a] 464s # _unrev path fast [n a h p e l e]# -> [e l e p h a n] 464s # unrev node out {c=>[c a] e=>[e l e p h a n]} 464s # _unrev path fast [t]# -> [t] 464s # | +reduced [{c=>[c a] e=>[e l e p h a n]} t] 464s # | -simple opt=0 unrev [x o f] 464s # _unrev path fast [x o f]# -> [f o x] 464s # | -simple opt=0 unrev [g o d] 464s # _unrev path fast [g o d]# -> [d o g] 464s # _reduce_fail 2 fail={b=>[b i r d] c=>[{c=>[c a] e=>[e l e p h a n]} t] d=>[d o g] f=>[f o x]} 464s #| head=[] tail={b=>[b i r d] c=>[{c=>[c a] e=>[e l e p h a n]} t] d=>[d o g] f=>[f o x]} 464s #| tail nr=1 t0=HASH n=4 464s # _reduce_path 0 out head=[] tail=[{b=>[b i r d] c=>[{c=>[c a] e=>[e l e p h a n]} t] d=>[d o g] f=>[f o x]}] 464s # final head=[] tail=[{b=>[b i r d] c=>[{c=>[c a] e=>[e l e p h a n]} t] d=>[d o g] f=>[f o x]}] 464s # final path=[{b=>[b i r d] c=>[{c=>[c a] e=>[e l e p h a n]} t] d=>[d o g] f=>[f o x]}] 464s ok 42 464s # _insert_path [b a t] into [b i t] 464s # at path ( i t) 464s # at path (b t) 464s # token a not present 464s # path=[b {a=>[a t] i=>[i t]}] 464s # _insert_path [s i t] into [b {a=>[a t] i=>[i t]}] 464s # at path ( {a i}) 464s # token s not present 464s # path=[{b=>[b {a=>[a t] i=>[i t]}] s=>[s i t]}] 464s # _insert_path [s a t] into [{b=>[b {a=>[a t] i=>[i t]}] s=>[s i t]}] 464s # at (off=0 len=1) {b=>[b {a=>[a t] i=>[i t]}] s=>[s i t]} 464s # descend key=s [s i t] 464s # at path ( i t) 464s # at path (s t) 464s # token a not present 464s # path=[s {a=>[a t] i=>[i t]}] 464s # _insert_path [f i t] into [{b=>[b {a=>[a t] i=>[i t]}] s=>[s {a=>[a t] i=>[i t]}]}] 464s # at (off=0 len=1) {b=>[b {a=>[a t] i=>[i t]}] s=>[s {a=>[a t] i=>[i t]}]} 464s # add path (f:[i t]) into [{b=>[b {a=>[a t] i=>[i t]}] s=>[s {a=>[a t] i=>[i t]}]}] at off=0 to end=0 464s # _insert_path [f a t] into [{b=>[b {a=>[a t] i=>[i t]}] f=>[f i t] s=>[s {a=>[a t] i=>[i t]}]}] 464s # at (off=0 len=1) {b=>[b {a=>[a t] i=>[i t]}] f=>[f i t] s=>[s {a=>[a t] i=>[i t]}]} 464s # descend key=f [f i t] 464s # at path (i t) 464s # at path (f t) 464s # token a not present 464s # path=[f {a=>[a t] i=>[i t]}] 464s # _reduce_path 0 [{b=>[b {a=>[a t] i=>[i t]}] f=>[f {a=>[a t] i=>[i t]}] s=>[s {a=>[a t] i=>[i t]}]}] 464s # _reduce_node 1 in {b=>[b {a=>[a t] i=>[i t]}] f=>[f {a=>[a t] i=>[i t]}] s=>[s {a=>[a t] i=>[i t]}]} opt=0 464s # |_scan_node head=[b] tail={a=>[a t] i=>[i t]} 464s # _reduce_node 3 in {a=>[a t] i=>[i t]} opt=0 464s # |_scan_node push reduce (t:[a]) 464s # |_scan_node push reduce (t:[i]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t a] [t i]]} fail=[] 464s # | do [[t a] [t i]] 464s # _insert_path [t i] into [t a] 464s # at path ( a) 464s # at path (t ) 464s # token i not present 464s # path=[t {a=>[a] i=>[i]}] 464s # | _do_reduce common=[t] tail={a=>[a] i=>[i]} 464s # |_reduce_node 3 common=[t] tail={a=>[a] i=>[i]} 464s # |_scan_node ++recovered common=[t] tail={a=>[a] i=>[i]} path=[b] 464s # |_scan_node head=[f] tail={a=>[a t] i=>[i t]} 464s # _reduce_node 3 in {a=>[a t] i=>[i t]} opt=0 464s # |_scan_node push reduce (t:[a]) 464s # |_scan_node push reduce (t:[i]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t a] [t i]]} fail=[] 464s # | do [[t a] [t i]] 464s # _insert_path [t i] into [t a] 464s # at path ( a) 464s # at path (t ) 464s # token i not present 464s # path=[t {a=>[a] i=>[i]}] 464s # | _do_reduce common=[t] tail={a=>[a] i=>[i]} 464s # |_reduce_node 3 common=[t] tail={a=>[a] i=>[i]} 464s # |_scan_node ++recovered common=[t] tail={a=>[a] i=>[i]} path=[f] 464s # |_scan_node head=[s] tail={a=>[a t] i=>[i t]} 464s # _reduce_node 3 in {a=>[a t] i=>[i t]} opt=0 464s # |_scan_node push reduce (t:[a]) 464s # |_scan_node push reduce (t:[i]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t a] [t i]]} fail=[] 464s # | do [[t a] [t i]] 464s # _insert_path [t i] into [t a] 464s # at path ( a) 464s # at path (t ) 464s # token i not present 464s # path=[t {a=>[a] i=>[i]}] 464s # | _do_reduce common=[t] tail={a=>[a] i=>[i]} 464s # |_reduce_node 3 common=[t] tail={a=>[a] i=>[i]} 464s # |_scan_node ++recovered common=[t] tail={a=>[a] i=>[i]} path=[s] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t {a=>[a] i=>[i]} b] [t {a=>[a] i=>[i]} f] [t {a=>[a] i=>[i]} s]]} fail=[] 464s # | do [[t {a=>[a] i=>[i]} b] [t {a=>[a] i=>[i]} f] [t {a=>[a] i=>[i]} s]] 464s # _insert_path [t {a=>[a] i=>[i]} f] into [t {a=>[a] i=>[i]} b] 464s # at path ( {i a} b) 464s # p0=[t {a=>[a] i=>[i]} b] 464s # insert node({a=>[a] i=>[i]}:[f]) (key=[ai]) at path=[{a=>[a] i=>[i]} b] 464s # identical nodes [{a=>[a] i=>[i]}] 464s # insert at 2 f:[] into [b] 464s # _insert_path [f] into [b] 464s # at path () 464s # token f not present 464s # path=[{b=>[b] f=>[f]}] 464s # got off=2 s=0 path_add=[{b=>[b] f=>[f]}] 464s # got final=[t {a=>[a] i=>[i]} {b=>[b] f=>[f]}] 464s # p1=[t {a=>[a] i=>[i]} {b=>[b] f=>[f]}] 464s # _insert_path [t {a=>[a] i=>[i]} s] into [t {a=>[a] i=>[i]} {b=>[b] f=>[f]}] 464s # at path ( {i a} {f b}) 464s # p0=[t {a=>[a] i=>[i]} {b=>[b] f=>[f]}] 464s # insert node({a=>[a] i=>[i]}:[s]) (key=[ai]) at path=[{a=>[a] i=>[i]} {b=>[b] f=>[f]}] 464s # identical nodes [{a=>[a] i=>[i]}] 464s # insert at 2 s:[] into [{b=>[b] f=>[f]}] 464s # _insert_path [s] into [{b=>[b] f=>[f]}] 464s # at (off=0 len=1) {b=>[b] f=>[f]} 464s # add path (s:[]) into [{b=>[b] f=>[f]}] at off=0 to end=0 464s # got off=2 s=0 path_add=[{b=>[b] f=>[f] s=>[s]}] 464s # got final=[t {a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s # p1=[t {a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s # | _do_reduce common=[t] tail=[{a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s # |_reduce_node 1 common=[t] tail=[{a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s #| head=[t] tail=[{a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s #| tail nr=2 t0=HASH n=2 464s #| scan k=i p=[i] 464s #| scan k=a p=[a] 464s # _reduce_path 0 out head=[t] tail=[{a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s # final head=[t] tail=[{a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s # unrev path in [{a=>[a] i=>[i]} {b=>[b] f=>[f] s=>[s]}] 464s # unrev node in {b=>[b] f=>[f] s=>[s]} opt=0 464s # _unrev path fast [f]# -> [f] 464s # _unrev path fast [b]# -> [b] 464s # _unrev path fast [s]# -> [s] 464s # unrev node out {b=>[b] f=>[f] s=>[s]} 464s # unrev node in {a=>[a] i=>[i]} opt=0 464s # _unrev path fast [i]# -> [i] 464s # _unrev path fast [a]# -> [a] 464s # unrev node out {a=>[a] i=>[i]} 464s # unrev path out [{b=>[b] f=>[f] s=>[s]} {a=>[a] i=>[i]}] 464s # _unrev path fast [t]# -> [t] 464s # final path=[{b=>[b] f=>[f] s=>[s]} {a=>[a] i=>[i]} t] 464s ok 43 464s # _insert_path [s p l a t] into [s p l i t] 464s # at path ( p l i t) 464s # at path (sl i t) 464s # at path (s p
i t) 464s # at path (s p l t) 464s # token a not present 464s # path=[s p l {a=>[a t] i=>[i t]}] 464s # _insert_path [s l i t] into [s p l {a=>[a t] i=>[i t]}] 464s # at path ( p l {a i}) 464s # at path (sl {a i}) 464s # token l not present 464s # path=[s {l=>[l i t] p=>[p l {a=>[a t] i=>[i t]}]}] 464s # _insert_path [s l a t] into [s {l=>[l i t] p=>[p l {a=>[a t] i=>[i t]}]}] 464s # at path (
{l p}) 464s # at (off=1 len=2) {l=>[l i t] p=>[p l {a=>[a t] i=>[i t]}]} 464s # descend key=l [l i t] 464s # at path (i t) 464s # at path (l t) 464s # token a not present 464s # path=[l {a=>[a t] i=>[i t]}] 464s # _insert_path [f l a t] into [s {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]}] 464s # at path ( {l p}) 464s # token f not present 464s # path=[{f=>[f l a t] s=>[s {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]}]}] 464s # _insert_path [f l i t] into [{f=>[f l a t] s=>[s {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]}]}] 464s # at (off=0 len=1) {f=>[f l a t] s=>[s {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]}]} 464s # descend key=f [f l a t] 464s # at path (l a t) 464s # at path (f a t) 464s # at path (f l t) 464s # token i not present 464s # path=[f l {a=>[a t] i=>[i t]}] 464s # _reduce_path 0 [{f=>[f l {a=>[a t] i=>[i t]}] s=>[s {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]}]}] 464s # _reduce_node 1 in {f=>[f l {a=>[a t] i=>[i t]}] s=>[s {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]}]} opt=0 464s # |_scan_node head=[s] tail={l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]} 464s # _reduce_node 3 in {l=>[l {a=>[a t] i=>[i t]}] p=>[p l {a=>[a t] i=>[i t]}]} opt=0 464s # |_scan_node head=[l] tail={a=>[a t] i=>[i t]} 464s # _reduce_node 5 in {a=>[a t] i=>[i t]} opt=0 464s # |_scan_node push reduce (t:[a]) 464s # |_scan_node push reduce (t:[i]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t a] [t i]]} fail=[] 464s # | do [[t a] [t i]] 464s # _insert_path [t i] into [t a] 464s # at path ( a) 464s # at path (t ) 464s # token i not present 464s # path=[t {a=>[a] i=>[i]}] 464s # | _do_reduce common=[t] tail={a=>[a] i=>[i]} 464s # |_reduce_node 5 common=[t] tail={a=>[a] i=>[i]} 464s # |_scan_node ++recovered common=[t] tail={a=>[a] i=>[i]} path=[l] 464s # |_scan_node head=[l p] tail={a=>[a t] i=>[i t]} 464s # _reduce_node 5 in {a=>[a t] i=>[i t]} opt=0 464s # |_scan_node push reduce (t:[a]) 464s # |_scan_node push reduce (t:[i]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t a] [t i]]} fail=[] 464s # | do [[t a] [t i]] 464s # _insert_path [t i] into [t a] 464s # at path ( a) 464s # at path (t ) 464s # token i not present 464s # path=[t {a=>[a] i=>[i]}] 464s # | _do_reduce common=[t] tail={a=>[a] i=>[i]} 464s # |_reduce_node 5 common=[t] tail={a=>[a] i=>[i]} 464s # |_scan_node ++recovered common=[t] tail={a=>[a] i=>[i]} path=[l p] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t {a=>[a] i=>[i]} l] [t {a=>[a] i=>[i]} l p]]} fail=[] 464s # | do [[t {a=>[a] i=>[i]} l] [t {a=>[a] i=>[i]} l p]] 464s # _insert_path [t {a=>[a] i=>[i]} l p] into [t {a=>[a] i=>[i]} l] 464s # at path ( {i a} l) 464s # p0=[t {a=>[a] i=>[i]} l] 464s # insert node({a=>[a] i=>[i]}:[l p]) (key=[ai]) at path=[{a=>[a] i=>[i]} l] 464s # identical nodes [{a=>[a] i=>[i]}] 464s # identical nodes [l] 464s # convert opt {* p=>[p]} 464s # p1=[t {a=>[a] i=>[i]} l {* p=>[p]}] 464s # | _do_reduce common=[t] tail=[{a=>[a] i=>[i]} l {* p=>[p]}] 464s # |_reduce_node 3 common=[t] tail=[{a=>[a] i=>[i]} l {* p=>[p]}] 464s # |_scan_node ++recovered common=[t] tail=[{a=>[a] i=>[i]} l {* p=>[p]}] path=[s] 464s # |_scan_node head=[l f] tail={a=>[a t] i=>[i t]} 464s # _reduce_node 3 in {a=>[a t] i=>[i t]} opt=0 464s # |_scan_node push reduce (t:[a]) 464s # |_scan_node push reduce (t:[i]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t a] [t i]]} fail=[] 464s # | do [[t a] [t i]] 464s # _insert_path [t i] into [t a] 464s # at path ( a) 464s # at path (t ) 464s # token i not present 464s # path=[t {a=>[a] i=>[i]}] 464s # | _do_reduce common=[t] tail={a=>[a] i=>[i]} 464s # |_reduce_node 3 common=[t] tail={a=>[a] i=>[i]} 464s # |_scan_node ++recovered common=[t] tail={a=>[a] i=>[i]} path=[l f] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t {a=>[a] i=>[i]} l {* p=>[p]} s] [t {a=>[a] i=>[i]} l f]]} fail=[] 464s # | do [[t {a=>[a] i=>[i]} l {* p=>[p]} s] [t {a=>[a] i=>[i]} l f]] 464s # _insert_path [t {a=>[a] i=>[i]} l {* p=>[p]} s] into [t {a=>[a] i=>[i]} l f] 464s # at path ( {a i} l f) 464s # p0=[t {a=>[a] i=>[i]} l f] 464s # insert node({a=>[a] i=>[i]}:[l {* p=>[p]} s]) (key=[ai]) at path=[{a=>[a] i=>[i]} l f] 464s # identical nodes [{a=>[a] i=>[i]}] 464s # identical nodes [l] 464s # insert at 3 HASH(0x14d742724590):[s] into [f] 464s # _insert_path [{* p=>[p]} s] into [f] 464s # p0=[f] 464s # insert node({* p=>[p]}:[s]) (key=p?) at path=[f] 464s # atom->node {f=>[f] p?=>[{* p=>[p]} s]} 464s # out=[{f=>[f] p?=>[{* p=>[p]} s]}] 464s # p1=[{f=>[f] p?=>[{* p=>[p]} s]}] 464s # got off=3 s=1 path_add=[{f=>[f] p?=>[{* p=>[p]} s]}] 464s # got final=[t {a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s # p1=[t {a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s # | _do_reduce common=[t] tail=[{a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s # |_reduce_node 1 common=[t] tail=[{a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s #| head=[t] tail=[{a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s #| tail nr=3 t0=HASH n=2 464s #| scan k=a p=[a] 464s #| scan k=i p=[i] 464s # _reduce_path 0 out head=[t] tail=[{a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s # final head=[t] tail=[{a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s # unrev path in [{a=>[a] i=>[i]} l {f=>[f] p?=>[{* p=>[p]} s]}] 464s # unrev node in {f=>[f] p?=>[{* p=>[p]} s]} opt=0 464s # _unrev path fast [f]# -> [f] 464s # unrev path in [{* p=>[p]} s] 464s # unrev node in {p=>[p]} opt=1 464s # _unrev path fast [p]# -> [p] 464s # unrev node out {* p=>[p]} 464s # unrev path out [s {* p=>[p]}] 464s # unrev node out {f=>[f] s=>[s {* p=>[p]}]} 464s # unrev node in {a=>[a] i=>[i]} opt=0 464s # _unrev path fast [a]# -> [a] 464s # _unrev path fast [i]# -> [i] 464s # unrev node out {a=>[a] i=>[i]} 464s # unrev path out [{f=>[f] s=>[s {* p=>[p]}]} l {a=>[a] i=>[i]}] 464s # _unrev path fast [t]# -> [t] 464s # final path=[{f=>[f] s=>[s {* p=>[p]}]} l {a=>[a] i=>[i]} t] 464s ok 44 464s # _insert_path [b c k x] into [b c k t x] 464s # at path ( c k t x) 464s # at path (b k t x) 464s # at path (b c t x) 464s # at path (b c k x) 464s # token x not present 464s # path=[b c k {t=>[t x] x=>[x]}] 464s # _insert_path [b d i x] into [b c k {t=>[t x] x=>[x]}] 464s # at path ( c k {x t}) 464s # at path (b k {x t}) 464s # token d not present 464s # path=[b {c=>[c k {t=>[t x] x=>[x]}] d=>[d i x]}] 464s # _insert_path [b d k t x] into [b {c=>[c k {t=>[t x] x=>[x]}] d=>[d i x]}] 464s # at path ( {d c}) 464s # at (off=1 len=2) {c=>[c k {t=>[t x] x=>[x]}] d=>[d i x]} 464s # descend key=d [d i x] 464s # at path ( i x) 464s # at path (d x) 464s # token k not present 464s # path=[d {i=>[i x] k=>[k t x]}] 464s # _insert_path [b d k x] into [b {c=>[c k {t=>[t x] x=>[x]}] d=>[d {i=>[i x] k=>[k t x]}]}] 464s # at path ( {d c}) 464s # at (off=1 len=2) {c=>[c k {t=>[t x] x=>[x]}] d=>[d {i=>[i x] k=>[k t x]}]} 464s # descend key=d [d {i=>[i x] k=>[k t x]}] 464s # at path ( {i k}) 464s # at (off=1 len=2) {i=>[i x] k=>[k t x]} 464s # descend key=k [k t x] 464s # at path ( t x) 464s # at path (k x) 464s # token x not present 464s # path=[k {t=>[t x] x=>[x]}] 464s # _reduce_path 0 [b {c=>[c k {t=>[t x] x=>[x]}] d=>[d {i=>[i x] k=>[k {t=>[t x] x=>[x]}]}]}] 464s # _reduce_node 1 in {c=>[c k {t=>[t x] x=>[x]}] d=>[d {i=>[i x] k=>[k {t=>[t x] x=>[x]}]}]} opt=0 464s # |_scan_node head=[d] tail={i=>[i x] k=>[k {t=>[t x] x=>[x]}]} 464s # _reduce_node 3 in {i=>[i x] k=>[k {t=>[t x] x=>[x]}]} opt=0 464s # |_scan_node push reduce (x:[i]) 464s # |_scan_node head=[k] tail={t=>[t x] x=>[x]} 464s # _reduce_node 5 in {t=>[t x] x=>[x]} opt=0 464s # |_scan_node push reduce (x:[]) 464s # |_scan_node push reduce (x:[t]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={x=>[[x] [x t]]} fail=[] 464s # | do [[x] [x t]] 464s # _insert_path [x t] into [x] 464s # at path ( ) 464s # at path (x) 464s # added remaining [x {* t=>[t]}] 464s # | _do_reduce common=[x] tail={* t=>[t]} 464s # |_reduce_node 5 common=[x] tail={* t=>[t]} 464s # |_scan_node ++recovered common=[x] tail={* t=>[t]} path=[k] 464s # | slide in h=[x] t={* t=>[t]} p=[k] 464s # | slide potential [t] over [k] 464s # | slide path [t] 464s # | slide out h=[x] s={* t=>[t]} p=[k] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={x=>[[x i] [x {* t=>[t]} k]]} fail=[] 464s # | do [[x i] [x {* t=>[t]} k]] 464s # _insert_path [x {* t=>[t]} k] into [x i] 464s # at path ( i) 464s # p0=[x i] 464s # insert node({* t=>[t]}:[k]) (key=t?) at path=[i] 464s # atom->node {i=>[i] t?=>[{* t=>[t]} k]} 464s # out=[x {i=>[i] t?=>[{* t=>[t]} k]}] 464s # p1=[x {i=>[i] t?=>[{* t=>[t]} k]}] 464s # | _do_reduce common=[x] tail={i=>[i] t?=>[{* t=>[t]} k]} 464s # |_reduce_node 3 common=[x] tail={i=>[i] t?=>[{* t=>[t]} k]} 464s # |_scan_node ++recovered common=[x] tail={i=>[i] t?=>[{* t=>[t]} k]} path=[d] 464s # |_scan_node head=[k c] tail={t=>[t x] x=>[x]} 464s # _reduce_node 3 in {t=>[t x] x=>[x]} opt=0 464s # |_scan_node push reduce (x:[]) 464s # |_scan_node push reduce (x:[t]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={x=>[[x] [x t]]} fail=[] 464s # | do [[x] [x t]] 464s # _insert_path [x t] into [x] 464s # at path ( ) 464s # at path (x) 464s # added remaining [x {* t=>[t]}] 464s # | _do_reduce common=[x] tail={* t=>[t]} 464s # |_reduce_node 3 common=[x] tail={* t=>[t]} 464s # |_scan_node ++recovered common=[x] tail={* t=>[t]} path=[k c] 464s # | slide in h=[x] t={* t=>[t]} p=[k c] 464s # | slide potential [t] over [k c] 464s # | slide path [t] 464s # | slide out h=[x] s={* t=>[t]} p=[k c] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={x=>[[x {i=>[i] t?=>[{* t=>[t]} k]} d] [x {* t=>[t]} k c]]} fail=[] 464s # | do [[x {i=>[i] t?=>[{* t=>[t]} k]} d] [x {* t=>[t]} k c]] 464s # _insert_path [x {* t=>[t]} k c] into [x {i=>[i] t?=>[{* t=>[t]} k]} d] 464s # at path ( {t? i} d) 464s # p0=[x {i=>[i] t?=>[{* t=>[t]} k]} d] 464s # insert node({* t=>[t]}:[k c]) (key=t?) at path=[{i=>[i] t?=>[{* t=>[t]} k]} d] 464s # +bifurcate new={(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} 464s # p1=[x {(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]}] 464s # | _do_reduce common=[x] tail={(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} 464s # |_reduce_node 1 common=[x] tail={(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} 464s #| head=[x] tail={(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} 464s #| push b leaves [] 464s #| tail nr=2 t0=HASH n=2 464s #| scan k=(?:t?k|i) p=[{i=>[i] t?=>[{* t=>[t]} k]} d] 464s #| scan k=t? p=[{* t=>[t]} k c] 464s # _reduce_path 0 out head=[x] tail=[{(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} b] 464s # final head=[x] tail=[{(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} b] 464s # unrev path in [{(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} b] 464s # unrev node in {(?:t?k|i)=>[{i=>[i] t?=>[{* t=>[t]} k]} d] t?=>[{* t=>[t]} k c]} opt=0 464s # unrev path in [{i=>[i] t?=>[{* t=>[t]} k]} d] 464s # unrev node in {i=>[i] t?=>[{* t=>[t]} k]} opt=0 464s # unrev path in [{* t=>[t]} k] 464s # unrev node in {t=>[t]} opt=1 464s # _unrev path fast [t]# -> [t] 464s # unrev node out {* t=>[t]} 464s # unrev path out [k {* t=>[t]}] 464s # _unrev path fast [i]# -> [i] 464s # unrev node out {i=>[i] k=>[k {* t=>[t]}]} 464s # unrev path out [d {i=>[i] k=>[k {* t=>[t]}]}] 464s # unrev path in [{* t=>[t]} k c] 464s # unrev node in {t=>[t]} opt=1 464s # _unrev path fast [t]# -> [t] 464s # unrev node out {* t=>[t]} 464s # unrev path out [c k {* t=>[t]}] 464s # unrev node out {c=>[c k {* t=>[t]}] d=>[d {i=>[i] k=>[k {* t=>[t]}]}]} 464s # unrev path out [b {c=>[c k {* t=>[t]}] d=>[d {i=>[i] k=>[k {* t=>[t]}]}]}] 464s # _unrev path fast [x]# -> [x] 464s # final path=[b {c=>[c k {* t=>[t]}] d=>[d {i=>[i] k=>[k {* t=>[t]}]}]} x] 464s ok 45 - bcktx bckx bdix bdktx bdkx 464s # _insert_path [g r i t] into [g a i t] 464s # at path ( a i t) 464s # at path (g i t) 464s # token r not present 464s # path=[g {a=>[a i t] r=>[r i t]}] 464s # _insert_path [w a i t] into [g {a=>[a i t] r=>[r i t]}] 464s # at path ( {r a}) 464s # token w not present 464s # path=[{g=>[g {a=>[a i t] r=>[r i t]}] w=>[w a i t]}] 464s # _insert_path [w r i t] into [{g=>[g {a=>[a i t] r=>[r i t]}] w=>[w a i t]}] 464s # at (off=0 len=1) {g=>[g {a=>[a i t] r=>[r i t]}] w=>[w a i t]} 464s # descend key=w [w a i t] 464s # at path ( a i t) 464s # at path (w i t) 464s # token r not present 464s # path=[w {a=>[a i t] r=>[r i t]}] 464s # _reduce_path 0 [{g=>[g {a=>[a i t] r=>[r i t]}] w=>[w {a=>[a i t] r=>[r i t]}]}] 464s # _reduce_node 1 in {g=>[g {a=>[a i t] r=>[r i t]}] w=>[w {a=>[a i t] r=>[r i t]}]} opt=0 464s # |_scan_node head=[g] tail={a=>[a i t] r=>[r i t]} 464s # _reduce_node 3 in {a=>[a i t] r=>[r i t]} opt=0 464s # |_scan_node push reduce (t:[i a]) 464s # |_scan_node push reduce (t:[i r]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t i a] [t i r]]} fail=[] 464s # | do [[t i a] [t i r]] 464s # _insert_path [t i r] into [t i a] 464s # at path ( i a) 464s # at path (t a) 464s # at path (t i ) 464s # token r not present 464s # path=[t i {a=>[a] r=>[r]}] 464s # | _do_reduce common=[t i] tail={a=>[a] r=>[r]} 464s # |_reduce_node 3 common=[t i] tail={a=>[a] r=>[r]} 464s # |_scan_node ++recovered common=[t i] tail={a=>[a] r=>[r]} path=[g] 464s # |_scan_node head=[w] tail={a=>[a i t] r=>[r i t]} 464s # _reduce_node 3 in {a=>[a i t] r=>[r i t]} opt=0 464s # |_scan_node push reduce (t:[i a]) 464s # |_scan_node push reduce (t:[i r]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t i a] [t i r]]} fail=[] 464s # | do [[t i a] [t i r]] 464s # _insert_path [t i r] into [t i a] 464s # at path ( i a) 464s # at path (t a) 464s # at path (t i ) 464s # token r not present 464s # path=[t i {a=>[a] r=>[r]}] 464s # | _do_reduce common=[t i] tail={a=>[a] r=>[r]} 464s # |_reduce_node 3 common=[t i] tail={a=>[a] r=>[r]} 464s # |_scan_node ++recovered common=[t i] tail={a=>[a] r=>[r]} path=[w] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t i {a=>[a] r=>[r]} g] [t i {a=>[a] r=>[r]} w]]} fail=[] 464s # | do [[t i {a=>[a] r=>[r]} g] [t i {a=>[a] r=>[r]} w]] 464s # _insert_path [t i {a=>[a] r=>[r]} w] into [t i {a=>[a] r=>[r]} g] 464s # at path ( i {a r} g) 464s # at path (t {a r} g) 464s # p0=[t i {a=>[a] r=>[r]} g] 464s # insert node({a=>[a] r=>[r]}:[w]) (key=[ar]) at path=[{a=>[a] r=>[r]} g] 464s # identical nodes [{a=>[a] r=>[r]}] 464s # insert at 3 w:[] into [g] 464s # _insert_path [w] into [g] 464s # at path ( ) 464s # token w not present 464s # path=[{g=>[g] w=>[w]}] 464s # got off=3 s=0 path_add=[{g=>[g] w=>[w]}] 464s # got final=[t i {a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s # p1=[t i {a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s # | _do_reduce common=[t i] tail=[{a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s # |_reduce_node 1 common=[t i] tail=[{a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s #| head=[t i] tail=[{a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s #| tail nr=2 t0=HASH n=2 464s #| scan k=a p=[a] 464s #| scan k=r p=[r] 464s # _reduce_path 0 out head=[t i] tail=[{a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s # final head=[t i] tail=[{a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s # unrev path in [{a=>[a] r=>[r]} {g=>[g] w=>[w]}] 464s # unrev node in {g=>[g] w=>[w]} opt=0 464s # _unrev path fast [w]# -> [w] 464s # _unrev path fast [g]# -> [g] 464s # unrev node out {g=>[g] w=>[w]} 464s # unrev node in {a=>[a] r=>[r]} opt=0 464s # _unrev path fast [a]# -> [a] 464s # _unrev path fast [r]# -> [r] 464s # unrev node out {a=>[a] r=>[r]} 464s # unrev path out [{g=>[g] w=>[w]} {a=>[a] r=>[r]}] 464s # _unrev path fast [t i]# -> [i t] 464s # final path=[{g=>[g] w=>[w]} {a=>[a] r=>[r]} i t] 464s ok 46 464s # _insert_path [g r i t] into [g a i t] 464s # at path ( a i t) 464s # at path (g i t) 464s # token r not present 464s # path=[g {a=>[a i t] r=>[r i t]}] 464s # _insert_path [l i t] into [g {a=>[a i t] r=>[r i t]}] 464s # at path ( {a r}) 464s # token l not present 464s # path=[{g=>[g {a=>[a i t] r=>[r i t]}] l=>[l i t]}] 464s # _insert_path [l i m i t] into [{g=>[g {a=>[a i t] r=>[r i t]}] l=>[l i t]}] 464s # at (off=0 len=1) {g=>[g {a=>[a i t] r=>[r i t]}] l=>[l i t]} 464s # descend key=l [l i t] 464s # at path ( i t) 464s # at path (l t) 464s # at path (l i ) 464s # token m not present 464s # path=[l i {m=>[m i t] t=>[t]}] 464s # _reduce_path 0 [{g=>[g {a=>[a i t] r=>[r i t]}] l=>[l i {m=>[m i t] t=>[t]}]}] 464s # _reduce_node 1 in {g=>[g {a=>[a i t] r=>[r i t]}] l=>[l i {m=>[m i t] t=>[t]}]} opt=0 464s # |_scan_node head=[g] tail={a=>[a i t] r=>[r i t]} 464s # _reduce_node 3 in {a=>[a i t] r=>[r i t]} opt=0 464s # |_scan_node push reduce (t:[i a]) 464s # |_scan_node push reduce (t:[i r]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t i a] [t i r]]} fail=[] 464s # | do [[t i a] [t i r]] 464s # _insert_path [t i r] into [t i a] 464s # at path ( i a) 464s # at path (t a) 464s # at path (t i ) 464s # token r not present 464s # path=[t i {a=>[a] r=>[r]}] 464s # | _do_reduce common=[t i] tail={a=>[a] r=>[r]} 464s # |_reduce_node 3 common=[t i] tail={a=>[a] r=>[r]} 464s # |_scan_node ++recovered common=[t i] tail={a=>[a] r=>[r]} path=[g] 464s # |_scan_node head=[i l] tail={m=>[m i t] t=>[t]} 464s # _reduce_node 3 in {m=>[m i t] t=>[t]} opt=0 464s # |_scan_node push reduce (t:[]) 464s # |_scan_node push reduce (t:[i m]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t] [t i m]]} fail=[] 464s # | do [[t] [t i m]] 464s # _insert_path [t i m] into [t] 464s # at path ( ) 464s # at path (t) 464s # added remaining [t {* i=>[i m]}] 464s # | _do_reduce common=[t] tail={* i=>[i m]} 464s # |_reduce_node 3 common=[t] tail={* i=>[i m]} 464s # |_scan_node ++recovered common=[t] tail={* i=>[i m]} path=[i l] 464s # | slide in h=[t] t={* i=>[i m]} p=[i l] 464s # | slide potential [i m] over [i l] 464s # | slide=tail=i 464s # | slide path [m i] 464s # | slide out h=[t i] s={* m=>[m i]} p=[l] 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t i {a=>[a] r=>[r]} g] [t i {* m=>[m i]} l]]} fail=[] 464s # | do [[t i {a=>[a] r=>[r]} g] [t i {* m=>[m i]} l]] 464s # _insert_path [t i {* m=>[m i]} l] into [t i {a=>[a] r=>[r]} g] 464s # at path ( i {a r} g) 464s # at path (t {a r} g) 464s # p0=[t i {a=>[a] r=>[r]} g] 464s # insert node({* m=>[m i]}:[l]) (key=(?:mi)?) at path=[{a=>[a] r=>[r]} g] 464s # path->node1 at [ar]/(?:mi)? {(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]} 464s # p1=[t i {(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]}] 464s # | _do_reduce common=[t i] tail={(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]} 464s # |_reduce_node 1 common=[t i] tail={(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]} 464s #| head=[t i] tail={(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]} 464s #| tail nr=1 t0=HASH n=2 464s # _reduce_path 0 out head=[t i] tail=[{(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]}] 464s # final head=[t i] tail=[{(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]}] 464s # unrev path in [{(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]}] 464s # unrev node in {(?:mi)?=>[{* m=>[m i]} l] [ar]=>[{a=>[a] r=>[r]} g]} opt=0 464s # unrev path in [{* m=>[m i]} l] 464s # unrev node in {m=>[m i]} opt=1 464s # _unrev path fast [m i]# -> [i m] 464s # unrev node out {* i=>[i m]} 464s # unrev path out [l {* i=>[i m]}] 464s # unrev path in [{a=>[a] r=>[r]} g] 464s # unrev node in {a=>[a] r=>[r]} opt=0 464s # _unrev path fast [a]# -> [a] 464s # _unrev path fast [r]# -> [r] 464s # unrev node out {a=>[a] r=>[r]} 464s # unrev path out [g {a=>[a] r=>[r]}] 464s # unrev node out {g=>[g {a=>[a] r=>[r]}] l=>[l {* i=>[i m]}]} 464s # unrev path out [{g=>[g {a=>[a] r=>[r]}] l=>[l {* i=>[i m]}]}] 464s # _unrev path fast [t i]# -> [i t] 464s # final path=[{g=>[g {a=>[a] r=>[r]}] l=>[l {* i=>[i m]}]} i t] 464s ok 47 464s # _insert_path [b r i t] into [b a i t] 464s # at path ( a i t) 464s # at path (b i t) 464s # token r not present 464s # path=[b {a=>[a i t] r=>[r i t]}] 464s # _insert_path [f r i t] into [b {a=>[a i t] r=>[r i t]}] 464s # at path ( {r a}) 464s # token f not present 464s # path=[{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t]}] 464s # _insert_path [g a i t] into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t]}] 464s # at (off=0 len=1) {b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t]} 464s # add path (g:[a i t]) into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t]}] at off=0 to end=0 464s # _insert_path [g r i t] into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g a i t]}] 464s # at (off=0 len=1) {b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g a i t]} 464s # descend key=g [g a i t] 464s # at path ( a i t) 464s # at path (g i t) 464s # token r not present 464s # path=[g {a=>[a i t] r=>[r i t]}] 464s # _insert_path [t a i t] into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}]}] 464s # at (off=0 len=1) {b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}]} 464s # add path (t:[a i t]) into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}]}] at off=0 to end=0 464s # _insert_path [w a i t] into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t]}] 464s # at (off=0 len=1) {b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t]} 464s # add path (w:[a i t]) into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t]}] at off=0 to end=0 464s # _insert_path [w r i t] into [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t] w=>[w a i t]}] 464s # at (off=0 len=1) {b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t] w=>[w a i t]} 464s # descend key=w [w a i t] 464s # at path ( a i t) 464s # at path (w i t) 464s # token r not present 464s # path=[w {a=>[a i t] r=>[r i t]}] 464s # _reduce_path 0 [{b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t] w=>[w {a=>[a i t] r=>[r i t]}]}] 464s # _reduce_node 1 in {b=>[b {a=>[a i t] r=>[r i t]}] f=>[f r i t] g=>[g {a=>[a i t] r=>[r i t]}] t=>[t a i t] w=>[w {a=>[a i t] r=>[r i t]}]} opt=0 464s # |_scan_node push reduce (t:[i r f]) 464s # |_scan_node push reduce (t:[i a t]) 464s # |_scan_node head=[b] tail={a=>[a i t] r=>[r i t]} 464s # _reduce_node 3 in {a=>[a i t] r=>[r i t]} opt=0 464s # |_scan_node push reduce (t:[i a]) 464s # |_scan_node push reduce (t:[i r]) 464s # |_scan_node counts: reduce=1 fail=0 464s # |_scan_node done opt=0 reduce={t=>[[t i a] [t i r]]} fail=[] 464s # | do [[t i a] [t i r]] 464s # _insert_path [t i r] into [t i a] 464s # at path ( i a) 464s # at path (t a) 464s # at path (t i