dynamicResolutionContext can be null