Home tenis Kasatkina ousts Williams to reach semi-finals