Added a deferred implementation