//@ run-pass

fn checktrue(rs: bool) -> bool { assert!((rs)); return true; }

pub fn main() { let k = checktrue; evenk(42, k); oddk(45, k); }

fn evenk(n: isize, k: fn(bool) -> bool) -> bool {
    println!("evenk");
    println!("{}", n);
    if n == 0 { return k(true); } else { return oddk(n - 1, k); }
}

fn oddk(n: isize, k: fn(bool) -> bool) -> bool {
    println!("oddk");
    println!("{}", n);
    if n == 0 { return k(false); } else { return evenk(n - 1, k); }
}
