added macros to generate matchers