lots of checking. dotdotdot.