error checking and handling. reach around style.