seperated engine access and business logic invocation from delegates