Example DSL using Groovy