try curry macro method