define some macro