add p-macro docstring