Implement group macro
Implement user macro
Implement with-user macro