class Count(Count,Chain,GreaterThan,If,Print,Subtract,Stop) extends Continuation class Countdown(Count,Chain,GreaterThan,If,Print,Subtract,Stop) extends Program { Count c; method continue(Passive accumulator) { c = new Count(Passive,Count,Chain,GreaterThan,If,Print,Subtract,Stop); goto c.continue(new 99(Passive)); } } class Count() extends Continuation { If i; GreaterThan g; Subtract m; Print p; Passive one; Passive zero; method continue(Passive accumulator) { m = new Subtract(Passive,Chain); m.value = accumulator; m.next = new Count(Passive,Count,Chain,GreaterThan,If,Print,Subtract,Stop); one = new 1(Passive); one.next = m; i = new If(Passive,Chain); i.next = one; i.else = new Stop(Passive); g = new GreaterThan(Passive,Chain); g.value = accumulator; g.next = i; zero = new 0(Passive); zero.next = g; p = new Print(Passive,Chain); p.next = zero; goto p.continue(accumulator); } }