fix macro implementation