added client code macro