add groovy support