add some macro