Martin Vaculik keeps his semi-final "chances alive" with a fantastic heat 12 win at the FIM Speedway Grand Prix.