fn-pattern-macro-example