Use polymorphic variants to simpilfy Winbat_ast