MAYBE Time: 0.266161 TRS: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} DP: DP: { sel#(X1, mark X2) -> sel#(X1, X2), sel#(mark X1, X2) -> sel#(X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2), active# sel(X1, X2) -> sel#(X1, active X2), active# sel(X1, X2) -> sel#(active X1, X2), active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z), active# s X -> active# X, active# s X -> s# active X, active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2), active# first(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2), active# first(X1, X2) -> first#(active X1, X2), active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z)), active# first(s X, cons(Y, Z)) -> first#(X, Z), active# from X -> active# X, active# from X -> s# X, active# from X -> cons#(X, from s X), active# from X -> from# active X, active# from X -> from# s X, active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2), active# sel1(X1, X2) -> sel1#(active X1, X2), active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z), active# sel1(0(), cons(X, Z)) -> quote# X, active# quote sel(X, Z) -> sel1#(X, Z), active# quote s X -> quote# X, active# quote s X -> s1# quote X, active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2), active# first1(X1, X2) -> first1#(active X1, X2), active# first1(s X, cons(Y, Z)) -> quote# Y, active# first1(s X, cons(Y, Z)) -> first1#(X, Z), active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z)), active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2), active# cons1(X1, X2) -> cons1#(active X1, X2), active# quote1 cons(X, Z) -> quote# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z), active# quote1 cons(X, Z) -> quote1# Z, active# quote1 first(X, Z) -> first1#(X, Z), active# s1 X -> active# X, active# s1 X -> s1# active X, active# unquote X -> active# X, active# unquote X -> unquote# active X, active# unquote s1 X -> s# unquote X, active# unquote s1 X -> unquote# X, active# unquote1 X -> active# X, active# unquote1 X -> unquote1# active X, active# unquote1 cons1(X, Z) -> unquote# X, active# unquote1 cons1(X, Z) -> unquote1# Z, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z), active# fcons(X, Z) -> cons#(X, Z), active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2), active# fcons(X1, X2) -> fcons#(active X1, X2), s# mark X -> s# X, s# ok X -> s# X, cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2), first#(X1, mark X2) -> first#(X1, X2), first#(mark X1, X2) -> first#(X1, X2), first#(ok X1, ok X2) -> first#(X1, X2), from# mark X -> from# X, from# ok X -> from# X, sel1#(X1, mark X2) -> sel1#(X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2), quote# ok X -> quote# X, first1#(X1, mark X2) -> first1#(X1, X2), first1#(mark X1, X2) -> first1#(X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2), cons1#(X1, mark X2) -> cons1#(X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2), quote1# ok X -> quote1# X, s1# mark X -> s1# X, s1# ok X -> s1# X, unquote# mark X -> unquote# X, unquote# ok X -> unquote# X, unquote1# mark X -> unquote1# X, unquote1# ok X -> unquote1# X, fcons#(X1, mark X2) -> fcons#(X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2), proper# sel(X1, X2) -> sel#(proper X1, proper X2), proper# sel(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2, proper# s X -> s# proper X, proper# s X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2), proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2), proper# first(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2, proper# from X -> from# proper X, proper# from X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2), proper# sel1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2, proper# quote X -> quote# proper X, proper# quote X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2), proper# first1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2), proper# cons1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X, proper# quote1 X -> proper# X, proper# s1 X -> s1# proper X, proper# s1 X -> proper# X, proper# unquote X -> unquote# proper X, proper# unquote X -> proper# X, proper# unquote1 X -> unquote1# proper X, proper# unquote1 X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2), proper# fcons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2, top# mark X -> proper# X, top# mark X -> top# proper X, top# ok X -> active# X, top# ok X -> top# active X} TRS: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} UR: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), a(x, y) -> x, a(x, y) -> y} EDG: { (active# unquote1 cons1(X, Z) -> unquote1# Z, unquote1# ok X -> unquote1# X) (active# unquote1 cons1(X, Z) -> unquote1# Z, unquote1# mark X -> unquote1# X) (active# cons(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# cons(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# cons(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# cons(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# cons(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# cons(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# cons(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# cons(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# cons(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# cons(X1, X2) -> active# X1, active# unquote X -> active# X) (active# cons(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# cons(X1, X2) -> active# X1, active# s1 X -> active# X) (active# cons(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# cons(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# cons(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# cons(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# cons(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# cons(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# cons(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# cons(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# cons(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# cons(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# cons(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# cons(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# cons(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# from X -> from# s X) (active# cons(X1, X2) -> active# X1, active# from X -> from# active X) (active# cons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# cons(X1, X2) -> active# X1, active# from X -> s# X) (active# cons(X1, X2) -> active# X1, active# from X -> active# X) (active# cons(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# cons(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# cons(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# s X -> s# active X) (active# cons(X1, X2) -> active# X1, active# s X -> active# X) (active# cons(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# cons(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (active# sel1(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# sel1(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# sel1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# sel1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# sel1(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# sel1(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# sel1(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# sel1(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# sel1(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# sel1(X1, X2) -> active# X1, active# unquote X -> active# X) (active# sel1(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# sel1(X1, X2) -> active# X1, active# s1 X -> active# X) (active# sel1(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# sel1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# sel1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# sel1(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# sel1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# sel1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# sel1(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# sel1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# sel1(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# sel1(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# sel1(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# from X -> from# s X) (active# sel1(X1, X2) -> active# X1, active# from X -> from# active X) (active# sel1(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# sel1(X1, X2) -> active# X1, active# from X -> s# X) (active# sel1(X1, X2) -> active# X1, active# from X -> active# X) (active# sel1(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# sel1(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# sel1(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# s X -> s# active X) (active# sel1(X1, X2) -> active# X1, active# s X -> active# X) (active# sel1(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# sel1(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# sel1(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (active# cons1(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# cons1(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# cons1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# cons1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# cons1(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# cons1(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# cons1(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# cons1(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# cons1(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# cons1(X1, X2) -> active# X1, active# unquote X -> active# X) (active# cons1(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# cons1(X1, X2) -> active# X1, active# s1 X -> active# X) (active# cons1(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# cons1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# cons1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# cons1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# cons1(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# cons1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# cons1(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# cons1(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# cons1(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# cons1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# from X -> from# s X) (active# cons1(X1, X2) -> active# X1, active# from X -> from# active X) (active# cons1(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# cons1(X1, X2) -> active# X1, active# from X -> s# X) (active# cons1(X1, X2) -> active# X1, active# from X -> active# X) (active# cons1(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# cons1(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# cons1(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# s X -> s# active X) (active# cons1(X1, X2) -> active# X1, active# s X -> active# X) (active# cons1(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# cons1(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# cons1(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (proper# sel(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# sel(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# sel(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# sel(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# sel(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# sel(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# sel(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# sel(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# sel(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# first(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# first(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# first(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# first(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# first(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# first(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# first(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# first(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# first1(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# first1(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# first1(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# first1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# first1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# first1(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# first1(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# first1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# fcons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# fcons(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (active# sel1(X1, X2) -> sel1#(active X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (active# sel1(X1, X2) -> sel1#(active X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2)) (active# sel1(X1, X2) -> sel1#(active X1, X2), sel1#(X1, mark X2) -> sel1#(X1, X2)) (active# cons1(X1, X2) -> cons1#(active X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (active# cons1(X1, X2) -> cons1#(active X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2)) (active# cons1(X1, X2) -> cons1#(active X1, X2), cons1#(X1, mark X2) -> cons1#(X1, X2)) (active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z)), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z)), cons#(mark X1, X2) -> cons#(X1, X2)) (sel#(X1, mark X2) -> sel#(X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2)) (sel#(X1, mark X2) -> sel#(X1, X2), sel#(mark X1, X2) -> sel#(X1, X2)) (sel#(X1, mark X2) -> sel#(X1, X2), sel#(X1, mark X2) -> sel#(X1, X2)) (sel#(ok X1, ok X2) -> sel#(X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2)) (sel#(ok X1, ok X2) -> sel#(X1, X2), sel#(mark X1, X2) -> sel#(X1, X2)) (sel#(ok X1, ok X2) -> sel#(X1, X2), sel#(X1, mark X2) -> sel#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (first#(mark X1, X2) -> first#(X1, X2), first#(ok X1, ok X2) -> first#(X1, X2)) (first#(mark X1, X2) -> first#(X1, X2), first#(mark X1, X2) -> first#(X1, X2)) (first#(mark X1, X2) -> first#(X1, X2), first#(X1, mark X2) -> first#(X1, X2)) (sel1#(X1, mark X2) -> sel1#(X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (sel1#(X1, mark X2) -> sel1#(X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2)) (sel1#(X1, mark X2) -> sel1#(X1, X2), sel1#(X1, mark X2) -> sel1#(X1, X2)) (sel1#(ok X1, ok X2) -> sel1#(X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (sel1#(ok X1, ok X2) -> sel1#(X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2)) (sel1#(ok X1, ok X2) -> sel1#(X1, X2), sel1#(X1, mark X2) -> sel1#(X1, X2)) (first1#(mark X1, X2) -> first1#(X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2)) (first1#(mark X1, X2) -> first1#(X1, X2), first1#(mark X1, X2) -> first1#(X1, X2)) (first1#(mark X1, X2) -> first1#(X1, X2), first1#(X1, mark X2) -> first1#(X1, X2)) (cons1#(X1, mark X2) -> cons1#(X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (cons1#(X1, mark X2) -> cons1#(X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2)) (cons1#(X1, mark X2) -> cons1#(X1, X2), cons1#(X1, mark X2) -> cons1#(X1, X2)) (cons1#(ok X1, ok X2) -> cons1#(X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (cons1#(ok X1, ok X2) -> cons1#(X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2)) (cons1#(ok X1, ok X2) -> cons1#(X1, X2), cons1#(X1, mark X2) -> cons1#(X1, X2)) (fcons#(mark X1, X2) -> fcons#(X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (fcons#(mark X1, X2) -> fcons#(X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2)) (fcons#(mark X1, X2) -> fcons#(X1, X2), fcons#(X1, mark X2) -> fcons#(X1, X2)) (active# s X -> active# X, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# s X -> active# X, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# s X -> active# X, active# fcons(X1, X2) -> active# X2) (active# s X -> active# X, active# fcons(X1, X2) -> active# X1) (active# s X -> active# X, active# fcons(X, Z) -> cons#(X, Z)) (active# s X -> active# X, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# s X -> active# X, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# s X -> active# X, active# unquote1 cons1(X, Z) -> unquote# X) (active# s X -> active# X, active# unquote1 X -> unquote1# active X) (active# s X -> active# X, active# unquote1 X -> active# X) (active# s X -> active# X, active# unquote s1 X -> unquote# X) (active# s X -> active# X, active# unquote s1 X -> s# unquote X) (active# s X -> active# X, active# unquote X -> unquote# active X) (active# s X -> active# X, active# unquote X -> active# X) (active# s X -> active# X, active# s1 X -> s1# active X) (active# s X -> active# X, active# s1 X -> active# X) (active# s X -> active# X, active# quote1 first(X, Z) -> first1#(X, Z)) (active# s X -> active# X, active# quote1 cons(X, Z) -> quote1# Z) (active# s X -> active# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# s X -> active# X, active# quote1 cons(X, Z) -> quote# X) (active# s X -> active# X, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# s X -> active# X, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# s X -> active# X, active# cons1(X1, X2) -> active# X2) (active# s X -> active# X, active# cons1(X1, X2) -> active# X1) (active# s X -> active# X, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# s X -> active# X, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# s X -> active# X, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# s X -> active# X, active# first1(X1, X2) -> first1#(active X1, X2)) (active# s X -> active# X, active# first1(X1, X2) -> first1#(X1, active X2)) (active# s X -> active# X, active# first1(X1, X2) -> active# X2) (active# s X -> active# X, active# first1(X1, X2) -> active# X1) (active# s X -> active# X, active# quote s X -> s1# quote X) (active# s X -> active# X, active# quote s X -> quote# X) (active# s X -> active# X, active# quote sel(X, Z) -> sel1#(X, Z)) (active# s X -> active# X, active# sel1(0(), cons(X, Z)) -> quote# X) (active# s X -> active# X, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# s X -> active# X, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# s X -> active# X, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# s X -> active# X, active# sel1(X1, X2) -> active# X2) (active# s X -> active# X, active# sel1(X1, X2) -> active# X1) (active# s X -> active# X, active# from X -> from# s X) (active# s X -> active# X, active# from X -> from# active X) (active# s X -> active# X, active# from X -> cons#(X, from s X)) (active# s X -> active# X, active# from X -> s# X) (active# s X -> active# X, active# from X -> active# X) (active# s X -> active# X, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# s X -> active# X, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# s X -> active# X, active# first(X1, X2) -> first#(active X1, X2)) (active# s X -> active# X, active# first(X1, X2) -> first#(X1, active X2)) (active# s X -> active# X, active# first(X1, X2) -> active# X2) (active# s X -> active# X, active# first(X1, X2) -> active# X1) (active# s X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# s X -> active# X, active# cons(X1, X2) -> active# X1) (active# s X -> active# X, active# s X -> s# active X) (active# s X -> active# X, active# s X -> active# X) (active# s X -> active# X, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# s X -> active# X, active# sel(X1, X2) -> active# X2) (active# s X -> active# X, active# sel(X1, X2) -> active# X1) (active# s X -> active# X, active# sel(X1, X2) -> sel#(active X1, X2)) (active# s X -> active# X, active# sel(X1, X2) -> sel#(X1, active X2)) (active# from X -> s# X, s# ok X -> s# X) (active# from X -> s# X, s# mark X -> s# X) (active# quote s X -> quote# X, quote# ok X -> quote# X) (active# s1 X -> active# X, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# s1 X -> active# X, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# s1 X -> active# X, active# fcons(X1, X2) -> active# X2) (active# s1 X -> active# X, active# fcons(X1, X2) -> active# X1) (active# s1 X -> active# X, active# fcons(X, Z) -> cons#(X, Z)) (active# s1 X -> active# X, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# s1 X -> active# X, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# s1 X -> active# X, active# unquote1 cons1(X, Z) -> unquote# X) (active# s1 X -> active# X, active# unquote1 X -> unquote1# active X) (active# s1 X -> active# X, active# unquote1 X -> active# X) (active# s1 X -> active# X, active# unquote s1 X -> unquote# X) (active# s1 X -> active# X, active# unquote s1 X -> s# unquote X) (active# s1 X -> active# X, active# unquote X -> unquote# active X) (active# s1 X -> active# X, active# unquote X -> active# X) (active# s1 X -> active# X, active# s1 X -> s1# active X) (active# s1 X -> active# X, active# s1 X -> active# X) (active# s1 X -> active# X, active# quote1 first(X, Z) -> first1#(X, Z)) (active# s1 X -> active# X, active# quote1 cons(X, Z) -> quote1# Z) (active# s1 X -> active# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# s1 X -> active# X, active# quote1 cons(X, Z) -> quote# X) (active# s1 X -> active# X, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# s1 X -> active# X, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# s1 X -> active# X, active# cons1(X1, X2) -> active# X2) (active# s1 X -> active# X, active# cons1(X1, X2) -> active# X1) (active# s1 X -> active# X, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# s1 X -> active# X, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# s1 X -> active# X, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# s1 X -> active# X, active# first1(X1, X2) -> first1#(active X1, X2)) (active# s1 X -> active# X, active# first1(X1, X2) -> first1#(X1, active X2)) (active# s1 X -> active# X, active# first1(X1, X2) -> active# X2) (active# s1 X -> active# X, active# first1(X1, X2) -> active# X1) (active# s1 X -> active# X, active# quote s X -> s1# quote X) (active# s1 X -> active# X, active# quote s X -> quote# X) (active# s1 X -> active# X, active# quote sel(X, Z) -> sel1#(X, Z)) (active# s1 X -> active# X, active# sel1(0(), cons(X, Z)) -> quote# X) (active# s1 X -> active# X, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# s1 X -> active# X, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# s1 X -> active# X, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# s1 X -> active# X, active# sel1(X1, X2) -> active# X2) (active# s1 X -> active# X, active# sel1(X1, X2) -> active# X1) (active# s1 X -> active# X, active# from X -> from# s X) (active# s1 X -> active# X, active# from X -> from# active X) (active# s1 X -> active# X, active# from X -> cons#(X, from s X)) (active# s1 X -> active# X, active# from X -> s# X) (active# s1 X -> active# X, active# from X -> active# X) (active# s1 X -> active# X, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# s1 X -> active# X, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# s1 X -> active# X, active# first(X1, X2) -> first#(active X1, X2)) (active# s1 X -> active# X, active# first(X1, X2) -> first#(X1, active X2)) (active# s1 X -> active# X, active# first(X1, X2) -> active# X2) (active# s1 X -> active# X, active# first(X1, X2) -> active# X1) (active# s1 X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# s1 X -> active# X, active# cons(X1, X2) -> active# X1) (active# s1 X -> active# X, active# s X -> s# active X) (active# s1 X -> active# X, active# s X -> active# X) (active# s1 X -> active# X, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# s1 X -> active# X, active# sel(X1, X2) -> active# X2) (active# s1 X -> active# X, active# sel(X1, X2) -> active# X1) (active# s1 X -> active# X, active# sel(X1, X2) -> sel#(active X1, X2)) (active# s1 X -> active# X, active# sel(X1, X2) -> sel#(X1, active X2)) (active# unquote s1 X -> unquote# X, unquote# ok X -> unquote# X) (active# unquote s1 X -> unquote# X, unquote# mark X -> unquote# X) (active# unquote1 cons1(X, Z) -> unquote# X, unquote# ok X -> unquote# X) (active# unquote1 cons1(X, Z) -> unquote# X, unquote# mark X -> unquote# X) (s# ok X -> s# X, s# ok X -> s# X) (s# ok X -> s# X, s# mark X -> s# X) (from# ok X -> from# X, from# ok X -> from# X) (from# ok X -> from# X, from# mark X -> from# X) (quote1# ok X -> quote1# X, quote1# ok X -> quote1# X) (s1# ok X -> s1# X, s1# ok X -> s1# X) (s1# ok X -> s1# X, s1# mark X -> s1# X) (unquote# ok X -> unquote# X, unquote# ok X -> unquote# X) (unquote# ok X -> unquote# X, unquote# mark X -> unquote# X) (unquote1# ok X -> unquote1# X, unquote1# ok X -> unquote1# X) (unquote1# ok X -> unquote1# X, unquote1# mark X -> unquote1# X) (proper# from X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# from X -> proper# X, proper# unquote1 X -> proper# X) (proper# from X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# from X -> proper# X, proper# unquote X -> proper# X) (proper# from X -> proper# X, proper# unquote X -> unquote# proper X) (proper# from X -> proper# X, proper# s1 X -> proper# X) (proper# from X -> proper# X, proper# s1 X -> s1# proper X) (proper# from X -> proper# X, proper# quote1 X -> proper# X) (proper# from X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# from X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# from X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# from X -> proper# X, proper# quote X -> proper# X) (proper# from X -> proper# X, proper# quote X -> quote# proper X) (proper# from X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# from X -> proper# X, proper# from X -> proper# X) (proper# from X -> proper# X, proper# from X -> from# proper X) (proper# from X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# from X -> proper# X, proper# s X -> proper# X) (proper# from X -> proper# X, proper# s X -> s# proper X) (proper# from X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# unquote1 X -> proper# X) (proper# quote1 X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# quote1 X -> proper# X, proper# unquote X -> proper# X) (proper# quote1 X -> proper# X, proper# unquote X -> unquote# proper X) (proper# quote1 X -> proper# X, proper# s1 X -> proper# X) (proper# quote1 X -> proper# X, proper# s1 X -> s1# proper X) (proper# quote1 X -> proper# X, proper# quote1 X -> proper# X) (proper# quote1 X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# quote1 X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# quote X -> proper# X) (proper# quote1 X -> proper# X, proper# quote X -> quote# proper X) (proper# quote1 X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# from X -> proper# X) (proper# quote1 X -> proper# X, proper# from X -> from# proper X) (proper# quote1 X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# quote1 X -> proper# X, proper# s X -> proper# X) (proper# quote1 X -> proper# X, proper# s X -> s# proper X) (proper# quote1 X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# quote1 X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# quote1 X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# unquote1 X -> proper# X) (proper# unquote X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# unquote X -> proper# X, proper# unquote X -> proper# X) (proper# unquote X -> proper# X, proper# unquote X -> unquote# proper X) (proper# unquote X -> proper# X, proper# s1 X -> proper# X) (proper# unquote X -> proper# X, proper# s1 X -> s1# proper X) (proper# unquote X -> proper# X, proper# quote1 X -> proper# X) (proper# unquote X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# unquote X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# quote X -> proper# X) (proper# unquote X -> proper# X, proper# quote X -> quote# proper X) (proper# unquote X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# from X -> proper# X) (proper# unquote X -> proper# X, proper# from X -> from# proper X) (proper# unquote X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# unquote X -> proper# X, proper# s X -> proper# X) (proper# unquote X -> proper# X, proper# s X -> s# proper X) (proper# unquote X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# unquote X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# unquote X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (top# mark X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# unquote1 X -> proper# X) (top# mark X -> proper# X, proper# unquote1 X -> unquote1# proper X) (top# mark X -> proper# X, proper# unquote X -> proper# X) (top# mark X -> proper# X, proper# unquote X -> unquote# proper X) (top# mark X -> proper# X, proper# s1 X -> proper# X) (top# mark X -> proper# X, proper# s1 X -> s1# proper X) (top# mark X -> proper# X, proper# quote1 X -> proper# X) (top# mark X -> proper# X, proper# quote1 X -> quote1# proper X) (top# mark X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (top# mark X -> proper# X, proper# first1(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# first1(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (top# mark X -> proper# X, proper# quote X -> proper# X) (top# mark X -> proper# X, proper# quote X -> quote# proper X) (top# mark X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (top# mark X -> proper# X, proper# from X -> proper# X) (top# mark X -> proper# X, proper# from X -> from# proper X) (top# mark X -> proper# X, proper# first(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# first(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# s X -> proper# X) (top# mark X -> proper# X, proper# s X -> s# proper X) (top# mark X -> proper# X, proper# sel(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# sel(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (active# sel(s X, cons(Y, Z)) -> sel#(X, Z), sel#(ok X1, ok X2) -> sel#(X1, X2)) (active# sel(s X, cons(Y, Z)) -> sel#(X, Z), sel#(mark X1, X2) -> sel#(X1, X2)) (active# sel(s X, cons(Y, Z)) -> sel#(X, Z), sel#(X1, mark X2) -> sel#(X1, X2)) (active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z), sel1#(mark X1, X2) -> sel1#(X1, X2)) (active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z), sel1#(X1, mark X2) -> sel1#(X1, X2)) (active# first1(s X, cons(Y, Z)) -> first1#(X, Z), first1#(ok X1, ok X2) -> first1#(X1, X2)) (active# first1(s X, cons(Y, Z)) -> first1#(X, Z), first1#(mark X1, X2) -> first1#(X1, X2)) (active# first1(s X, cons(Y, Z)) -> first1#(X, Z), first1#(X1, mark X2) -> first1#(X1, X2)) (active# fcons(X, Z) -> cons#(X, Z), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# fcons(X, Z) -> cons#(X, Z), cons#(mark X1, X2) -> cons#(X1, X2)) (active# s X -> s# active X, s# ok X -> s# X) (active# s X -> s# active X, s# mark X -> s# X) (active# from X -> from# s X, from# ok X -> from# X) (active# from X -> from# s X, from# mark X -> from# X) (active# s1 X -> s1# active X, s1# ok X -> s1# X) (active# s1 X -> s1# active X, s1# mark X -> s1# X) (active# unquote s1 X -> s# unquote X, s# ok X -> s# X) (active# unquote s1 X -> s# unquote X, s# mark X -> s# X) (proper# s X -> s# proper X, s# ok X -> s# X) (proper# s X -> s# proper X, s# mark X -> s# X) (proper# quote X -> quote# proper X, quote# ok X -> quote# X) (proper# s1 X -> s1# proper X, s1# ok X -> s1# X) (proper# s1 X -> s1# proper X, s1# mark X -> s1# X) (proper# unquote1 X -> unquote1# proper X, unquote1# ok X -> unquote1# X) (proper# unquote1 X -> unquote1# proper X, unquote1# mark X -> unquote1# X) (top# ok X -> top# active X, top# ok X -> top# active X) (top# ok X -> top# active X, top# ok X -> active# X) (top# ok X -> top# active X, top# mark X -> top# proper X) (top# ok X -> top# active X, top# mark X -> proper# X) (active# sel(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# sel(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# fcons(X, Z) -> cons#(X, Z)) (active# sel(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# sel(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# sel(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote# X) (active# sel(X1, X2) -> active# X2, active# unquote1 X -> unquote1# active X) (active# sel(X1, X2) -> active# X2, active# unquote1 X -> active# X) (active# sel(X1, X2) -> active# X2, active# unquote s1 X -> unquote# X) (active# sel(X1, X2) -> active# X2, active# unquote s1 X -> s# unquote X) (active# sel(X1, X2) -> active# X2, active# unquote X -> unquote# active X) (active# sel(X1, X2) -> active# X2, active# unquote X -> active# X) (active# sel(X1, X2) -> active# X2, active# s1 X -> s1# active X) (active# sel(X1, X2) -> active# X2, active# s1 X -> active# X) (active# sel(X1, X2) -> active# X2, active# quote1 first(X, Z) -> first1#(X, Z)) (active# sel(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote1# Z) (active# sel(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# sel(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote# X) (active# sel(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# sel(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# sel(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# sel(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# sel(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2)) (active# sel(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# quote s X -> s1# quote X) (active# sel(X1, X2) -> active# X2, active# quote s X -> quote# X) (active# sel(X1, X2) -> active# X2, active# quote sel(X, Z) -> sel1#(X, Z)) (active# sel(X1, X2) -> active# X2, active# sel1(0(), cons(X, Z)) -> quote# X) (active# sel(X1, X2) -> active# X2, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# sel(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# sel(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# from X -> from# s X) (active# sel(X1, X2) -> active# X2, active# from X -> from# active X) (active# sel(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# sel(X1, X2) -> active# X2, active# from X -> s# X) (active# sel(X1, X2) -> active# X2, active# from X -> active# X) (active# sel(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# sel(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# sel(X1, X2) -> active# X2, active# first(X1, X2) -> first#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2)) (active# sel(X1, X2) -> active# X2, active# first(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X2, active# first(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# s X -> s# active X) (active# sel(X1, X2) -> active# X2, active# s X -> active# X) (active# sel(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# sel(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(active X1, X2)) (active# sel(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(X1, active X2)) (active# sel1(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# sel1(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# fcons(X, Z) -> cons#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# sel1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# sel1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote# X) (active# sel1(X1, X2) -> active# X2, active# unquote1 X -> unquote1# active X) (active# sel1(X1, X2) -> active# X2, active# unquote1 X -> active# X) (active# sel1(X1, X2) -> active# X2, active# unquote s1 X -> unquote# X) (active# sel1(X1, X2) -> active# X2, active# unquote s1 X -> s# unquote X) (active# sel1(X1, X2) -> active# X2, active# unquote X -> unquote# active X) (active# sel1(X1, X2) -> active# X2, active# unquote X -> active# X) (active# sel1(X1, X2) -> active# X2, active# s1 X -> s1# active X) (active# sel1(X1, X2) -> active# X2, active# s1 X -> active# X) (active# sel1(X1, X2) -> active# X2, active# quote1 first(X, Z) -> first1#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote1# Z) (active# sel1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# sel1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote# X) (active# sel1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# sel1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# sel1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# sel1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2)) (active# sel1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# quote s X -> s1# quote X) (active# sel1(X1, X2) -> active# X2, active# quote s X -> quote# X) (active# sel1(X1, X2) -> active# X2, active# quote sel(X, Z) -> sel1#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# sel1(0(), cons(X, Z)) -> quote# X) (active# sel1(X1, X2) -> active# X2, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# sel1(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# from X -> from# s X) (active# sel1(X1, X2) -> active# X2, active# from X -> from# active X) (active# sel1(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# sel1(X1, X2) -> active# X2, active# from X -> s# X) (active# sel1(X1, X2) -> active# X2, active# from X -> active# X) (active# sel1(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# sel1(X1, X2) -> active# X2, active# first(X1, X2) -> first#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2)) (active# sel1(X1, X2) -> active# X2, active# first(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X2, active# first(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# s X -> s# active X) (active# sel1(X1, X2) -> active# X2, active# s X -> active# X) (active# sel1(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# sel1(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X2) (active# sel1(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X1) (active# sel1(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(active X1, X2)) (active# sel1(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(X1, active X2)) (active# cons1(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# cons1(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# fcons(X, Z) -> cons#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# cons1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# cons1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote# X) (active# cons1(X1, X2) -> active# X2, active# unquote1 X -> unquote1# active X) (active# cons1(X1, X2) -> active# X2, active# unquote1 X -> active# X) (active# cons1(X1, X2) -> active# X2, active# unquote s1 X -> unquote# X) (active# cons1(X1, X2) -> active# X2, active# unquote s1 X -> s# unquote X) (active# cons1(X1, X2) -> active# X2, active# unquote X -> unquote# active X) (active# cons1(X1, X2) -> active# X2, active# unquote X -> active# X) (active# cons1(X1, X2) -> active# X2, active# s1 X -> s1# active X) (active# cons1(X1, X2) -> active# X2, active# s1 X -> active# X) (active# cons1(X1, X2) -> active# X2, active# quote1 first(X, Z) -> first1#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote1# Z) (active# cons1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# cons1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote# X) (active# cons1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# cons1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# cons1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# cons1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2)) (active# cons1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# quote s X -> s1# quote X) (active# cons1(X1, X2) -> active# X2, active# quote s X -> quote# X) (active# cons1(X1, X2) -> active# X2, active# quote sel(X, Z) -> sel1#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# sel1(0(), cons(X, Z)) -> quote# X) (active# cons1(X1, X2) -> active# X2, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# cons1(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# from X -> from# s X) (active# cons1(X1, X2) -> active# X2, active# from X -> from# active X) (active# cons1(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# cons1(X1, X2) -> active# X2, active# from X -> s# X) (active# cons1(X1, X2) -> active# X2, active# from X -> active# X) (active# cons1(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# cons1(X1, X2) -> active# X2, active# first(X1, X2) -> first#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2)) (active# cons1(X1, X2) -> active# X2, active# first(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X2, active# first(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# s X -> s# active X) (active# cons1(X1, X2) -> active# X2, active# s X -> active# X) (active# cons1(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# cons1(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X2) (active# cons1(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X1) (active# cons1(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(active X1, X2)) (active# cons1(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(X1, active X2)) (proper# sel(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# sel(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# sel(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# sel(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# sel(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# sel(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# sel(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# sel(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# sel(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# sel(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# sel(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# sel(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# first(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# first(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# first(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# first(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# first(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# first(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# first(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# first(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# first(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# first(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# first(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# first1(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# first1(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# first1(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# first1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# first1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# first1(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# first1(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# first1(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# first1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# first1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# first1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# fcons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# fcons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# fcons(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# fcons(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# fcons(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (active# first(X1, X2) -> first#(X1, active X2), first#(ok X1, ok X2) -> first#(X1, X2)) (active# first(X1, X2) -> first#(X1, active X2), first#(mark X1, X2) -> first#(X1, X2)) (active# first(X1, X2) -> first#(X1, active X2), first#(X1, mark X2) -> first#(X1, X2)) (active# first1(X1, X2) -> first1#(X1, active X2), first1#(ok X1, ok X2) -> first1#(X1, X2)) (active# first1(X1, X2) -> first1#(X1, active X2), first1#(mark X1, X2) -> first1#(X1, X2)) (active# first1(X1, X2) -> first1#(X1, active X2), first1#(X1, mark X2) -> first1#(X1, X2)) (active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z), cons1#(mark X1, X2) -> cons1#(X1, X2)) (active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z), cons1#(X1, mark X2) -> cons1#(X1, X2)) (active# fcons(X1, X2) -> fcons#(X1, active X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (active# fcons(X1, X2) -> fcons#(X1, active X2), fcons#(mark X1, X2) -> fcons#(X1, X2)) (active# fcons(X1, X2) -> fcons#(X1, active X2), fcons#(X1, mark X2) -> fcons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(mark X1, X2) -> cons#(X1, X2)) (proper# sel1(X1, X2) -> sel1#(proper X1, proper X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (proper# sel1(X1, X2) -> sel1#(proper X1, proper X2), sel1#(mark X1, X2) -> sel1#(X1, X2)) (proper# sel1(X1, X2) -> sel1#(proper X1, proper X2), sel1#(X1, mark X2) -> sel1#(X1, X2)) (proper# cons1(X1, X2) -> cons1#(proper X1, proper X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (proper# cons1(X1, X2) -> cons1#(proper X1, proper X2), cons1#(mark X1, X2) -> cons1#(X1, X2)) (proper# cons1(X1, X2) -> cons1#(proper X1, proper X2), cons1#(X1, mark X2) -> cons1#(X1, X2)) (proper# fcons(X1, X2) -> fcons#(proper X1, proper X2), fcons#(X1, mark X2) -> fcons#(X1, X2)) (proper# fcons(X1, X2) -> fcons#(proper X1, proper X2), fcons#(mark X1, X2) -> fcons#(X1, X2)) (proper# fcons(X1, X2) -> fcons#(proper X1, proper X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (proper# first1(X1, X2) -> first1#(proper X1, proper X2), first1#(X1, mark X2) -> first1#(X1, X2)) (proper# first1(X1, X2) -> first1#(proper X1, proper X2), first1#(mark X1, X2) -> first1#(X1, X2)) (proper# first1(X1, X2) -> first1#(proper X1, proper X2), first1#(ok X1, ok X2) -> first1#(X1, X2)) (proper# first(X1, X2) -> first#(proper X1, proper X2), first#(X1, mark X2) -> first#(X1, X2)) (proper# first(X1, X2) -> first#(proper X1, proper X2), first#(mark X1, X2) -> first#(X1, X2)) (proper# first(X1, X2) -> first#(proper X1, proper X2), first#(ok X1, ok X2) -> first#(X1, X2)) (proper# sel(X1, X2) -> sel#(proper X1, proper X2), sel#(X1, mark X2) -> sel#(X1, X2)) (proper# sel(X1, X2) -> sel#(proper X1, proper X2), sel#(mark X1, X2) -> sel#(X1, X2)) (proper# sel(X1, X2) -> sel#(proper X1, proper X2), sel#(ok X1, ok X2) -> sel#(X1, X2)) (active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z), fcons#(X1, mark X2) -> fcons#(X1, X2)) (active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z), fcons#(mark X1, X2) -> fcons#(X1, X2)) (active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (active# cons1(X1, X2) -> cons1#(X1, active X2), cons1#(X1, mark X2) -> cons1#(X1, X2)) (active# cons1(X1, X2) -> cons1#(X1, active X2), cons1#(mark X1, X2) -> cons1#(X1, X2)) (active# cons1(X1, X2) -> cons1#(X1, active X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (active# sel1(X1, X2) -> sel1#(X1, active X2), sel1#(X1, mark X2) -> sel1#(X1, X2)) (active# sel1(X1, X2) -> sel1#(X1, active X2), sel1#(mark X1, X2) -> sel1#(X1, X2)) (active# sel1(X1, X2) -> sel1#(X1, active X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (active# sel(X1, X2) -> sel#(X1, active X2), sel#(X1, mark X2) -> sel#(X1, X2)) (active# sel(X1, X2) -> sel#(X1, active X2), sel#(mark X1, X2) -> sel#(X1, X2)) (active# sel(X1, X2) -> sel#(X1, active X2), sel#(ok X1, ok X2) -> sel#(X1, X2)) (proper# cons1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# cons1(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# cons1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# sel1(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# sel1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# sel(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# sel1(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# quote X -> quote# proper X) (proper# cons(X1, X2) -> proper# X2, proper# quote X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# first1(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# quote1 X -> quote1# proper X) (proper# cons(X1, X2) -> proper# X2, proper# quote1 X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# s1 X -> s1# proper X) (proper# cons(X1, X2) -> proper# X2, proper# s1 X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# unquote X -> unquote# proper X) (proper# cons(X1, X2) -> proper# X2, proper# unquote X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# unquote1 X -> unquote1# proper X) (proper# cons(X1, X2) -> proper# X2, proper# unquote1 X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# fcons(X1, X2) -> proper# X2) (active# fcons(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(X1, active X2)) (active# fcons(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(active X1, X2)) (active# fcons(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# s X -> active# X) (active# fcons(X1, X2) -> active# X2, active# s X -> s# active X) (active# fcons(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# fcons(X1, X2) -> active# X2, active# first(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# first(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2)) (active# fcons(X1, X2) -> active# X2, active# first(X1, X2) -> first#(active X1, X2)) (active# fcons(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# fcons(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# from X -> active# X) (active# fcons(X1, X2) -> active# X2, active# from X -> s# X) (active# fcons(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# fcons(X1, X2) -> active# X2, active# from X -> from# active X) (active# fcons(X1, X2) -> active# X2, active# from X -> from# s X) (active# fcons(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# fcons(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# fcons(X1, X2) -> active# X2, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# sel1(0(), cons(X, Z)) -> quote# X) (active# fcons(X1, X2) -> active# X2, active# quote sel(X, Z) -> sel1#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# quote s X -> quote# X) (active# fcons(X1, X2) -> active# X2, active# quote s X -> s1# quote X) (active# fcons(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2)) (active# fcons(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(active X1, X2)) (active# fcons(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# fcons(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# fcons(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# fcons(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# fcons(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote# X) (active# fcons(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# fcons(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote1# Z) (active# fcons(X1, X2) -> active# X2, active# quote1 first(X, Z) -> first1#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# s1 X -> active# X) (active# fcons(X1, X2) -> active# X2, active# s1 X -> s1# active X) (active# fcons(X1, X2) -> active# X2, active# unquote X -> active# X) (active# fcons(X1, X2) -> active# X2, active# unquote X -> unquote# active X) (active# fcons(X1, X2) -> active# X2, active# unquote s1 X -> s# unquote X) (active# fcons(X1, X2) -> active# X2, active# unquote s1 X -> unquote# X) (active# fcons(X1, X2) -> active# X2, active# unquote1 X -> active# X) (active# fcons(X1, X2) -> active# X2, active# unquote1 X -> unquote1# active X) (active# fcons(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote# X) (active# fcons(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# fcons(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# fcons(X1, X2) -> active# X2, active# fcons(X, Z) -> cons#(X, Z)) (active# fcons(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# fcons(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(X1, active X2)) (active# first1(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# first1(X1, X2) -> active# X2, active# s X -> active# X) (active# first1(X1, X2) -> active# X2, active# s X -> s# active X) (active# first1(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# first(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# first(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2)) (active# first1(X1, X2) -> active# X2, active# first(X1, X2) -> first#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# first1(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# first1(X1, X2) -> active# X2, active# from X -> active# X) (active# first1(X1, X2) -> active# X2, active# from X -> s# X) (active# first1(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# first1(X1, X2) -> active# X2, active# from X -> from# active X) (active# first1(X1, X2) -> active# X2, active# from X -> from# s X) (active# first1(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# first1(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# first1(X1, X2) -> active# X2, active# sel1(0(), cons(X, Z)) -> quote# X) (active# first1(X1, X2) -> active# X2, active# quote sel(X, Z) -> sel1#(X, Z)) (active# first1(X1, X2) -> active# X2, active# quote s X -> quote# X) (active# first1(X1, X2) -> active# X2, active# quote s X -> s1# quote X) (active# first1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2)) (active# first1(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# first1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# first1(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# first1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# first1(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# first1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote# X) (active# first1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# first1(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote1# Z) (active# first1(X1, X2) -> active# X2, active# quote1 first(X, Z) -> first1#(X, Z)) (active# first1(X1, X2) -> active# X2, active# s1 X -> active# X) (active# first1(X1, X2) -> active# X2, active# s1 X -> s1# active X) (active# first1(X1, X2) -> active# X2, active# unquote X -> active# X) (active# first1(X1, X2) -> active# X2, active# unquote X -> unquote# active X) (active# first1(X1, X2) -> active# X2, active# unquote s1 X -> s# unquote X) (active# first1(X1, X2) -> active# X2, active# unquote s1 X -> unquote# X) (active# first1(X1, X2) -> active# X2, active# unquote1 X -> active# X) (active# first1(X1, X2) -> active# X2, active# unquote1 X -> unquote1# active X) (active# first1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote# X) (active# first1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# first1(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# first1(X1, X2) -> active# X2, active# fcons(X, Z) -> cons#(X, Z)) (active# first1(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# first1(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(X1, active X2)) (active# first(X1, X2) -> active# X2, active# sel(X1, X2) -> sel#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# sel(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X2, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# first(X1, X2) -> active# X2, active# s X -> active# X) (active# first(X1, X2) -> active# X2, active# s X -> s# active X) (active# first(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# first(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# first(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X2, active# first(X1, X2) -> first#(X1, active X2)) (active# first(X1, X2) -> active# X2, active# first(X1, X2) -> first#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# first(X1, X2) -> active# X2, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# first(X1, X2) -> active# X2, active# from X -> active# X) (active# first(X1, X2) -> active# X2, active# from X -> s# X) (active# first(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# first(X1, X2) -> active# X2, active# from X -> from# active X) (active# first(X1, X2) -> active# X2, active# from X -> from# s X) (active# first(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# sel1(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# first(X1, X2) -> active# X2, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# first(X1, X2) -> active# X2, active# sel1(0(), cons(X, Z)) -> quote# X) (active# first(X1, X2) -> active# X2, active# quote sel(X, Z) -> sel1#(X, Z)) (active# first(X1, X2) -> active# X2, active# quote s X -> quote# X) (active# first(X1, X2) -> active# X2, active# quote s X -> s1# quote X) (active# first(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(X1, active X2)) (active# first(X1, X2) -> active# X2, active# first1(X1, X2) -> first1#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# first(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# first(X1, X2) -> active# X2, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# first(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# first(X1, X2) -> active# X2, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# first(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote# X) (active# first(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# first(X1, X2) -> active# X2, active# quote1 cons(X, Z) -> quote1# Z) (active# first(X1, X2) -> active# X2, active# quote1 first(X, Z) -> first1#(X, Z)) (active# first(X1, X2) -> active# X2, active# s1 X -> active# X) (active# first(X1, X2) -> active# X2, active# s1 X -> s1# active X) (active# first(X1, X2) -> active# X2, active# unquote X -> active# X) (active# first(X1, X2) -> active# X2, active# unquote X -> unquote# active X) (active# first(X1, X2) -> active# X2, active# unquote s1 X -> s# unquote X) (active# first(X1, X2) -> active# X2, active# unquote s1 X -> unquote# X) (active# first(X1, X2) -> active# X2, active# unquote1 X -> active# X) (active# first(X1, X2) -> active# X2, active# unquote1 X -> unquote1# active X) (active# first(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote# X) (active# first(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# first(X1, X2) -> active# X2, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# first(X1, X2) -> active# X2, active# fcons(X, Z) -> cons#(X, Z)) (active# first(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X2, active# fcons(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# first(X1, X2) -> active# X2, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# from X -> cons#(X, from s X), cons#(mark X1, X2) -> cons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(ok X1, ok X2) -> cons#(X1, X2)) (top# mark X -> top# proper X, top# mark X -> proper# X) (top# mark X -> top# proper X, top# mark X -> top# proper X) (top# mark X -> top# proper X, top# ok X -> active# X) (top# mark X -> top# proper X, top# ok X -> top# active X) (proper# unquote X -> unquote# proper X, unquote# mark X -> unquote# X) (proper# unquote X -> unquote# proper X, unquote# ok X -> unquote# X) (proper# quote1 X -> quote1# proper X, quote1# ok X -> quote1# X) (proper# from X -> from# proper X, from# mark X -> from# X) (proper# from X -> from# proper X, from# ok X -> from# X) (active# unquote1 X -> unquote1# active X, unquote1# mark X -> unquote1# X) (active# unquote1 X -> unquote1# active X, unquote1# ok X -> unquote1# X) (active# unquote X -> unquote# active X, unquote# mark X -> unquote# X) (active# unquote X -> unquote# active X, unquote# ok X -> unquote# X) (active# quote s X -> s1# quote X, s1# mark X -> s1# X) (active# quote s X -> s1# quote X, s1# ok X -> s1# X) (active# from X -> from# active X, from# mark X -> from# X) (active# from X -> from# active X, from# ok X -> from# X) (active# first1(s X, cons(Y, Z)) -> quote# Y, quote# ok X -> quote# X) (active# quote1 first(X, Z) -> first1#(X, Z), first1#(X1, mark X2) -> first1#(X1, X2)) (active# quote1 first(X, Z) -> first1#(X, Z), first1#(mark X1, X2) -> first1#(X1, X2)) (active# quote1 first(X, Z) -> first1#(X, Z), first1#(ok X1, ok X2) -> first1#(X1, X2)) (active# quote sel(X, Z) -> sel1#(X, Z), sel1#(X1, mark X2) -> sel1#(X1, X2)) (active# quote sel(X, Z) -> sel1#(X, Z), sel1#(mark X1, X2) -> sel1#(X1, X2)) (active# quote sel(X, Z) -> sel1#(X, Z), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (active# first(s X, cons(Y, Z)) -> first#(X, Z), first#(X1, mark X2) -> first#(X1, X2)) (active# first(s X, cons(Y, Z)) -> first#(X, Z), first#(mark X1, X2) -> first#(X1, X2)) (active# first(s X, cons(Y, Z)) -> first#(X, Z), first#(ok X1, ok X2) -> first#(X1, X2)) (top# ok X -> active# X, active# sel(X1, X2) -> sel#(X1, active X2)) (top# ok X -> active# X, active# sel(X1, X2) -> sel#(active X1, X2)) (top# ok X -> active# X, active# sel(X1, X2) -> active# X1) (top# ok X -> active# X, active# sel(X1, X2) -> active# X2) (top# ok X -> active# X, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (top# ok X -> active# X, active# s X -> active# X) (top# ok X -> active# X, active# s X -> s# active X) (top# ok X -> active# X, active# cons(X1, X2) -> active# X1) (top# ok X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (top# ok X -> active# X, active# first(X1, X2) -> active# X1) (top# ok X -> active# X, active# first(X1, X2) -> active# X2) (top# ok X -> active# X, active# first(X1, X2) -> first#(X1, active X2)) (top# ok X -> active# X, active# first(X1, X2) -> first#(active X1, X2)) (top# ok X -> active# X, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (top# ok X -> active# X, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (top# ok X -> active# X, active# from X -> active# X) (top# ok X -> active# X, active# from X -> s# X) (top# ok X -> active# X, active# from X -> cons#(X, from s X)) (top# ok X -> active# X, active# from X -> from# active X) (top# ok X -> active# X, active# from X -> from# s X) (top# ok X -> active# X, active# sel1(X1, X2) -> active# X1) (top# ok X -> active# X, active# sel1(X1, X2) -> active# X2) (top# ok X -> active# X, active# sel1(X1, X2) -> sel1#(X1, active X2)) (top# ok X -> active# X, active# sel1(X1, X2) -> sel1#(active X1, X2)) (top# ok X -> active# X, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (top# ok X -> active# X, active# sel1(0(), cons(X, Z)) -> quote# X) (top# ok X -> active# X, active# quote sel(X, Z) -> sel1#(X, Z)) (top# ok X -> active# X, active# quote s X -> quote# X) (top# ok X -> active# X, active# quote s X -> s1# quote X) (top# ok X -> active# X, active# first1(X1, X2) -> active# X1) (top# ok X -> active# X, active# first1(X1, X2) -> active# X2) (top# ok X -> active# X, active# first1(X1, X2) -> first1#(X1, active X2)) (top# ok X -> active# X, active# first1(X1, X2) -> first1#(active X1, X2)) (top# ok X -> active# X, active# first1(s X, cons(Y, Z)) -> quote# Y) (top# ok X -> active# X, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (top# ok X -> active# X, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (top# ok X -> active# X, active# cons1(X1, X2) -> active# X1) (top# ok X -> active# X, active# cons1(X1, X2) -> active# X2) (top# ok X -> active# X, active# cons1(X1, X2) -> cons1#(X1, active X2)) (top# ok X -> active# X, active# cons1(X1, X2) -> cons1#(active X1, X2)) (top# ok X -> active# X, active# quote1 cons(X, Z) -> quote# X) (top# ok X -> active# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (top# ok X -> active# X, active# quote1 cons(X, Z) -> quote1# Z) (top# ok X -> active# X, active# quote1 first(X, Z) -> first1#(X, Z)) (top# ok X -> active# X, active# s1 X -> active# X) (top# ok X -> active# X, active# s1 X -> s1# active X) (top# ok X -> active# X, active# unquote X -> active# X) (top# ok X -> active# X, active# unquote X -> unquote# active X) (top# ok X -> active# X, active# unquote s1 X -> s# unquote X) (top# ok X -> active# X, active# unquote s1 X -> unquote# X) (top# ok X -> active# X, active# unquote1 X -> active# X) (top# ok X -> active# X, active# unquote1 X -> unquote1# active X) (top# ok X -> active# X, active# unquote1 cons1(X, Z) -> unquote# X) (top# ok X -> active# X, active# unquote1 cons1(X, Z) -> unquote1# Z) (top# ok X -> active# X, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (top# ok X -> active# X, active# fcons(X, Z) -> cons#(X, Z)) (top# ok X -> active# X, active# fcons(X1, X2) -> active# X1) (top# ok X -> active# X, active# fcons(X1, X2) -> active# X2) (top# ok X -> active# X, active# fcons(X1, X2) -> fcons#(X1, active X2)) (top# ok X -> active# X, active# fcons(X1, X2) -> fcons#(active X1, X2)) (proper# unquote1 X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# unquote1 X -> proper# X, proper# s X -> s# proper X) (proper# unquote1 X -> proper# X, proper# s X -> proper# X) (proper# unquote1 X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# unquote1 X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# unquote1 X -> proper# X, proper# from X -> from# proper X) (proper# unquote1 X -> proper# X, proper# from X -> proper# X) (proper# unquote1 X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# unquote1 X -> proper# X, proper# quote X -> quote# proper X) (proper# unquote1 X -> proper# X, proper# quote X -> proper# X) (proper# unquote1 X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# unquote1 X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# unquote1 X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# unquote1 X -> proper# X, proper# quote1 X -> proper# X) (proper# unquote1 X -> proper# X, proper# s1 X -> s1# proper X) (proper# unquote1 X -> proper# X, proper# s1 X -> proper# X) (proper# unquote1 X -> proper# X, proper# unquote X -> unquote# proper X) (proper# unquote1 X -> proper# X, proper# unquote X -> proper# X) (proper# unquote1 X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# unquote1 X -> proper# X, proper# unquote1 X -> proper# X) (proper# unquote1 X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# unquote1 X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# unquote1 X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# s X -> s# proper X) (proper# s1 X -> proper# X, proper# s X -> proper# X) (proper# s1 X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# from X -> from# proper X) (proper# s1 X -> proper# X, proper# from X -> proper# X) (proper# s1 X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# quote X -> quote# proper X) (proper# s1 X -> proper# X, proper# quote X -> proper# X) (proper# s1 X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# s1 X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# s1 X -> proper# X, proper# quote1 X -> proper# X) (proper# s1 X -> proper# X, proper# s1 X -> s1# proper X) (proper# s1 X -> proper# X, proper# s1 X -> proper# X) (proper# s1 X -> proper# X, proper# unquote X -> unquote# proper X) (proper# s1 X -> proper# X, proper# unquote X -> proper# X) (proper# s1 X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# s1 X -> proper# X, proper# unquote1 X -> proper# X) (proper# s1 X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# s1 X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# s1 X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# s X -> s# proper X) (proper# quote X -> proper# X, proper# s X -> proper# X) (proper# quote X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# from X -> from# proper X) (proper# quote X -> proper# X, proper# from X -> proper# X) (proper# quote X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# quote X -> quote# proper X) (proper# quote X -> proper# X, proper# quote X -> proper# X) (proper# quote X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# quote X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# quote X -> proper# X, proper# quote1 X -> proper# X) (proper# quote X -> proper# X, proper# s1 X -> s1# proper X) (proper# quote X -> proper# X, proper# s1 X -> proper# X) (proper# quote X -> proper# X, proper# unquote X -> unquote# proper X) (proper# quote X -> proper# X, proper# unquote X -> proper# X) (proper# quote X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# quote X -> proper# X, proper# unquote1 X -> proper# X) (proper# quote X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# quote X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# quote X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# s X -> proper# X, proper# sel(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# sel(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# s X -> s# proper X) (proper# s X -> proper# X, proper# s X -> proper# X) (proper# s X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# s X -> proper# X, proper# first(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# first(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# from X -> from# proper X) (proper# s X -> proper# X, proper# from X -> proper# X) (proper# s X -> proper# X, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# s X -> proper# X, proper# sel1(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# sel1(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# quote X -> quote# proper X) (proper# s X -> proper# X, proper# quote X -> proper# X) (proper# s X -> proper# X, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# s X -> proper# X, proper# first1(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# first1(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# s X -> proper# X, proper# cons1(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# cons1(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# quote1 X -> quote1# proper X) (proper# s X -> proper# X, proper# quote1 X -> proper# X) (proper# s X -> proper# X, proper# s1 X -> s1# proper X) (proper# s X -> proper# X, proper# s1 X -> proper# X) (proper# s X -> proper# X, proper# unquote X -> unquote# proper X) (proper# s X -> proper# X, proper# unquote X -> proper# X) (proper# s X -> proper# X, proper# unquote1 X -> unquote1# proper X) (proper# s X -> proper# X, proper# unquote1 X -> proper# X) (proper# s X -> proper# X, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# fcons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# fcons(X1, X2) -> proper# X2) (unquote1# mark X -> unquote1# X, unquote1# mark X -> unquote1# X) (unquote1# mark X -> unquote1# X, unquote1# ok X -> unquote1# X) (unquote# mark X -> unquote# X, unquote# mark X -> unquote# X) (unquote# mark X -> unquote# X, unquote# ok X -> unquote# X) (s1# mark X -> s1# X, s1# mark X -> s1# X) (s1# mark X -> s1# X, s1# ok X -> s1# X) (quote# ok X -> quote# X, quote# ok X -> quote# X) (from# mark X -> from# X, from# mark X -> from# X) (from# mark X -> from# X, from# ok X -> from# X) (s# mark X -> s# X, s# mark X -> s# X) (s# mark X -> s# X, s# ok X -> s# X) (active# unquote1 X -> active# X, active# sel(X1, X2) -> sel#(X1, active X2)) (active# unquote1 X -> active# X, active# sel(X1, X2) -> sel#(active X1, X2)) (active# unquote1 X -> active# X, active# sel(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# sel(X1, X2) -> active# X2) (active# unquote1 X -> active# X, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# unquote1 X -> active# X, active# s X -> active# X) (active# unquote1 X -> active# X, active# s X -> s# active X) (active# unquote1 X -> active# X, active# cons(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# unquote1 X -> active# X, active# first(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# first(X1, X2) -> active# X2) (active# unquote1 X -> active# X, active# first(X1, X2) -> first#(X1, active X2)) (active# unquote1 X -> active# X, active# first(X1, X2) -> first#(active X1, X2)) (active# unquote1 X -> active# X, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# unquote1 X -> active# X, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# unquote1 X -> active# X, active# from X -> active# X) (active# unquote1 X -> active# X, active# from X -> s# X) (active# unquote1 X -> active# X, active# from X -> cons#(X, from s X)) (active# unquote1 X -> active# X, active# from X -> from# active X) (active# unquote1 X -> active# X, active# from X -> from# s X) (active# unquote1 X -> active# X, active# sel1(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# sel1(X1, X2) -> active# X2) (active# unquote1 X -> active# X, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# unquote1 X -> active# X, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# unquote1 X -> active# X, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# unquote1 X -> active# X, active# sel1(0(), cons(X, Z)) -> quote# X) (active# unquote1 X -> active# X, active# quote sel(X, Z) -> sel1#(X, Z)) (active# unquote1 X -> active# X, active# quote s X -> quote# X) (active# unquote1 X -> active# X, active# quote s X -> s1# quote X) (active# unquote1 X -> active# X, active# first1(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# first1(X1, X2) -> active# X2) (active# unquote1 X -> active# X, active# first1(X1, X2) -> first1#(X1, active X2)) (active# unquote1 X -> active# X, active# first1(X1, X2) -> first1#(active X1, X2)) (active# unquote1 X -> active# X, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# unquote1 X -> active# X, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# unquote1 X -> active# X, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# unquote1 X -> active# X, active# cons1(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# cons1(X1, X2) -> active# X2) (active# unquote1 X -> active# X, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# unquote1 X -> active# X, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# unquote1 X -> active# X, active# quote1 cons(X, Z) -> quote# X) (active# unquote1 X -> active# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# unquote1 X -> active# X, active# quote1 cons(X, Z) -> quote1# Z) (active# unquote1 X -> active# X, active# quote1 first(X, Z) -> first1#(X, Z)) (active# unquote1 X -> active# X, active# s1 X -> active# X) (active# unquote1 X -> active# X, active# s1 X -> s1# active X) (active# unquote1 X -> active# X, active# unquote X -> active# X) (active# unquote1 X -> active# X, active# unquote X -> unquote# active X) (active# unquote1 X -> active# X, active# unquote s1 X -> s# unquote X) (active# unquote1 X -> active# X, active# unquote s1 X -> unquote# X) (active# unquote1 X -> active# X, active# unquote1 X -> active# X) (active# unquote1 X -> active# X, active# unquote1 X -> unquote1# active X) (active# unquote1 X -> active# X, active# unquote1 cons1(X, Z) -> unquote# X) (active# unquote1 X -> active# X, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# unquote1 X -> active# X, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# unquote1 X -> active# X, active# fcons(X, Z) -> cons#(X, Z)) (active# unquote1 X -> active# X, active# fcons(X1, X2) -> active# X1) (active# unquote1 X -> active# X, active# fcons(X1, X2) -> active# X2) (active# unquote1 X -> active# X, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# unquote1 X -> active# X, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# unquote X -> active# X, active# sel(X1, X2) -> sel#(X1, active X2)) (active# unquote X -> active# X, active# sel(X1, X2) -> sel#(active X1, X2)) (active# unquote X -> active# X, active# sel(X1, X2) -> active# X1) (active# unquote X -> active# X, active# sel(X1, X2) -> active# X2) (active# unquote X -> active# X, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# unquote X -> active# X, active# s X -> active# X) (active# unquote X -> active# X, active# s X -> s# active X) (active# unquote X -> active# X, active# cons(X1, X2) -> active# X1) (active# unquote X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# unquote X -> active# X, active# first(X1, X2) -> active# X1) (active# unquote X -> active# X, active# first(X1, X2) -> active# X2) (active# unquote X -> active# X, active# first(X1, X2) -> first#(X1, active X2)) (active# unquote X -> active# X, active# first(X1, X2) -> first#(active X1, X2)) (active# unquote X -> active# X, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# unquote X -> active# X, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# unquote X -> active# X, active# from X -> active# X) (active# unquote X -> active# X, active# from X -> s# X) (active# unquote X -> active# X, active# from X -> cons#(X, from s X)) (active# unquote X -> active# X, active# from X -> from# active X) (active# unquote X -> active# X, active# from X -> from# s X) (active# unquote X -> active# X, active# sel1(X1, X2) -> active# X1) (active# unquote X -> active# X, active# sel1(X1, X2) -> active# X2) (active# unquote X -> active# X, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# unquote X -> active# X, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# unquote X -> active# X, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# unquote X -> active# X, active# sel1(0(), cons(X, Z)) -> quote# X) (active# unquote X -> active# X, active# quote sel(X, Z) -> sel1#(X, Z)) (active# unquote X -> active# X, active# quote s X -> quote# X) (active# unquote X -> active# X, active# quote s X -> s1# quote X) (active# unquote X -> active# X, active# first1(X1, X2) -> active# X1) (active# unquote X -> active# X, active# first1(X1, X2) -> active# X2) (active# unquote X -> active# X, active# first1(X1, X2) -> first1#(X1, active X2)) (active# unquote X -> active# X, active# first1(X1, X2) -> first1#(active X1, X2)) (active# unquote X -> active# X, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# unquote X -> active# X, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# unquote X -> active# X, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# unquote X -> active# X, active# cons1(X1, X2) -> active# X1) (active# unquote X -> active# X, active# cons1(X1, X2) -> active# X2) (active# unquote X -> active# X, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# unquote X -> active# X, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# unquote X -> active# X, active# quote1 cons(X, Z) -> quote# X) (active# unquote X -> active# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# unquote X -> active# X, active# quote1 cons(X, Z) -> quote1# Z) (active# unquote X -> active# X, active# quote1 first(X, Z) -> first1#(X, Z)) (active# unquote X -> active# X, active# s1 X -> active# X) (active# unquote X -> active# X, active# s1 X -> s1# active X) (active# unquote X -> active# X, active# unquote X -> active# X) (active# unquote X -> active# X, active# unquote X -> unquote# active X) (active# unquote X -> active# X, active# unquote s1 X -> s# unquote X) (active# unquote X -> active# X, active# unquote s1 X -> unquote# X) (active# unquote X -> active# X, active# unquote1 X -> active# X) (active# unquote X -> active# X, active# unquote1 X -> unquote1# active X) (active# unquote X -> active# X, active# unquote1 cons1(X, Z) -> unquote# X) (active# unquote X -> active# X, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# unquote X -> active# X, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# unquote X -> active# X, active# fcons(X, Z) -> cons#(X, Z)) (active# unquote X -> active# X, active# fcons(X1, X2) -> active# X1) (active# unquote X -> active# X, active# fcons(X1, X2) -> active# X2) (active# unquote X -> active# X, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# unquote X -> active# X, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# quote1 cons(X, Z) -> quote# X, quote# ok X -> quote# X) (active# sel1(0(), cons(X, Z)) -> quote# X, quote# ok X -> quote# X) (active# from X -> active# X, active# sel(X1, X2) -> sel#(X1, active X2)) (active# from X -> active# X, active# sel(X1, X2) -> sel#(active X1, X2)) (active# from X -> active# X, active# sel(X1, X2) -> active# X1) (active# from X -> active# X, active# sel(X1, X2) -> active# X2) (active# from X -> active# X, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# from X -> active# X, active# s X -> active# X) (active# from X -> active# X, active# s X -> s# active X) (active# from X -> active# X, active# cons(X1, X2) -> active# X1) (active# from X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# from X -> active# X, active# first(X1, X2) -> active# X1) (active# from X -> active# X, active# first(X1, X2) -> active# X2) (active# from X -> active# X, active# first(X1, X2) -> first#(X1, active X2)) (active# from X -> active# X, active# first(X1, X2) -> first#(active X1, X2)) (active# from X -> active# X, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# from X -> active# X, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# from X -> active# X, active# from X -> active# X) (active# from X -> active# X, active# from X -> s# X) (active# from X -> active# X, active# from X -> cons#(X, from s X)) (active# from X -> active# X, active# from X -> from# active X) (active# from X -> active# X, active# from X -> from# s X) (active# from X -> active# X, active# sel1(X1, X2) -> active# X1) (active# from X -> active# X, active# sel1(X1, X2) -> active# X2) (active# from X -> active# X, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# from X -> active# X, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# from X -> active# X, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# from X -> active# X, active# sel1(0(), cons(X, Z)) -> quote# X) (active# from X -> active# X, active# quote sel(X, Z) -> sel1#(X, Z)) (active# from X -> active# X, active# quote s X -> quote# X) (active# from X -> active# X, active# quote s X -> s1# quote X) (active# from X -> active# X, active# first1(X1, X2) -> active# X1) (active# from X -> active# X, active# first1(X1, X2) -> active# X2) (active# from X -> active# X, active# first1(X1, X2) -> first1#(X1, active X2)) (active# from X -> active# X, active# first1(X1, X2) -> first1#(active X1, X2)) (active# from X -> active# X, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# from X -> active# X, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# from X -> active# X, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# from X -> active# X, active# cons1(X1, X2) -> active# X1) (active# from X -> active# X, active# cons1(X1, X2) -> active# X2) (active# from X -> active# X, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# from X -> active# X, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# from X -> active# X, active# quote1 cons(X, Z) -> quote# X) (active# from X -> active# X, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# from X -> active# X, active# quote1 cons(X, Z) -> quote1# Z) (active# from X -> active# X, active# quote1 first(X, Z) -> first1#(X, Z)) (active# from X -> active# X, active# s1 X -> active# X) (active# from X -> active# X, active# s1 X -> s1# active X) (active# from X -> active# X, active# unquote X -> active# X) (active# from X -> active# X, active# unquote X -> unquote# active X) (active# from X -> active# X, active# unquote s1 X -> s# unquote X) (active# from X -> active# X, active# unquote s1 X -> unquote# X) (active# from X -> active# X, active# unquote1 X -> active# X) (active# from X -> active# X, active# unquote1 X -> unquote1# active X) (active# from X -> active# X, active# unquote1 cons1(X, Z) -> unquote# X) (active# from X -> active# X, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# from X -> active# X, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# from X -> active# X, active# fcons(X, Z) -> cons#(X, Z)) (active# from X -> active# X, active# fcons(X1, X2) -> active# X1) (active# from X -> active# X, active# fcons(X1, X2) -> active# X2) (active# from X -> active# X, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# from X -> active# X, active# fcons(X1, X2) -> fcons#(active X1, X2)) (fcons#(ok X1, ok X2) -> fcons#(X1, X2), fcons#(X1, mark X2) -> fcons#(X1, X2)) (fcons#(ok X1, ok X2) -> fcons#(X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2)) (fcons#(ok X1, ok X2) -> fcons#(X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (fcons#(X1, mark X2) -> fcons#(X1, X2), fcons#(X1, mark X2) -> fcons#(X1, X2)) (fcons#(X1, mark X2) -> fcons#(X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2)) (fcons#(X1, mark X2) -> fcons#(X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (cons1#(mark X1, X2) -> cons1#(X1, X2), cons1#(X1, mark X2) -> cons1#(X1, X2)) (cons1#(mark X1, X2) -> cons1#(X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2)) (cons1#(mark X1, X2) -> cons1#(X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (first1#(ok X1, ok X2) -> first1#(X1, X2), first1#(X1, mark X2) -> first1#(X1, X2)) (first1#(ok X1, ok X2) -> first1#(X1, X2), first1#(mark X1, X2) -> first1#(X1, X2)) (first1#(ok X1, ok X2) -> first1#(X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2)) (first1#(X1, mark X2) -> first1#(X1, X2), first1#(X1, mark X2) -> first1#(X1, X2)) (first1#(X1, mark X2) -> first1#(X1, X2), first1#(mark X1, X2) -> first1#(X1, X2)) (first1#(X1, mark X2) -> first1#(X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2)) (sel1#(mark X1, X2) -> sel1#(X1, X2), sel1#(X1, mark X2) -> sel1#(X1, X2)) (sel1#(mark X1, X2) -> sel1#(X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2)) (sel1#(mark X1, X2) -> sel1#(X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)) (first#(ok X1, ok X2) -> first#(X1, X2), first#(X1, mark X2) -> first#(X1, X2)) (first#(ok X1, ok X2) -> first#(X1, X2), first#(mark X1, X2) -> first#(X1, X2)) (first#(ok X1, ok X2) -> first#(X1, X2), first#(ok X1, ok X2) -> first#(X1, X2)) (first#(X1, mark X2) -> first#(X1, X2), first#(X1, mark X2) -> first#(X1, X2)) (first#(X1, mark X2) -> first#(X1, X2), first#(mark X1, X2) -> first#(X1, X2)) (first#(X1, mark X2) -> first#(X1, X2), first#(ok X1, ok X2) -> first#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (sel#(mark X1, X2) -> sel#(X1, X2), sel#(X1, mark X2) -> sel#(X1, X2)) (sel#(mark X1, X2) -> sel#(X1, X2), sel#(mark X1, X2) -> sel#(X1, X2)) (sel#(mark X1, X2) -> sel#(X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2)) (active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z)), cons1#(X1, mark X2) -> cons1#(X1, X2)) (active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z)), cons1#(mark X1, X2) -> cons1#(X1, X2)) (active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z)), cons1#(ok X1, ok X2) -> cons1#(X1, X2)) (active# fcons(X1, X2) -> fcons#(active X1, X2), fcons#(X1, mark X2) -> fcons#(X1, X2)) (active# fcons(X1, X2) -> fcons#(active X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2)) (active# fcons(X1, X2) -> fcons#(active X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)) (active# first1(X1, X2) -> first1#(active X1, X2), first1#(X1, mark X2) -> first1#(X1, X2)) (active# first1(X1, X2) -> first1#(active X1, X2), first1#(mark X1, X2) -> first1#(X1, X2)) (active# first1(X1, X2) -> first1#(active X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2)) (active# first(X1, X2) -> first#(active X1, X2), first#(X1, mark X2) -> first#(X1, X2)) (active# first(X1, X2) -> first#(active X1, X2), first#(mark X1, X2) -> first#(X1, X2)) (active# first(X1, X2) -> first#(active X1, X2), first#(ok X1, ok X2) -> first#(X1, X2)) (active# sel(X1, X2) -> sel#(active X1, X2), sel#(X1, mark X2) -> sel#(X1, X2)) (active# sel(X1, X2) -> sel#(active X1, X2), sel#(mark X1, X2) -> sel#(X1, X2)) (active# sel(X1, X2) -> sel#(active X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2)) (proper# cons1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# cons1(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# cons1(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# cons1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# cons1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# cons1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# sel1(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# sel1(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# sel1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# sel1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# sel1(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# sel(X1, X2) -> sel#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# first(X1, X2) -> first#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> sel1#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# quote X -> quote# proper X) (proper# cons(X1, X2) -> proper# X1, proper# quote X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# first1(X1, X2) -> first1#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> cons1#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# quote1 X -> quote1# proper X) (proper# cons(X1, X2) -> proper# X1, proper# quote1 X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# s1 X -> s1# proper X) (proper# cons(X1, X2) -> proper# X1, proper# s1 X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# unquote X -> unquote# proper X) (proper# cons(X1, X2) -> proper# X1, proper# unquote X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# unquote1 X -> unquote1# proper X) (proper# cons(X1, X2) -> proper# X1, proper# unquote1 X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> fcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2) (active# fcons(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (active# fcons(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# fcons(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# s X -> active# X) (active# fcons(X1, X2) -> active# X1, active# s X -> s# active X) (active# fcons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# fcons(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# fcons(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# fcons(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# fcons(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# from X -> active# X) (active# fcons(X1, X2) -> active# X1, active# from X -> s# X) (active# fcons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# fcons(X1, X2) -> active# X1, active# from X -> from# active X) (active# fcons(X1, X2) -> active# X1, active# from X -> from# s X) (active# fcons(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# fcons(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# fcons(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# fcons(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# fcons(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# fcons(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# fcons(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# fcons(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# fcons(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# fcons(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# fcons(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# fcons(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# fcons(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# fcons(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# fcons(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# s1 X -> active# X) (active# fcons(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# fcons(X1, X2) -> active# X1, active# unquote X -> active# X) (active# fcons(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# fcons(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# fcons(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# fcons(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# fcons(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# fcons(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# fcons(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# fcons(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# fcons(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (active# first1(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# first1(X1, X2) -> active# X1, active# s X -> active# X) (active# first1(X1, X2) -> active# X1, active# s X -> s# active X) (active# first1(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# first1(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# first1(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# first1(X1, X2) -> active# X1, active# from X -> active# X) (active# first1(X1, X2) -> active# X1, active# from X -> s# X) (active# first1(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# first1(X1, X2) -> active# X1, active# from X -> from# active X) (active# first1(X1, X2) -> active# X1, active# from X -> from# s X) (active# first1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# first1(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# first1(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# first1(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# first1(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# first1(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# first1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# first1(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# first1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# first1(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# first1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# first1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# first1(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# first1(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# first1(X1, X2) -> active# X1, active# s1 X -> active# X) (active# first1(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# first1(X1, X2) -> active# X1, active# unquote X -> active# X) (active# first1(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# first1(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# first1(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# first1(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# first1(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# first1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# first1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# first1(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# first1(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# first1(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# first1(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# first1(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# first1(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (active# first(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# first(X1, X2) -> active# X1, active# s X -> active# X) (active# first(X1, X2) -> active# X1, active# s X -> s# active X) (active# first(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# first(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# first(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# first(X1, X2) -> active# X1, active# from X -> active# X) (active# first(X1, X2) -> active# X1, active# from X -> s# X) (active# first(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# first(X1, X2) -> active# X1, active# from X -> from# active X) (active# first(X1, X2) -> active# X1, active# from X -> from# s X) (active# first(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# first(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# first(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# first(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# first(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# first(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# first(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# first(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# first(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# first(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# first(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# first(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# first(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# first(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# first(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# first(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# first(X1, X2) -> active# X1, active# s1 X -> active# X) (active# first(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# first(X1, X2) -> active# X1, active# unquote X -> active# X) (active# first(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# first(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# first(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# first(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# first(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# first(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# first(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# first(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# first(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# first(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# first(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# first(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# first(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(X1, active X2)) (active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> sel#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X1, active# sel(s X, cons(Y, Z)) -> sel#(X, Z)) (active# sel(X1, X2) -> active# X1, active# s X -> active# X) (active# sel(X1, X2) -> active# X1, active# s X -> s# active X) (active# sel(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X1, active# first(X1, X2) -> first#(X1, active X2)) (active# sel(X1, X2) -> active# X1, active# first(X1, X2) -> first#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> cons#(Y, first(X, Z))) (active# sel(X1, X2) -> active# X1, active# first(s X, cons(Y, Z)) -> first#(X, Z)) (active# sel(X1, X2) -> active# X1, active# from X -> active# X) (active# sel(X1, X2) -> active# X1, active# from X -> s# X) (active# sel(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# sel(X1, X2) -> active# X1, active# from X -> from# active X) (active# sel(X1, X2) -> active# X1, active# from X -> from# s X) (active# sel(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(X1, active X2)) (active# sel(X1, X2) -> active# X1, active# sel1(X1, X2) -> sel1#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# sel1(s X, cons(Y, Z)) -> sel1#(X, Z)) (active# sel(X1, X2) -> active# X1, active# sel1(0(), cons(X, Z)) -> quote# X) (active# sel(X1, X2) -> active# X1, active# quote sel(X, Z) -> sel1#(X, Z)) (active# sel(X1, X2) -> active# X1, active# quote s X -> quote# X) (active# sel(X1, X2) -> active# X1, active# quote s X -> s1# quote X) (active# sel(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(X1, active X2)) (active# sel(X1, X2) -> active# X1, active# first1(X1, X2) -> first1#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> quote# Y) (active# sel(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> first1#(X, Z)) (active# sel(X1, X2) -> active# X1, active# first1(s X, cons(Y, Z)) -> cons1#(quote Y, first1(X, Z))) (active# sel(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(X1, active X2)) (active# sel(X1, X2) -> active# X1, active# cons1(X1, X2) -> cons1#(active X1, X2)) (active# sel(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote# X) (active# sel(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> cons1#(quote X, quote1 Z)) (active# sel(X1, X2) -> active# X1, active# quote1 cons(X, Z) -> quote1# Z) (active# sel(X1, X2) -> active# X1, active# quote1 first(X, Z) -> first1#(X, Z)) (active# sel(X1, X2) -> active# X1, active# s1 X -> active# X) (active# sel(X1, X2) -> active# X1, active# s1 X -> s1# active X) (active# sel(X1, X2) -> active# X1, active# unquote X -> active# X) (active# sel(X1, X2) -> active# X1, active# unquote X -> unquote# active X) (active# sel(X1, X2) -> active# X1, active# unquote s1 X -> s# unquote X) (active# sel(X1, X2) -> active# X1, active# unquote s1 X -> unquote# X) (active# sel(X1, X2) -> active# X1, active# unquote1 X -> active# X) (active# sel(X1, X2) -> active# X1, active# unquote1 X -> unquote1# active X) (active# sel(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote# X) (active# sel(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> unquote1# Z) (active# sel(X1, X2) -> active# X1, active# unquote1 cons1(X, Z) -> fcons#(unquote X, unquote1 Z)) (active# sel(X1, X2) -> active# X1, active# fcons(X, Z) -> cons#(X, Z)) (active# sel(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X1) (active# sel(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2) (active# sel(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(X1, active X2)) (active# sel(X1, X2) -> active# X1, active# fcons(X1, X2) -> fcons#(active X1, X2)) (active# quote1 cons(X, Z) -> quote1# Z, quote1# ok X -> quote1# X) } STATUS: arrows: 0.875881 SCCS (17): Scc: {top# mark X -> top# proper X, top# ok X -> top# active X} Scc: { proper# sel(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2, proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2, proper# from X -> proper# X, proper# sel1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2, proper# quote X -> proper# X, proper# first1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2, proper# quote1 X -> proper# X, proper# s1 X -> proper# X, proper# unquote X -> proper# X, proper# unquote1 X -> proper# X, proper# fcons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2} Scc: { active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2, active# s X -> active# X, active# cons(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2, active# from X -> active# X, active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2, active# s1 X -> active# X, active# unquote X -> active# X, active# unquote1 X -> active# X, active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2} Scc: { fcons#(X1, mark X2) -> fcons#(X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)} Scc: {unquote# mark X -> unquote# X, unquote# ok X -> unquote# X} Scc: { cons1#(X1, mark X2) -> cons1#(X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)} Scc: { first1#(X1, mark X2) -> first1#(X1, X2), first1#(mark X1, X2) -> first1#(X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2)} Scc: {s1# mark X -> s1# X, s1# ok X -> s1# X} Scc: {quote# ok X -> quote# X} Scc: { sel1#(X1, mark X2) -> sel1#(X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)} Scc: {from# mark X -> from# X, from# ok X -> from# X} Scc: { first#(X1, mark X2) -> first#(X1, X2), first#(mark X1, X2) -> first#(X1, X2), first#(ok X1, ok X2) -> first#(X1, X2)} Scc: { cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)} Scc: {s# mark X -> s# X, s# ok X -> s# X} Scc: { sel#(X1, mark X2) -> sel#(X1, X2), sel#(mark X1, X2) -> sel#(X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2)} Scc: {unquote1# mark X -> unquote1# X, unquote1# ok X -> unquote1# X} Scc: {quote1# ok X -> quote1# X} SCC (2): Strict: {top# mark X -> top# proper X, top# ok X -> top# active X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (21): Strict: { proper# sel(X1, X2) -> proper# X1, proper# sel(X1, X2) -> proper# X2, proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2, proper# first(X1, X2) -> proper# X1, proper# first(X1, X2) -> proper# X2, proper# from X -> proper# X, proper# sel1(X1, X2) -> proper# X1, proper# sel1(X1, X2) -> proper# X2, proper# quote X -> proper# X, proper# first1(X1, X2) -> proper# X1, proper# first1(X1, X2) -> proper# X2, proper# cons1(X1, X2) -> proper# X1, proper# cons1(X1, X2) -> proper# X2, proper# quote1 X -> proper# X, proper# s1 X -> proper# X, proper# unquote X -> proper# X, proper# unquote1 X -> proper# X, proper# fcons(X1, X2) -> proper# X1, proper# fcons(X1, X2) -> proper# X2} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (18): Strict: { active# sel(X1, X2) -> active# X1, active# sel(X1, X2) -> active# X2, active# s X -> active# X, active# cons(X1, X2) -> active# X1, active# first(X1, X2) -> active# X1, active# first(X1, X2) -> active# X2, active# from X -> active# X, active# sel1(X1, X2) -> active# X1, active# sel1(X1, X2) -> active# X2, active# first1(X1, X2) -> active# X1, active# first1(X1, X2) -> active# X2, active# cons1(X1, X2) -> active# X1, active# cons1(X1, X2) -> active# X2, active# s1 X -> active# X, active# unquote X -> active# X, active# unquote1 X -> active# X, active# fcons(X1, X2) -> active# X1, active# fcons(X1, X2) -> active# X2} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { fcons#(X1, mark X2) -> fcons#(X1, X2), fcons#(mark X1, X2) -> fcons#(X1, X2), fcons#(ok X1, ok X2) -> fcons#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {unquote# mark X -> unquote# X, unquote# ok X -> unquote# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { cons1#(X1, mark X2) -> cons1#(X1, X2), cons1#(mark X1, X2) -> cons1#(X1, X2), cons1#(ok X1, ok X2) -> cons1#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { first1#(X1, mark X2) -> first1#(X1, X2), first1#(mark X1, X2) -> first1#(X1, X2), first1#(ok X1, ok X2) -> first1#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {s1# mark X -> s1# X, s1# ok X -> s1# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (1): Strict: {quote# ok X -> quote# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { sel1#(X1, mark X2) -> sel1#(X1, X2), sel1#(mark X1, X2) -> sel1#(X1, X2), sel1#(ok X1, ok X2) -> sel1#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {from# mark X -> from# X, from# ok X -> from# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { first#(X1, mark X2) -> first#(X1, X2), first#(mark X1, X2) -> first#(X1, X2), first#(ok X1, ok X2) -> first#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: { cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {s# mark X -> s# X, s# ok X -> s# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { sel#(X1, mark X2) -> sel#(X1, X2), sel#(mark X1, X2) -> sel#(X1, X2), sel#(ok X1, ok X2) -> sel#(X1, X2)} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {unquote1# mark X -> unquote1# X, unquote1# ok X -> unquote1# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open SCC (1): Strict: {quote1# ok X -> quote1# X} Weak: { sel(X1, mark X2) -> mark sel(X1, X2), sel(mark X1, X2) -> mark sel(X1, X2), sel(ok X1, ok X2) -> ok sel(X1, X2), active sel(X1, X2) -> sel(X1, active X2), active sel(X1, X2) -> sel(active X1, X2), active sel(s X, cons(Y, Z)) -> mark sel(X, Z), active sel(0(), cons(X, Z)) -> mark X, active s X -> s active X, active cons(X1, X2) -> cons(active X1, X2), active first(X1, X2) -> first(X1, active X2), active first(X1, X2) -> first(active X1, X2), active first(s X, cons(Y, Z)) -> mark cons(Y, first(X, Z)), active first(0(), Z) -> mark nil(), active from X -> mark cons(X, from s X), active from X -> from active X, active sel1(X1, X2) -> sel1(X1, active X2), active sel1(X1, X2) -> sel1(active X1, X2), active sel1(s X, cons(Y, Z)) -> mark sel1(X, Z), active sel1(0(), cons(X, Z)) -> mark quote X, active quote sel(X, Z) -> mark sel1(X, Z), active quote s X -> mark s1 quote X, active quote 0() -> mark 01(), active first1(X1, X2) -> first1(X1, active X2), active first1(X1, X2) -> first1(active X1, X2), active first1(s X, cons(Y, Z)) -> mark cons1(quote Y, first1(X, Z)), active first1(0(), Z) -> mark nil1(), active cons1(X1, X2) -> cons1(X1, active X2), active cons1(X1, X2) -> cons1(active X1, X2), active quote1 cons(X, Z) -> mark cons1(quote X, quote1 Z), active quote1 nil() -> mark nil1(), active quote1 first(X, Z) -> mark first1(X, Z), active s1 X -> s1 active X, active unquote X -> unquote active X, active unquote 01() -> mark 0(), active unquote s1 X -> mark s unquote X, active unquote1 X -> unquote1 active X, active unquote1 nil1() -> mark nil(), active unquote1 cons1(X, Z) -> mark fcons(unquote X, unquote1 Z), active fcons(X, Z) -> mark cons(X, Z), active fcons(X1, X2) -> fcons(X1, active X2), active fcons(X1, X2) -> fcons(active X1, X2), s mark X -> mark s X, s ok X -> ok s X, cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), first(X1, mark X2) -> mark first(X1, X2), first(mark X1, X2) -> mark first(X1, X2), first(ok X1, ok X2) -> ok first(X1, X2), from mark X -> mark from X, from ok X -> ok from X, sel1(X1, mark X2) -> mark sel1(X1, X2), sel1(mark X1, X2) -> mark sel1(X1, X2), sel1(ok X1, ok X2) -> ok sel1(X1, X2), quote ok X -> ok quote X, first1(X1, mark X2) -> mark first1(X1, X2), first1(mark X1, X2) -> mark first1(X1, X2), first1(ok X1, ok X2) -> ok first1(X1, X2), cons1(X1, mark X2) -> mark cons1(X1, X2), cons1(mark X1, X2) -> mark cons1(X1, X2), cons1(ok X1, ok X2) -> ok cons1(X1, X2), quote1 ok X -> ok quote1 X, s1 mark X -> mark s1 X, s1 ok X -> ok s1 X, unquote mark X -> mark unquote X, unquote ok X -> ok unquote X, unquote1 mark X -> mark unquote1 X, unquote1 ok X -> ok unquote1 X, fcons(X1, mark X2) -> mark fcons(X1, X2), fcons(mark X1, X2) -> mark fcons(X1, X2), fcons(ok X1, ok X2) -> ok fcons(X1, X2), proper sel(X1, X2) -> sel(proper X1, proper X2), proper s X -> s proper X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper 0() -> ok 0(), proper nil() -> ok nil(), proper first(X1, X2) -> first(proper X1, proper X2), proper from X -> from proper X, proper sel1(X1, X2) -> sel1(proper X1, proper X2), proper quote X -> quote proper X, proper nil1() -> ok nil1(), proper first1(X1, X2) -> first1(proper X1, proper X2), proper cons1(X1, X2) -> cons1(proper X1, proper X2), proper 01() -> ok 01(), proper quote1 X -> quote1 proper X, proper s1 X -> s1 proper X, proper unquote X -> unquote proper X, proper unquote1 X -> unquote1 proper X, proper fcons(X1, X2) -> fcons(proper X1, proper X2), top mark X -> top proper X, top ok X -> top active X} Open