improvements suggested by Jason