keycheck
if (!keycheck((uint8_t *)&key_so_far, (uint8_t *)&scratch)) {
return (keycheck(key, corrected_key));