chore: refactor curry macro