moved define out to separate module