fix semantic