Updated for Rust 0.7