implement CPI call decorators, to clean up cpi code base