control flow in rust