added monoid instance for execution