4.86/2.03 YES 4.86/2.04 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 4.86/2.04 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 4.86/2.04 4.86/2.04 4.86/2.04 Termination w.r.t. Q of the given QTRS could be proven: 4.86/2.04 4.86/2.04 (0) QTRS 4.86/2.04 (1) QTRSRRRProof [EQUIVALENT, 74 ms] 4.86/2.04 (2) QTRS 4.86/2.04 (3) QTRSRRRProof [EQUIVALENT, 20 ms] 4.86/2.04 (4) QTRS 4.86/2.04 (5) QTRSRRRProof [EQUIVALENT, 14 ms] 4.86/2.04 (6) QTRS 4.86/2.04 (7) QTRSRRRProof [EQUIVALENT, 15 ms] 4.86/2.04 (8) QTRS 4.86/2.04 (9) QTRSRRRProof [EQUIVALENT, 0 ms] 4.86/2.04 (10) QTRS 4.86/2.04 (11) QTRSRRRProof [EQUIVALENT, 0 ms] 4.86/2.04 (12) QTRS 4.86/2.04 (13) QTRSRRRProof [EQUIVALENT, 2 ms] 4.86/2.04 (14) QTRS 4.86/2.04 (15) RisEmptyProof [EQUIVALENT, 0 ms] 4.86/2.04 (16) YES 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (0) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 active(and(tt, X)) -> mark(X) 4.86/2.04 active(plus(N, 0)) -> mark(N) 4.86/2.04 active(plus(N, s(M))) -> mark(s(plus(N, M))) 4.86/2.04 mark(and(X1, X2)) -> active(and(mark(X1), X2)) 4.86/2.04 mark(tt) -> active(tt) 4.86/2.04 mark(plus(X1, X2)) -> active(plus(mark(X1), mark(X2))) 4.86/2.04 mark(0) -> active(0) 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 and(active(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, active(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 plus(active(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, active(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 s(active(X)) -> s(X) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (1) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(0) = 1 4.86/2.04 POL(active(x_1)) = x_1 4.86/2.04 POL(and(x_1, x_2)) = x_1 + x_2 4.86/2.04 POL(mark(x_1)) = x_1 4.86/2.04 POL(plus(x_1, x_2)) = x_1 + x_2 4.86/2.04 POL(s(x_1)) = x_1 4.86/2.04 POL(tt) = 0 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 active(plus(N, 0)) -> mark(N) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (2) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 active(and(tt, X)) -> mark(X) 4.86/2.04 active(plus(N, s(M))) -> mark(s(plus(N, M))) 4.86/2.04 mark(and(X1, X2)) -> active(and(mark(X1), X2)) 4.86/2.04 mark(tt) -> active(tt) 4.86/2.04 mark(plus(X1, X2)) -> active(plus(mark(X1), mark(X2))) 4.86/2.04 mark(0) -> active(0) 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 and(active(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, active(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 plus(active(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, active(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 s(active(X)) -> s(X) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (3) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(0) = 0 4.86/2.04 POL(active(x_1)) = x_1 4.86/2.04 POL(and(x_1, x_2)) = x_1 + 2*x_2 4.86/2.04 POL(mark(x_1)) = x_1 4.86/2.04 POL(plus(x_1, x_2)) = x_1 + x_2 4.86/2.04 POL(s(x_1)) = x_1 4.86/2.04 POL(tt) = 1 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 active(and(tt, X)) -> mark(X) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (4) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 active(plus(N, s(M))) -> mark(s(plus(N, M))) 4.86/2.04 mark(and(X1, X2)) -> active(and(mark(X1), X2)) 4.86/2.04 mark(tt) -> active(tt) 4.86/2.04 mark(plus(X1, X2)) -> active(plus(mark(X1), mark(X2))) 4.86/2.04 mark(0) -> active(0) 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 and(active(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, active(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 plus(active(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, active(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 s(active(X)) -> s(X) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (5) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(0) = 0 4.86/2.04 POL(active(x_1)) = x_1 4.86/2.04 POL(and(x_1, x_2)) = x_1 + x_2 4.86/2.04 POL(mark(x_1)) = x_1 4.86/2.04 POL(plus(x_1, x_2)) = 2*x_1 + 2*x_2 4.86/2.04 POL(s(x_1)) = 2 + x_1 4.86/2.04 POL(tt) = 0 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 active(plus(N, s(M))) -> mark(s(plus(N, M))) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (6) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 mark(and(X1, X2)) -> active(and(mark(X1), X2)) 4.86/2.04 mark(tt) -> active(tt) 4.86/2.04 mark(plus(X1, X2)) -> active(plus(mark(X1), mark(X2))) 4.86/2.04 mark(0) -> active(0) 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 and(active(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, active(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 plus(active(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, active(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 s(active(X)) -> s(X) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (7) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(0) = 2 4.86/2.04 POL(active(x_1)) = 2 + x_1 4.86/2.04 POL(and(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 4.86/2.04 POL(mark(x_1)) = 2*x_1 4.86/2.04 POL(plus(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 4.86/2.04 POL(s(x_1)) = 2 + 2*x_1 4.86/2.04 POL(tt) = 2 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 and(active(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, active(X2)) -> and(X1, X2) 4.86/2.04 plus(active(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, active(X2)) -> plus(X1, X2) 4.86/2.04 s(active(X)) -> s(X) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (8) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 mark(and(X1, X2)) -> active(and(mark(X1), X2)) 4.86/2.04 mark(tt) -> active(tt) 4.86/2.04 mark(plus(X1, X2)) -> active(plus(mark(X1), mark(X2))) 4.86/2.04 mark(0) -> active(0) 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (9) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(0) = 1 4.86/2.04 POL(active(x_1)) = x_1 4.86/2.04 POL(and(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 4.86/2.04 POL(mark(x_1)) = 2*x_1 4.86/2.04 POL(plus(x_1, x_2)) = 1 + 2*x_1 + x_2 4.86/2.04 POL(s(x_1)) = 2*x_1 4.86/2.04 POL(tt) = 1 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 mark(and(X1, X2)) -> active(and(mark(X1), X2)) 4.86/2.04 mark(tt) -> active(tt) 4.86/2.04 mark(plus(X1, X2)) -> active(plus(mark(X1), mark(X2))) 4.86/2.04 mark(0) -> active(0) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (10) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (11) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(active(x_1)) = x_1 4.86/2.04 POL(and(x_1, x_2)) = x_1 + x_2 4.86/2.04 POL(mark(x_1)) = 2 + 2*x_1 4.86/2.04 POL(plus(x_1, x_2)) = x_1 + 2*x_2 4.86/2.04 POL(s(x_1)) = x_1 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 and(mark(X1), X2) -> and(X1, X2) 4.86/2.04 and(X1, mark(X2)) -> and(X1, X2) 4.86/2.04 plus(mark(X1), X2) -> plus(X1, X2) 4.86/2.04 plus(X1, mark(X2)) -> plus(X1, X2) 4.86/2.04 s(mark(X)) -> s(X) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (12) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 The TRS R consists of the following rules: 4.86/2.04 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (13) QTRSRRRProof (EQUIVALENT) 4.86/2.04 Used ordering: 4.86/2.04 Polynomial interpretation [POLO]: 4.86/2.04 4.86/2.04 POL(active(x_1)) = x_1 4.86/2.04 POL(mark(x_1)) = 2 + 2*x_1 4.86/2.04 POL(s(x_1)) = 2 + x_1 4.86/2.04 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 4.86/2.04 4.86/2.04 mark(s(X)) -> active(s(mark(X))) 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (14) 4.86/2.04 Obligation: 4.86/2.04 Q restricted rewrite system: 4.86/2.04 R is empty. 4.86/2.04 The set Q consists of the following terms: 4.86/2.04 4.86/2.04 active(and(tt, x0)) 4.86/2.04 active(plus(x0, 0)) 4.86/2.04 active(plus(x0, s(x1))) 4.86/2.04 mark(and(x0, x1)) 4.86/2.04 mark(tt) 4.86/2.04 mark(plus(x0, x1)) 4.86/2.04 mark(0) 4.86/2.04 mark(s(x0)) 4.86/2.04 and(mark(x0), x1) 4.86/2.04 and(x0, mark(x1)) 4.86/2.04 and(active(x0), x1) 4.86/2.04 and(x0, active(x1)) 4.86/2.04 plus(mark(x0), x1) 4.86/2.04 plus(x0, mark(x1)) 4.86/2.04 plus(active(x0), x1) 4.86/2.04 plus(x0, active(x1)) 4.86/2.04 s(mark(x0)) 4.86/2.04 s(active(x0)) 4.86/2.04 4.86/2.04 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (15) RisEmptyProof (EQUIVALENT) 4.86/2.04 The TRS R is empty. Hence, termination is trivially proven. 4.86/2.04 ---------------------------------------- 4.86/2.04 4.86/2.04 (16) 4.86/2.04 YES 5.04/2.06 EOF