implemented via a intercepting proxy