more progress towards working defpatch macro.